SlideShare a Scribd company logo
1 of 42
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Agile Software Development
BY : RAKESH RANJAN KUMAR
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Agenda
 Introduction
 Why Agile ?
 Principle of Agile Development
Agile manifesto
 Methods of Agile Development
Scrum
Extreme programming (XP)
 Advantages
 Summary
 Q&A
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Introduction
• "lightweight" software development methods
evolved in the mid-1990s.
• In February 2001, published the Manifesto for Agile
Software Development
• "Agile Development" is a group term of several
iterative and incremental software development
methodologies.
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Why Agile?
Reduced cost, increased output
Greater quality, early and oftenReduced risk, increased predictability
Failure of waterfall model
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Principle of agile
• The system is an iterative process and developed in
a series of increments.
• Priority is to satisfy the customer through early and
continuous delivery of valuable software.
• Customer and developers must work together.
• Simplicity – the art of maximizing the amount of
work not done- is essential.
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Process and toolsProcess and toolsIndividuals and
interactions
Individuals and
interactions
over
Following a planFollowing a planResponding to
change
Responding to
change
over
Comprehensive
documentation
Comprehensive
documentationWorking softwareWorking software over
Contract negotiationContract negotiationCustomer
collaboration
Customer
collaboration
over
>> 0 >> 1 >> 2 >> 3 >> 4 >>
• Focus on good people who work well together.
• A good team with no process (or, worse, a bad one) is
better than a bad team with a good process…
• Ideally the team should be made up of “generalizing
specialists” – people who specialize in something, but
are conversant in all the disciplines the team needs
over
>> 0 >> 1 >> 2 >> 3 >> 4 >>
• We’re not paid to develop documentation, we’re
paid to develop software.
• Of course that doesn’t mean that documentation
is unimportant, but it has to be considered
relative to its cost in delivering functionality (ie,
software).
over
>> 0 >> 1 >> 2 >> 3 >> 4 >>
• The primary purpose of collaboration is to work
with the customer to make sure that they are
involved in delivering the final product they
need. The primary purpose of a contract is to
cover your posterior…
• “Change management” is all-too-often a
euphemism for “change prevention.”
over
>> 0 >> 1 >> 2 >> 3 >> 4 >>
• A changed requirement late in the lifecycle is a
competitive advantage as long as you can act on it.
• If you froze requirements 18 months ago and deliver
tomorrow, your software is delivering on the
business needs of 18 months ago.
over
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Methods of Agile Development
– Extreme Programming (XP) (Kent Beck, Ward
Cunningham, Ron Jeffries)
– Scrum (Jeff Sutherland, Mike Beedle, Ken
Schwaber)
– DSDM – Dynamic Systems Development Method
(Community owned)
– Crystal (Alistair Cockburn)
– ASD – Adaptive Software Development (Jim
Highsmith)
– FDD-Feature Driven Development(Peter Code)
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Scrum
>> 0 >> 1 >> 2 >> 3 >> 4 >>
•Scrum is an agile process that allows us to focus on
delivering the highest business value in the shortest
time.
•It allows us to rapidly and repeatedly inspect actual
working software (every two weeks to one month).
•The business sets the priorities. Teams self-organize
to determine the best way to deliver the highest
priority features.
•Every two weeks to a month anyone can see real
working software and decide to release it as is or
continue to enhance it for another sprint.
Scrum in 100 words
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Scrum Workflow
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Scrum
Cancel
Gift wrap
Return
Sprint
2-4 weeks
Return
Sprint goal
Sprint
backlog
Potentially shippable
product increment
Product
backlog
CouponsGift wrap
Coupons
Cancel
24 hours
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Sequential vs. overlapping
development
Rather than doing all of
one thing at a time...
...Scrum teams do a little
of everything all the time
Requirements Design Code Test
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Scrum framework
•Product owner
•Scrum Master
•Team
Roles
•Sprint planning
•Sprint retrospective
•Daily scrum meeting
Ceremonies
•Product backlog
•Sprint backlog
Artifacts
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Scrum framework
•Sprint planning
•Sprint retrospective
•Daily scrum meeting
Ceremonies
•Product backlog
•Sprint backlog
Artifacts
•Product owner
•ScrumMaster
•Team
Roles
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Product owner
• Define the features of the product
• Decide on release date and content
• Be responsible for the profitability of the product
(ROI)
• Prioritize features according to market value
• Adjust features and priority every iteration, as
needed
• Accept or reject work results
>> 0 >> 1 >> 2 >> 3 >> 4 >>
The ScrumMaster
• Represents management to the project
• Responsible for enacting Scrum values and
practices
• Removes impediments
• Ensure that the team is fully functional and
productive
• Enable close cooperation across all roles and
functions
• Shield the team from external interferences
>> 0 >> 1 >> 2 >> 3 >> 4 >>
The team
• Typically 5-9 people
• Cross-functional:
– Programmers, testers, user experience
designers, etc.
• Members should be full-time
– May be exceptions (e.g., database
administrator)
• Teams are self-organizing
– Ideally, no titles but rarely a possibility
• Membership should change only between sprints
>> 0 >> 1 >> 2 >> 3 >> 4 >>
•Product owner
•ScrumMaster
•Team
Roles
Scrum framework
•Product backlog
•Sprint backlog
Artifacts
•Sprint planning
•Sprint retrospective
•Daily scrum meeting
Ceremonies
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Sprint planning meeting
Sprint prioritization
• Analyze and evaluate product
backlog
• Select sprint goal
Sprint planning
• Decide how to achieve sprint
goal (design)
• Create sprint backlog (tasks)
from product backlog items
(user stories / features)
• Estimate sprint backlog in hours
Sprint
goal
Sprint
goal
Sprint
backlog
Sprint
backlog
Business
conditions
Business
conditions
Team
capacity
Team
capacity
Product
backlog
Product
backlog
Techno-
logy
Techno-
logy
Current
product
Current
product
>> 0 >> 1 >> 2 >> 3 >> 4 >>
The daily scrum
• Parameters
– Daily
– 15-minutes
– Stand-up
• Not for problem solving
– Whole world is invited
– Only team members, ScrumMaster, product
owner, can talk
• Helps avoid other unnecessary meetings
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Everyone answers 3 questions
• These are not status for the ScrumMaster
– They are commitments in front of peers
What did you do yesterday?What did you do yesterday?
1
What will you do today?What will you do today?
2
Is anything in your way?Is anything in your way?
3
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Sprint retrospective
• Periodically take a look at what is and is
not working
• Typically 15–30 minutes
• Done after every sprint
• Whole team participates
– ScrumMaster
– Product owner
– Team
– Possibly customers and others
>> 0 >> 1 >> 2 >> 3 >> 4 >>
•Product owner
•ScrumMaster
•Team
Roles
Scrum framework
•Sprint planning
•Sprint retrospective
•Daily scrum meeting
Ceremonies
•Product backlog
•Sprint backlog
Artifacts
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Product backlog
• The requirements
• A list of all desired work
on the project
• Prioritized by the product
owner
• Reprioritized at the start
of each sprint
This is the
product backlog
This is the
product backlog
>> 0 >> 1 >> 2 >> 3 >> 4 >>
A sprint backlog
• Individuals sign up for work of their own choosing
– Work is never assigned
• Estimated work remaining is updated daily
• Any team member can add, delete or change the
sprint backlog
• Work for the sprint emerges
• If work is unclear, define a sprint backlog item with
a larger amount of time and break it down later
• Update work remaining as more becomes known
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Scrum has been used by:
•Microsoft
•Yahoo
•Google
•Electronic Arts
•Lockheed Martin
•Philips
•Siemens
•Nokia
•IBM
•Capital One
•BBC
•Intuit
•Nielsen Media
•First American Real Estate
•BMC Software
•John Deere
•Lexis Nexis
•Sabre
•Salesforce.com
•Time Warner
•Turner Broadcasting
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Extreme Programming (XP)
>> 0 >> 1 >> 2 >> 3 >> 4 >>
• XP, originally described by Kent Beck, has emerged
as one of the most popular agile methods.
• XP is a disciplined approach to delivering high-
quality software quickly and continuously.
• It promotes high customer involvement, rapid
feedback loops, continuous testing, continuous
planning, and close teamwork to deliver working
software at very frequent intervals, typically every 1-
3 weeks.
XP Definitions
>> 0 >> 1 >> 2 >> 3 >> 4 >>
The XP release cycle
>> 0 >> 1 >> 2 >> 3 >> 4 >>
The Four XP Values
• Simplicity
– Simplest thing that
could possibly work
– YAGNI
• Communication
– Developers
– Users
– Customers
– Testers
– Code
• Feedback
– Testing
– Experimenting
– Delivering
• Courage
– Trust
– History
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Twelve XP Practices
>> 0 >> 1 >> 2 >> 3 >> 4 >>
• Planning Game
– Close interaction between the customer and the
developer
• Short Releases
– Deliver business value on a very short cycle
• Simple Design
– XP Mantra: “The simplest thing that could possibly work”.
• Testing
– s/w development is test driven.
– Unit test for every entity
>> 0 >> 1 >> 2 >> 3 >> 4 >>
• Refactoring
– changing internal structure without changing external
behavior
• Pair Programming
– All production code written with 2 programmers at 1
machine
• Collective Ownership
– Any programmer can change any code anywhere in the
system at any time
• Continuous Integration
– Integrate & build the system several times a day
>> 0 >> 1 >> 2 >> 3 >> 4 >>
• On-site Customer
– Customer has to be present and available full time for
the team
• Sustainable Pace
– Tired programmers often write lower-quality code
– Better to stay fresh, healthy, positive, and effective
• Metaphor
– Defines a "system of names" and guides the team's
development and communication
• Coding Standards
– Programmers write all code in accordance with rules
emphasizing communication throughout the code
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Agile Advantages
• Reducing the overall risk associated with
software development.
• Easily adapting to changing requirements
throughout the process.
• Ensure that value is continuing to be maximized
throughout the development process.
• Much more accurate visibility into the actual
progress of projects is available.
>> 0 >> 1 >> 2 >> 3 >> 4 >>
Summary
• Agile = try, inspect, adapt, repeat
• Highly focused, empowered teams
• Collaborate with all stakeholders
• Optimize and automate feedback
• Deliver real value early and often
• Use feedback to evaluate, ruthlessly prioritize,
and re-plan
• Delivers high quality, ensures flexibility
• Evaluate business value of everything
>> 0 >> 1 >> 2 >> 3 >> 4 >>
>> 0 >> 1 >> 2 >> 3 >> 4 >>

