A Study of Reasoning Processes in Software Maintenance Management

被引:5
作者
Mahil Carr
Christian Wagner
机构
[1] American College,Department of Computer Science
[2] City University of Hong Kong,Department of Information Systems
关键词
software maintenance management; protocol analysis; cost estimation;
D O I
10.1023/A:1013125112217
中图分类号
学科分类号
摘要
More resources are spent on maintaining software than for its development. Maintenance costs for large scale software systems can amount to somewhere between 40 and 67% of the total system life cycle cost. It is therefore important to manage maintenance costs, and to balance costs with benefits. Frequently this task is approached, at least in the literature, merely as a software cost estimation problem. Unfortunately, the creation of effort estimation models for maintenance – a primary requisite for cost calculation – has not yet been satisfactorily addressed. At the same time, project managers do not estimate costs first, but instead prioritize maintenance projects, trying to determine which projects to carry out (first) within their fixed budgets and resource capabilities. This essentially means that “cost estimation” is done qualitatively first before formal cost estimation techniques are employed. Recognizing the problems associated with standard, regression based estimation models, and focusing on the needs of software project managers, this research studied the process of project prioritization as an expert problem solving and decision making task, through concurrently taken (“think aloud”) protocols. Analysis of these protocols revealed that experts rarely make use of formal mathematical models to determine project priorities or resource needs, such as COCOMO or FPA, although project size is a key determinant of a project's priority. Instead, estimators qualitatively consider cost or value, urgency, and difficulty of a maintenance task, then prioritize projects accordingly, followed by a decision concerning further treatment of the problem. The process employs case based reasoning and the use of heuristics. While different experts may use different strategies, there exists great overlap in their overall prioritization procedure.
引用
收藏
页码:181 / 203
页数:22
相关论文
共 43 条
[1]  
Appleton E.L.(1996)Call in the Cavalry before 2000 Datamation 42 42-43
[2]  
Banker R.D.(1991)A model to evaluate variables impacting the productivity of software maintenance projects Management Science 37 1-18
[3]  
Datar S.M.(1993)Software complexity and maintenance costs Communications of the ACM 36 81-94
[4]  
Kemerer C.F.(1996)Start fixing year 2000 problems now! Datamation 42 36-38
[5]  
Banker R.D.(1996)An economic model to estimate software rewriting and replacement times IEEE Transactions on Software Engineering 22 580-598
[6]  
Datar S.M.(1979)Measuring the psychological complexity of software maintenance tasks with Halstead and McCabe metrics IEEE Transactions on Software Engineering SE- 5 90-104
[7]  
Kemerer C.F.(1980)Year 2000: What is the real cost? Verbal reports as data 87 215-251
[8]  
Zweig D.(1997)Experience with the accuracy of software maintenance task effort prediction models Datamation 43 88-93
[9]  
Celko J.(1995)The use of complexity metrics in software maintenance IEEE Transactions on Software Engineering 21 674-681
[10]  
Chan T.(1987)Identification of dynamic comprehension processes during large scale maintenance IEEE Transactions on Software Engineering SE- 13 335-343