You are on page 1of 12

Software Engineering: A Practitioner’s Approach, 6/e

Chapter 3
Prescriptive Process Models
copyright © 1996, 2001, 2005
R.S. Pressman & Associates, Inc.

For University Use Only


May be reproduced ONLY for student use at the university level
when used in conjunction with Software Engineering: A Practitioner's Approach.
Any other reproduction or use is expressly prohibited.

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 1
Prescriptive Models
 Prescriptive process models advocate an orderly approach to 
software engineering
That leads to a few questions …
 If prescriptive process models strive for structure and order, are 
they inappropriate for a software world that thrives on change? 
 Yet, if we reject traditional process models (and the order they 
imply) and replace them with something less structured, do we 
make it impossible to achieve coordination and coherence in 
software work?

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 2
The Waterfall Model

Communication
project initiation Planning
requirement gathering estimating Modeling
scheduling
analysis Construction
tracking
design Deployment
code
test delivery
support
f eedback

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 3
The Incremental Model

increment #n
Com
municationPlanning
M
o
a de ling
dn
ea
sliy
gs
nis Co
cnstruction D
to
ed
se
t e
dp
lo
e ym
livre
eyn
t
fe
e dback
delivery of
increment #2 nth increment

Com
municationPlanning
M
od
a eling
dn
ea
sliy
gs
nis Co
cnstruction D
to
ed
se
t e
dp
lo
e ym
livre
eyn
t
delivery of
fe
e dback
increment #1 2nd increment
Com
municationPlanning
M
aod e ling
dn
ea
sliy
gs
nis Co
cnstruction D
to
ed
se
t e
dp
lo
e
fe
e
ym
liv
dbre
e
ayn
c
t
k delivery of
1st increment

project calendar time

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 4
The RAD Model
Team#n
Modeling
businessmodeling
datamodeling
processmodeling

Construction
componentreuse
Team#2 automaticcode
Communication generation
testing
Modeling
businessmodeling
datamodeling
processmodeling
Planning
Construction Deployment
Team#1 component reuse integration
automaticcode
generation delivery
Modeling testing feedback
business modeling
data modeling
process modeling

Construction
component reuse
automatic code
generation
testing

60 - 90 days

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 5
Evolutionary Models: Prototyping

Quick plan
Quick
Communication plan
communication

MModeling
odeling
Quick design
Quick design

Deployment
Deployment
Delivery
delivery & Construction
& Feedback Construction
feedback of
of prototype
prototype

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 6
Evolutionary Models: The Spiral
planning
estimation
scheduling
risk analysis

communication

modeling
analysis
design
start

deployment
construction
delivery code
feedback test

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 7
Evolutionary Models: Concurrent
no ne

M o deling a c t iv it y

represents thestate
U nder of asoftwareengineering
dev elo pm ent
activityor task

A w a it ing

c ha nges

U nder rev iew

U nder

rev is io n

B a s elined

Do ne

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 8
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
 AOSD—provides a process and methodological 
approach for defining, specifying, designing, and 
constructing aspects
 Unified Process—a “use­case driven, architecture­centric, 
iterative and incremental” software process closely 
aligned with the Unified Modeling Language (UML)

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 9
The Unified Process (UP)
Elaboration
elaboration

Inception
inception

inception

construction
Release
transition
softwareincrement

production
These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 10
UP Phases
UP Phases
Inception Elaboration Construction Transition Production
Workflows

Requirements

Analysis

Design

Implementation

Test

Support

Iterations #1 #2 #n-1 #n

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 11
Inception phase
UP Work Products
Elaboration phase
Vision document
Initial use-case model
Initial project glossary Construction phase
Use-case model
Initial business case Supplementary requirements
Initial risk assessment. including non-functional Design model Transition phase
Project plan, Analysis model Software components
phases and iterations. Software architecture Delivered software increment
Integrated software
Business model, Description. increment Beta test reports
if necessary. Executable architectural General user feedback
Test plan and procedure
One or more prototypes prototype.
Incept io Test cases
n Preliminary design model Support documentation
Revised risk list user manuals
Project plan including installation manuals
iteration plan description of current
adaptedworkflows increment
milestones
technical work products
Preliminary user manual

These courseware materials are to be used in conjunction with Software Engineering: A Practitioner’s Approach, 6/e and 
are provided with permission by R.S. Pressman & Associates, Inc., copyright © 1996, 2001, 2005 12

You might also like