110 likes | 127 Views
Chapter 8. Iteration 1—Elaboration Basics. Requirements and Emphasis. NextGen POS system Iteration 1 requirements: Implement basic Process Sale use case: Entering items and receiving cash payment Implement a Start Up use case Do only the “happy path” scenario
E N D
Chapter 8 Iteration 1—Elaboration Basics CS6359 Fall 2011 John Cole
Requirements and Emphasis • NextGen POS system Iteration 1 requirements: • Implement basic Process Sale use case: Entering items and receiving cash payment • Implement a Start Up use case • Do only the “happy path” scenario • No collaboration with external services • No complex pricing rules CS6359 Fall 2011 John Cole
Mailroom Check Processing • Iteration 1: • Start-up use case to authenticate user • Creation of batch with number of checks and total • Entry of checks • Creation of list of checks in batch • Can you see subordinate use cases here? CS6359 Fall 2011 John Cole
Implement Requirements in Phases • All Iteration 1 requirements are subsets • We haven’t even done all the requirements • We don’t even always implement a complete use case in Iteration 1 CS6359 Fall 2011 John Cole
Review: Inception • Short requirements workshop • Most actors, goals, and use cases named • Most use cases in brief format, and 10-20% in full dress • Most influential and risky requirements identified • Version 1 of vision and Supplementary Specification written CS6359 Fall 2011 John Cole
Review: Inception • Risk list • Proof of concept prototypes • User interface prototypes • Recommend on buy/build • High-level candidate architecture • Plan for first iteration • Possible tools CS6359 Fall 2011 John Cole
Elaboration • Two or more short (2-6 week) iterations. Shorter is better. • This is not a design phase • Produce production-quality code CS6359 Fall 2011 John Cole
Elaboration Tasks • Core, risky software architecture programmed and tested • Majority of requirements discovered and stabilized • Major risks mitigated or retired • Estimate overall schedule and resources • Test early and often • Adapt based on user feedback CS6359 Fall 2011 John Cole
Start These in Elaboration • Domain model • Design model • Software architecture document • Data model • Use-case storyboard • User interface prototypes CS6359 Fall 2011 John Cole
You Didn’t Understand Elaboration • More than a few months long • It has only one iteration • Most requirements defined before elaboration • Risks are not being tackled • No executable code • Considered a requirements or design phase • Full, careful design • No early testing CS6359 Fall 2011 John Cole
Planning the next Iteration • Use these criteria to rank requirements: • Risk includes technical complexity as well as uncertainty of effort or usability • Coverage implies that all major parts of the system are known in early iterations • Criticality is functions the client considers of high business value CS6359 Fall 2011 John Cole