Software Lifecycles and Iterative Development - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

Software Lifecycles and Iterative Development

Description:

Lecture: Software Process & Lifecycles. 3. 12/2/09. CS 4911 - Design Project. Software Development Activities. Lifecycle Selection. System Engineering ... – PowerPoint PPT presentation

Number of Views:49
Avg rating:3.0/5.0
Slides: 17
Provided by: compu62
Category:

less

Transcript and Presenter's Notes

Title: Software Lifecycles and Iterative Development


1
Software Lifecycles and Iterative Development
  • Spring 2007

2
Agenda
  • Deliverables
  • NLT Friday, January 11 _at_ 2400 - Status Report 1
  • Project Selection
  • Team Formation/Roles/Contact information
  • Project Status Report Format
  • Project/Team Formation
  • Team Signup
  • Lecture Software Process Lifecycles

3
Software Development Activities
  • Lifecycle Selection
  • System Engineering
  • Requirements
  • Determining Needs
  • Analysis
  • Design
  • Coding
  • Debugging
  • Integration
  • Testing
  • Performance Testing Optimization
  • Analysis Management
  • Deployment
  • Delivery
  • Maintenance
  • Upgrades

4
Support Activities
  • Project Planning and Tracking
  • Customer Interaction
  • Configuration Management
  • Process Improvement
  • Verification/Validation
  • Reviews/Audits
  • Training
  • Documentation
  • Personnel Management

5
Lifecycles
  • Major Task Identification
  • Sequencing
  • General model to be tailored

In the beginning was......
6
Waterfall Model
Pfleeger 98
7
Code and Fix
  • Really Bad
  • Really Common
  • Advantage
  • No Overhead
  • No Expertise
  • Disadvantage
  • No means of assessing progress
  • Flawed design can lead to throwaway
  • Throwaway project only

8
Spiral Model
Risk analysis
Constraints
4
Pfleeger 98
4
Risk analysis
Constraints
3
3
4
Alternatives
Risk analysis
Constraints
2
3
2
Alternatives
2
Alternatives
Risk analysis
Constraints
Proto
-
Proto
-
Proto
-
1
Alternatives
type
type
type
Prototype
Budget
2
3
4
Budget
Budget
Budget
1
1
3
4
1
1
2
start
Detailed
Requirements,
Concept of
Software
design
life-cycle plan
operation
design
Software
requirements
Development
Integration
Validated
plan
Code
requirements
and test plan
Validated,
verified design
Unit test
System
test
Acceptance
Implementation
test
plan
PLAN
DEVELOP AND TEST
9
Spiral
  • Highly sophisticated
  • Each spiral addresses one or more risks in
    development
  • Move on only when risk is acceptable
  • Main disadvantage is complication
  • Main advantage is risk reduction

10
Evolutionary Prototyping
Initial Concept
Design and Implement Initial Prototype
Refine Prototype Until Acceptance
Complete And Release Prototype
Use for rapidly changing requirements Customer
wont commit to specification No one really
understands what they want
11
Staged Delivery
Concept Analysis
Stage 1 Detailed Design, Code Test
Requirements Analysis
Stage 2 Design, Code Test
Architectural Design
Stage n Design, Code Test
12
Combinations (Tailoring)
  • Waterfall with risk reduction (Spiral
    Waterfall)
  • Evolutionary Delivery (Staged Delivery
    Evolutionary Prototyping)
  • Design to Schedule (Staged Delivery Scope
    reduction)

13
Extreme Programming
14
Common Themes
  • Iteration
  • Each iteration a mini-project
  • Duration 1-6 weeks
  • Each piece is not a prototype, but part of the
    final system
  • Understand risk vs. business value in planning
    iterations
  • Put pieces of the system into users hands as
    early as possible

15
Common Themes
  • Timeboxing
  • Setting the date for an iteration
  • Date cannot change
  • Only functionality can change
  • Are of short duration (not a 16 week timebox)

16
Iterative Development
  • Not all requirements known up front.
  • Product vision and top n high-priority
    requirements are known
  • No requirements changes inside an iteration.
    (Customer Negotiation)
  • Customer agrees on what requirements are in each
    timeboxed iteration.
Write a Comment
User Comments (0)
About PowerShow.com