the support of that practice. As shown in figure 1, by following the linkages upward from the properties, we can infer the adequacy of the environment for supporting the use of proper principles and the achievement of desired objectives.
The OPP framework identifies a set of five objectives that reflects the agile values and a supporting set of nine principles. It also provides a consolidated set of practices that help realize the prescribed principles. Figure 2 shows the set of objectives, principles, and practices that are reflective of the agile philosophy. We note, however, that the list of practices presented in figure 2 is not necessarily exhaustive, and is expected to change over time. We also recognize that different practices can be used to achieve the same set of principles.
Figure 2: Objectives, principles, and practices identified by the OPP framework
Currently, we have identified a preliminary set of linkages between the objectives and principles, and principles and practices. These linkages definitively identify the relationships among the components of the OPP framework. Consider the objective “Human-centric” (see figure 3) identified by the OPP framework. By “Human-centric” we mean that the people are more important than processes, practices, and tools. We conjecture that one of the principles that support the achievement of human-centricity is “Constant Development Pace.” In turn, from figure 3, we see that “Constant Velocity” is one of the practices that help realize “Constant Development Pace.”
Figure 3: Example linkages in the OPP framework
We have used learning, experience reports, white papers, books, etc., to identify all and confirm many of those relationships. We have currently substantiated approximately 60% of the identified linkages.
Assessing Internal Consistency of an Agile Method
The internal consistency of an agile method determines the sufficiency of that method to meet its stated objectives. That is, given a method’s objective, are the necessary principles also present that are prescribed by the framework? Then, for each principle enunciated by the framework, are the recommended practices touted by the agile method? If necessary principles and practices are missing, then the internal consistency is suspect. To assess the internal consistency of an agile method, say Method X, we ask the following questions:
1. Firstly, does Method X tout objectives that are consistent with those stated by the OPP framework?
Consistency is confirmed if the set of objectives touted by Method X is equal to or a subset of those expressed by the framework. We accept subsets because organizations often tailor their agile development approach to reflect cultural distinctiveness and to emphasize their business goals and values. We would question, however, any objective highlighted by Method X that is not one of those enunciated by the OPP framework.
2. Secondly, does Method X state principles that support the achievement of its touted objectives?
Using the set of objectives articulated by Method X, we first identify the same set embodied within the OPP Framework, and then follow the linkages from those objectives to the corresponding set of supporting principles. This set of principles is precisely that needed to support the realization of the objectives publicized by Method X. An inconsistency between the two sets of principles indicates a potential deficiency in the ability of Method X to achieve its stated objectives.
3. Finally, does Method X express practices that are the implementations of its stated principles?
We use the principles enunciated by Method X to identify a corresponding set of principles within the OPP framework, and then follow the framework linkages from its principles to a related set of practices defined within the OPP framework. This identified set of practices