007

Views:
 
Category: Entertainment
     
 

Presentation Description

ppt

Comments

Presentation Transcript

The Spiral Model forthe Software Development Process : 

The Spiral Model forthe Software Development Process

Source : 

Source A Spiral Model of Software Development and Enhancement Barry W. Boehm IEEE Computer, vol. 21, n. 5, pp. 61-72

Traditional models : 

Traditional models Kinds Code and fix Stagewise and waterfall Evolutionary Transform (I would include Reuse) Purpose of process models Establish the order of the life-cycle stages Determine transition criteria between stages Different from the purpose of methods, which talk about individual stages

Problems of traditional models : 

Problems of traditional models Stages in the wrong order Documents or code driven, rather than risk-minimization Most software projects fail DoD 75% never used, only 2% fully acceptable Code-and-fix poorly structured user-unfriendly unmaintainable Waterfall minimizes prototyping wastes effort on elaborate but incorrect specifications, designs, code

Problems of traditional models cont. : 

Problems of traditional models cont. Evolutionary produces spaghetti code makes products unintegratable fosters inappropriate but unchangeable decisions makes it difficult to migrate to new systems. Transform limited tool-intensive may not support unanticipated evolution is quickly outdated.

Biggest Risks at TRW : 

Biggest Risks at TRW Personnel shortfalls Unrealistic schedules/budgets Developing the wrong product Inappropriate user interfaces Gold plating Fluid requirements Inadequate off-the-shelf or contracted components Incapable subcontractors Poor real-time performance Low computer science abilities

The Spiral Model : 

The Spiral Model

Meaning of the Model : 

Meaning of the Model Radial dimension is cumulative cost to complete this cycle Angular dimension is progress within this cycle Four quadrants represent four standard periods in each cycle Goal setting Risk minimization Development Planning

Activities of the First and Second Quadrants : 

Activities of the First and Second Quadrants Set objectives Discover alternatives Discover constraints ------------------------------- Gather information to assess risks Prototyping Simulation Benchmarking reference checking administering user surveys modeling Choose the best alternative

Activities of the Third and Fourth Quadrants : 

Activities of the Third and Fourth Quadrants Development of the product of the cycle based on risks Performance or user interfaces? Then evolutionary model Program development or interface-control? Then waterfall model Validation of the work product at the end of this period ------------------------------- Decide whether to continue Review for planning next cycle Allocating resources Gathering commitment.

Additional Aspects : 

Additional Aspects Initiate because of need and utility of a software product Terminate when we give up or install Reinitiate for maintenance Incremental growth – overlaid series of parallel spirals Prototyping – more revolutions Transform – missing revolution(s) Reuse – thin spirals

Advantages of the Spiral Model : 

Advantages of the Spiral Model Encourages prototyping Minimizes unnecessary elaborate specification Focuses on risk Enables rework when needed Incorporates existing models Low risk of making mistakes – waterfall Stable requirements – transform Good customer support, management control, integration, decision making – evolutionary Tool availability – rapid prototyping or transform

More Advantages of the Spiral Model : 

More Advantages of the Spiral Model Focuses early on component reuse Accommodates maintenance as well as initial development Focuses early on quality assurance Focuses on eliminating blind alleys early Avoids “gold-plated” software Can integrate hardware and software development

Disadvantages of the Spiral Model : 

Disadvantages of the Spiral Model Customers may feel insecure Need good risk-assessment skills Spiral model is immature (no longer true) Possibly ponderous (not agile)