More Related Content

What's hot

Kanban != Kanban Board
Kanban != Kanban BoardKanban != Kanban Board
Kanban != Kanban Board
Sudipta Lahiri
 
Agile Methodology(SCRUM)
Agile Methodology(SCRUM)Agile Methodology(SCRUM)
Agile Methodology(SCRUM)
KhushSlideShare
 
Vt2014 kanban presentation
Vt2014 kanban presentationVt2014 kanban presentation
Vt2014 kanban presentation
plog99
 

What's hot (20)

Kanban introduction
Kanban introductionKanban introduction
Kanban introduction
 
Scrum, agile process
Scrum, agile processScrum, agile process
Scrum, agile process
 
Agile-Scrum Methodology-An Introduction
Agile-Scrum Methodology-An IntroductionAgile-Scrum Methodology-An Introduction
Agile-Scrum Methodology-An Introduction
 
Agile scrum
Agile scrumAgile scrum
Agile scrum
 
Agile Scrum training
Agile Scrum trainingAgile Scrum training
Agile Scrum training
 
Scrum an Agile Methodology
Scrum an Agile MethodologyScrum an Agile Methodology
Scrum an Agile Methodology
 
Getting agile-with-scrum-ndc-2104
Getting agile-with-scrum-ndc-2104Getting agile-with-scrum-ndc-2104
Getting agile-with-scrum-ndc-2104
 
