Upload
joe-lukan
View
66
Download
1
Embed Size (px)
Citation preview
"There is nothing so useless as doing efficiently that which should not be done at all." -Peter Drucker
“Blame the process, not the people” -W. Edward Deming
“Obama kept getting reports; he kept getting all these green lights on his laptop of all, you know, on a grid - everything's going great, everything's going great. Literally the night before the launch, on October 1, his chief of staff called a friend of his and said, we're going to knock your socks off tomorrow. Well, he was right about that. But, the president, whatever we can say about him on policy and on giving speeches, as a manager, he failed. He did not know what was going on in the single most important initiative of his administration. “ -Steven Brill
Management Defined
Management in business and organizations is the function that coordinates the efforts of people to accomplish goals and objectives using available resources efficiently and effectively.
Wikipedia
Management Defined
Management in business and organizations is the function that coordinates the efforts of people to accomplish goals and objectives deliver customer value using available resources efficiently and effectively.
Taylorism
Managers define tasks Managers find the best way to accomplish each taskPay for performance
Assumes• Things usually go according to plan• There is “One Best Way” for each task• Micro-optimization leads to macro-optimization• People are cogs in the machine
Martin Fowler, Extreme Programming Explained
Management Defined
Management in business and organizations is the function that coordinates the efforts of people to accomplish goals and objectives using available resources efficiently and effectively.
Agile is…Manifesto for Agile Software Development
We are uncovering better ways of developingsoftware by doing it and helping others do it.
Through this work we have come to value:
Individuals and interactions over processes and toolsWorking software over comprehensive documentation
Customer collaboration over contract negotiationResponding to change over following a plan
That is, while there is value in the items onthe right, we value the items on the left more.
agilemanifesto.org
Agile is…We follow these 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.
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.
Agilemanifesto.org
Agile is…We follow these 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.
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.
Agilemanifesto.org
Agile is…
"Agile methodologies developed as a reaction to [plan-driven] methodologies.“
“Adaptive rather than predictive. People-oriented rather than process oriented.”
“Just enough process to gain a reasonable payoff”
-Martin Fowler
Agile is…
“Continuously improving delivery of customer value at a sustainable pace while responding to change.” -Adam Yuret
“A culture expressed through a set of practices." -Uncle Bob Martin
Cross-Functional TeamsTimeboxed Iteration
Prioritized BacklogIteration Commitment
Retrospective
User StoriesPlanning Game
Available Customer
Small ReleasesAcceptance Testing
Metaphor Sustainable Pace Collective Ownership
TDD Coding Standard Simple Design Refactoring Pair Programming Continuous Integration
XP Scrum
Fixed work within sprint Definition of Done
Product Owner Scrum Master
Daily standup Sprint Planning Meeting Sprint Review Sprint Retrospective
Product & Sprint Backlogs
“Real Scrum”
“Assemble a cross-functional group of sufficiently skilled people
Have them demo or deliver often but otherwise stop micromanaging them
Have them inspect & adapt daily and monthly Allocate one person with free time to remove
roadblocks & watch the quality of the team Have the business side speak through a single person”
-Alistair Cockburn
Why Agile WorksFast feedback Increased learning
Self-organizing Better problem solving
Baking quality in Reduced rework cost
Focus on time Reduced delay cost
Smaller batches More predictability
Why Agile WorksIncreased learning
Better problem solving
Reduced rework cost
Reduced delay cost
More predictability
Reduced variability
Flow v. Density
AMERICAN PHYSICAL SOCIETY http://www.aps.org/publications/apsnews/200404/backpage.cfm
Agile Shortcomings
“Most Scrum teams are embedded in organizations that have managers and use them. The fact that Scrum not only does not help with this but often actively denigrates managers makes improper Scrum installations more likely.” -Ron Jeffries
Agile Shortcomings
“The problem with Agile is that it often treats development as if it is outsourced.” -Michael Feathers
Agile Shortcomings
• Team focused (suboptimal)
• Measuring output (“velocity”) over outcomes
• Doesn’t address coordination between teams
• Practices need an underlying theory
Agile Shortcomings
"Customers enjoy being partners in the software process, developers actively contribute regardless of experience level, and managers concentrate on communication and relationships." -Don Wells
(Silver bullet?)
Flow Efficiency
• Fast, smooth flow of work items through whole system
• Small batches• Adaptability
Resource Efficiency• Maximize resource utilization• Large batches• Predictability
Flow Efficiency • Fast, smooth flow of work items through
whole system• Small batches• Adaptability
Taylorism
Managers define tasks Managers find the best way to accomplish each taskPay for performance
Assumes• Things usually go according to plan• There is “One Best Way” for each task• Micro-optimization leads to macro-optimization• People are cogs in the machine
Lean
Whole systems approachDeliver customer value early and often -less delay leads to less wasteBuild quality inRespect people
Lean
Whole systems approachDeliver customer value early and often -less delay leads to less wasteBuild quality inRespect people Involve everyone in continuous
improvement
Lean
Push decision making down Share informationStop managing people, start managing: the flow of value delivery
+ cultivate adaptability
Lean
Make work visibleManage queues (i.e. limit work in process)
This includes• Portfolio level• Program level• Product level
Lean
Right-size batches (usually smaller)Manage cycle time, throughputFind and attack bottlenecksAddress variabilityHypotheses, followed with experiments
Software Dev specific
Consider dual roles for Product Owner and Product Mgr
Hierarchical product backlogs, where needed• limit WIP at multiple levels• synchronized cadence
Use cross-functional teams where appropriate
Siemens Health Systems (2012)
15 cross-functional Scrum teamsImplemented flow-based approach Achieved 42%/reduction in cycle time
Limiting WIP alone:• 21% shorter cycle time• 33% more throughput
Kanban at Scale – A Siemens Success Story , InfoQ, Feb 28, 2014http://www.infoq.com/articles/kanban-siemens-health-services#anch107610
Kanban at Scale – A Siemens Success Story , InfoQ, Feb 28, 2014http://www.infoq.com/articles/kanban-siemens-health-services#anch107610
Siemens Health Systems (2012)
Final words
Prevent waste (rather than eliminate it)
Kanban is a toolYou are not doing Kanban if you are not
constraining WIPThe Kanban Method is optional (even when
using Kanban)