Disciplined Approach to Adopting Agile: Four-Step Process

Part 2
The agile community needs a structured approach to help it with its agile adoption efforts. Here we present the Agile Adoption Framework, a four-stage process for adopting agile software development.

A number of years ago we predicted that by 2007 or 2008 agile adoption would be on the rise and that the agile community would be in need for a structured approach to help it with its agile adoption efforts. As a result, we invested time, effort, and money to develop an efficient and effective approach to guide and assist those who want to adopt agile practices. Last month we started to see our prediction become a reality when the tentative program for the Agile 2007 conference was posted online. The program contained more than ten sessions focusing solely on the issue of agile adoption, either implicitly or explicitly. 

This indicates, at least to us, that more and more organizations want to know how to adopt agile practices. Well, if your organization is starting the journey of adopting agile practices, we are certain that the Agile Adoption Framework will help you. The Agile Adoption Framework is a model that provides organizations aspiring to adopt agile practices with structured guidance and assistance. The framework addresses some of the common challenges of agile adoption using a unique and efficient approach.

In Part 1 of this article, Disciplined Approach to Adopting Agile: Adoption Framework , we presented the first component of the Agile Adoption Framework, the Sidky Agile Measurement Index (SAMI) and its Agile levels, principles, practices, concepts, and indicators. The SAMI is an integral part of the framework because it provides an approach to measure the agile potential of a project or organization.

In this Part 2 we present the second component of the Agile Adoption Framework: the 4-Stage Process. As depicted in Figure 1, the {sidebar id=1} four stages work together to help the assessor (agile consultant or coach) determine if (or when) an organization is ready to move toward agility, or, in other words, make the go/no-go decision. The 4-Stage Process also assists him or her in the process of identifying which agile practices the organization should adopt. The next sections explain in detail each stage of the 4-Stage process.

Figure 1: The 4-Stage Process

Stage 1: Identifying Discontinuing Factors
Stage 1 provides an assessment process to help identify key factors which could prevent the successful adoption of agile practices. These are called discontinuing factors and can vary from one organization to another. Typically, they pertain to an organization's resources including money, time, and effort, as well as the support of its leadership. The three discontinuing factors identified by the Agile Adoption Framework are:

  • Inappropriate Need for Agility: This refers to situations where, from a business or software development perspective, adopting agility does not add any value.
  • Lack of Sufficient Funds: Whenfunds are unavailable or insufficient to support the agile adoption effort, then an adoption process is not feasible.
  • Absence of Executive Support: If committed support from executive sponsors is absent, then effective and substantial change in the organization is unlikely to occur.

When an organization demonstrates any of these discontinuing factors, it is unprepared to move towards agility and should suspend the adoption process until the environment is more supportive.
Once Stage 1 indicates that the organization is ready to move towards agility, the journey of introducing agile practices into the development process begins. This involves determining which agile practices and concepts are most suitable for the organization to adopt. Actually, to be more realistic, the Agile Adoption Framework first determines the agile practices that a particular project can adopt, not the whole organization. The framework is based on the fundamental belief that each project in an organization can adopt a different degree of agility based on its context


AgileConnection is a TechWell community.

Through conferences, training, consulting, and online resources, TechWell helps you develop and deliver great software every day.