Scrum 101
Scrum 101 Scrum 101
Scrum 101
 
Scrum introduction
Scrum introductionScrum introduction
Scrum introduction
 
Let's Talk About Scrum
Let's Talk About ScrumLet's Talk About Scrum
Let's Talk About Scrum
 
Kanban != Kanban Board
Kanban != Kanban BoardKanban != Kanban Board
Kanban != Kanban Board
 
Scrum
ScrumScrum
Scrum
 
Scrum methodology
Scrum methodology Scrum methodology
Scrum methodology
 
Agile Methodology(SCRUM)
Agile Methodology(SCRUM)Agile Methodology(SCRUM)
Agile Methodology(SCRUM)
 
Thur Venture
Thur VentureThur Venture
Thur Venture
 
Vt2014 kanban presentation
Vt2014 kanban presentationVt2014 kanban presentation
Vt2014 kanban presentation
 
SCRUM and Poker Game In Agile Project
SCRUM and Poker Game In Agile ProjectSCRUM and Poker Game In Agile Project
SCRUM and Poker Game In Agile Project
 
Choosing right agile methodology for your project
Choosing right agile methodology for your projectChoosing right agile methodology for your project
Choosing right agile methodology for your project
 
An Introduction to Scrum
An Introduction to ScrumAn Introduction to Scrum
An Introduction to Scrum
 
