[go: up one dir, main page]
More Web Proxy on the site http://driver.im/ skip to main content
research-article

Technical Debt and the Reliability of Enterprise Software Systems: : A Competing Risks Analysis

Published: 01 May 2016 Publication History

Abstract

Enterprise software systems are required to be highly reliable because they are central to the business operations of most firms. However, configuring and maintaining these systems can be highly complex, making it challenging to achieve high reliability. Resource-constrained software teams facing business pressures can be tempted to take design shortcuts in order to deliver business functionality more quickly. These design shortcuts and other maintenance activities contribute to the accumulation of technical debt, that is, a buildup of software maintenance obligations that need to be addressed in the future. We model and empirically analyze the impact of technical debt on system reliability by utilizing a longitudinal data set spanning the 10-year life cycle of a commercial enterprise system deployed at 48 different client firms. We use a competing risks analysis approach to discern the interdependency between client and vendor maintenance activities. This allows us to assess the effect of both problematic client modifications (client errors) and software errors present in the vendor-supplied platform (vendor errors) on system failures. We also examine the relative effects of modular and architectural maintenance activities undertaken by clients in order to analyze the dynamics of technical debt reduction. The results of our analysis first establish that technical debt decreases the reliability of enterprise systems. Second, modular maintenance targeted to reduce technical debt was approximately 53% more effective than architectural maintenance in reducing the probability of a system failure due to client errors, but it had the side effect of increasing the chance of a system failure due to vendor errors by approximately 83% more than did architectural maintenance activities. Using our empirical results we illustrate how firms could evaluate their business risk exposure due to technical debt accumulation in their enterprise systems, and we assess the estimated net effects, both positive and negative, of a range of software maintenance practices. Finally, we discuss implications for research in measuring and managing technical debt in enterprise systems.
This paper was accepted by Chris Forman, information systems.

References

