1 Presenter: Soontarin W. (Senior Software Process Specialist) Date: 24 November 2010 Introduction to Agile Software Development Process 2 AGENDA • Software Development Life Cycles – Waterfall Model – Iterative & Incremental Model • Agile – What is Agile? – Agile Principles – Agile Practices – Retrospective result from Agile Team
14
Embed
Introduction to Agile Software Development Process
Presentation at the QA day by Soontarin W. (Senior Software Process Specialist)
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
1
Presenter: Soontarin W. (Senior Software Process Specialist)
Date: 24 November 2010
Introduction to Agile Software Development Process
22
AGENDA
• Software Development Life Cycles
– Waterfall Model
– Iterative & Incremental Model
• Agile
– What is Agile?
– Agile Principles
– Agile Practices
– Retrospective result from Agile Team
2
3
Waterfall ModelTraditional Model (since 1970)
Testing
Release
Implementation
Requirement
Design
4
Waterfall ModelCustomized in Real Life
Testing
Release
Implementation
Requirement
Design
3
5
Iterative & Incremental ModelWaterfall in Small Pieces
Initiation
Requirement
Initiation
High-level
Design
Integration
Testing
Iteration 1 - N
Iteration
1 to N
Review
In early 2001, a group of industry experts in light-weight process like XP, Scrum, FDD, Crystal,
DSDM, and etc, formed the Agile Alliance and created
The Manifesto of the Agile Alliance.
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.
agilemanifesto.org
4
7
Iterative & Incremental +
Something==
Agile
AgileIs It the New Thing????
• Group of software development methodologies based on iterative
development
• Collection of values, principles, and practices for modelling software
that can be applied on a software development project in an effective and
light-weight manner
• Examples of software development methodologies which are based on
agile development are below:
– Extreme Programming (XP)
– Scrum
– Feature-Driven Development (FDD)
What is Agile?
5
Agile Principles
• Customer satisfaction by rapid, continuous delivery of useful software
• Working software is delivered frequently
• Working software is the principal measure of progress
• Even late changes in requirements are welcome
• Regular adaptation to changing circumstances
• Close, daily, cooperation between business people and developers
• Face-to-face conversation is the best form of communication
• Projects are built around motivated individuals, who should be trusted
• Self-organizing teams
• Simplicity
• Continuous attention to technical excellence and good design
AgileThe Way Application is Made
Growing of application
Growing of application
Growing of application
Req.UT +
CodeTest Demo Req.
UT +
CodeTest Demo Req.
UT +
CodeTest Demo
Iterative functionality
feedback & change
feedback & change
Time
Growing of application
Req. Code + UT Test Release
Waterfall
Agile
Design
6
Agile Development Cycle
Releases (1 – 3 months )
PlanningReflect & improve
Reflect &
improve
Iterations (1 – 4 weeks)
Plan Build Review
Daily stand-up
Update
board
Reflect &
improve
Project ( 6 – 12 months )
Project charter
Product
backlog
Reflect &
improve
Add to backlog Plan Release Plan iteration Build / Reflect / Adapt Do it again (iterate)
12
Basic Structure
Agile PracticesUser Story – Requirement is the story of user