Saturday 4 July 2015

Process Models

What is process Model?
When you work to build a product or system, it’s important to go through a series of predictable steps, a road map that helps you create a timely, high-quality result. The road map that you follow is called a “software process”. A process can be defined as a collection of work activities, actions and tasks that are performed when some work product is to be created. Each of these activities, actions and tasks reside within a framework on model that defines their relationship with the process and with one another.
Generic Process Model
Each framework activity as populated by a set of software engineering actions. Each software  engineering action is defined by a set of task set that identifies the work tasks that are to be completed, the quality assurance points that will be required, and the milestones that will be used to indicate progress.
Process Flow
It describes the framework activities and the actions and tasks that occur within each framework activity are organized with respect to sequence and time.
·         Linear Process Flow
·         Iterative Process Flow
·         Evolutionary Process Flow
·         Parallel Process Flow
Linear Process Flow
A linear process flow executes each of the five framework activities in sequence, beginning with communication and culmination with deployment.


Iterative Process Flow
An iterative process flow repeats one or more of the activities before proceeding to the next.



Evolutionary Process:
An evolutionary process flow executes the activities in a circular manner. Each circuit through the five activities leads to a more complete version of the software.



Parallel Process Flow
A parallel process flow executes one or more activities in parallel with other activities. For example, modeling for one aspect of the software might be executes in parallel with construction of another aspect of the software.


 

Defining a framework activity
More information is required to start each activity. A software team should know,”what actions are appropriate for framework activity given the nature of the problem to be solved the characteristics of the people doing the work, and the stakeholders who are sponsoring the project?”
For a small software project requested by one person (at a remote location) with simple, straightforward requirements, the communication activity might encompass little more than a phone call with the appropriate stakeholder. If the project was considerably more complex with many stakeholders, each with a different set of (sometime conflict) requirements, the communication activity might have more detailed actions.
Identifying a task set
Each software engineering action can be represented by a number of different task set. A task set defines the actual work to be done to accomplish the objectives of a software engineering action. You should choose a task set that best accommodates the needs of the project and characteristics of your team.
Process Pattern
Every software team encounters problems as it moves through the software process. A process describes a process related problem that is encountered during software engineering work, identifies the environment in which the problem has been encountered and suggests one or more proven solution to the problem. ( A template consisting of method describing problem solution.) A pattern might be used to describe a problem (and solution) associated with ( a complete process model, a framework activity , or an action within a framework activity)
Pattern Template
A pattern template provides a consistent means for describing a pattern.
 Pattern Name: The pattern is given a meaningful name describing it within the context of the software process ( e.g. Technical Review )
Forces: The environment in which the pattern is encountered and the issues that make the problem visible and may affect its solution.
Type: The pattern is specified.
Stage Pattern: defines a problem associated with a framework activity for the process. Since the framework activity encompasses multiple actions and work tasks , a stage pattern incorporates multiple tasks patterns that are relevant to the stage. An example of a stage pattern might be Establishing Communication Gathering and other.
Task Pattern: Defines a problem associated with a software engineering or work task and relevant to successful software engineering practice (e.g. Requirements gathering is a task pattern.)

Phase Pattern: Defines the sequence of framework activities that occur within the process, even when the overall flow of activities is iterative in nature. An example of a phase pattern might be Spiral Model or prototyping. 

0 comments:

Post a Comment

s