[1]
Adner R, Levinthal D (2001) Demand heterogeneity and technology evolution: Implications for product and process innovation. Management Sci. 47(5):611–628.
[2]
Agarwal M, Chari K (2007) Software effort, quality, and cycle time: A study of CMM level 5 projects. IEEE Trans. Software Engrg. 33(3):145–156.
[3]
Akkermans H, van Helden K (2002) Vicious and virtuous cycles in ERP implementation: A case study of interrelations between critical success factors. Eur. J. Inform. Systems 11(1):35–46.
[4]
Ammann P, Offutt J (2008) Introduction to Software Testing (Cambridge University Press, New York).
[5]
Andersen R, Morch A (2009) Mutual development: A case study in customer-initiated software product development. Pipek V, Rosson MB, de Ruyter B, Wulf V, eds. End-User Development. Lecture Notes in Computer Science, Vol. 5435 (Springer, Berlin), 31–49.
[6]
Austin RD (2001) The effects of time pressure on quality in software development: An agency model. Inform. Systems Res. 12(2):195–207.
[7]
Baldwin C, Hienerth C, von Hippel E (2006) How user innovations become commercial products: A theoretical investigation and case study. Res. Policy 35(9):1291–1313.
[8]
Banker RD, Kemerer CF (1989) Scale economies in new software development. IEEE Trans. Software Engrg. 15(10):1199–1205.
[9]
Banker RD, Slaughter SA (1997) A field study of scale economies in software maintenance. Management Sci. 43(12):1709–1725.
[10]
Banker RD, Slaughter SA (2000) The moderating effects of structure on volatility and complexity in software enhancement. Inform. Systems Res. 11(3):219–240.
[11]
Banker RD, Datar SM, Kemerer CF (1991) A model to evaluate variables impacting the productivity of software maintenance projects. Management Sci. 37(1):1–18.
[12]
Banker RD, Davis GB, Slaughter SA (1998) Software development practices, software complexity, and software maintenance performance: A field study. Management Sci. 44(4):433–450.
[13]
Barry E, Kemerer CF, Slaughter SA (2006) Environmental volatility, development decisions and software volatility: A longitudinal analysis. Management Sci. 52(3):448–464.
[14]
Basili VR, Boehm BW (2001) COTS-based systems top 10 list. IEEE Comput. 34(5):91–95.
[15]
Boehm BW (1991) Software risk management: Principles and practices. IEEE Software 8(1):32–41.
[16]
Boh WF, Slaughter SA, Espinosa JA (2007) Learning from experience in software development: A multilevel analysis. Management Sci. 53(8):1315–1331.
[17]
Box-Steffensmeier JM, Zorn C (2002) Duration models for repeated events. J. Politics 64(4):1069–1094.
[18]
Box-Steffensmeier JM, De Boef S, Joyce KA (2007) Event dependence and heterogeneity in duration models: The conditional frailty model. Political Anal. 15(3):237–256.
[19]
Ceccagnoli M, Forman C, Huang P, Wu DJ (2012) Co-creation of value in a platform ecosystem: The case of enterprise software. MIS Quart. 36(1):263–290.
[20]
Chellappa R, Sambamurthy V, Saraf N (2010) Competing in crowded markets: Multimarket contact and the nature of competition in the enterprise systems software industry. Inform. Systems Res. 21(3):614–630.
[21]
Cox DR (1972) Regression models and life-tables. J. Royal Statist. Soc., Ser. B 34(2):187–220.
[22]
Curtis B, Jay S, Szynkarski A (2012) Estimating the principal of an application’s technical debt. IEEE Software 29(6):34–42.
[23]
Darcy DP, Kemerer CF, Slaughter SA, Tomayko JE (2005) The structural complexity of software: An experimental test. IEEE Trans. Software Engrg. 31(11):982–995.
[24]
Dauxois J-Y, Sencey S (2009) Non-parametric tests for recurrent events under competing risks. Scandinavian J. Statist. 36(4):649–670.
[25]
Davenport T (1998) Putting the enterprise into the enterprise system. Harvard Bus. Rev. 76(4):121–131.
[26]
Deelstra S, Sinnema M, Bosch J (2005) Product derivation in software product families: A case study. J. Systems Software 74(2):173–194.
[27]
Devaraj S, Kohli R (2003) Performance impacts of information technology: Is actual usage the missing link? Management Sci. 49(3):273–289.
[28]
Eick SG, Graves TL, Karr AF, Marron JS, Mockus A (2001) Does code decay? Assessing the evidence from change management data. IEEE Trans. Software Engrg. 27(1):1–12.
[29]
Esteves J, Bohorquez V (2007) An updated ERP system: Annotated bibliography 2001–2005. Comm. AIS 19(18):386–446.
[30]
Ethiraj SK, Levinthal D (2004) Modularity and innovation in complex systems. Management Sci. 50(2):159–173.
[31]
Ethiraj SK, Ramasubbu N, Krishnan MS (2012) Does complexity deter customer-focus? Strategic Management J. 33(2):137–161.
[32]
Franke N, Piller F (2004) Value creation by toolkits for user innovation and design: The case of the watch market. J. Product Innovation Management 21(6):401–415.
[33]
Franke N, von Hippel E (2003) Satisfying heterogeneous user needs via innovation toolkits: The case of Apache security software. Res. Policy 32(7):1199–1215.
[34]
Fine JP, Gray RJ (1999) A proportional hazards model for the subdistribution of a competing risk. J. Amer. Statist. Assoc. 94(446):496–509.
[35]
Finney S, Corbett M (2007) ERP implementation: A compilation and analysis of critical success factors. Bus. Process Management J. 13(3):329–347.
[36]
Gable GG (1996) A multidimensional model of client success when engaging external consultants. Management Sci. 42(8):1175–1198.
[37]
Garg S, Puliafito A, Telek M, Trivedi K (1998) Analysis of preventive maintenance in transaction based software systems. IEEE Trans. Software Engrg. 47(1):96–107.
[38]
Gartner (2013) Gartner says worldwide IT spending on pace to reach $3.7 trillion in 2013. Press release, July 2, http://www.gartner.com/newsroom/id/2537815.
[39]
Gjerde KAP, Slotnick SA, Sobel MJ (2002) New product innovation with multiple features and technology constraints. Management Sci. 48(10):1268–1284.
[40]
Greenstein S, Wade JB (1998) The product lifecycle in the commercial mainframe computer market, 1968–1982. RAND J. Econom. 29(4):772–789.
[41]
Guajardo JA, Cohen MA, Kim S-H, Netessine S (2012) Impact of performance-based contracting on product reliability: An empirical analysis. Management Sci. 58(5):961–979.
[42]
Harter DE, Krishnan MS, Slaughter SA (2000) Effects of process maturity on quality, cycle time, and effort in software product development. Management Sci. 46(4):451–466.
[43]
Henderson RM, Clark K (1990) Architectural innovation: The reconfiguration of existing product technologies and the failure of established firms. Admin. Sci. Quart. 35(1):9–30.
[44]
Hitt L, Wu DJ, Zhou X (2002) Investment in enterprise resource planning: Business impact and productivity measures. J. Management Inform. Systems 19(1):71–98.
[45]
Holland CP, Light B (1999) A critical success factors model for ERP implementation. IEEE Software 16(3):30–36.
[46]
Huang P, Ceccagnoli M, Forman C, Wu DJ (2013) Appropriability mechanisms and the platform partnership decision: Evidence from enterprise software. Management Sci. 59(1):102–121.
[47]
Huckman RS, Staats BR, Upton DM (2009) Team familiarity, role experience, and performance: Evidence from Indian software services. Management Sci. 55(1):85–100.
[48]
Iansiti M (2000) How the incumbent can win: Managing technological transitions in the semiconductor industry. Management Sci. 46(2):169–185.
[49]
Jin Z, Offutt J (2001) Deriving tests from software architectures. Proc. 12th Internat. Sympos. Software Reliability Engrg. (IEEE, New York), 308–313.
[50]
Kapur PK, Pham H, Anand S, Yadav K (2011) A unified approach for developing software reliability growth models in the presence of imperfect debugging and error generation. IEEE Trans. Reliability 60(1):331–340.
[51]
Kemerer CF (1995) Software complexity and software maintenance: A survey of empirical research. Ann. Software Engrg. 1(1):1–22.
[52]
Kemerer C, Darcy D (2005) OO metrics in practice. IEEE Software 22(6):17–19.
[53]
Kemerer C, Paulk M (2009) The impact of design and code reviews on software quality: An empirical study based on PSP data. IEEE Trans. Software Engrg. 35(4):534–550.
[54]
Kemerer CF, Slaughter S (1999) An empirical approach to studying software evolution. IEEE Trans. Software Engrg. 25(4):493–509.
[55]
Ko D-G, Kirsch LJ, King WR (2005) Antecedents of knowledge transfer from consultants to clients in enterprise system implementations. MIS Quart. 29(1):59–85.
[56]
Kruchten P, Nord RL, Ozkaya I (2012) Technical debt: From metaphor to theory and practice. IEEE Software 29(6):18–21.
[57]
Kuk D, Varadhan R (2013) Model selection in competing risks regression. Statist. Medicine 32(18):3077–3088.
[58]
LaMantia MJ, Cai Y, MacCormack A, Rusnak J (2008) Analyzing the evolution of large-scale software systems using design structure matrices and design rule theory: Two exploratory cases. Proc. 7th Working IEEE/IFIP Conf. Software Architecture (WICSA) (IEEE, New York), 83–92.
[59]
Lange T, Hansen JV (2011) Direct and indirect effects in a survival context. Epidemiology 22(4):575–581.
[60]
Lau B, Cole SR, Gange SJ (2009) Competing risk regression models for epidemiologic data. Amer. J. Epidemiology 170(2):244–256.
[61]
Li S, Shang J, Slaughter SA (2010) Why do software firms fail? Capabilities, competitive actions, and firm survival in the software industry from 1995 to 2007. Inform. Systems Res. 21(3):631–654.
[62]
Lyytinen K, Mathiassen L, Ropponen J (1998) Attention shaping and software risk-A categorical analysis of four classical risk management approaches. Inform. Systems Res. 9(3):233–255.
[63]
MacCormack A, Verganti R (2003) Managing the sources of uncertainty: Matching the process and context in software development. J. Product Innovation Management 20(3):217–232.
[64]
MacCormack A, Rusnak J, Baldwin CY (2006) Exploring the structure of complex software designs: An empirical study of open source and proprietary code. Management Sci. 52(7):1015–1030.
[65]
MacCormack A, Verganti R, Iansiti M (2001) Developing products on “internet time”: The anatomy of a flexible development process. Management Sci. 47(1):133–150.
[66]
MacCormack A, Brown N, Cai Y, Guo Y, Kazman R, Kim M, Kruchten Pet al. (2010) Managing technical debt in software-reliant systems. Proc. FSE/SDP Workshop on Future of Software Engrg. Res. (ACM, New York), 47–52.
[67]
Marinescu R (2012) Assessing technical debt by identifying design flaws in software systems. IBM J. Res. Development 56(5):9:1–9:13.
[68]
Markus ML, Tanis C, van Fenema PC (2000) Enterprise resource planning: Multisite ERP implementations. Comm. ACM 43(4):42–46.
[69]
Masini A, Wassenhove LN (2009) ERP competence-building mechanisms: An exploratory investigation of configurations of ERP adopters in the European and U.S. manufacturing sectors. Manufacturing Service Oper. Management 11(2):274–298.
[70]
McCabe TJ (1976) A complexity measure. IEEE Trans. Software Engrg. SE-2(4):308–320.
[71]
McCabe TJ, Butler CW (1989) Design complexity measurement and testing. Comm. ACM 32(12):1415–1423.
[72]
Meyer MH, Tertzakian P, Utterback JM (1997) Metrics for managing research and development in the context of the product family. Management Sci. 43(1):88–111.
[73]
Nah FF-H, Lau JL-S, Kuang J (2001) Critical success factors for successful implementation of enterprise systems. Bus. Process Management J. 7(3):285–296.
[74]
Parnas DL (1994) Software aging. Proc. 16th Internat. Conf. Software Engrg. (IEEE, New York), 279–287.
[75]
Pintilie M (2007) Analysing and interpreting competing risk data. Statist. Medicine 26(6):1360–1367.
[76]
Prentice RL, Williams BJ, Peterson AV (1981) On the regression analysis of multivariate failure time data. Biometrika 68(2):373–379.
[77]
Ramdas K, Randall T (2008) Does component sharing help or hurt reliability? An empirical study in the automotive industry. Management Sci. 54(5):922–938.
[78]
Ramasubbu N, Kemerer CF (2014) Managing technical debt in enterprise software packages. IEEE Trans. Software Engrg. 40(8):758–772.
[79]
Ramasubbu N, Kemerer CF, Hong J (2012) Structural complexity and programmer team strategy: An experimental test. IEEE Trans. Software Engrg. 38(5):1054–1068.
[80]
Ramasubbu N, Mithas S, Krishnan MS (2008) High tech, high touch: The effect of employee skills and customer heterogeneity on customer satisfaction with enterprise system support services. Decision Support Systems 44(2):509–523.
[81]
Reiss SP (2006) Incremental maintenance of software artifacts. IEEE Trans. Software Engrg. 32(9):682–697.
[82]
Rogers WH (1994) ssa4: Ex post tests and diagnostics for a proportional hazards model. Stata Technical Bulletin 19 (Stata Press, College Station, TX), 23–27.
[83]
Sarker S, Lee AS (2003) Using a case study to test the role of three key social enablers in ERP implementation. Inform. Management 40(8):813–829.
[84]
Slaughter SA, Kirsch LJ (2006) The effectiveness of knowledge transfer portfolios in software process improvement: A field study. Inform. Systems Res. 17(3):201–320.
[85]
Slaughter SA, Harter DE, Krishnan MS (1998) Evaluating the cost of software quality. Comm. ACM 41(8):67–73.
[86]
Subramanyam R, Krishnan MS (2003) Empirical analysis of CK metrics for object-oriented design complexity: Implications for software defects. IEEE Trans. Software Engrg. 29(4):297–310.
[87]
Subramanyam R, Ramasubbu N, Krishnan MS (2011) In search of efficient flexibility: Effects of software component granularity on development effort, defects, and customization effort. Inform. Systems Res. 23(3):787–803.
[88]
Taylor LL, Pena EA (2013) Nonparametric estimation with recurrent competing risks data. Lifetime Data Anal. 20(4):514–537.
[89]
Tom E, Aurum A, Vidgen R (2013) An exploration of technical debt. J. Systems Software 86(6):1498–1516.
[90]
Umble EJ, Haft RR, Umble MM (2003) Enterprise resource planning: Implementation procedures and critical success factors. Eur. J. Oper. Res. 146(2):241–257.
[91]
Vogt C (2002) Intractable ERP: A comprehensive analysis of failed enterprise-resource-planning projects. ACM SIGSOFT Software Engrg. Notes 27(2):62–68.
[92]
von Hippel E (1998) Economics of product development by users: The impact of “sticky” local information. Management Sci. 44(5):629–644.
[93]
von Hippel E, Katz R (2002) Shifting innovation to users via toolkits. Management Sci. 48(7):821–833.
[94]
Williams R, Pollock N (2012) Moving beyond the single site implementation study: How (and why) we should study the biography of packaged enterprise solutions. Inform. Systems Res. 23(1):1–22.
[95]
Woodard CJ, Ramasubbu N, Tschang T, Sambamurthy V (2013) Design capital and design moves: The logic of business strategy. MIS Quart. 37(2):537–564.
[96]
Wu DJ, Ding M, Hitt L (2013) IT implementation contract design: Analytical and experimental investigation of IT value, learning, and contract structure. Inform. Systems Res. 24(3):787–801.
[97]
Zhou B, Fine J, Latouche A, Labopin M (2012) Competing risks regression for clustered data. Biostatistics 13(3):371–383.

