software waterfall life cycle
Post on 22-Feb-2016
34 Views
Preview:
DESCRIPTION
TRANSCRIPT
Software Waterfall Life Cycle
Requirements
Construction
Design
Testing
Delivery and Installation
Operations and Maintenance
Concept Exploration
Prototype
V-Model
Spiral Model
Agile Methods
Life Cycle Heuristics• If the requirements are well-defined
– use the waterfall model (with prototyping)
• If the requirements are very complex and tightly coupled– use a spiral model
• If the requirements are uncertain and the project is not large– use an agile method, gathering and implementing
requirements in increments
Prioritization of Requirements• Essential
– Must be satisfied in next release• Desirable
– need to be prioritized in light of time• Optional
– Can be set aside unless you finish early
• In CS 480-481 projects, propose three systems– Minimally acceptable by the faculty adviser– Expected by the team, faculty adviser, and client– Desirable by the client (doable if everything falls into place)
From SWEBOK 2004
Requirements Elicitation
• Requirement Sources– High level goals or vision of the software– Domain knowledge– Stakeholders– Operational requirements– Organizational environment
• Elicitation Techniques– Interviews, Scenarios (Use Cases), Prototypes,
Facilitated Meetings, Observation
Managing Changes in Requirements
• Change control process (QA)• Traceability
– How does one change affect others?• Version control
– How are changes communicated to the team?– How are changes documented?
• Status tracking– Pending, approved, rejected, deferred, completed,
cancelled
Use Cases
Used to capture functional requirements and describe the interactions between various actors and the system
• Actors are roles (not individuals) that have a goal for using the system– Actors can be other systems or organizations
• Use Cases focus on achieving a user goal– Use cases may have relationships (associations)
with each other
Use Case Scenarios
• Not UML, no standard format
• A written description of the steps involved in an interaction between an actor and the system, always beginning with the primary actor
Written Use Case Scenarios
• Use Case Name (use verb-noun)• Participating Actors • Normal Flow of Events (happy path)
– Exceptions (error conditions)– Extensions (optional goals)
• Entry (pre) Conditions• Exit (post) Conditions• Quality Requirements
Use Case Name Withdraw MoneyParticipating Actors Initiated by Customer
Communicates with Bank Accounting System
Flow of Events 1. Customer inserts ATM card2. ATM reads and validates the bank ID and account number
with Bank Accounting System3. Customer enters PIN number4. ATM validates PIN with Bank Accounting System5. Customer selects account6. Customer enters amount to withdraw7. ATM validates amount with Bank Accounting System8. ATM dispenses cash and receipt9. ATM logs transaction10. Customer takes card, cash, and receipt
Entry-Conditions •ATM has money and supplies•Bank Accounting System (and network) is working
Exit-Conditions •Customer‘s account balance is adjusted•ATM’s money inventory is adjusted•ATM’s supply inventory is adjusted
Quality Requirements •The Customer wait time is less than 3 seconds between steps
top related