技术债务与企业软件系统的可靠性:一项竞争风险分析

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

Management Science · 2015
被引 51
人大 A+FT50UTD24ABS 4*

中文导读

利用48家客户企业10年的数据,分析技术债务对企业软件系统可靠性的影响,发现模块化维护在减少客户错误导致的故障方面比架构维护有效53%,但会增加供应商错误导致的故障风险83%。

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.

技术债务企业软件系统可靠性竞争风险分析客户修改错误供应商平台错误