Agile and Scrum - GB
Agile and Scrum - GBAgile and Scrum - GB
Agile and Scrum - GB
 

Similar to Agile

Scrum Intro for E-works
Scrum Intro for E-worksScrum Intro for E-works
Scrum Intro for E-works
Nora Papazyan
 
Lecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.pptLecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.ppt
MANYAGOEL14
 
Lecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.pptLecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.ppt
ssuser4f2477
 

Similar to Agile (20)

Introduction to scrum
Introduction to scrumIntroduction to scrum
Introduction to scrum
 
Scrum Software Development Methodology
Scrum Software Development MethodologyScrum Software Development Methodology
Scrum Software Development Methodology
 
Agile Methodology
Agile MethodologyAgile Methodology
Agile Methodology
 
Customized Scrum
Customized ScrumCustomized Scrum
Customized Scrum
 
Learn scrum in half an hour
Learn scrum in half an hourLearn scrum in half an hour
Learn scrum in half an hour
 
Practicing Agile through Scrum
Practicing Agile through ScrumPracticing Agile through Scrum
Practicing Agile through Scrum
 
Scrum Overview
Scrum OverviewScrum Overview
Scrum Overview
 
Agile with scrum methodology
Agile with scrum methodologyAgile with scrum methodology
Agile with scrum methodology
 
English-RedistributableIntroToScrumPPT.pptx
English-RedistributableIntroToScrumPPT.pptxEnglish-RedistributableIntroToScrumPPT.pptx
English-RedistributableIntroToScrumPPT.pptx
 
Scrum Intro for E-works
Scrum Intro for E-worksScrum Intro for E-works
Scrum Intro for E-works
 
Agile scrum
Agile scrumAgile scrum
Agile scrum
 
Lecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.pptLecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.ppt
 
Lecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.pptLecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.ppt
 
Lecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.pptLecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.ppt
 
Lecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.pptLecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.ppt
 
Lecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.pptLecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.ppt
 
Lecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.pptLecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.ppt
 
Lecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.pptLecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.ppt
 
Agile Processes-Scrum.ppt
 Agile Processes-Scrum.ppt Agile Processes-Scrum.ppt
Agile Processes-Scrum.ppt
 
Lecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.pptLecture 12 - Agile Processes-Scrum.ppt
Lecture 12 - Agile Processes-Scrum.ppt
 

Recently uploaded

Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
Kamal Acharya
 
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakes
MayuraD1
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Kandungan 087776558899
 

Recently uploaded (20)

Thermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.pptThermal Engineering -unit - III & IV.ppt
Thermal Engineering -unit - III & IV.ppt
 
AIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech studentsAIRCANVAS[1].pdf mini project for btech students
AIRCANVAS[1].pdf mini project for btech students
 
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced LoadsFEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
FEA Based Level 3 Assessment of Deformed Tanks with Fluid Induced Loads
 
Thermal Engineering Unit - I & II . ppt
Thermal Engineering  Unit - I & II . pptThermal Engineering  Unit - I & II . ppt
Thermal Engineering Unit - I & II . ppt
 
kiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal loadkiln thermal load.pptx kiln tgermal load
kiln thermal load.pptx kiln tgermal load
 
Double Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torqueDouble Revolving field theory-how the rotor develops torque
Double Revolving field theory-how the rotor develops torque
 
Thermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - VThermal Engineering-R & A / C - unit - V
Thermal Engineering-R & A / C - unit - V
 
Hospital management system project report.pdf
Hospital management system project report.pdfHospital management system project report.pdf
Hospital management system project report.pdf
 
Introduction to Serverless with AWS Lambda
Introduction to Serverless with AWS LambdaIntroduction to Serverless with AWS Lambda
Introduction to Serverless with AWS Lambda
 
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptxOrlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
Orlando’s Arnold Palmer Hospital Layout Strategy-1.pptx
 
