McConnell Lifecycles.ppt
Document Sample


Chapter 7
Lifecycle Planning
1
Lifecycles - Introduction
A lifecycle model is a prescriptive model of what should happen
between the first glimmer and the last breath of a (software)
project
It establishes the order in which a project specifies, prototypes,
designs, implements, reviews, tests, and performs other
activities
Choosing a lifecycle for a project has the same influence over
the success of a project than any other planning decision made
The right choice can streamline your project and help to
approach your goal in a sequence of successful steps
2
continued …
Source: Introducing Systems
Analysis, Steve Skidmore, 1997
3
continued …
Strategic study
Define possible IS contributions to the objectives of the enterprise
Identification of candidate applications
Feasibility study
Examination and comparison of candidate applications
Economic, technical, operational issues
Output: feasibility report
Recommends possible solution and comments whether detailed analysis should commence
From this detailed systems project are initiated
Physical systems analysis
Start of a detailed systems investigation of the current system and the requirements of
its successor
Output: requirements analysis document
4
continued …
Logical systems definition
Development of required system (models for data, processes and events)
Output: requirements specification document
Logical systems design
Logically defining data structures (normalisation), and definition of detailed processes
Output: logical design document
Physical systems design
Development of physical inputs and outputs, e.g., files, programs, databases
Output: physical design
Implementation
Testing of programs and systems, development of support manuals and
documentation, training courses, phasing in of the new system into the organisation
Maintenance
Implementation of amendments and omissions, new requirements, new hard/software
5
Pure Waterfall
Source: Rapid Development - Taming Wilde
Software Projects, McConnell, 1996
6
continued …
Basis for most models (starting point)
Orderly sequence of steps
Review at the end
Does not proceed until goals are met
Phases do not overlap
Document driven
Works well
Stable product definition
Well understood, complex problems
All planning is done upfront
Quality dominates cost and schedule
Technically weak staff
Disadvantages
Poor visibility
No tangible results until the end
Sensitive to midstream changes
Not flexibility
Usually it is not possible to fully specify requirements at the start (before any design)
In reality activities often overlap
7
Salmon Waterfall Model
Source: Rapid Development - Taming Wilde
Software Projects, McConnell, 1996
8
Code-And-Fix
System Specification Release
Code and Fix
(maybe) (maybe)
Quite common
Jump straight into coding
If you don’t use any lifecycle model you are probably using code-and-
fix
Combined with short schedules it may lead to code-like-hell
Advantage
No overhead, may work for small projects
9
Spiral
Source: Rapid Development - Taming Wilde
Software Projects, McConnell, 1996
10
Modified Waterfall - Sashimi
Source: Rapid Development - Taming Wilde
Software Projects, McConnell, 1996
11
Waterfall With Subprojects
Source: Rapid Development - Taming Wilde
Software Projects, McConnell, 1996
12
Waterfall With Risk Reduction
Source: Rapid Development - Taming Wilde
Software Projects, McConnell, 1996
13
Evolutionary Prototyping
Source: Rapid Development - Taming Wilde
Software Projects, McConnell, 1996
14
Staged Delivery
Source: Rapid Development - Taming Wilde
Software Projects, McConnell, 1996
15
Design-To-Schedule
Source: Rapid Development - Taming Wilde
Software Projects, McConnell, 1996
16
Evolutionary Delivery
Source: Rapid Development - Taming Wilde
Software Projects, McConnell, 1996
17
Design-To-Tools
Source: Rapid Development - Taming Wilde
Software Projects, McConnell, 1996
18
Commercial Of-The-Shelf
Software
May not satisfy all your needs but
Immediately available
Often cheap, e.g., no costs for design, development
Software product can be built around the functionality provided by a
tool
Free time for more important tasks
Some functionality immediately available – good for customer feedback
19
Get documents about "