Have a verifiable goal
Have a Rationale for the Transformation
Leadership commitment and responsibility
1. Establish a Verifiable Goal
Goals like “Adopt Agile” are as useful as “World Peace”. Even a somewhat more modest goal like “Adopt Scrum” is totally useless. Agile is a philosophy and scrum is a framework. Neither have any standards against which to measure achievement or non-achievement. Goals are better framed in terms of operational capabilities. For example: Develop the capability of producing a shippable product increment every 2 weeks. Although ambitious, producing a shippable product increment every 2 weeks is something we can assess objectively and decide if met or not met. This example also forces an organization to think about the necessary practices that are needed to support achievement of this goal (scrum, test automation, continuous integration, and so on). Goal too ambitious? How about: produce working software every 2 weeks and demonstrate it to stakeholders. In this second example, ‘working software’ might be defined in a way to exclude full test automation and continuous integration, and hence is a goal that might be achieved in a more reasonable timeframe. In this way the practices become a means to an end, not the primary goal of the transformation.
2. Have a Rationale for the Transformation
To gain commitment, people need to feel this is not just the latest fad, or a new shiny object to pursue. The purpose should be stated in clear business terms. For example: We are lagging our competition and without real and fundamental change to our culture and practices we will fall further behind and lose the trust of our customers. We need to deliver value sooner, and we need the flexibility to react quickly to the accelerating dynamics of the marketplace.
3. Leadership Commitment
Agile adoption requires an organizational and cultural transformation, not just a development process change. Everyone will need to change how they work: senior leaders, managers and individual contributors. The leadership of the organization needs to be more than cheerleaders. To be fully committed they must be actively engaged in setting the goals, providing resources, and driving the initiative to achieve success.
- Goal setting means defining goals , expected outcomes and time-frames. It also means ensuring that the goals are communicated and understood throughout the organization. Adopting agile methods may be part of a strategy to realize a specific business vision. Leadership must connect the dots between strategy and vision in order to provide their teams with a compelling reason for supporting the initiative. Communicate the goal and the plan to get there.
- Establish a plan. Someone said: ‘A goal without a plan is just a dream’. Providing resources includes making the prerequisite organizational adjustments – supply of product owners, scrum masters, establishment of cross-functional teams, and supporting the transition of traditional managers to servant leader roles. Support obviously also means funding for training and tools. If organizational culture is basically “that’s the way we do things around here”, then leadership support means recognizing that the transition is mainly cultural, and acknowledging the implications and often the pain that goes with changing it. Large organizations may designate one individual to orchestrate all of the elements of the plan, and to report progress and obstacles back to the leadership team.
- Execute, Inspect and Adapt. Make course corrections as circumstances unfold, and communicate progress. This should not be a one-off exercise, or something that occurs on an ad-hoc basis. Establish a communication plan where the organization receives regular updates on progress towards the goal.
4. Organizational Prerequisites
Traditional organizations embarking on an agile transformation must recognize that the existing status quo needs to be completely dismantled. The expectation must be set that traditional organizational structures with functional departments led by functional managers must be restructured as a prerequisite for successfully producing shippable product increments on a regular cadence. Don’t ask or expect consultants or coaches to sort this out – they have no authority to do so, and will only waste a lot of time wrestling with impediments caused by having the wrong organization structure. Make sure that teams have trained product owners who can provide direction on product priorities, and can setup and maintain sufficiently deep product backlogs for teams to work from. Managers must transition to a ‘servant leader’ role – this sounds like one of those vague, new age expressions like ‘respect for people’, however it has a very specific meaning, and is vital for the growth and success of teams. Teams need to be empowered become ‘self-organized‘. The necessary organizational and role changes are likely to be the hardest part of any agile transition. Recognizing this, working to make the required changes happen, and communicating these necessities to the organization should be a top priority for the leadership team.
5. Sustainable Pace
Recognize that teams can only absorb so much of any new set of practices at a time – don’t overwhelm them with too much too fast. Give teams the time to learn and practice any new skills. There is much to learn, and mastery will only come by practice. Give teams space to fail and to learn from the experience. It will typically take new team 3-4 months to achieve a sustainable proficiency in the fundamentals of scrum. Make sure realistic expectations are set.
6. Measure Progress
Everyone’s heard the phrase: ‘You can’t improve what you don’t measure’. Plan to measure progress across all practices, and be prepared to intervene supportively when a team becomes stuck or needs help. Be specific about progress in each practice area and identify corrective actions or any necessary management escalations for help, resources, or removal of organizational impediments. Review progress regularly with both team and sponsors, and ensure alignment on progress and challenges. Surprises are usually not good. Ensure touchpoints and feedback loops involving sponsors are frequent enough that so that things are not allowed to get too far off track. Here is an example of a simple way to assess the progress of a team in adopting a set of agile practices. The team’s progress was assessed over 6 iterations.
Definitions of Red, Yellow, Green should be compiled and reviewed with the team. These could be as simple as: Red – Nothing in place, Yellow – basic mechanics adopted/team beginning to adopt, Green – practice fully adopted and being done consistently. This is a good chart to review as part of the retrospective process, and as a quick way to identify gaps and then prioritize improvements. Whatever method you plan to use to track progress, get it in place up front and get all stakeholders on board with it.
More importantly, one would expect that improvements in development practices would translate into improved business-level results. So we need a way to measure that also. For example: