software process and problem statements csse 371, software requirements and specification mark...
Post on 19-Dec-2015
218 views
TRANSCRIPT
Software Process and Problem Statements
CSSE 371, Software Requirements and Specification
Mark Ardis, Rose-Hulman Institute
September 3, 2004
Waterfall Model
• Manufacturing life cycle model
• Assumes– multi-stage development cycle– completely separate stages– output of one stage is input for next– each stage complete before next is begun
Advantages
• Much better than chaos!
• Staged deliverables are possible
• Can modify model to allow for feedback
• Clearly defined stages help with – planning, scheduling– management, organization– accountability, control
Disadvantages
• Not very practical (do not know requirements in the beginning)
• No feedback, provision for modification
• Customer sees nothing until last step
8
Spiral Model
• Incremental– more feedback
from customer
• Risk analysis– more rigorous
analysis of risk at each stage
Synchronize-and-Stabilize
• A version of incremental model used by Microsoft– Interview customers– Prioritize features to be added– Divide work into several builds (parallel)– Synchronize builds daily (!)– Stabilize after builds complete
11
Management
Environment
Business Modeling
Implementation
Test
Analysis & Design
Preliminary Iteration(s)
Iter.#1
Phases
Iterations
Iter.#2
Iter.#n
Iter.#n+1
Iter.#n+2
Iter.#m
Iter.#m+1
Deployment
Configuration Mgmt
Requirements
Elaboration TransitionInception Construction
Workflows group activities logically
In an iteration, you walk through all workflows
Process Workflow
Support Workflow
Rational Unified Process Model
13
Agile Manifesto
• We are uncovering better ways of developing software by doing it and helping others do it. Through this work we have come to value: – Individuals and interactions over processes and tools– Working software over comprehensive documentation– Customer collaboration over contract negotiation– Responding to change over following a plan
• That is, while there is value in the items on the right, we value the items on the left more.
14
Problem Statements
• Function: What the solution must do and how it will be used
• Form: The form the system must take in providing the functional features
• Economy: The expected value and cost of the solution to customers and to your own organization
• Time: The relationship of the solution to past, present, and future