Exploring Enterprise Agile Transformation Strategies Mike Cottmeyer, Enterprise Agile Coach LeadingAgile, LLC
Mike Cottmeyer mike@leadingagile.com 404.312.1471 www.leadingagile.com twitter.com/mcottmeyer facebook.com/leadingagile linkedin.com/in/cottmeyer A little about me... my background.. why Agile is important Studied computer science... spent first 10 years doing infrastructure Infrastructure PM to software PM... close the loop Starting seeing a lot of organizational dysfunction... things that just didn’t make sense Started consulting with V1... saw similar patterns repeated across the world Left V1 to start developing my approach to transformation and help companies make lasting sustainable change
The Problem... I want to explore a little the problem that I’m seeing. People get agile... to a large extent agile has gone mainstream. When I’m doing business development with a client, I don’t usually have to explain agile or convince people that agile is the way to do things. Often what I’m selling against is an oversimplification of agile... or a belief that the stuff we are doing with team level Scrum is sufficient for Agile at scale or agile in the enterprise
The Problem... Having lots of agile teams in an enterprise isn’t enterprise agility Sometimes organizations fall into the trap of thinking that having agile teams means they have an agile organization Enterprise agility is when all the parts of the organization work together to create Agile outcomes The entire delivery capability of the enterprise has to be focused on agile principles and execution
The Problem... Focusing only at the team level can result in local optima within your organization Sometimes a team can perform well at Scrum, but the business doesn’t see any incremental value from their investment Sometimes a high-performance team can disrupt other functions in the organization if the upstream and downstream processes are not able to work at the same pace
The Problem... Team level Agile practices are different from Agile practices at scale The practices we put in place at the team level often don’t work when we apply them in larger organizations Practices have to adapted at scale to accommodate more diverse groups of stakeholders and more complicated value streams Examples:
The Problem... Agile at scale requires a broader set of tools and techniques Scrum and XP at the team level Kanban and Lean at the program and portfolio level RUP and Traditional Project Management at the Enterprise
We are just now starting to put all the pieces together...
The Solution...
The Solution... Part One First... we do have to get team level agile right. We are going to talk about some of the things you can do that will lead to successful team- level Agile transformations. The fundamentals behind why Agile works Common challenges that cause Agile to fail What does it look like when things are really going well? What is different about an enterprise-level Agile transformation?
The Solution... Part Two Next we will explore a safe, pragmatic, iterative and incremental framework for transforming any sized organization... Define the organizational competencies required at all levels of the enterprise How to adapt agile competencies for scale How to adapt agile competencies for cadence
The Solution... Part Three We’ll discuss the three major areas you need to pay attention to in order to execute a safe and pragmatic enterprise Agile transformation... Establishing an agile org structure Introducing disciplined Agile practices Intentionally addressing people and culture
The Solution... Part Four Finally, as we begin to wrap-up the talk, we’ll explore a few things that will help you put all of this together... Overview of the model end-to-end If we have time... case studies
The Solution... Part One How Does Agile Work and Why Does it Fail?
What Makes Agile Work?
What Makes Agile Work? Teams stay together and are highly engaged Agile practices are built around cross- functional teams that have everything necessary to deliver an increment of value to the organization Teams that stay together over time tend to be more productive than teams that are constantly forming and reforming Empowered self-directed teams are able to own the solution and creatively solve problems
What Makes Agile Work? Teams are focused on a queue of projects or product enhancements Rather than forming teams to deliver projects, agile methods leave teams together and funnel project through teams The project list is basically a prioritized backlog of work that a team is responsible for delivering
What Makes Agile Work? Minimize dependencies and strive for loose coupling between teams The more coupling we have between teams, the more difficult it is to change direction when we learn something new about the emerging product Teams that have external dependencies are not able to make and meet commitments because they don’t have everything necessary to own the commitment
What Makes Agile Work? Fully engaged business partners Many organizations are guilty of throwing ill-defined requirements over to the delivery teams, constantly changing direction through the life of the project, and holding teams accountable for on- time delivery Agile is geared for change, but requires close collaboration between stakeholders and teams to make real-time tradeoffs as the product is in development
What Makes Agile Work? Attention to getting done and completing work before new work is started Delivering an increment of working, tested, potentially shippable software on regular time intervals assures that we can measure progress against real, measurable product outcomes
What Makes Agile Work? Technical excellence and continuous attention to product quality The underlying health of the system is a critical success factor for running successful agile projects Defects and technical debt impact product delivery in unpredictable ways making it nearly impossible to reliably make and meet commitments
What Makes Agile Fail?
What Makes Agile Fail? Agile team is a local optimization and out of alignment with the rest of the business Pilot teams are formed and given everything they need to be successful at the expense of the rest of the delivery organization Teams can deliver product faster than the organization can consume it Teams starve the requirements queue because Strategy and Product Management can’t keep up
What Makes Agile Fail? Project driven organizations or uneven investment across product lines Very difficult to keep cross-functional teams together over time because the investment mix is constantly changing Organizations tend to want to matrix people across multiple teams at the same time
What Makes Agile Fail? Value is either too broadly defined or too narrowly defined Overly vague requirements lead the development team to fill in the gaps based in their own knowledge and experience Overly specified requirements lead to an activity based mentality rather than a value based mentality
What Makes Agile Fail? Organizational structures and product architectures work against establishing cross functional teams Matrix organizations and functional silos make it very challenging to create high- performing agile teams Tightly coupled legacy architectures make it difficult to organize teams around feature groups or components within the solution framework
What Makes Agile Fail? Overly political cultures and lack of trust Command and control leadership Micromanagement Disempowering language
What Makes Agile Fail? Inability to balance capacity and demand Invalid and inaccurate estimates Inability to make and meet commitments More work than the teams can possibly deliver in the timeframes expected
What Makes Agile Fail? Looking at agile as a process overlay rather than a transformative event in your organization Agile is just something that the developers do Not recognizing the broad organizational change necessary to make an agile transformation sustainable
A Well Formed Agile Organization
A Well Formed Agile Organization Cross functional teams aligned directly to solve business problems Products Features Programs Components Services Business Capabilities
A Well Formed Agile Organization Clear voice of the business and a willingness to make tradeoffs to meet time and cost constraints Highly engaged product ownership Willingness to deal with reality Focus on maximizing value and reducing risk
A Well Formed Agile Organization Individual empowerment and shared accountability for outcomes Establish boundaries and ownership but empower within those boundaries Teams own outcomes not activities
A Well Formed Agile Organization Disciplined attention to technical excellence and product quality Technical excellence stabilizes the requirements delivery function
A Well Formed Agile Organization Predictable, accountable, able to consistently make and meet commitments Teams have the ability to consistently do what they say they are going to do Predictable agile teams are the foundational element of a predictable agile enterprise
Reinventing Agile Situationally specific strategies at scale to solve these problems and maintain business agility How do team level competencies need to be adapted to take into consideration issues of scale and the different planning horizons required in larger enterprises How do you build the necessary organization, introduce new practices, and start shifting the culture in a way that leads to sustainable organizational change
The Solution... Part Two Competencies, Frequency, and Scale
Agile Competencies Product Definition Planning & Coordination Delivery Practices Continuous Improvement Organizational Enablement
Agile Competencies Product Definition Planning & Coordination Delivery Practices Continuous Improvement Organizational Enablement
Agile Competencies Product Definition Planning & Coordination Delivery Practices Continuous Improvement Organizational Enablement
Agile Competencies Product Definition Planning & Coordination Delivery Practices Continuous Improvement Organizational Enablement
Agile Competencies Product Definition Planning & Coordination Delivery Practices Continuous Improvement Organizational Enablement
Agile Competencies Product Definition Planning & Coordination Delivery Practices Continuous Improvement Organizational Enablement
Product Definition Establish the product vision Define the product roadmap Decompose features Estimate size and effort Define acceptance criteria
Product Definition Establish the product vision Define the product roadmap Decompose features Estimate size and effort Define acceptance criteria
Product Definition Establish the product vision Define the product roadmap Decompose features Estimate size and effort Define acceptance criteria
Product Definition Establish the product vision Define the product roadmap Decompose features Estimate size and effort Define acceptance criteria
Product Definition Establish the product vision Define the product roadmap Decompose features Estimate size and effort Define acceptance criteria
Product Definition Establish the product vision Define the product roadmap Decompose features Estimate size and effort Define acceptance criteria
Delivery Practices Define the solution Build the solution Test the solution Establish product quality Deploy the solution
Delivery Practices Define the solution Build the solution Test the solution Establish product quality Deploy the solution
Delivery Practices Define the solution Build the solution Test the solution Establish product quality Deploy the solution
Delivery Practices Define the solution Build the solution Test the solution Establish product quality Deploy the solution
Delivery Practices Define the solution Build the solution Test the solution Establish product quality Deploy the solution
Delivery Practices Define the solution Build the solution Test the solution Establish product quality Deploy the solution
Planning & Coordination Establish a planning cadence Perform activity breakdown Establish a delivery cadence Limit work in process Make and meet commitments
Planning & Coordination Establish a planning cadence Perform activity breakdown Establish a delivery cadence Limit work in process Make and meet commitments
Planning & Coordination Establish a planning cadence Perform activity breakdown Establish a delivery cadence Limit work in process Make and meet commitments
Planning & Coordination Establish a planning cadence Perform activity breakdown Establish a delivery cadence Limit work in process Make and meet commitments
Planning & Coordination Establish a planning cadence Perform activity breakdown Establish a delivery cadence Limit work in process Make and meet commitments
Planning & Coordination Establish a planning cadence Perform activity breakdown Establish a delivery cadence Limit work in process Make and meet commitments
Continuous Improvement Metrics and reporting Establish stable velocity Conduct retrospectives Update the backlog Enable process improvement
Continuous Improvement Metrics and reporting Establish stable velocity Conduct retrospectives Update the backlog Enable process improvement
Continuous Improvement Metrics and reporting Establish stable velocity Conduct retrospectives Update the backlog Enable process improvement
Continuous Improvement Metrics and reporting Establish stable velocity Conduct retrospectives Update the backlog Enable process improvement
Continuous Improvement Metrics and reporting Establish stable velocity Conduct retrospectives Update the backlog Enable process improvement
Continuous Improvement Metrics and reporting Establish stable velocity Conduct retrospectives Update the backlog Enable process improvement
Organizational Enablement Establish teams Effective communication Effective collaboration Empowerment Trust
Organizational Enablement Establish teams Effective communication Effective collaboration Empowerment Trust
Organizational Enablement Establish teams Effective communication Effective collaboration Empowerment Trust
Organizational Enablement Establish teams Effective communication Effective collaboration Empowerment Trust
Organizational Enablement Establish teams Effective communication Effective collaboration Empowerment Trust
Organizational Enablement Establish teams Effective communication Effective collaboration Empowerment Trust
Visualizing Improvement Talk about scales 1 bad 5 good 1 non-existent 5 sustainable
Visualizing Improvement
Visualizing Improvement
Competencies at Scale Team Multi-Team Program Portfolio Enterprise
Team Agility Scrum Team
Multi-Team Agility Scrum Team Scrum Team
Multi-Team Agility Scrum Team Scrum Team Scrum Team
Multi-Team Agility Scrum Team Scrum Team Scrum Team Scrum Team
Program Agility Product Team Scrum Team Scrum Team Scrum Team Scrum
Program Agility Product Team Product Team Scrum Team Scrum Team Scrum
Portfolio Agility Portfolio Team Product Team Product Team Scrum Team
Enterprise Agility Strategy Team Portfolio Team Product Team Product Scrum Team Scrum Team Scrum Team Scrum Team
Enterprise Agility Scrum Team Portfolio Product Strategy Support
Competencies in Time Continuous Daily Iteration Release Strategic
Competencies in Time Continuous Daily Iteration Release Strategic
Competencies in Time Continuous Daily Iteration Release Strategic
Competencies in Time Continuous Daily Iteration Release Strategic
Competencies in Time Continuous Daily Iteration Release Strategic
Competencies in Time Continuous Daily Iteration Release Strategic
The Solution... Part Three The Agile Adoption and Transformation Lifecycle
Adoption vs. Transformation First... we want to untangle two words that sometimes can be used interchangeably Agile Adoption is about what you do... practices, tools, techniques, ceremonies, and habits Agile Transformation is about who you are... reflected in both the structure of the organization and who you are as people Long term results require both adoption and transformation to be successful
Adoption vs. Transformation Second... we want clearly articulate the three major focus areas that must be addressed interdependently Organizational Structure is about how you create teams and how you organize them Agile Practice is about the methods and tools you choose to introduce People and Culture is about changing hearts and minds of the individuals in the organization All three aspects are essential to sustain agility
Incremental vs. Iterative Third... we want introduce the notion that introducing Agile is an iterative and incremental process for you organization Iterative is when parts of the system are developed at different times and integrated as they are completed Incremental is when you go back over parts of the system making improvements The strategy is to increment the organization by building teams and iterate the teams over time
Incremental vs. Iterative Courtesy of Jeff Patton
Adoption/Transformation Cycle Incrementing and Iterating the Agile Enterprise Change physical structures and introduce teams Teach people new practices and ways of working Help people internalize the value system
Adoption/Transformation Cycle Organizational Transformation Establish top to bottom structure and roadmap Incrementally make changes and establish teams Define policies and working agreements between teams
Adoption/Transformation Cycle Adopting Practices Sprint planning, daily stand-ups, product reviews, and retrospectives Identify and train a Product Owner and ScrumMaster Teach TDD, CI, Story Maps, and MMF
Adoption/Transformation Cycle Personal Transformation Develop an ability to deal with uncertainty and adaptation Help people work toward common organizational goals Help foster empathy, trust, and teamwork
Common Anti-Patterns Establishing teams without breaking down the strict functional silos and rigid role definitions Running daily standup meetings that devolve into status updates for the project manager Coming back from CSM training only to find that there is no way to form agile teams and no interest in agile
Common Anti-Patterns Establishing teams without breaking down the strict functional silos and rigid role definitions Running daily standup meetings that devolve into status updates for the project manager Coming back from CSM training only to find that there is no way to form agile teams and no interest in agile
Common Anti-Patterns Establishing teams without breaking down the strict functional silos and rigid role definitions Running daily standup meetings that devolve into status updates for the project manager Coming back from CSM training only to find that there is no way to form agile teams and no interest in agile
Common Anti-Patterns Establishing teams without breaking down the strict functional silos and rigid role definitions Running daily standup meetings that devolve into status updates for the project manager Coming back from CSM training only to find that there is no way to form agile teams and no interest in agile
The Solution... Part Four Exploring the Integrated Framework
Phase I - Structure Scrum Team
Phase I - Structure Scrum Team Scrum Team
Phase I - Structure Product Team Scrum Team Scrum Team
Phase 2 - Structure Agility Product Team Scrum Team Scrum Team Scrum Team
Phase 2 - Structure Product Team Scrum Team Scrum Team Scrum Team
Phase 2 - Structure Product Team Product Team Scrum Team Scrum Team
Phase 3 - Structure Portfolio Team Product Team Product Team Scrum
Phase 3 - Structure Strategy Team Portfolio Team Product Team Product Scrum Team Scrum Team Scrum Team Scrum Team
Phase 3 - Structure Scrum Team Portfolio Product Strategy Support
Phase I Value Delivery Cultural Factors Organizational Transformation Adopt Practices Personal Transformation Value Delivery Product Definition Planning Coordination Delivery Practices Continuous Improvement Phase I Better Estimation & Release Planning Organizational Enablement Cultural Factors 116
Phase I Value Delivery Better Estimation & Release Planning 117 Organizational Transformation Adopt Practices Personal Transformation Value Delivery Product Definition Planning Coordination Delivery Practices Continuous Improvement Product Definition Planning Coordination Delivery Practices Continuous Improvement Phase I Better Estimation & Release Planning Product Definition Continuous Improvement Planning Coordination Delivery Practices Organizational Enablement 117
Phase I Value Delivery Better Estimation & Release Planning 118 Organizational Transformation Adopt Practices Personal Transformation Value Delivery Product Definition Planning Coordination Delivery Practices Continuous Improvement Phase I Better Estimation & Release Planning Product Definition Continuous Improvement Planning Coordination Delivery Practices Organizational Enablement 118
Phase I Value Delivery Better Estimation & Release Planning 119 Organizational Transformation Adopt Practices Personal Transformation Value Delivery Product Definition Planning Coordination Delivery Practices Continuous Improvement Phase I Better Estimation & Release Planning Product Definition Continuous Improvement Planning Coordination Delivery Practices Organizational Enablement 119
Phase 2 Value Delivery Better Estimation & Release Planning 120 Organizational Transformation Adopt Practices Personal Transformation Value Delivery Product Definition Planning Coordination Delivery Practices Continuous Improvement Product Definition Planning Coordination Delivery Practices Continuous Improvement Phase 2 Better Estimation & Release Planning Product Definition Continuous Improvement Planning Coordination Delivery Practices Organizational Enablement 120
Phase 2 Value Delivery Better Estimation & Release Planning 121 Organizational Transformation Adopt Practices Personal Transformation Value Delivery Product Definition Planning Coordination Delivery Practices Continuous Improvement Product Definition Phase 2 Better Estimation & Release Planning Planning Coordination Continuous Improvement Delivery Practices Organizational Enablement 121
Phase 2 Value Delivery Better Estimation & Release Planning 122 Organizational Transformation Adopt Practices Personal Transformation Value Delivery Product Definition Planning Coordination Delivery Practices Continuous Improvement Product Definition Phase 2 Better Estimation & Release Planning Planning Coordination Continuous Improvement Delivery Practices Organizational Enablement 122
Phase 3 Value Delivery Better Estimation & Release Planning 123 Organizational Transformation Adopt Practices Personal Transformation Value Delivery Product Definition Planning Coordination Delivery Practices Continuous Improvement Continuous Improvement Product Definition Planning Coordination Delivery Practices Continuous Improvement Product Definition Planning Coordination Phase 3 Delivery Practices Better Estimation & Release Planning Organizational Enablement 123
Phase 3 Value Delivery Better Estimation & Release Planning 124 Organizational Transformation Adopt Practices Personal Transformation Value Delivery Product Definition Product Definition Planning Coordination Planning Coordination Delivery Practices Delivery Practices Continuous Improvement Continuous Improvement Phase 3 Better Estimation & Release Planning Organizational Enablement 124
Phase 3 Value Delivery Better Estimation & Release Planning 125 Organizational Transformation Adopt Practices Personal Transformation Value Delivery Product Definition Product Definition Planning Coordination Planning Coordination Delivery Practices Delivery Practices Continuous Improvement Continuous Improvement Phase 3 Better Estimation & Release Planning Organizational Enablement 125
Phase 3 Value Delivery Better Estimation & Release Planning 126 Organizational Transformation Adopt Practices Personal Transformation Value Delivery Product Definition Product Definition Planning Coordination Planning Coordination Delivery Practices Delivery Practices Continuous Improvement Continuous Improvement Phase 3 Better Estimation & Release Planning Organizational Enablement 126
Phase I - Cadence Strategic Release Iteration Daily Continuous
Phase I - Cadence Strategic Release Iteration Daily Continuous
Phase I - Cadence Strategic Release Iteration Daily Continuous
Phase I - Cadence Strategic Release Iteration Daily Continuous
Phase I - Cadence Strategic Release Iteration Daily Continuous
Phase 2 - Cadence Strategic Release Iteration Daily Continuous
Phase 2 - Cadence Strategic Release Iteration Daily Continuous
Phase 2 - Cadence Strategic Release Iteration Daily Continuous
Phase 2 - Cadence Strategic Release Iteration Daily Continuous
Phase 3 - Cadence Strategic Release Iteration Daily Continuous
A Few Scenarios
Single Team/Single Product Sub 25 person product company and a start-up Started with team level practices Lots of attention early to team culture Began engaging senior leaders on strategy and portfolio management Currently integrating marketing, sales, and support Mobile Labs
Multi-Team/Single Product Sub-100 person product company. 10 years old and privately owned. Program level first.. established a PO team 3 tightly integrated Scrum teams Defined the portfolio governance layer Established the relationship between strategy and support Modeled the overall value stream and wrapped the Scrum process in a two-tiered Kanban Lancope
Multi-Team/Multi-Product Sub-300 person organization. 100 person development organization. 8 Scrum teams. Big-bang team-level adoption Teams aligned by products Product ownership by product Program and portfolio level views established Limiting projects in progress Solid release planning Integration with upstream and downstream planning processes Surescripts & nCircle
Multi-Team/Multi-Product Large multi-national organization. Scope is a 500 person development organization with 55 Scrum teams. Started with a basic view of the portfolio layer Portfolio level value stream mapping, RACI Built out the program management layer with PO teams to develop a requirements management capability Program level value stream mapping, RACI, introduced agile tooling Introduced Scrum at the team level Verint
Products of Products Large multi-national company. Geographically dispersed. Products of products. Scrum teams by product/component Product Owner teams established Portfolio level governance model Lean/TOC planning model Integration with a traditional PMO for metrics and reporting CheckFree/Fiserv
Guitar Mummies Source: http://www2.gibson.com/news-lifestyle/features/en-us/219-gibson-custom.aspx
Agile Program and Portfolio Management 9:00 AM | Thursday | Austin 1-3 | Mike Cottmeyer
Slides at www.leadingagile.com Mike Cottmeyer mike@leadingagile.com 404.312.1471 www.leadingagile.com twitter.com/mcottmeyer facebook.com/leadingagile linkedin.com/in/cottmeyer A little about me... my background.. why Agile is important Studied computer science... spent first 10 years doing infrastructure Infrastructure PM to software PM... close the loop Starting seeing a lot of organizational dysfunction... things that just didn’t make sense Started consulting with V1... saw similar patterns repeated across the world Left V1 to start developing my approach to transformation and help companies make lasting sustainable change Slides at www.leadingagile.com