ch03 pressman software engineering slides
DESCRIPTION
Ch03 Pressman Software Engineering slidesTRANSCRIPT
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
Software Engineering: A Practitioner’s Software Engineering: A Practitioner’s Approach, 6/eApproach, 6/e
Chapter 3Chapter 3Prescriptive Process ModelsPrescriptive Process Models
copyright © 1996, 2001, 2005R.S. Pressman & Associates, Inc.
For University Use OnlyMay 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 2
Prescriptive ModelsPrescriptive Models Prescriptive process models advocate an orderly approach Prescriptive process models advocate an orderly approach
to software engineeringto software engineeringThat leads to a few questions …That leads to a few questions … If prescriptive process models strive for structure and If prescriptive process models strive for structure and
order, order, are they inappropriate for a software world that are they inappropriate for a software world that thrives on change?thrives on change?
Yet, if we reject traditional process models (and the order Yet, if we reject traditional process models (and the order they imply) and replace them with something less they imply) and replace them with something less structured, structured, do we make it impossible to achieve do we make it impossible to achieve coordination and coherence in software work?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 3
The Waterfall The Waterfall ModelModel
CommunicationPlanning
ModelingConstruction
Deploymentanalysisdesign code
test
project initiationrequirement gathering estimating
schedulingtracking
deliverysupportfeedback
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 Incremental The Incremental ModelModel
CommunicationPlanning Modeling Construction Deployment delivery feedbackanalysisdesign codetest
increment # 1
increment # 2
delivery of1st increment
delivery of2nd increment
delivery ofnth increment
increment # n
project calendar time
CommunicationPlanning Modeling Construction Deployment delivery feedbackanalysisdesign codetest
CommunicationPlanning Modeling Construction Deployment delivery feedbackanalysisdesign codetest
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
The RAD ModelThe RAD Model
Communication
Planning
Modelingbusiness modelingdata modelingprocess modeling
Constructioncomponent reuseautomatic code generationtesting
Deployment
60 - 90 days
Team # 1
Modelingbusiness modelingdata modelingprocess modeling
Constructioncomponent reuseautomatic code generationtesting
Modelingbusiness modelingdata modelingprocess modeling
Constructioncomponent reuseautomatic code generationtestingTeam # 2
Team # n
integrationdeliveryfeedback
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: Evolutionary Models: PrototypingPrototyping
CommunicationQuick plan
Constructionofprototype
Modeling Quick design
Delivery& Feedback
Deployment
communication
Quickplan
ModelingQuick design
Constructionof prototype
Deploymentdelivery &feedback
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: The Evolutionary Models: The SpiralSpiral
communication
planning
modeling
constructiondeployment delivery feedback
start
analysisdesign
codetest
estimationschedulingrisk analysis
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
Evolutionary Models: ConcurrentEvolutionary Models: Concurrent
Under review
B as elined
Done
Under
rev is ion
A w ait ing
changes
Under
developm ent
none
Modeling ac t iv it y
represents the stateof a software engineeringactivity or task
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
Still Other Process Still Other Process ModelsModels
Component based developmentComponent based development—the process to apply —the process to apply when reuse is a development objectivewhen reuse is a development objective
Formal methodsFormal methods—emphasizes the mathematical —emphasizes the mathematical specification of requirementsspecification of requirements
AOSDAOSD—provides a process and methodological —provides a process and methodological approach for defining, specifying, designing, and approach for defining, specifying, designing, and constructing constructing aspectsaspects
Unified ProcessUnified Process—a “use-case driven, architecture-—a “use-case driven, architecture-centric, iterative and incremental” software process centric, iterative and incremental” software process closely aligned with the Unified Modeling Language closely aligned with the Unified Modeling Language (UML)(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 10
inception
The Unified Process (UP)The Unified Process (UP)
software incrementRelease
Inception
Elaboration
constructiontransition
production
inception
elaboration
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
UP PhasesUP PhasesInception Elaboration Construction Transition ProductionUP Phases
Workflows
Requirements
Analysis
Design
Implementation
Test
Iterations #1 #2 #n-1 #n
Support
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
UP Work ProductsUP Work ProductsInception phase
Elaboration phaseConstruction phase
Transition phase
Vision documentInitial use-case modelInitial project glossaryInitial business caseInitial risk assessment.Project plan, phases and iterations.Business model, if necessary.One or more prototypesInception
Use-case modelSupplementary requirements including non-functionalAnalysis modelSoftware architecture Description.Executable architectural prototype.Preliminary design modelRevised risk listProject plan including iteration plan adapted workflows milestones technical work productsPreliminary user manual
Design modelSoftware componentsIntegrated software incrementTest plan and procedureTest casesSupport documentation user manuals installation manuals description of current increment
Delivered software incrementBeta test reportsGeneral user feedback