The agile philosophy provides an organization or a team with the flexibility to adopt a selected subset of principles and practices. However, more often than not, these customized approaches fail to reflect the agile principles associated with the practices. Organizations often lack the supporting environment to effectively implement the adopted methods, which result in the benefits afforded by agile methods not being fully realized . Our work is motivated by the need to help organizations determine the extent to which they support the implementation of a selected agile method. More specifically, we propose to assess the capability of an organization to provide the supporting environment to effectively implement an agile method . Agile adoption in an organization is guided primarily by its culture, values, and the types of systems the organization is developing. When an organization decides to adopt an agile method, we ask the following questions:
- Does the adopted agile method have the potential to satisfy the values of the organization? More specifically, does the method have the principles and practices in place to achieve the touted values?
- Does the organization’s culture of permit the adoption and application of the agile method? Does the organization’s environment have the capability to support the implementation of the method? For example, if the people in an organization are resistant to change, getting them to adopt agile methods can be a difficult undertaking.
Our assessment methodology is based on the recognition that any viable agile method reflects organizational objectives, asserts principles that support those objectives, and includes practices that embody those principles. To assess capability, we follow a twofold approach. Firstly, we evaluate the internal consistency of the agile method. That is, we assess the correspondence between the objectives, principles, and practices of the selected agile method. Clearly, those objectives should reflect the culture and values of the organization. Secondly, we examine the characteristics of the organization’s internal environment , namely its resources and competencies . In an organization, the characteristics of its people, the process that it adopts, and its projects are reflected in its internal environment. Hence, we identify observable characteristics of the people, process, and project associated with each practice. We then compute aggregated measures that indicate the presence or absence of the necessary resources and competencies.This article outlines our approach to assessing the capability of an organization to support the implementation of an agile method.
To guide our assessment, we propose the Objectives, Principles, and Practices (OPP) framework [2, 3]. Figure 1 shows the core structure of the OPP framework. The design of the OPP framework revolves around the identification of the agile objectives, principles that support the achievement of those objectives, and practices that reflect the “spirit” of those principles (figure 1). Well-defined linkages or relationships between the objectives and principles, and between the principles and practices are also established to support the assessment process. In figure 1, the arrows between the objectives, principles, practices, and properties depict the existence of linkages between the components.
Figure 1: Core structure of the OPP framework
Firstly, we assess the internal consistency of an agile method by traversing the linkages in a top-down fashion (figure 1). That is, given the set of objectives espoused by the agile method, we follow the linkages downward to ensure that the appropriate principles are enunciated, and that the proper practices are expressed. Secondly, we assess the adequacy of an organization to implement its adopted method by using a bottom-up traversal of the linkages. The bottom-up assessment, however, is predicated on the identification of people, process, and properties associated with each practice that attest to