Measuring the Success of Software Process Improvement: The Dimensions
Pekka Abrahamsson University of Oulu, Finland Pekka.Abrahamsson@oulu.fi
Keywords: software process improvement, success, measurement, success dimensions, multidimensional constructs
There does not exist a universal framework with which the success of a project could be measured and assessed [18]. As of today, this argument remains true in engineering like projects as well as process improvement projects. However, some authors (e.g. [15]) call for learning from the previous successes while others (e.g. [1]) call for learning from failures. In order to learn from previous experiences, one needs to be able to separate a success from a failure. SPI research has paid little attention to systematic study about the conditions under which SPI initiatives vary in their results [4]. The issue of success of an SPI initiative is deemed to be a problematic one since we all have experiences on projects that initially appeared to be failures (e.g. projects were not finished in time) but later on turned out to be successes (e.g. fault rate was dramatically dropped).
It has been acknowledged that software measurement is essential in the improvement of software processes and products since if the process (or the result) is not measured the SPI effort could be addressing the wrong issue [21]. However, the issue of process measures is generally considered to be a level four issue in the widely used Capability Maturity Model (CMM ). Still, vast majority of the organisations undertaking SPI activities are in level one or two in respective scale. For a such type of an organisation the undertaking of process measures could prove to be a difficult task since in spite of extensive literature on software measurement (see e.g. [16] for overview) companies are facing serious problems initiating even the simplest metrics programs [9].
The issue of direct measurement of a success of any particular SPI initiative is not the main objective of this paper however, since a measure developed without thorough understanding of the concept of interest is not a true measure and may result e.g. in serious ambiguities when interpreting results [20]. Therefore, as a step toward a mature measurement of success in SPI the dimensions that can be used to characterise success are introduced. These dimensions are drawn from project management literature and adapted to SPI environment. It is shown that any direct measure of success remains inadequate if other dimensions are not considered. Also, it is demonstrated that the importance of these dimensions vary depending on the stakeholder (e.g. software developer, change agent or manager) evaluating it. In this paper, early results of an empirical test are reported where 23 change agents evaluated the level of importance of each dimension from their point of view. In short, results indicate that a) all process success dimensions were evaluated to be at least moderately important to change agents, b) the process user (i.e., target of change) satisfaction dimension was rated the highest while c) the ability of an SPI initiative to prepare the organisation for future initiatives was ranked the lowest. This paper is organised as follows: First, a sample selection of studies that address the issue of success in SPI are introduced. Secondly, the concept of success in SPI is considered by (a) defining the stakeholders involved in SPI initiative, (b) introducing the dimensions that characterise success in SPI, and (c) addressing the issue of Characterising the success using the dimensions identified. Thirdly, results from an empirical study are presented together with conclusions and a future research agenda.
Kitchenham [12] has written a comprehensive book of measuring SPI. The book aims at explaining how software measurements can be used to support SPI activities. However, while addressing the measurement issues Kitchenham does not take into account other stakeholder positions. She seems to discuss software metrics as sole indicators of success in SPI. For example, process user satisfaction with the altered processes is not discussed. While hard metrics do provide a great deal of support for process improvement they do not give whole-hearted picture of the impact that a particular SPI programme has on the organisation.
Success means different things to different people [7]. The corporate executive acting in the sponsorship role is concerned with the overall organisational business benefits yielding from the process improvement initiative while on the other end of the spectrum the targets of change (e.g. software developers) might be more concerned with the usefulness of the new or modified process expecting to benefit from the new tool, or procedure in a way that enables them do their jobs better. Targets of change as end-users of SPI activities are in a key position when considering the success of SPI. In general, a systems development project is considered to be a failure if the system developed is not used [14]. Similarly in SPI, if the improved process is not used after initial trials, it should be considered as a failure. Any type of software process improvement success measurement should therefore reflect a more of a multidimensional approach reflecting the expectations of senior management as well as targets of change rather than a single dimensional approach. Table PABRAHAM.1 summarizes the role of various stakeholders and their function in an organisational software process improvement programme.
Table PABRAHAM.1: Stakeholders typically involved in software process improvement programmes [21]
D1: Project Efficiency (Meeting Constraints) According to Shenhar et al. the first dimension reflects a short-term measure that expresses the efficiency with which the project was managed. This classical dimension found in all of the software project management literature in mainly concerned whether the project was (a) finished on time within (b) specified budget limits. This dimension is possible to be measured during the project (Fig. PABRAHAM.1) and the results are fully applicable for further analysis after the project has been completed. Zahran [21] lists a comprehensive list of project related measures such as the development time, slippage, work completed, effort expended, funds expended, etc. These measures can be used as post mortem (as well as ongoing) project analysis to provide feedback on the level of success in terms of project efficiency success dimension. Even though it is important to coordinate and manage an SPI initiative according to good project management principles, as of its own it does not indicate whether process improvement has been successful or not.
D2: Impact on the Process user (object of change) Shenhar et al. analyse the success in general level within all types of engineering projects and they refer in this case to the customer. In the case of improving software processes the customer is the user of the process (e.g. project; software developer, tester). The level of success is characterised therefore in terms of level of satisfaction with the new process, fulfilment of the needs of the software developers, solving the problem they experienced and whether the improved process actually is used. The success in this dimension (Fig. PABRAHAM.1) may be seen relatively early in an SPI initiative as process users become more educated about the process improvement initiative. Improved work morale, excitement and positive attitudes are signs of success in the early phases of the project. Process improvement activities (e.g. coaching, information sharing and training) may reinforce process users’ professional competence, which in turn are visible signs of success later on in SPI initiative. Measuring the extent this dimension is a success is more problematic than the first dimension where hard numbers are a relatively straightforward issue.
D3: Business Success and D4: Direct Operational Success The third dimension in Shenhar's et al. classification addresses the immediate and direct impact the project has on the organisation. In the case of improving software processes this dimension is divided into two sub dimensions concerned with (a) directly process-related aspects and (b) business-related aspects. Zahran [21] includes in his list of process-related measurement many items that directly indicate the level of impact the process improvement project has on the organisation. These measurement examples are e.g. number of change requests, amount of rework, number of process defects, cycle time measures and a maturity level. Zahran [21] among others argue that one of the major obstacles to the adoption of process improvement is the reluctance of business management to invest in SPI. Zahran points out that this obstacle is raised from the fact that there is a general lack of reliable information on the business benefits of software process improvement. Therefore, by connecting SPI goals to business goals of the organisation the business management is more likely to invest in SPI. Such high-level strategic business goals are e.g. ‘gain larger market share’, ‘reduce time-to-market’, ‘improve product quality' and ‘increase the productivity'. Process improvement programme is an ongoing activity where the immediate results are connected more on the process-related aspects when the business-related results are visible much later on in SPI project’s life cycle (Fig. PABRAHAM.1).
D5: Process improvement fit and preparing for the future The last dimension identified by Shenhar et al. addresses the issue, using their terminology, of preparing the organisational and technological infrastructure for the future. In the case of software process improvement this preparation for the future implies to applicability of an SPI initiative to provide opportunities for future improvement activities. Companies that have had bad experiences in the past with process improvement projects are reluctant to initiate such activities again. The reasons for the failure are manifold and not many times analysed deeper as to what happened. These failing SPI projects did not prepare themselves or the organisation for the future even though they would have had many opportunities to do so. A good example of a post mortem analysis process in software development project that is applicable to SPI initiative as well is introduced in [3]. Indeed, one of the powerful mechanisms for an effective process improvement support infrastructure is its continuously improving characteristic. This requires the establishment of effective feedback mechanisms that ensure direct communication channels between process users, process owners, process groups, project managers and business managers [21]. This in turn enables the organisation to redefine its goals (in respect to SPI programme) and tune the activities depending on the feedback received from various stakeholders. Failure in one specific dimension may prepare the organisation for future challenges but only if it is taken carefully into consideration e.g. in the form of knowledge transfer. On the other hand, a success in one specific SPI action may not necessarily be as relevant as how well the action fits in the larger view of the whole set of activities.
Fig. PABRAHAM.1 : Success Dimensions’ achievability in relation with SPI project’s time frame
Table PABRAHAM.2 : Measuring success dimensions
Fig. PABRAHAM.2 : A sample item from the questionnaire
Early results (Fig. PABRAHAM.3) indicate that change agents value all assessed categories to be at least moderate level of importance in regard to evaluating the success of an SPI initiative. Shenhar et al. [18] found out that project managers place greater importance to the customer (in engineering projects) than they attribute to commercial success or any other project’s impact on the organisation. Similarly in the present study the change agents evaluated the process user satisfaction (dimension 2) having the highest importance above all other items or dimensions. Indeed, the importance of people issues in improving software processes has been acknowledged since only three of 23 (13%) respondents evaluated the process user satisfaction as an indicator of process improvement success lower than high importance (below six in respective scale). Somewhat contradicting finding with the SPI literature is the result that achieving the business goals together with process improvement initiative’s fit to overall SPI programme and its ability to prepare the organisation for future improvement initiatives were ranked having the lowest importance from change agent’s point of view. This finding provides preliminary support for the idea that any measurements considering success in SPI should incorporate more than one single viewpoint in order to provide an adequate view on process improvement initiative’s success.
Fig. PABRAHAM.3 : The relative importance of success dimensions in SPI from the change agent’s viewpoint
Fig. PABRAHAM.4 : Percentage of respondents per success item
To our surprise, however, there was a remarkably small difference between averaged level of achievement value (calculated as a simple sum) and weighed average (the level of importance was taken into consideration for each item) (see Fig. PABRAHAM.5). Also, the self-evaluated total level of success corresponds rather well to calculated values. Only in three occasions there is a noticeable difference. One should note that the higher the number of items assessed is, the higher should be the reliability of the assessed level of achievement. It is interesting to note that the first four evaluations were done for the same SPI initiative by four different change agents. While the results (achievement levels) are extremely similar, the number of items used for evaluation varied considerably (from 4 to 10). This calls for attention on the subjectivity of the assessments when there is little data behind the evaluations.
Fig. PABRAHAM.5 : The level of success achieved in SPI
2. Abrahamsson, P., Is Management Commitment a Necessity After All in Software Process Improvement? in Proceedings of the 26th Euromicro Conference, (Maastricht, The Netherlands, 2000), IEEE Computer Society, 246-253.
3. Collier, B., DeMarco, T. and Fearey, P. A defined process for project post mortem review. IEEE Software, 13 (4). 65-72.
4. El Emam, K., Goldenson, D., McCurley, J. and Herbsleb, J. Success or Failure? Modeling the Likelihood of Software Process Improvement, International Software Engineering Research Network, 1998.
5. Farmer, S.M., Maslyn, J.M., Fedor, D.B. and Goodman, J.S. Putting upward influence strategies in context. Journal of Organizational Behavior, 18. 17-42.
6. Fitzgerald, B. and O'Kane, T. A longitudinal study of software process improvement. IEEE Software, 16 (3). 37-45.
7. Freeman, M. and Beale, P. Measuring project success. Project Management Journal, 23 (1). 8-17.
8. Grady, R.B. Successful software process improvement. Prentice Hall PTR, Upper Saddle River, NJ, 1997.
9. Herbsleb, J.D. and Grinter, R.E., Conceptual simplicity meets organizational complexity: case study of a corporate metrics program. in Proceedings of the 1998 International Conference on Software Engineering, (1998), 271-280.
10. Humphrey, W.S. Managing the Software Process. Addison-Wesley Publishing Company, Inc., 1989.
11. Kasse, T. and McQuaid, P.A. Entry Strategies into the process improvement initiative. Software Process - Improvement and Practice, 4. 73-88.
12. Kitchenham, B.A. Software metrics: measurement for software process improvement. Blackwell Publishers, Cambridge, Mass., 1996.
13. Law, K.S., Wong, C.-S. and Mobley, W.H. Toward a taxonomy of multidimensional constructs. Academy of Management Review, 23 (4). 741-755.
14. Millet, D. and Powell, P., Critical success factors in expert system development a case study. in Proceedings of the 1996 conference on ACM SIGCPR/SGMIS Conference, (Denver, CO, 1996), ACM, 214-222.
15. Nolan, A.J. Learning from Success. IEEE Software, 16 (1). 97-105.
16. Pfleeger, S.L., Jeffery, R., Curtis, B. and Kitchenham, B. Status report on software measurement. IEEE Software, 14 (2). 33-43.
17. Reo, D.A., Quintano, N. and Buglione, L., Measuring software process improvement: There's more to it than just measuring processes! in 2nd European Software Measurement Conference - FESMA'99, (Amsterdam, the Netherlands, 1999).
18. Shenhar, A.J., Dvir, D. and Levy, O. Project Success: A Multidimensional, Strategic Concept, Stevens Institute of Technology, Hoboken, NJ, 1999.
19. van Solingen, R. and Berghout, E. The Goal/Question/Metric Method: A Practical Guide for Quality Improvement of Software Development. McGraw-Hill, Cambridge, UK, 1999.
20. Xia, F., On the danger of developing measures without clarifying concepts. in Proceedings of the Asia Pacific Software Engineering Conference, (1998), IEEE Electronic Library online, 86-92.
21. Zahran, S. Software process improvement: practical guidelines for business success. Addison-Wesley Pub. Co., Reading, Mass., 1998.