Upload
syed-rayhan
View
3.670
Download
0
Tags:
Embed Size (px)
DESCRIPTION
This presentation gives an overview of Agile software development process using Scrum. It compares and contrasts Agile/Scrum with Traditional approach (a.k.a, Waterfall). If your are new to Agile or thinking about introducing Agile to your company, this will help you show why.
Citation preview
Copyright 2010 Code71 Inc. All rights reserved.http://www.code71.com http://www.scrumpad.com
Managing Software Projects using Agile/Scrum
Syed RayhanCo-founder, Code71, Inc.Contact: [email protected]: http://blog.syedrayhan.comCompany: http://www.code71.comProduct: http://www.scrumpad.com
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Agenda
• Tradit ional software development lifecycle• What are the issues with tradit ional software
development?• What is the answer?• What is Agile?• Why should you use it?• Scrum Framework• Q& A
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Tradit ional Software Project Lifecycle
Waterfall
Requirements
Implementation
Varification
Maintenance
Design
Feedback loop
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Assumptions of Waterfall Projects
Project can be accurately planned in details
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Assumptions of Waterfall projects
Words are precise
En tré e c om e s w ith s oup o r s a lad and b re ad
Soup or (s a la d and bre a d)?(S oup or s a la d) and bre a d?
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
And the result…
According to the Standish group, only 34% IT projects are successful
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
A few top reasons for failure
. Unrealistic or unarticulated project goals
Inaccurate estimates
Badly defined system requirements
Poor communication among customers,developers, and users
Stakeholder politics
Poor software development process andpractices
1
2
3
4
5
6
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
In reality, software projects are like…
forecasting weather- rain or
shine?
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
In reality, software projects are like…
functional silos?
highly interactive cross-functional social sett ings?
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
In reality, software projects involve…
factory workers who needs detailed direction ?
knowledge workers who can self-manage?
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
What is the solution?
We need a new way of looking at the problem!
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Birth of Agile Software Development
In 2001, a group of thought leaders in the software industry defined
“Agile Manifesto”
There has to be a better way to reduce the failure rate… ..
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Agile Manifesto
• Individuals and interactions
• Working software
• Customer collaboration
• Responding to change
• Processes and tools
• Comprehensive documentation
• Contract negotiation
• Following a plan
That is, while there is value in the items on the right, we value the items on the left more.
Over
Source : http://a gilemanife s to.org/
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Agile Principles
• Our highest priority is to satisfy the customer through early and continuous delivery of valuable software
• Welcome changing requirements, even late in development. Agile processes harness change for the customer's competitive advantage.
• Deliver working software frequently, from a couple of weeks to a couple of months, with a preference to the shorter timescale.
• Business people and developers must work together daily throughout the project.
• Build projects around motivated individuals . Give them the environment and support they need, and trust them to get the job done.
• The most efficient and effective method of conveying information to and within a development team is face-to-face conversation.
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Agile Principles Contd.
• Working software is the primary measure of progress.
• Agile processes promote sustainable development . The sponsors, developers, and users should be able to maintain a constant pace indefinitely.
• Continuous attention to technical excellence and good design enhances agility.
• Simplicity--the art of maximizing the amount of work not done--is essential.
• The best architectures, requirements, and designs emerge from self-organizing teams.
• At regular intervals, the team reflects on how to become more effective, then tunes and adjusts its behavior accordingly.
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
What is Agile Software Development?
• Any process that incorporates the Agile Manifesto is called Agile process
– Scrum– XP– DSDM– FDD– Agile RUP
“Agile Software Development" is an umbrella term … ..
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Survey Results from “State of Agile Development”
A survey conducted in June 2007, 1700 individuals from 71 countries part icipated
Metric >=10% >=25%Increased productivity 90% 55%Cost reduction 66% 28%Reduced software defects 85% 54%Quicker implementation 83% 54%
Most popular Agile MethodologyScrum 37%Scrum/XP Hybrid 23%XP 12%DSDM 5%
Source :http://www.ve rs ionone .com/pdf/S ta teOfAgileDeve lopme t2_FullDa taReport.pdf
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Scrum Framework
•Product Owner•Development team•Scrum Master
• Sprint Planning• Sprint Review• Daily Scrum• Sprint Retrospect
• Product Backlog• Sprint Backlog• Burndown Chart
ToolsRitualsRoles &Responsibilit ies
Self-managing Team
Iterative and Incremental delivery
Inspect & AdaptPrinciples
mechanics
3 4 3
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Scrum Processes
Stories broken down into
tasks
1. What did I do yesterday?2. What will I do today?3. Any Impediments?
Track done
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Roles and Responsibilit ies
• Manages product backlog in priority order• Represents all stakeholders’ needs
• Removes impediments to allow the team to make progress at constant/desired pace• Facilitates communication/interaction among all parties
• Performs the actual development work• Decides on how works get done• Responsible for managing the sprint backlog and meeting the self-defined target
Symbiotic Relationship through cooperation yet keeps each other focused
Product Owner
Scrum Master Development Team
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Key Concepts- Iterative and Incremental Delivery
Iterative and Incremental (frequent) delivery of working software
Data Tier
Business Tier
UI
Valuable and usable
Valuable but not usable
How to slice requirements?
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Key Concepts- Self-organizing Team
Cross-functional, Self-organizing Team
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Key Concepts- Inspect & Adapt
Inspect & Adapt
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Key Concepts
Information Radiators
ScrumPad provides electronic “K anban.”
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Planning-Tradit ional vs. Scrum
Fixed
Estimated
Scope/Requirements
Costs Schedule
Costs Schedule
Scope/Requirements
Plan DrivenValue Driven
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Roles- Tradit ional vs. Scrum
Development TeamScrum MasterProduct Owner
Project Manager
What? How and When?Facilitates
t ime
involvement
Scrum masterProduct owner
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Organization- Tradit ional vs. Scrum
Analysts
UIDeveloper
DBDeveloper
MiddlewareDeveloper
Tester
Team 1
Team 2
Tradit ional Agile
AnalystsDevelopersTestersSystem Admins
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Project ROI- Tradit ional vs. Scrum
Timeline in Months
valu
e
T imeline in months
valu
e
Waterfall
Agile
Which one has higher
risk?
6
1 2 3 4
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Mechanics- Tradit ional vs. Agile
• Sprint Estimates• Release Estimates• Level of details matches the planning horizon• Empirical timeboxes
• Release and Sprint Burndowns• Impediment List• Short daily stand-up meetings• # of features accepted• Serial checkpoints
Project Plan
Tracking
• WBS• Plan in details to the end• Procedural phases
• Gantt chart• Issues List• Long weekly status meetings• % completion of tasks• Parallel checkpoints
• Emerging design• Continuous integration• Continuous tests• Never miss build• Incremental delivery
Engineering• Grand upfront design• Large integration on the backend• Long tests on the backend• Never miss development• Big-bang delivery
Scrum Waterfall
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Tradit ional vs. Agile
• Protect the project scope• Conformance to the plan• Squeeze tests rather scope• Culture of sign-offs• Direct, monitor, and control• Contract with customer
Culture • Protect the iteration scope• Response to changes• Squeeze low priority scope• Culture of learning and adoption • Facilitate, observe, and serve• Partner with customer
Scrum Waterfall
• Prioritized backlog and Impediment list • Information radiators• Daily stand-ups• Reviews and retrospectives• Embedded activity
Risk Management
• Risk list• Separate activity
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Lean Concepts in Agile
How Agile/Scrum Minimizes
Transportation => Continuous integration, automated deployment
Inventory => Just in time elaboration of requirements
Motion => Physical or virtual collocation (open-space)
Waiting => Cross-functional team
Overproduction => Prioritized backlog (requirements)
Over processing => Time-boxed small development cycles
Defects => Agile engineering practices (CI, TDD, etc.)
1
2
3
4
5
6
7
7 “Mudas” or Wastes
ScrumPad makes it easy to eliminate/reduce wastes
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Agile/Scrum adoption
2006 2007 2009
65% 69% 69%
Increasingly more companies are adopting agile
Source : http://www.ddj.com/a rchite c t/20760061 5
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Agile Community
Scrum has been used for projects of all shapes and sizes.
• Agile Alliance• Agile 2010 Conference
• Scrum Alliance• Certifications • Scrum Gathering 2010
• User Groups
• PMI Agile Group
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Diverse projects, organizations are using Scrum
•Nielsen Media•First American Real Estate•BMC Software•John Deere•Lexis Nexis•Sabre•Salesforce.com•Time Warner•Turner Broadcasting
•Microsoft•Yahoo•Google•Electronic Arts•High Moon Studios•Lockheed Martin•Philips•Siemens•Nokia•Capital One•BBC•Intuit
Scrum has been used for projects of all shapes and sizes.
http://www.scrumpad.comCopyright 2010 Code71 Inc. All rights reserved.http://www.code71.com
Q& A
Please contact for on-site training or Webinar:Contact: [email protected]: http://blog.syedrayhan.comCompany: http://www.code71.comProduct: http://www.scrumpad.com