In a previous post I wrote about starting an agile [project and software development] transformation. I listed the four steps to the transformation. This blog posting discusses step 1, Agile Transformation Readiness

The goal of the Readiness Phase of an agile adoption is to understand the current state of the organization and stakeholders, set the expectations for change, and establish an overall strategy and plan for the engagement. Essentially, this is the time when you identify how agile can work in your company. Too often, companies send employees to training and expect them to return ready to apply the newly-learned skills. Most training only teaches the science of agile or, put another way, what needs to be accomplished. The classes often fall short in teaching the art of applying those skills within a company. Readiness involves collaborating with stakeholders to do the following:

  1. Identify an agile coach: Who will guide, mentor, and lead the transformation?
  2. Establish a strategy and roadmap for implementing agile: What parts of the company will start the agile transformation journey? Project management office, software development, infrastructure, corporate security, quality assurance, data modeling, architecture, or all of the above? And, what is the approach for implementing the transformation? In Figure 1, a typical IT department is made up of, at minimal, two but also three areas; Discovery, Delivery, and Operations. Discovery is where research and development are housed to identify a new product or service; Delivery is where the projects are initiated to build the new product or service; and Operations is where the new product or service is maintained during its life-cycle. The Agile Project Manager must determine in what area the agile transformation will begin.

ITOrg

Figure 1 – A Typical IT Ecosystem

  1. Establish the agile framework and practices methodology: What framework will be used to guide the agile team? DiPD™ Scrum, DSDM, Extreme Programming Scaled Agile Framework Enterprise (SAFe); Who will train the team? How will continuous improvement be performed? Who will govern the process to ensure that it is being used correctly and effectively? Has it been approved by the collaborators?
  2. Determine suitability of projects using the Decision Matrix: Will all projects begin using the new agile framework? Will skunkworks projects use the new agile framework? Skunkwork projects, according to Webopedia, are typically small and loosely structured group of people who research and develop a project for the sake of innovation. A skunkwork project often operates independent of a company’s normal research and development operations, or project management framework, and therefore often is subject to limitations in resources. Skunkworks projects often are undertaken in secret with the understanding that if the development is successful then the product will be designed later according to the usual project management process. Will there be absolutes for a project to begin using the new agile framework? How will the Agile Project Manager decide if a project can use the new agile framework?
  3. Establish periodic progress meetings: Is there a need to ensure that middle managers and above are kept abreast of the agile transformation progress?
  4. Assess engineering practices and agile mindset of the organization: Have agile practices been adopted by the group but are being ignored?
  5. Focus on agile mindset and cultural shift: How will the new agile framework be rolled out to the larger body of IT and business employees? Who will be responsible for organizational change management?

This typically takes anywhere from 4 to 6 months, depending on how complex, siloed, and political your organization is. An Agile Project Manager should be responsible in leading the agile transformation within a company. It is recommended the Agile Project Manager be interviewed and chosen by the transformation team. Once selected, the Agile Project Manager can facilitate the discussions to develop the strategy and roadmap that will aid your company’s agile project  teams in determining how long the transformation will take, how many phases it will contain, who will be involved, and when the transformation will conclude. Establishing a readiness roadmap for using agile will aid in the identification of the parameters an agile project  team in your company will use to ensure that they are consistently applied, can be measured, and identify training needs.

Determining the suitability of projects will aid in selecting the right project. A decision matrix can be used to select the appropriate agile project for use in a pilot. Risk, high-level requirements, and other criteria can be added to the matrix so that the agile transformation team can select the best project for the pilot. Too often, I hear that “all” projects can use agile. That may seem true, but what typically is missing is the following:

  1. The project team is not experienced in agile and they select the wrong project and fail in their delivery.
  2. The project team is not mature enough to work collaboratively and they fail to take ownership of tasks, fail to measure their progress, and fail to use the company approved agile practices needed to successfully deliver the project;
  3. The project team’s management does not use servant leadership in supporting the agile project team and resort to using command and control techniques that lead the team back to a traditional project management approach, causing the team to fail in its delivery.

Assessing engineering practices and agile mindset of the transformation team and is one of the most overlooked aspects of an agile transformation. Establish periodic meetings to ensure that upper and middle management are presented with regular updates on how the agile transformation is proceeding. Investigate the agile software engineering practices that are being used currently in your company; these can be integrated into the new agile framework and will reduce the amount of resistance you experience in introducing the new agile concepts. Make sure the agile project team(s) responsible for implementing the new agile framework are bought-in to the concept. Nothing can affect a project team more than lack of team commitment and buy-in.

Finally, understand that anytime you introduce a new concept into a bureaucratic and highly politicized organization, organization change management (OCM) is needed. OCM is a methodology for managing the effect of new business processes, changes in organizational structure, or cultural changes within an enterprise. Simply put, OCM addresses the people side of change management (Rouse, 2012). Rouse says that a systematic approach to OCM is beneficial when change requires people throughout a company to learn new behaviors and skills. By formally setting expectations, employing tools to improve communication and proactively seeking ways to reduce misinformation, stakeholders are more likely to buy into a change initially and remain committed to the change throughout any discomfort associated with it.