Computer Lecture 01.pptxIntroduction to Computers
Computer Lecture 01.pptxIntroduction to ComputersComputer Lecture 01.pptxIntroduction to Computers
Computer Lecture 01.pptxIntroduction to Computers
 
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptxA CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
A CASE STUDY ON CERAMIC INDUSTRY OF BANGLADESH.pptx
 
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
Call Girls in South Ex (delhi) call me [🔝9953056974🔝] escort service 24X7
 
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKARHAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
HAND TOOLS USED AT ELECTRONICS WORK PRESENTED BY KOUSTAV SARKAR
 
School management system project Report.pdf
School management system project Report.pdfSchool management system project Report.pdf
School management system project Report.pdf
 
Online food ordering system project report.pdf
Online food ordering system project report.pdfOnline food ordering system project report.pdf
Online food ordering system project report.pdf
 
DeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakesDeepFakes presentation : brief idea of DeepFakes
DeepFakes presentation : brief idea of DeepFakes
 
data_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdfdata_management_and _data_science_cheat_sheet.pdf
data_management_and _data_science_cheat_sheet.pdf
 
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
Navigating Complexity: The Role of Trusted Partners and VIAS3D in Dassault Sy...
 
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak HamilCara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
Cara Menggugurkan Sperma Yang Masuk Rahim Biyar Tidak Hamil
 

