At Agilest® we design all of the steps of the transformation with the assumption that the organization will go all the way through to a complete transformation. The reason that we do this is because most of the organizations that we have engaged with eventually take that route when the value of doing so becomes apparent to them.
Usually, this happens after a few teams are transformed successfully to use agile methods. We design the elements for a complete transformation into the core of how we work with organizations. We have designed our system for continuous improvement all the way through to scaling. We do this so that the growth-focused companies we work with will be able to respond to their organizational needs faster.
The End Goal
Agile Transformation Occurs At Two Major Levels
At most companies, if any agile methods are being used, it is usually at the team level. Development is a good place to start, but it is the smaller part of the equation. The team level though is vital as it is simpler to visualize the activities of team members than it is to visualize the other parts of an organization in a cohesive way. The team is obviously a subset of the organization, but the team can be organized to perform its work in an Agile way, even if the rest of the organization is still working using home-grown processes, or a Waterfall inspired workflow if it is more mature.
To give some clarity to the steps involved in transforming a team verses the whole organization we have bulleted most of the main steps involved in transforming a team, followed by the steps involved in transforming the organization.
Set up and Train Team
- Team Selection - Interview IT employees to select team members based on their skills, personality, desire, and willingness to change. Pay particular attention to employees with Agile experience.
- Team Training - Using external Agile consultants conduct classes geared to the development team. Separate classes designed for product owners and scrum masters should also be given.
- Team Monitoring - Set up metrics for measuring a team’s success rate. Track items such as a team velocity, sprint success rate, team morale, rework due to undetected defects in coding, and customer satisfaction rating based on customer questionnaires.
- Team Location - The goal is to have all members of a development team work together in the same physical location rather than in scattered sites. When this is not possible, Agile does have remedies for handling this situation.
- Team Environmental set-up - This includes setting up the physical areas where developers will work. It is recommended that individual cubicles be eliminated and be replaced by large working tables along with bulletin and black boards along with any other needed aids.
- Team Tools - Engineering tools must be set-up for the development team that includes TDD (Test Driven Development), automated testing, CI (Continuous integration), and automated deployment. The purpose of Agile engineering is to automate all repetitive tasks to save development team time, and to improve code quality by way of using automated testing to retest everything for which a test already exists.
- Team Expansion - Decide on the methods to be used for team expansion once the first team is becoming successful. Consider such methods as split and seed, grow and split, or through assignment of an internal coach who is best at Agile in a successful team, to help out a new team.
Perform Sprint Zero and Staging
Sprint Zero - The purpose of Sprint Zero is to do everything necessary to prepare for and align all the details needed to get the development sprints started. It is the only sprint that does not have a specific time length.
- Develop and confirm the visions (goals) for the entire organization that will constitute the Agile project.
- Develop the roadmap which is an overview of the entire Agile project. During a roadmap planning session it is broken down into releases and then further into sprints.
- Write the user “stories” for at least the first sprint by breaking down the epics. Break an epic down only if it is too large to be completed in the time frame set for a single sprint.
- Develop the initial product backlog and prioritize those tasks to be completed in sprint number one.
- Complete any other set-up tasks that are determined to be necessary before starting the first sprint.
- Answer the question, why agile? Not every company should be moving to use agile.
- What does the company expect to get from an agile transformation? Are the expectations realistic?
Agile readiness assessment
Is the company ready for a transformation or do they need to make changes first to be successful?
- How are the current teams structured?
- What is the budgeting process?
- What is the governance process like?
- Is the change control adaptable to agile development?
- Is there a willingness to change?
Create a transformation roadmap
Create a transformation roadmap based on inputs from the transformation plan and organizational goals. (The roadmap needs to be specific to the company and the goals of the organization)
- Determine the end goal
- Define the pilot project
- Training plan (train everyone – Receptionist to CEO)
- Review upcoming development and chose a project to pilot
- Criteria for a successful pilot:
- Train the team
- Use an experienced coach
- Conduct a thorough retrospective to gather lessons learned for the next project
Determine what organizational changes need to be made to make subsequent projects more successful
- Are tools needed?
- Changes to governance?
- Project funding requirements
- Change control processes
- Evangelize the success of the pilot
- Choose the next project to transform
- Plan for organizational change management
- Plan for continuous improvement
- Quarterly review of the roadmap
- Center of practice excellence
- Training maturity plan
- Identify the leaders
Take your organization to another levelContact us to schedule a consultation with our Agile bred enterprise transformation professionals.
Keys To A Successful Enterprise Transformation
Specialized Training is Necessary
Many companies have achieved impressive results when they have adopted agile methods. Unfortunately, at most companies the results they achieved have been nowhere near what they could have been. The main reason that some companies do not perform as well with agile as they could is because they just give the would be scrum masters basic CSM training, and leave out training for the rest of the team members. Or they give everyone CSM training. Scrum master training is needed for scrum masters. Seems obvious, but to save time or effort, they miss giving the team, team training, and they do not give the product owners, product owner training.
Use Experienced Agile Coaches
The biggest transformation error is not using an experienced coach. It is very short term thinking to forgo coaching. An effective coach can save a company a considerable amount of money because they can get teams performing faster. Even if the company is just piloting an agile team to determine if agile is a fit for their organization, the use of a coach can help a company get to the answer much more quickly and accurately.
What is complicated about an agile adoption is developing the finesse to implement agile properly. Here is where the expertise of a coach really helps. The agile mechanics are the easiest part; the actual doing is complex that takes years for a company without help to attain expertise.
Readiness Assessment Must Come First
When an organization makes the commitment to transform the entire organization all of the way up to the leadership level, it is critical that an assessment first is performed to get a handle on the structure of the company and to determine where they are in their organizational life cycle. The assessment is an often overlooked or undervalued element of a transformation, but it should not be because it is one of the key foundational elements driving the strategy and the roadmap that will be used to guide the transformation.
When we implement transformations using Agile methods, it is a misnomer to believe that proper Agile development moves forward automatically without a plan. The same is true of a proper Agile transformation. While it is true that most Agile transformations eventually move forward with little planning as to what the end goal is, we believe that this is an inappropriate and inefficient approach.
An example of our point is this. If a small IT shop plans to implement an Agile development with a single team and it is understood that the development will never get past that single team, it then becomes unnecessary to baseline story points for multi-team scaling. The reason is that when a team establishes a baseline just for their story point estimation, it goes very quickly. But if that team is a pilot team, and the organization has the intention to mature into a scaled framework, then it becomes wise to establish story point baselines that will be suitable for the whole development organization. The reason is that while it may take longer to get the first team up and running, in the long run, it is better because it reduces the amount of change and relearning that the teams must go through to be ready for scaling.
Another reason it is important to perform a readiness assessment is because it will form the basis for the methodology tailoring needed for an active transformation. Organizations that operate in highly changing and competitive environments where the product offering is constantly adapting to new challenges, are likely to be well served by adopting Agile methods all the way up to the leadership of the organization. This is especially important when it is impossible to develop an accurate organizational strategy for periods extending out more than a year because past evidence clearly shows that change in the industry happens too quickly for it to be useful that far out. On the other hand, if the organization is operating in a mature industry such as petroleum refinement, it makes little sense to adopt Agile at the leadership levels because the changes are predictable enough to make long term planning worthwhile. In a slowly changing environment, an Agile adoption at the leadership level can increase bureaucracy.
Be Prepared For Inevitable Change
The stage that a company is in changes over time and sometimes an organization that was in a stable environment for decades is turned upside down by technological innovation that is disrupting the primary levels in an industry. When this happens, organizations that have been engaged in organizational change to refine their management practices at various levels will have an advantage over stagnant competitors. This is because a company that is already on a path to improvement will find that changing direction to respond to disruptive forces will be met with less internal resistance largely due to the momentum for change that already exists within the organization.
The changes that occur at a company that is adopting agile are gentle compared to the changes that are needed when a company is suddenly faced with change or die scenarios that need to be implemented immediately throughout an organization to prevent its demise in the face of a large competitor that has gained some significant advantage. When a company has been going through a process of transformation and the staff members throughout the organization have been experiencing change as a matter of routine, structural pivots are then relatively straightforward to implement.
When a company has been going through a change process over a period of time, then the communications channel should already be in place. Additionally, the mindset of change is already present. The complicated part of implementing change in an organization is getting the staff to accept the idea that things are going to change. But once the staff has started moving forward to making changes, pivoting to a different set of changes will be met with a much lower level of resistance, and the time that it takes to get acceptance for those changes can be short.
The bottom line is there is no one set of best practices that applies to every organization, and every organization needs a different strategy for implementing Agile.