A study of reported practical experiences about TSP implementations

Many software organizations engage in software process improvement (SPI), but process descriptions may soon become outdated especially if the organization, for a while, has given low priority to SPI. As a result, software organizations may need to re-engineer process descriptions that are inconsistent with desired process practices. While the literature addresses how organizations can re-engineer business processes and legacy systems, no guidance exists on re-engineering legacy process descriptions. Software process re-engineering (SPR) is a transitional activity that helps organizations effectively re-engage in SPI by assessing legacy process descriptions; selecting process descriptions that need to be removed, innovated, or implemented; and defining a plan to align process descriptions with desired process practices. SPR results in a repository of managed process descriptions and a plan for disciplined software process management. In this article, we derive principles for SPR, use these principles to propose a model for re-engineering legacy process descriptions, and present an industrial case study to demonstrate the effectiveness of the model. In the presented case, SPR had several benefits: it leveraged earlier investments in SPI; it engaged key stakeholders in revitalizing improvement efforts; it created a shared understanding of the organization's desired process practices; and, it established a solid platform for continued SPI. Copyright © 2008 John Wiley & Sons, Ltd.

[1]  Thiagarajan Ravichandran,et al.  Quality Management in Systems Development: An Organizational System Perspective , 2000, MIS Q..

[2]  Peter Weill,et al.  The Implications of Information Technology Infrastructure for Business Process Redesign , 1999, MIS Q..

[3]  Mark C. Paulk,et al.  The Capability Maturity Model: Guidelines for Improving the Software Process , 1994 .

[4]  Terence P. Rout,et al.  SPICE: A Framework for Software Process Assessment , 1995, Softw. Process. Improv. Pract..

[5]  Austen Rainer,et al.  Implementing software process improvement: an empirical study , 2002, Softw. Process. Improv. Pract..

[6]  Gary Hamel,et al.  How to reshape your business to fit the future , 1995 .

[7]  Didar Zowghi,et al.  Critical success factors for software process improvement implementation: an empirical study , 2006, Softw. Process. Improv. Pract..

[8]  D.Phil Leon Coetsee M.A.,et al.  A practical model for the management of resistance to change: An analysis of political resistance in South Africa , 1993 .

[9]  Lars Mathiassen,et al.  Dynamic Capabilities in Small Software Firms: A Sense-and-Respond Approach , 2007, IEEE Transactions on Engineering Management.

[10]  Varun Grover,et al.  Special Section: Toward a Theory of Business Process Change Management , 1995, J. Manag. Inf. Syst..

[11]  Josée Tassé,et al.  View-based process elicitation: a user's perspective , 2001, Softw. Process. Improv. Pract..

[12]  Thiagarajan Ravichandran,et al.  Structural analysis of the impact of knowledge creation and knowledge embedding on software process capability , 2003, IEEE Trans. Engineering Management.

[13]  Bill Curtis,et al.  Process modeling , 1992, CACM.

[14]  Victor R. Basili,et al.  Iterative enhancement: A practical technique for software development , 1975, IEEE Transactions on Software Engineering.

[15]  Frank Leymann,et al.  Web services and business process management , 2002, IBM Syst. J..

[16]  Christophe Debou,et al.  Linking software process improvement to business strategies: experiences from industry , 2000 .

[17]  Alessandro Bianchi,et al.  Iterative Reengineering of Legacy Systems , 2003, IEEE Trans. Software Eng..

[18]  Victor R. Basili,et al.  The TAME Project: Towards Improvement-Oriented Software Environments , 1988, IEEE Trans. Software Eng..

[19]  Lars Mathiassen,et al.  Business process innovation based on stakeholder perceptions , 2007, Inf. Knowl. Syst. Manag..

[20]  Lars Mathiassen,et al.  Successful process implementation , 2004, IEEE Software.

[21]  Suzanne Rivard,et al.  A Multilevel Model of Resistance to Information Technology Implementation , 2005, MIS Q..

