0% found this document useful (0 votes)
69 views27 pages

Slide Set 3 - Process Models

The document discusses various process models for software engineering projects including waterfall, iterative waterfall, evolutionary models like prototyping and spiral, RAD, incremental, concurrent, component-based development, formal methods, aspect-oriented software development, the unified process, and agile methods like Scrum. It provides descriptions and diagrams of different lifecycles and phases for each model.

Uploaded by

Siddharth Banga
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
69 views27 pages

Slide Set 3 - Process Models

The document discusses various process models for software engineering projects including waterfall, iterative waterfall, evolutionary models like prototyping and spiral, RAD, incremental, concurrent, component-based development, formal methods, aspect-oriented software development, the unified process, and agile methods like Scrum. It provides descriptions and diagrams of different lifecycles and phases for each model.

Uploaded by

Siddharth Banga
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Chapter 2

■ Process Models
Slide Set to accompany
Software Engineering: A Practitioner’s Approach, 7/e
by Roger S. Pressman

Slides copyright © 1996, 2001, 2005, 2009 by Roger S. Pressman

For non-profit educational use only


May be reproduced ONLY for student use at the university level when used in conjunction
with Software Engineering: A Practitioner's Approach, 7/e. Any other reproduction or use is
prohibited without the express written permission of the author.

All copyright information MUST appear if these slides are posted on a website for student
use.

Slide Set - 3
A Layered Technology

Software Engineering

tools

methods

process model

a “quality” focus

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
A Generic Process Model
A Process Framework

Process framework
Framework activities
work tasks
work products
milestones & deliverables
QA checkpoints
Umbrella Activities

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
Framework Activities
■ Communication
■ Planning
■ Modeling
■ Analysis of requirements
■ Design
■ Construction
■ Code generation
■ Testing
■ Deployment

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
Umbrella Activities
■ Software project management
■ Formal technical reviews
■ Software quality assurance
■ Software configuration management
■ Work product preparation and production
■ Reusability management
■ Measurement
■ Risk management

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
Process Flow
Identifying a Task Set
■ A task set defines the actual work to be done to
accomplish the objectives of a software engineering
action.
■ A list of the task to be accomplished
■ A list of the work products to be produced
■ A list of the quality assurance filters to be applied
Process Assessment and Improvement
■ Standard CMMI Assessment Method for Process Improvement
(SCAMPI) — provides a five step process assessment model that incorporates
five phases: initiating, diagnosing, establishing, acting and learning.
■ CMM-Based Appraisal for Internal Process Improvement (CBA
IPI)—provides a diagnostic technique for assessing the relative maturity of a
software organization; uses the SEI CMM as the basis for the assessment
[Dun01]
■ SPICE—The SPICE (ISO/IEC15504) standard defines a set of requirements
for software process assessment. The intent of the standard is to assist
organizations in developing an objective evaluation of the efficacy of any
defined software process. [ISO08]

■ ISO 9001:2000 for Software—a generic standard that applies to any


organization that wants to improve the overall quality of the products,
systems, or services that it provides. Therefore, the standard is directly
applicable to software organizations and companies. [Ant06]
Software life cycle
Series of identifiable stages that a
software product undergoes during its
life time:
• Feasibility study
• Requirements analysis and specification,
• Design,
• Coding,
• Testing
• maintenance.
Software Life Cycle
▪ identifies all the activities required for product
development,
▪ establishes a precedence ordering among the different
activities,
▪ Divides life cycle into phases.
Life Cycle Model is Adhered to,
■ the project manager can at any time fairly
accurately tell,
• at which stage (e.g., design, code, test, etc. ) of the
project is.
■ Otherwise, it becomes very difficult to track the
progress of the project
• the project manager would have to depend on the
guesses of the team members.
Attention to Specific models
■ Classical waterfall model
■ Iterative waterfall,
■ Evolutionary,
■ Prototyping, and
■ Spiral model
The Waterfall Model
The V-Model
The Incremental Model
The RAD Model
Evolutionary Models: Prototyping

Quick
plan
communication

Modeling
Quick design

Deployment Construction
delivery & of prototype
feedback Construction
of prototype
Evolutionary Models: The Spiral
Iterative vs Incremental Model

Source: Scrum Guide 6; 7 at [Link]


Evolutionary Models: Concurrent
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)
The Unified Process (UP)
elaboration

inception
UP Phases
UP Work Products
Agile
■ [Link]

■ Scrum
[Link]
Video Links
■ Waterfall Model
[Link]

■ Prototyping Model
[Link]
[Link]

■ Spiral Model
[Link]

You might also like