Professional Documents
Culture Documents
Transitioning-Agile-Guide-Transitioning-Software-Development-West-2007
Transitioning-Agile-Guide-Transitioning-Software-Development-West-2007
Transitioning-Agile-Guide-Transitioning-Software-Development-West-2007
Mike Cohn
President
Mountain Goat Software
Lafayette, Colorado
mike@mountaingoatsoftware.com
© Mountain Goat Software, LLC
1
Pre-requisites of self-organization
Container
• A boundary within which self-organization occurs
• Company, project, team, city, role, nationality
Differences
• There must be differences among the “agents” acting
in our system
• Technical knowledge, domain knowledge, education,
experience, power, gender
Transforming Exchanges
• Agents in the system interact and exchange resources
• Information, money, energy (vision)
Glenda Eoyang: Conditions for Self-Organizing in Human Systems
© Mountain Goat Software, LLC
12
Using the CDE model
• When stuck thinking about how to nudge the
organization think of the:
• Containers
• formal teams, informal teams, clarify (or not)
expectations
• Differences
• Dampen or amplify them within or between containers
• Exchanges
• Insert new exchanges, new people, new techniques or
tools
Size A business
sponsor
Importance
© Mountain Goat Software, LLC
14
Size
• Something that can be started
with one team
• Scale up the team using the
principles shown later
• Probably no more than 1-5 teams
on initial project
• Probably can’t scale any higher
during a medium length project
anyway
Duration
• Pick a project with a medium
duration
• Probably 2-4 months
• Medium for your organization will be
different from mine
• Don’t want too short
• Won’t prove as much
• “It only works on small projects”
Importance
• Pick an important project
because:
• People don’t change behavior
unless they need to
• Some parts of agile are difficult
• It will be hard to stick with it unless
the project is important
You can start
in the middle
• Don’t pick one that is too risky
of a project
• But if you pick a trivial project
the results will be dismissed
© Mountain Goat Software, LLC
18
“Don’t start with an initial ‘learning
project’ that is of marginal importance.
Start on a project that is absolutely critical
to your company; otherwise it will be too
difficult to implement all the hard things
[agile] will ask of you.”
~Jim Highsmith in Adaptive Software
Development Ecosysmtems
• Include evangelists
• Include those who’ve done it before (elsewhere)
• Include a range of perspectives
Overcome resistance
• Sell the problem, not the solution
• No one wants a solution to a problem they don’t
(think they) have
• Be open to hearing better solutions than you have
• Communicate why the change and why now
• Put team members in touch with customers
• Let them hear the problems you are hearing
• Emphasize benefits of the change
• Help resisters find new roles
© Mountain Goat Software, LLC
28
Conservers Originators
• Generally deliberate, disciplined • May appear unorganized,
and organized undisciplined, unconventional
• Prefer change that maintains • Prefer change that challenges
current structure the current structure
• Enjoy predictability • Will challenge assumptions
• May appear cautious • Enjoy risk and uncertainty
• Focus on details and routine • Little regard for policies
Pragmatists
• Map appear practical, agreeable, and flexible
• Prefer changes that emphasizes workable
outcomes
• More focused on results than structure From: Harvard Business
• Open to both sides of an argument Essentials: Managing
Change and Transition
• Operate as mediators
• Appear more team oriented © Mountain Goat Software, LLC
29
Extent to which people agree on what they want
Broad consensus
No consensus
• Folklore
• Charisma • Ritual • Religion
• Vision
• Salesmanship • Democracy
• Role modeling • Tradition
• Apprenticeship
• Negotiation • Strategic planning
• Role Definition • Financial • Metrics
incentives programs
• Hiring &
No consensus
• Fiat promotion
• Threats • Standards
• Coercion
• Training
Customer involvement
Agile processes don’t require more customer involvement
than a successful project with another process
BUT
the involvement is spread throughout the project.
Customer Involvement
Customer Involvement
Time Time
• Being disrespectful of QA
My preferred sequence
Common sense?
“Integrating is painful.”
So do it more often until you become so good at
it that’s it not painful.