[22]  Patricia A. McQuaid,et al.  Entry strategies into the process improvement initiative , 1998 .

[23]  R. Rapoport Three Dilemmas in Action Research , 1970 .

[24]  Thomas H. Davenport,et al.  Managing Information about Processes , 1995, J. Manag. Inf. Syst..

[25]  William H. Ett,et al.  Lessons learned from a software process modeling system , 1992, CACM.

[26]  John E. McInroy,et al.  Groupware research and technology issues with application to software process management , 1991, IEEE Trans. Syst. Man Cybern..

[27]  Christopher J. Fox,et al.  The quality approach: is it delivering? , 1997, CACM.

[28]  Reidar Conradi,et al.  Techniques for Process Model Evolution in EPOS , 1993, IEEE Trans. Software Eng..

[29]  Mark J. Zbaracki The Rhetoric and Reality of Total Quality Management , 1998 .

[30]  Bing Wu,et al.  Legacy Information Systems: Issues and Directions , 1999, IEEE Softw..

[31]  Michael Hammer,et al.  Reengineering Work: Don’t Automate, Obliterate , 1990 .

[32]  David H. Kitson,et al.  An analysis of SEI software process assessment results: 1987-1991 , 1993, Proceedings of 1993 15th International Conference on Software Engineering.

[33]  Noah S. Prywes,et al.  Software process reengineering: Toward a new generation of CASE technology , 1995, J. Syst. Softw..

[34]  Bing Wu,et al.  The Butterfly Methodology: a gateway-free approach for migrating legacy information systems , 1997, Proceedings. Third IEEE International Conference on Engineering of Complex Computer Systems (Cat. No.97TB100168).

[35]  Austen Rainer,et al.  Key success factors for implementing software process improvement: a maturity-based analysis , 2002, J. Syst. Softw..

[36]  Tore Dybå,et al.  An empirical investigation of the key factors for success in software process improvement , 2005, IEEE Transactions on Software Engineering.

[37]  Lars Mathiassen,et al.  Collaborative Practice Research , 2000, Scand. J. Inf. Syst..

[38]  Harry M. Sneed,et al.  Planning the Reengineering of Legacy Systems , 1995, IEEE Softw..

[39]  Sirkka L. Jarvenpaa,et al.  Business Process Redesign: Tactics for Managing Radical Change , 1995, J. Manag. Inf. Syst..

[40]  Nannette P. Napier,et al.  Perceptions and Processes in Assessing Software Requirements Practices , 2006, AMCIS.

[41]  Alan R. Dennis,et al.  Breaking the rules: success and failure in groupware-supported business process reengineering , 2003, Decis. Support Syst..

[42]  Victor R. Basili,et al.  Iterative and incremental developments. a brief history , 2003, Computer.

[43]  Nazim H. Madhavji Environment Evolution: The Prism Model of Changes , 1992, IEEE Trans. Software Eng..

[44]  Stephen H. Haeckel Adaptive enterprise design: The sense‐and‐respond model , 1995 .

[45]  James H. Cross,et al.  Reverse engineering and design recovery: a taxonomy , 1990, IEEE Software.

[46]  Victor R. Basili,et al.  A Methodology for Collecting Valid Software Engineering Data , 1984, IEEE Transactions on Software Engineering.

[47]  M. Lynne Markus,et al.  PRECONDITIONS FOR BPR SUCCESS And How to Prevent Failures , 1994 .

[48]  Harry M. Sneed Encapsulation of legacy software: A technique for reusing legacy software components , 2000, Ann. Softw. Eng..

[49]  Inderpal S. Bhandari,et al.  A Case Study of Software Process Improvement During Development , 1993, IEEE Trans. Software Eng..

[50]  Alexander L. Wolf,et al.  Cost-Effective Analysis of In-Place Software Processes , 1998, IEEE Trans. Software Eng..

[51]  Ali Mili,et al.  Reusing Software: Issues and Research Directions , 1995, IEEE Trans. Software Eng..