You are on page 1of 11

Software Process Models

The slides and the material of this chapter is adopted from:


1. “Software Engineering”, by I. Somerville, 7th Ed., 2004.
2. “Software Engineering: A Practitioner’s Approach,” by R.S. Pressman, 6th Ed., 2005.
Objective
 To introduce software process models
 To describe the generic process models and when
they may be used

SWE 418 (062) Software Process Models 2


Topics covered
 Software process models
 The waterfall model
 Incremental model
 Evolutionary development
 Specialized process models

SWE 418 (062) Software Process Models 3


The software process
 A structured set of activities required to develop a
software system
 Specification;
 Design;
 implementation
 Validation;
 Evolution.
 A software process model is an abstract
representation of a process. It presents a
description of a process from some particular
perspective.

SWE 418 (062) Software Process Models 4


Software process models
 The waterfall model
 Incremental model
 Evolutionary development
 Specialized process models
 Agile processes

SWE 418 (062) Software Process Models 5


Waterfall model

Requir ements
definition

System and
software design

Implementa tion
and unit testing

Integ ration and


system testing

Oper ation and


maintenance

SWE 418 (062) Software Process Models 6


Incremental development

Define outline Assign requirements Design system


requirements to increments architectur e

Develop system Valida te Integ rate Validate


increment increment increment system
Final
system
System incomplete

SWE 418 (062) Software Process Models 7


Evolutionary development
 Prototyping
 Exploratory development
 Throw-away prototyping
 Spiral model

SWE 418 (062) Software Process Models 8


Prototyping

Quick
Qu ic k p la n
plan
Co m m u n ic at io n
communication

Modeling
Mo d e lin g
Qu icdesign
Quick k d e s ig n

De ploym e nt
Deployment
De live ry &
delivery
& Fe e d b ac k Co n s t ru c t io n
feedback Construction
of
of prototype
p ro t o t yp e

SWE 418 (062) Software Process Models 9


Still Other Process Models
 Component based development—the process to
apply when reuse is a development objective
 Formal methods—emphasizes the mathematical
specification of requirements
 Unified Process—a “use-case driven,
architecture-centric, iterative and incremental”
software process closely aligned with the Unified
Modeling Language (UML)

SWE 418 (062) Software Process Models 10


Summary
 Software processes are the activities involved in
producing and evolving a software system.
 Software process models are abstract
representations of these processes.
 General activities are specification, design and
implementation, validation and evolution.
 Generic process models describe the organisation
of software processes.
 Specialized software processes do exist

SWE 418 (062) Software Process Models 11

You might also like