You are on page 1of 12

Software Process Models

 S O FT WA R E
 PROCESS
 P R O C E S S M O D EL S
Software

instructions that when executed provide desired

features, function, and performance


enable the programs to manipulate information

describes the operation and use of the programs

Thus Software is a product and also a vehicle that

delivers the product to end users


Software process

A process is a collection of activities, actions, and tasks that are performed

when some work product is to be created.


 An activity has a broad objective
 Requirements gathering

 An action encompasses a set of tasks that produce a major work product


 Communication with customer

 A task focuses on a small well-defined objective


 Make contact with stakeholder via telephone, Discuss requirements and take notes,
Organize notes into a brief written statement of requirements, E-mail to stakeholder for
review and approval
Process framework

A generic process framework for software engineering


encompasses five activities
 communication,
 planning,
 modeling,
 construction, and
 deployment

This sequence, this flow is applied repeatedly through a

number of project iterations.


Process flow
Organizes the activities based on sequence and timeline

 A linear process flow activities leads to a more


 executes each of the five complete version of the
framework activities in software
sequence  A parallel process flow
 An iterative process flow  executes one or more
 repeats one or more of the activities in parallel with
activities before proceeding other activities
to the next  (e.g., modeling for one aspect
 An evolutionary process of the software might be
executed in parallel with
flow
construction of another
 executes the activities in a aspect of the software).
“circular” manner.
 Each circuit through the five
The Waterfall Model
Incremental Process Models

Objective is to develop a product with basic functionality in first step and

then add additional features in following steps


Every increment is treated as sub project

Every increment is assigned a priority and high priority increment is

released first
At any specified time plan focuses on current increment only

After it passes testing and validation the process moves on to next

increment
Very flexible and easy to test and debug
Incremental Process Model
When Incremental Process Models used?

When there is a demand for early release of product in the

market.
When resource with required skill set is not available.

When high risks, new technology are involved.

When project has lengthy development schedules.

When problem modules and interfaces are well defined.


Evolutionary model

Prototyping
Prototyping types

 Rapid throwaway Prototype


 Once actual requirements are understood the prototype is ignored
and start with clear understanding of user requirements
 Evolutionary prototyping
 Prototype is modified after feedback

 Incremental prototyping
 Develops functional prototypes for divided sub products

 Extreme prototyping
 For web applications
1. Static pages are developed
2. Data processing is simulated
3. Services are implemented
Thank you

You might also like