Cited By

View all
  • (2024)Development Trajectory of Blockchain PlatformsInformation Systems Research10.1287/isre.2022.024335:3(1296-1323)Online publication date: 1-Sep-2024
  • (2023)How Much Does Software Complexity Matter for Maintenance Productivity? The Link Between Team Instability and DiversityIEEE Transactions on Software Engineering10.1109/TSE.2022.322211949:4(2459-2475)Online publication date: 1-Apr-2023
  • (2023)How deadline orientation and architectural modularity influence software quality and job satisfactionJournal of Operations Management10.1002/joom.123069:6(941-964)Online publication date: 14-Feb-2023
  • Show More Cited By

Recommendations

Comments

Please enable JavaScript to view thecomments powered by Disqus.

Information & Contributors

Information

Published In

cover image Management Science
Management Science  Volume 62, Issue 5
May 2016
313 pages

Publisher

INFORMS

Linthicum, MD, United States

Publication History

Published: 01 May 2016
Accepted: 15 February 2015
Received: 10 May 2014

Author Tags

  1. technical debt
  2. enterprise systems
  3. software reliability
  4. software maintenance
  5. software product management
  6. customization
  7. competing risks modeling
  8. software risks
  9. software complexity
  10. enterprise resource planning (ERP) systems
  11. commercial off-the-shelf (COTS) software

