Upload
breck
View
143
Download
0
Tags:
Embed Size (px)
DESCRIPTION
Spiral Model. SPEAKER : KAI-JIA CHANG ADVISER : QUINCY WU DATA : 2010-03-17. Outline. Introduction The spiral model Evaluation Conclusions References. Introduction. A Risk-Driven Approach Different idea of software development. - PowerPoint PPT Presentation
Citation preview
SPEAKER : KAI-JIA CHANG
ADVISER : QUINCY WU
DATA : 2010-03-17
Spiral Model
Outline
2
IntroductionThe spiral modelEvaluationConclusionsReferences
Introduction
3
A Risk-Driven Approach Different idea of software development.How does this project affect the developers
and the clients?How does each step in the project affect its
overall development? Not used in previous development models.– Usually code-driven or document-driven.
Introduction
4
Background on software process models1950 : Code-and-fix model 1956 : Stagewise model (Bengington ) 1970 : Waterfall model (Royce)1971 : Incremental model(Mills) 1977 : Prototyping model(Bally and others) 1988 : Spiral model(Boehm)
Introduction
5
Code-and-fix modelFirst, elementary modelWrite code now; fix it laterNo planning involvedProblems:– Code is poorly structured.– The software developed was usually a poor
match for the users’ needs.
Introduction
6
Waterfall model Introduced:– Feedback loops across multiple stages: Validation and verification steps.– Prototyping via a “build it twice” step alongside ofrequirements and design.Difficulties exposed even as revisions were made to
the model.– Required elaborated documents. (Document-driven)– Led to pursuing stages of development in the wrongorder.
The spiral model
7
A Typical Cycle of the spiral
Risk AnalysisPrototypeDesign/ValidationPlanningAlternativesAnd repeatMeasure of Cumulative Cost and Progress
The spiral model
8
Initiating and terminating the spiralFour fundamental questions arise in considering
this presentation of the spiral model: (1) How does the spiral ever get started? (2) How do you get off the spiral when it is
appropriate to terminate a project early? (3) Why does the spiral end so abruptly? (4) What happens to software enhancement (or
maintenance)?
The spiral model
9
Initiating and terminating the spiral Initiating the process: – The spiral gets started by a hypothesis that a
particular operational mission (or set of missions) could be improved by a software effort.
Terminating the process: – The spiral process then involves a test of this
hypothesis:At any time, if the hypothesis fails the test, the
spiral is terminated.
The spiral model
10
The spiral model
11
The spiral model
12
Cycle RequirementsEach cycle is completed by a review by
the people concerned with the project.
Plans for the next cycle should be introduced.
With each succeeding level in the spiral the level of detail increases.
13
14
The spiral model
15
Prototype Throwaway prototypingThrowaway or Rapid Prototyping refers to the creation of a
model that will eventually be discarded rather than becoming part of the final delivered software.
Evolutionary prototypingThe main goal when using Evolutionary Prototyping is to build a
very robust prototype in a structured manner and constantly refine it.
Incremental prototypingThe final product is built as separate prototypes. At the end the
separate prototypes are merged in an overall design. Extreme prototypingIt is a development process is used especially for developing
web applications.
The spiral model
16
Advantages of prototypingReduced time and costs Improved and increased user involvement
Disadvantages of prototyping Insufficient analysisUser confusion of prototype and finished systemDeveloper misunderstanding of user objectivesDeveloper attachment to prototypeExcessive development time of the prototypeExpense of implementing prototyping
17
Risk item Risk management techniquesPersonnel shortfalls Staffing with top talent, job matching; teambuilding;
morale building; cross-training; pre-scheduling key people
Unrealistic schedules and Budgets
Detailed, multisource cost and schedule estimation;design to cost; incremental development; software reuse; requirements scrubbing
Developing the wrong software Functions
Organization analysis; mission analysis; ops-conceptformulation; user surveys; prototyping; early users’manuals
Developing the wrong user Interface
Task analysis; prototyping; scenarios; user characterization (functionality, style, workload)
Gold plating Requirements scrubbing; prototyping; cost-benefit analysis; design to cost
Continuing stream of requirement Changes
High change threshold; information hiding; incrementaldevelopment (defer changes to later increments)
Shortfalls in externally furnished Components
Benchmarking; inspections; reference checking; compatibility analysis
Shortfalls in externallyperformed tasks
Reference checking; pre-award audits; award-fee contracts; competitive design or prototyping;Teambuilding
Real-time performanceShortfalls
Simulation; benchmarking; modeling; prototyping;instrumentation; tuning
Straining computer-science Capabilities
Technical analysis; cost-benefit analysis; prototyping;reference checking
The spiral model
18
The Risk Management Plan
Identify the project’s top 10 risk items.Present a plan for resolving each risk item.Update list of top risk items, plan, and results
monthly.Highlight risk-item status in monthly project
reviews.Compare with previous month’s rankings, status. Initiate appropriate corrective actions.
Spiral model usage: TRW Software Productivity System, Round 0. --Feasibility
study.
19
Spiral model usage: TRW Software Productivity System, Round 1.--Concept of
operations.
20
Spiral model usage: TRW Software Productivity System, Round 2.--Top-level requirements
specification.
21
Evaluation
22
Advantages Estimates become more realistic as work progresses,
because important issues are discovered earlier. It is more able to cope with the changes that software
development generally entails. Software engineers can get their hands in and start
working on a project earlier.
Disadvantages Highly customized limiting re-usability Applied differently for each application Risk of not meeting budget or schedule
Conclusions
23
The risk-driven nature provides adaptability for a full range of software projects.
The model has been successful in a large application, the TRW-SPS.
The model is not yet fully elaborated.Even partial implementations of the model,
such as the risk management plan, are compatible with the other process models.
References
24
Rapid Prototyping Tools Revisited Alan M. Davis, "Operational Prototyping: A new
Development Approach. IEEE Software, September 1992. Page 70-78.
Wikipedia: Software Prototyping B. Boehm, " A Spiral Model of Software Development
and Enhancement, ACM SIGSOFT Software Engineering Notes, Volume 11 , Issue 4 (August 1986) Pages: 14 - 24.
Barry Boehm et al., "Using the WinWin Spiral Model: A Case Study, IEEE Computer, July 1998 (vol. 31 no. 7) pp. 33-44.