Introduction To Agile and Scrum
Introduction To Agile and Scrum
Source: Wikipedia
What is Agile?
Agile is not:
• A software
development
methodology itself
• A silver bullet for all
your software woes Source: http://www.best-story.net/userfiles/silver-bullets.jpg
Agile Values
• Individuals and interactions
• over processes and tools
• Working software
• over comprehensive
documentation
• Customer collaboration
• over contract negotiation
• Responding to change
• over following a plan Source: http://agilemanifesto.org/
12 Principles of Agile
1. Continuous delivery of value
2. Embrace changing requirements
3. Frequent deployment
4. Customer collaboration
5. Motivated individuals
6. Face-to-face conversation
12 Principles of Agile
7. Working software as measure of progress
8. Sustainable development
9. Technical excellence
10. Simplicity
11. Self-organization
12. Continuous improvement
Agile Methodologies
• Scrum
• XP
• Kanban
• Lean
• And many more…
Source: http://parkertoddloesch.files.wordpress.com/2011/09/umbrella.jpg
Scrum
• Small teams
• Three roles
• Product backlog
• Sprints
• Daily stand-up
Source: http://blogs.independent.co.uk/wp-content/
uploads/2011/09/scrum1.jpg
Extreme Programming (XP)
• Small teams
• Customer representative
• Iterative development
• User stories
• Many practices
• Pair programming
• Test-driven development
• Continuous Refactoring
Source: http://static.caloriecount.about.com/images/
medium/doritos-extreme-tortilla-chips-29310.jpg
Kanban
• Visualize the workflow To Do Doing Done
Task Task Task
• Limit work-in-progress 4 3 1
• Manage flow Task Task
• Feedback loops 5 2
Lean
• Eliminate waste
• Focus on value
• Reduce inventory
and cycle times
• Continuous process
improvement
Source: http://www.optinest.com/optiblog/wp-content/
uploads/2011/09/optimation_eliminate_waste.jpg
Agile Methods Used
60%
54%
50%
40%
Percentage
30%
20%
11%
10% 9%
7%
4% 4%
2% 2% 2% 2% 1% 1% 1%
0%
Start Deadline
Time
The Agile Method
• Frequently deliver small
incremental units of
functionality
• Define, build, test and
evaluate cycles
• Maximize speed of
feedback loop
Source: Wikipedia
Waterfall Assumptions
• All requirements for a project can be defined given
enough time
• Changes to requirements will be small and
manageable
• Architecture and planning can create predictable
system integration outcome
• Software unknowns can be eliminated on a
predictable schedule
Agile Assumptions
• Requirements are just assumptions until they are
validated
• Requirements can and will changes over time
• We need continuous integration of all of the pieces
to avoid late-integration issues
• There is a high degree of uncertainty when creating
new software projects
Waterfall Constraints
Scope
Fixed
Waterfall
(plan driven)
Estimated
Resources Schedule
Agile Constraints
Resources Schedule
Scope
Fixed
Agile
(value-driven)
Waterfall
(plan-driven)
Estimated
Resources Schedule Scope
Agile Constraints
• Fixed team size Resources Schedule
Estimated
Scope
Waterfall vs. Agile Processes
Process Waterfall Agile
Measure of Success Execution of the plan Working code
Management Culture Command and control Self-organization
Requirements and Design Big and upfront Just-in-time
Coding / Implementation Code first and test later Code and test together
Testing and QA Big, planned, and test last Continuous and test early
Planning and Scheduling Large detailed plan Short, iterative increments
Context is Important
• Neither Agile nor Waterfall
is better than the other
• Context is critical
• Examples:
• Novel web app => Agile
• Space shuttle control
software => Waterfall
Intro to Scrum
What is Scrum?
• Rugby term
• Process framework
• Agile methodology
• Empirical Process
Control vs. Command
and Control
Source: http://blogs.independent.co.uk/wp-content/
uploads/2011/09/scrum1.jpg
What is Scrum?
• Iterative / incremental
• Frequent delivery
• Working software
• Continuous feedback
• Dev-team oriented
• Consists of:
• Team Source: http://www.telegraph.co.uk
• Events
• Artifacts
Three Pillars of Scrum
• Transparency
• Inspection
• Adaptation
Transparency
• Visibility into the project
• Information radiators
• End-of-sprint demos
• Common definition of “Done”
Inspection
• Frequent inspection of progress
• Detection of undesirable variance
• Not frequent enough to cause interference
• Requires the right people doing the inspection
Adaptation
• Adjustments are made to correct undesired
variances
• Adjusting earlier minimizes further deviations
• Inspection and adaptation occurs during scrum
events
• Purpose is continuous improvement
Scrum Team
Scrum Team Roles
• Development Team
• Product Owner
• Scrum Master
Development Team
• Does work and
creates value
• Small teams (7 ± 2)
• Self-organizing
• Cross-functional
• No titles (preferably)
Product Owner
• Responsible for
ROI of project
• Represents users
and stakeholders
• One person, not a
committee
• Manages product
backlog
Source: Wikipedia
Scrum Master
• Responsible for scrum
process
• Facilitates ceremonies
• Coaches the team
• Removes impediments
• Is not a project
Source: http://www.cbssports.com/
manager
Scrum Events
Scrum Events
• Sprint
• Sprint Planning
• Daily Stand-up Meeting
• Sprint Review
• Sprint Retrospective
Sprint
• Time box of iteration
• Fixed interval
• 1-4 weeks
• Team works on items
in sprint backlog
• Ends with potentially Source: Wikipedia
shippable software
Sprint Planning
• Start of sprint
• Goals defined
• Tasks identified
• Timeboxed (2hr / wk)
• PO presents prioritized
backlog items
• Team pulls items into Source: http://www.selfishprogramming.com/wp-
content/uploads/2009/09/1-bvg-1.jpg
sprint backlog
Daily Stand-up Meeting
• Occurs each day
• Short daily meeting
• Synchronize the team
• Timebox 15 min / day
• Same place and time
• It is not a status Source: Wikipedia
update meeting
Daily Stand-up
Three questions:
1. What have you done since the last stand-up?
2. What do plan to do today?
3. Do you have any impediments / blockers?
Sprint Review
• End of sprint
• Opportunity to inspect
• Timebox (1 hr/wk)
• PO identifies what has
been completed
• Dev team demos
completed functionality
Source: http://pic.twitter.com/gfzYl0XG8c
• Stakeholders observe
and provide feedback
Sprint Retrospective
• End of sprint
• Inspection and
adaptation
• Timebox (3 hr / 4 wk)
• Two questions:
• What went well in the
past sprint? Source: http://spin.atomicobject.com/
2014/04/07/improve-retrospective/
• What could be improved
for the next sprint?
• Continuous improvement
Scrum Artifacts
Scrum Artifacts
• Product Backlog
• Sprint Backlog
• User Stories
• Scrum Board
Product Backlog
• List of features High Product Backlog
Feature 1
for product
Feature 2
• Ordered by business value Feature 3
or ROI
Priority
…
Source: Wikipedia
The Whole Process
1-4
weeks
Source: Wikipedia
Conclusion
Agile is:
Individuals and interactions
over processes and tools
Working software
over comprehensive
documentation
Customer collaboration
over contract negotiation
Responding to change
over following a plan
Scrum is:
3 Roles
• Development Team
• Product Owner
• Scrum Master
Scrum is:
4 Events
• Sprint Planning
• Daily Stand-up Meeting
• Sprint Review
• Sprint Retrospective
Scrum is:
4 Artifacts
• Product Backlog
• Sprint Backlog
• User Stories
• Scrum Board
Questions / Feedback
• What was one thing you thought was valuable?
• What is one thing you would change?
Contact Info
Matthew Renze
• Twitter: @matthewrenze
• Email: [email protected]
• Website: www.matthewrenze.com
Renze Consulting
www.renzeconsulting.com