210 likes | 370 Views
SDLC – Beyond the Waterfall. Systems Development Life Cycle (SDLC). Many approaches to systems development Sequential versus Iterative Development Understanding the difference between these two approaches is essential Traditional Approach – Waterfall Model.
E N D
Systems Development Life Cycle (SDLC) • Many approaches to systems development • Sequential versus Iterative Development • Understanding the difference between these two approaches is essential • Traditional Approach – Waterfall Model
Systems Development Life Cycle (SDLC) • Traditional Approach is sequential • Waterfall Model is a common example of a sequential approach
SDLC - Waterfall Model Initiation Investigation Analysis Design Implementation Maintenance
SDLC - Waterfall Model • What are the limitations of this approach? • Cannot correct defects from previous stages • No Feedback • Expensive
Example • Existing System – Analysis stage • Extensive problem analysis and Requirements gathered • Move to next stage – Design stage • Create design based on previous analysis stage • What happens if something changes!!
SDLC - Waterfall Model Initiation Investigation Analysis Design Implementation Maintenance
SDLC – Waterfall Model • Limitations of sequential approach has lead to the emergence of a more iterative approach
Traditional vs Agile Traditional Methods • Waterfall Model • Spiral Model • V-Model Agile Methods • Extreme Programming (XP) • Scrum • Adaptive Software Development • Dynamic Systems Development Method (DSDM) • Feature Driven Development
Why Agile? • Instead of the traditional approach
Why Agile? • A more effective method?
A Possible Solution… • Agile software development • Each of these iterations can be seen as miniature software projects
The Agile Software Development Manifesto On February 11-13, 2001 Agile Alliance, (formed of software practitioners and consultants), formed and produced a Manifesto for Agile Software Development Individuals and interactions over processes and tools Working software over comprehensive documentation Customer collaboration over rigid contracts Responding to change over following a plan
People over Process • Human interactions are more important than the company’s processes and tools • Close team relationships • Close working environment
Working Software • Frequent output of working, tested software • Keep It Simple Stupid (KISS)
Relationship With Customer • Reduce the risk of not meeting the terms of contract
Responding to Change • Contracts must be worded so as to allow change
So what makes an agile method? • Incremental • Cooperative
So what makes an agile method? • Straightforward • Adaptive
Agile Methods • Extreme Programming (XP) • Scrum • Adaptive Software Development (ASD) • Crystal Clear and Other Crystal Methodologies • Dynamic Systems Development Method (DSDM) • Feature Driven Development