Frederic Oehl - QuickRampUpOnAgileMethods

Download Report

Transcript Frederic Oehl - QuickRampUpOnAgileMethods

Quick ramp up on Agile Methods
Frederic Oehl
10/16/2014
Objectives
 Provide knowledge and understanding of Agile principles
 Provide knowledge and understanding of Lean principles
 Scrum board vs Kanban board
10/16/2014
22
Introduction to Agile
 What’s the problem we trying to solve with agile approaches?






10/16/2014
Delivering on time
Getting quicker feedbacks on the product
Improving quality of the product
Better control on the budget
Not burning down a team with every project
…
33
Paradigm change
Deadline Features
Resources
Variable
Fixed
Deadline
10/16/2014
Features
Resources
44
February 2001 birth of agile mouvement
10/16/2014
55
Agile Manifesto
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.
http://agilemanifesto.org/
10/16/2014
66
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.
10/16/2014
77
Agile Principles
 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.
10/16/2014
88
Extreme Programming (XP)
 Software development methodology based on 12 practices












10/16/2014
Pair programming
Planning game
Test-driven development
Whole team
Continuous integration
Refactoring
Small releases
Coding standards
Collective code ownership
Simple design
Metaphor
Sustainable pace
99
Scrum
 Agile project management framework allowing to deliver
increment of a product via iterations
VISION
Daily
Product
Backlog
Sprint
Backlog
10/16/2014
1-4 Weeks
Product
Increment
1010
Roles
 Product Owner
 representing the Client within the company
 being accountable to deliver values to end user customers
 Development team
 delivering a shippable product at the end of each sprint
 committed to deliver what’s in the sprint backlog
 self-organised team looking to continuously improve
 Scrum master
 removing impediments that could impact the team productivity
 making sure Scrum principles are followed
10/16/2014
1111
Scrum board
10/16/2014
1212
What about Lean?
 5 principles





10/16/2014
Understand and maximize value
Optimize the value stream
Pull production
Single-piece flow
Continuous improvement
1313
The Toyota Way – Dr Jeffrey Liker
 Toyota Motor Company
 Quick Facts
 Started in 1928 as a textile loom manufacturer
 Automotive division in 1933 with first vehicle built in 1935
 1946 small car manufacturer -> 2007 world’s largest car manufacturer
 Toyota Production System (aka TPS or The Toyota Way)
 Developed by Taichii Ohno, Shigeo Shingo and Eiji Toyoda
 Influenced by W. Edwards Deming and writings of Henry Ford
 Introduced “Lean Manufacturing” and concepts such as “Just-In-Time”
10/16/2014
1414
14 principles
1. Base your management decisions on a Long-Term Philosophy,
even at the Expense of Short-Term Financial Goals
2. Create Continuous Process Flow to Bring Problems to the
Surface
3. Use Pull Systems to Avoid Overproduction
4. Level Out the Workload (Heijunka)
5. Build a Culture of Stopping to Fix Problems, to Get Quality
Right the First Time
6. Standardized Tasks are the Foundation for Continuous
Improvement and Employee Empowerment
7. Use Visual Controls so No Problems are Hidden
8. Use Only Reliable, Thoroughly Tested Technology that Serves
Your People and Processes
10/16/2014
1515
14 principles
9. Grow Leaders Who Thoroughly Understand the Work, Live
the Philosophy, and Teach It to Others
10. Develop Exceptional People and Teams Who Follow Your
Company’s Philosophy
11. Respect Your Extended Network of Partners and Suppliers by
Challenging Them and Helping Them Improve
12. Go and See for Yourself to Thoroughly Understand the
Situation (Genchi Genbutsu)
13. Make Decisions Slowly by Consensus, Thoroughly
Considering All Options; Implement Decisions Rapidly
14. Become a Learning Organization through Relentless
Reflection (Hansei) and Continuous Improvement (Kaizen)
10/16/2014
1616
Lean Software Development
 Focus on delivering VALUE to the customer rapidly
 Make improvements by focusing on the Value Stream
 Principles







Eliminate Waste
Create Knowledge
Decide as Late as Possible
Deliver as Fast as Possible
Empower the Team
Build Quality In
Improve the System – “See the Whole”
 Core Processes
 Visualize the Process
 Limit Work In Process (WIP)
 Measure and Optimize Flow
10/16/2014
1717
Kanban
 Framework to look at production systems, spot bottlenecks
and facilitate employee empowerment and continuous
improvement
 Set of rules:





10/16/2014
Start by doing exactly what you are doing right now
Map the value stream
Visualize all work on the value stream by adding kanban cards
Introduce work-in-progress limits
Help the system flow and improve everything
1818
Kanban board
10/16/2014
1919
Adapted from Henrik Kniberg
Scrum vs Kanban
Scrum board
To do
Ongoing
Kanban board
Done
To do
Ongoing
2
A
C
C
D
D
WIP limited per iteration
10/16/2014
A
B
B
FLOW
Done
FLOW
WIP limited per workflow state
2020
Adapted from Henrik Kniberg
Scrum vs Kanban
I’d like to have E!
Kanban
Scrum
To do
Ongoing
2
A
C
A
B
D
B
To do
Ongoing
C
D
Done
FLOW
I have to wait the next sprint
10/16/2014
Done
FLOW
I can add it on top of C
2121
Conclusion
 Challenging to migrate to Agile and Lean





People have to find their place
Need customers buy in
Need managers buy in
Quality work of everyone
Etc.
 You have lots of people here today who have been
implementing agile/lean within their companies talk to them
 Enjoy the rest of the day!
10/16/2014
2222
Books
10/16/2014
2323
Questions?
10/16/2014
24
25