What is Software
Process?
Software process means the set of activities required to
produce a software system, executed by a group of people organized according to
a given organization structure and counting on the support of techno-conceptual
tools.
This process manages, develop and maintain software system.
It is done by looking the actors, their role and artefacts produced. Two key
international standards that prescribe processes for developing and maintaining
software are IEEE 1974-1991 and ISO/IEC 12207.
Software Process
Modeling
In modeling we need to make design, architecture, etc to
make understand information in concise form.
Each representation describe, at different detail levels means finished,
ongoing or proposed process and it provides definition of process to be used
for evaluating and improvement.
Curtis et al. present some of the specific goals and
benefits of modeling the software process.
1.
Ease of
understanding and communication: requiring a process model containing
enough information for its representation. It formalizes the process, thus
proving a basis for training.
2.
Process
management support and control: requiring a project-specific software
process and monitoring, management and co-ordination.
3.
Provision
for automated orientation for process performance: requiring and effective
software development environment, providing user orientations, instructions and
reference material.
4.
Provision
for automated execution support: Requiring automated process parts,
co-operative work support, a compilation of metrics and process integrity
assurance.
5.
Process
improvement support: requiring the reuse of well-defined and effective
software processes, the comparison of alternative processes and process
development support.
ELEMENT AND APPROACHES OF SOFTWARE PROCESS MODELLING
There are two
main sub models in process modeling: the production and management process,
first one related to construction and maintenance and second is responsible for
estimating, planning and controlling the necessary resources (people, time,
technologies etc.).
The four element of software process modeling are
1. Agent or
Actor: is an entity who executes the process
2. Role:
describes a set of agent or group responsibilities, rights and skills.
3. Activity: is
the stage of process.
4. Artefact or
Product: is the (sub)product and the “raw material” of a process.
Modelling Approaches
The type of information in a process model can be
structured from different viewpoint.
Curtis presents the following list of information perspectives
commonly found in the literature.
Function: shows
which process elements are being implemented and which information entity flows
are important for the above process elements.
Behavioral: under which condition the process elements
are implemented.
Organizational: represents where and by whom in the
organization the process elements are implemented.
Informative: represents the information entities output
or manipulated by a process, including their structure and relationships.
OVERVIEW OF PRESCRIPTIVE
SOFTWARE PROCESS MODELS
Prescriptive model goal is to define the requirement and
recommendation for executing the process, and in other words” How should the
software be developed”. This model
divided into two categories: manual
prescriptive models and automated prescriptive models.
Manual prescriptive
models belonging to this category a) traditional structure
methodologies; b) object-oriented methodologies; c) knowledge engineering
methodologies; d) organizational design methodologies; e) software cycle
development process standards; f) software process evaluation standard or
model-based methods.
Automated prescriptive
models perform activities related to assistance, support, management and
computer-assisted software production technique. This model belongs
to this category include: ALF;
activity-oriented programs IPSE; rules Marvel; PMDB; SOCCA; Petri nets, SPADE;
Imperative programs, TRIAD. It can be divided into two categories, a)
activity-oriented models and b) people-oriented models.
Activity-oriented model includes TRIAD, Marvel, IPSE 2.5,
SPADE; which focus on the functions,
activities of information about parts of the management, development and
software life-cycle support processes.
People-oriented model includes SOOCA, ALF, PMDB; which
focus on the specification of the people involved in the software process and
their relationship.
Finally, by Table 1, it is confirm that all the
prescriptive models considered lack a define
and fully comprehensive software process modeling procedure. The producer
should provide a formally integrated model of both the organization environment
and the software process.