Qualifiers

  • Research-article

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • Downloads (Last 12 months)0
  • Downloads (Last 6 weeks)0
Reflects downloads up to 24 Dec 2024

Other Metrics

Citations

Cited By

View all
  • (2024)Development Trajectory of Blockchain PlatformsInformation Systems Research10.1287/isre.2022.024335:3(1296-1323)Online publication date: 1-Sep-2024
  • (2023)How Much Does Software Complexity Matter for Maintenance Productivity? The Link Between Team Instability and DiversityIEEE Transactions on Software Engineering10.1109/TSE.2022.322211949:4(2459-2475)Online publication date: 1-Apr-2023
  • (2023)How deadline orientation and architectural modularity influence software quality and job satisfactionJournal of Operations Management10.1002/joom.123069:6(941-964)Online publication date: 14-Feb-2023
  • (2022)Intelligent Decision-Making Model of Enterprise Management Based on Random Forest AlgorithmMobile Information Systems10.1155/2022/61841062022Online publication date: 1-Jan-2022
  • (2022)Security First, Security by Design, or Security Pragmatism – Strategic Roles of IT Security in Digitalization ProjectsComputers and Security10.1016/j.cose.2022.102747118:COnline publication date: 1-Jul-2022
  • (2022)FIXME: synchronize with database! An empirical study of data access self-admitted technical debtEmpirical Software Engineering10.1007/s10664-022-10119-427:6Online publication date: 1-Nov-2022
  • (2021)Technical Debt and Firm PerformanceManagement Science10.1287/mnsc.2019.354267:5(3174-3194)Online publication date: 1-May-2021
  • (2018)Integrating technical debt management and software quality management processesProceedings of the 40th International Conference on Software Engineering10.1145/3180155.3182529(883-883)Online publication date: 27-May-2018

View Options

View options

Media

Figures

Other

Tables

Share

Share

Share this Publication link

Share on social media