Download presentation
Presentation is loading. Please wait.
Published byWendy Sophie Mosley Modified over 9 years ago
1
Prescriptive Process Models Jon Walker
2
Prescription? What does prescriptive mean?
3
Answer ● Proscribe a set of process elements ● “Things to do” ● A model of the lifecycle also
4
Software Life-Cycle Models ● Build-And-Fix Build and product without any specification or design Modify (or “fix”) product until client is satisfied
5
Waterfall ● Used exclusively until the early 80s ● Output (or “artifacts”) from each phase go into next phase ● What are artifacts? ● What are the advantages of Waterfall? Forced discipline of going through each phase Well defined phases ● What are the disadvantages? No modeling of requirements Traceability is hard to attain (why?)
6
Incremental Models ● RAD ● Incremental
7
RAD ● Rapid Application Development (RAD) ● Short development cycle ● High speed waterfall ● Break into pieces/components ● Assign teams to components ● What do you think the pros/cons are?
8
Pros/Cons ● Pros of RAD More rapid feedback than waterfall ● Cons of RAD Project has to be scalable ● Able to be broken into pieces For a large project you need to have a lot of teams May not be appropriate if there is a lot of technical risk (interfaces change)
9
Incremental ● Break the software into pieces ● Build and test the software after adding each piece (incrementally) ● Stop when the final product meets the specifications ● The product must be testable as each piece is added ● What do you think the pros/cons are?
10
Pros/Cons ● Pros of Incremental Client gets a functional product earlier Change in requirements can be handled incrementally ● Cons of Incremental Product has to naturally break into pieces that can be incorporated one at a time without breaking existing functionality Quickly degenerates into build-and-fix model
11
Evolutionary ● Rapid Prototyping ● Spiral ● Synchronize and Stabilize
12
Rapid Prototyping ● Build a prototype and refine prototype until the customer is satisfied ● What are the pros/cons?
13
Pros/Cons ● Pros of Rapid Prototype Requirements are more likely to be correct Input from prototype can be used in design ● Cons of Rapid Prototype Problem with seeing prototype as throw- away? Design may be inflexible Difficult to review decisions made during certain phases
14
Spiral ● Incorporates aspects of the other models ● Main objective is to reduce risk What is risk? ● Like Waterfall but risk analysis is done before each phase and verification is done afterwards ● What are the pros/cons?
15
Pros/Cons ● Pros of Spiral Emphasis on alternatives so when a problem is encountered another approach can be taken ● Cons of Spiral Requires that developers are good at identifying and mitigating risks
16
Synchronize and Stabilize ● Variation on Incremental model ● Gather requirements ● Prioritize and break into three or four builds with the earlier builds having the most important features ● Features are worked on by a number of independent teams ● Each day or periodically during the lifecycle “Synchronize” all source code Test, debug, and “stabilize” “Freeze” result ● Used by Microsoft ● Advantages and disadvantages are similar to incremental model
17
Specialized Process Models ● Component-Based Development Like spiral Identify components at start of each cycle ● Formal Methods Mathematical specification of software ● Aspect-Oriented Development Extract system wide features Aspect oriented languages
18
Rational Unified Process (RUP) ● James Rumbaugh, Grady Booch, Ivar Jacobsen Had individual methods for developing software Rumbaugh and Booch ● 1990 – unified method ● Added Jacobsen - requirements ● Considered the “modern” alternative to waterfall ● Standard for OO software development ● Phases much like waterfall ● Defines work products or “models” for each phase e.g. Use cases
19
Phases of RUP ● Phases Inception Elaboration Contruction Transition Production ● What are the waterfall phases again? ● Can you match them? ● Difference is that they happen in increments ● Increments may be concurrent
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.