Agile

  • 1. >> 0 >> 1 >> 2 >> 3 >> 4 >> Agile Software Development BY : RAKESH RANJAN KUMAR
  • 2. >> 0 >> 1 >> 2 >> 3 >> 4 >> Agenda  Introduction  Why Agile ?  Principle of Agile Development Agile manifesto  Methods of Agile Development Scrum Extreme programming (XP)  Advantages  Summary  Q&A
  • 3. >> 0 >> 1 >> 2 >> 3 >> 4 >> Introduction • "lightweight" software development methods evolved in the mid-1990s. • In February 2001, published the Manifesto for Agile Software Development • "Agile Development" is a group term of several iterative and incremental software development methodologies.
  • 4. >> 0 >> 1 >> 2 >> 3 >> 4 >> Why Agile? Reduced cost, increased output Greater quality, early and oftenReduced risk, increased predictability Failure of waterfall model
  • 5. >> 0 >> 1 >> 2 >> 3 >> 4 >> Principle of agile • The system is an iterative process and developed in a series of increments. • Priority is to satisfy the customer through early and continuous delivery of valuable software. • Customer and developers must work together. • Simplicity – the art of maximizing the amount of work not done- is essential.
  • 6. >> 0 >> 1 >> 2 >> 3 >> 4 >> Process and toolsProcess and toolsIndividuals and interactions Individuals and interactions over Following a planFollowing a planResponding to change Responding to change over Comprehensive documentation Comprehensive documentationWorking softwareWorking software over Contract negotiationContract negotiationCustomer collaboration Customer collaboration over
  • 7. >> 0 >> 1 >> 2 >> 3 >> 4 >> • Focus on good people who work well together. • A good team with no process (or, worse, a bad one) is better than a bad team with a good process… • Ideally the team should be made up of “generalizing specialists” – people who specialize in something, but are conversant in all the disciplines the team needs over
  • 8. >> 0 >> 1 >> 2 >> 3 >> 4 >> • We’re not paid to develop documentation, we’re paid to develop software. • Of course that doesn’t mean that documentation is unimportant, but it has to be considered relative to its cost in delivering functionality (ie, software). over
  • 9. >> 0 >> 1 >> 2 >> 3 >> 4 >> • The primary purpose of collaboration is to work with the customer to make sure that they are involved in delivering the final product they need. The primary purpose of a contract is to cover your posterior… • “Change management” is all-too-often a euphemism for “change prevention.” over
  • 10. >> 0 >> 1 >> 2 >> 3 >> 4 >> • A changed requirement late in the lifecycle is a competitive advantage as long as you can act on it. • If you froze requirements 18 months ago and deliver tomorrow, your software is delivering on the business needs of 18 months ago. over
  • 11. >> 0 >> 1 >> 2 >> 3 >> 4 >> Methods of Agile Development – Extreme Programming (XP) (Kent Beck, Ward Cunningham, Ron Jeffries) – Scrum (Jeff Sutherland, Mike Beedle, Ken Schwaber) – DSDM – Dynamic Systems Development Method (Community owned) – Crystal (Alistair Cockburn) – ASD – Adaptive Software Development (Jim Highsmith) – FDD-Feature Driven Development(Peter Code)
  • 12. >> 0 >> 1 >> 2 >> 3 >> 4 >> Scrum
  • 13. >> 0 >> 1 >> 2 >> 3 >> 4 >> •Scrum is an agile process that allows us to focus on delivering the highest business value in the shortest time. •It allows us to rapidly and repeatedly inspect actual working software (every two weeks to one month). •The business sets the priorities. Teams self-organize to determine the best way to deliver the highest priority features. •Every two weeks to a month anyone can see real working software and decide to release it as is or continue to enhance it for another sprint. Scrum in 100 words
  • 14. >> 0 >> 1 >> 2 >> 3 >> 4 >> Scrum Workflow
  • 15. >> 0 >> 1 >> 2 >> 3 >> 4 >> Scrum Cancel Gift wrap Return Sprint 2-4 weeks Return Sprint goal Sprint backlog Potentially shippable product increment Product backlog CouponsGift wrap Coupons Cancel 24 hours
  • 16. >> 0 >> 1 >> 2 >> 3 >> 4 >> Sequential vs. overlapping development Rather than doing all of one thing at a time... ...Scrum teams do a little of everything all the time Requirements Design Code Test
  • 17. >> 0 >> 1 >> 2 >> 3 >> 4 >> Scrum framework •Product owner •Scrum Master •Team Roles •Sprint planning •Sprint retrospective •Daily scrum meeting Ceremonies •Product backlog •Sprint backlog Artifacts
  • 18. >> 0 >> 1 >> 2 >> 3 >> 4 >> Scrum framework •Sprint planning •Sprint retrospective •Daily scrum meeting Ceremonies •Product backlog •Sprint backlog Artifacts •Product owner •ScrumMaster •Team Roles
  • 19. >> 0 >> 1 >> 2 >> 3 >> 4 >> Product owner • Define the features of the product • Decide on release date and content • Be responsible for the profitability of the product (ROI) • Prioritize features according to market value • Adjust features and priority every iteration, as needed • Accept or reject work results
  • 20. >> 0 >> 1 >> 2 >> 3 >> 4 >> The ScrumMaster • Represents management to the project • Responsible for enacting Scrum values and practices • Removes impediments • Ensure that the team is fully functional and productive • Enable close cooperation across all roles and functions • Shield the team from external interferences
  • 21. >> 0 >> 1 >> 2 >> 3 >> 4 >> The team • Typically 5-9 people • Cross-functional: – Programmers, testers, user experience designers, etc. • Members should be full-time – May be exceptions (e.g., database administrator) • Teams are self-organizing – Ideally, no titles but rarely a possibility • Membership should change only between sprints
  • 22. >> 0 >> 1 >> 2 >> 3 >> 4 >> •Product owner •ScrumMaster •Team Roles Scrum framework •Product backlog •Sprint backlog Artifacts •Sprint planning •Sprint retrospective •Daily scrum meeting Ceremonies
  • 23. >> 0 >> 1 >> 2 >> 3 >> 4 >> Sprint planning meeting Sprint prioritization • Analyze and evaluate product backlog • Select sprint goal Sprint planning • Decide how to achieve sprint goal (design) • Create sprint backlog (tasks) from product backlog items (user stories / features) • Estimate sprint backlog in hours Sprint goal Sprint goal Sprint backlog Sprint backlog Business conditions Business conditions Team capacity Team capacity Product backlog Product backlog Techno- logy Techno- logy Current product Current product
  • 24. >> 0 >> 1 >> 2 >> 3 >> 4 >> The daily scrum • Parameters – Daily – 15-minutes – Stand-up • Not for problem solving – Whole world is invited – Only team members, ScrumMaster, product owner, can talk • Helps avoid other unnecessary meetings
  • 25. >> 0 >> 1 >> 2 >> 3 >> 4 >> Everyone answers 3 questions • These are not status for the ScrumMaster – They are commitments in front of peers What did you do yesterday?What did you do yesterday? 1 What will you do today?What will you do today? 2 Is anything in your way?Is anything in your way? 3
  • 26. >> 0 >> 1 >> 2 >> 3 >> 4 >> Sprint retrospective • Periodically take a look at what is and is not working • Typically 15–30 minutes • Done after every sprint • Whole team participates – ScrumMaster – Product owner – Team – Possibly customers and others
  • 27. >> 0 >> 1 >> 2 >> 3 >> 4 >> •Product owner •ScrumMaster •Team Roles Scrum framework •Sprint planning •Sprint retrospective •Daily scrum meeting Ceremonies •Product backlog •Sprint backlog Artifacts
  • 28. >> 0 >> 1 >> 2 >> 3 >> 4 >> Product backlog • The requirements • A list of all desired work on the project • Prioritized by the product owner • Reprioritized at the start of each sprint This is the product backlog This is the product backlog
  • 29. >> 0 >> 1 >> 2 >> 3 >> 4 >> A sprint backlog • Individuals sign up for work of their own choosing – Work is never assigned • Estimated work remaining is updated daily • Any team member can add, delete or change the sprint backlog • Work for the sprint emerges • If work is unclear, define a sprint backlog item with a larger amount of time and break it down later • Update work remaining as more becomes known
  • 30. >> 0 >> 1 >> 2 >> 3 >> 4 >> Scrum has been used by: •Microsoft •Yahoo •Google •Electronic Arts •Lockheed Martin •Philips •Siemens •Nokia •IBM •Capital One •BBC •Intuit •Nielsen Media •First American Real Estate •BMC Software •John Deere •Lexis Nexis •Sabre •Salesforce.com •Time Warner •Turner Broadcasting
  • 31. >> 0 >> 1 >> 2 >> 3 >> 4 >> Extreme Programming (XP)
  • 32. >> 0 >> 1 >> 2 >> 3 >> 4 >> • XP, originally described by Kent Beck, has emerged as one of the most popular agile methods. • XP is a disciplined approach to delivering high- quality software quickly and continuously. • It promotes high customer involvement, rapid feedback loops, continuous testing, continuous planning, and close teamwork to deliver working software at very frequent intervals, typically every 1- 3 weeks. XP Definitions
  • 33. >> 0 >> 1 >> 2 >> 3 >> 4 >> The XP release cycle
  • 34. >> 0 >> 1 >> 2 >> 3 >> 4 >> The Four XP Values • Simplicity – Simplest thing that could possibly work – YAGNI • Communication – Developers – Users – Customers – Testers – Code • Feedback – Testing – Experimenting – Delivering • Courage – Trust – History
  • 35. >> 0 >> 1 >> 2 >> 3 >> 4 >> Twelve XP Practices
  • 36. >> 0 >> 1 >> 2 >> 3 >> 4 >> • Planning Game – Close interaction between the customer and the developer • Short Releases – Deliver business value on a very short cycle • Simple Design – XP Mantra: “The simplest thing that could possibly work”. • Testing – s/w development is test driven. – Unit test for every entity
  • 37. >> 0 >> 1 >> 2 >> 3 >> 4 >> • Refactoring – changing internal structure without changing external behavior • Pair Programming – All production code written with 2 programmers at 1 machine • Collective Ownership – Any programmer can change any code anywhere in the system at any time • Continuous Integration – Integrate & build the system several times a day
  • 38. >> 0 >> 1 >> 2 >> 3 >> 4 >> • On-site Customer – Customer has to be present and available full time for the team • Sustainable Pace – Tired programmers often write lower-quality code – Better to stay fresh, healthy, positive, and effective • Metaphor – Defines a "system of names" and guides the team's development and communication • Coding Standards – Programmers write all code in accordance with rules emphasizing communication throughout the code
  • 39. >> 0 >> 1 >> 2 >> 3 >> 4 >> Agile Advantages • Reducing the overall risk associated with software development. • Easily adapting to changing requirements throughout the process. • Ensure that value is continuing to be maximized throughout the development process. • Much more accurate visibility into the actual progress of projects is available.
  • 40. >> 0 >> 1 >> 2 >> 3 >> 4 >> Summary • Agile = try, inspect, adapt, repeat • Highly focused, empowered teams • Collaborate with all stakeholders • Optimize and automate feedback • Deliver real value early and often • Use feedback to evaluate, ruthlessly prioritize, and re-plan • Delivers high quality, ensures flexibility • Evaluate business value of everything
  • 41. >> 0 >> 1 >> 2 >> 3 >> 4 >>
  • 42. >> 0 >> 1 >> 2 >> 3 >> 4 >>