A procedure for software module upgrades

Date

1991

Authors

Li, Marvin Xuewen

Journal Title

Journal ISSN

Volume Title

Publisher

Abstract

Although considerable research has been done in the re-engineering of software systems, an automatic re-engineering process is not feasible in the near future. Human understanding, human design activities, and human decision making are still neces­sary elements of the process. Further, re-engineering will likely be time-consuming and expensive, making it impractical to completely re-engineer an existing system. However, we can divide re-engineering projects into categories, and, for each cat­egory, establish standard procedures for doing the work effectively and economically. Lessons learned from mistakes will be reflected in these procedures. The procedures can be applied to other projects in the same category, thus improving productivity and reducing errors. This thesis presents a procedure for module upgrades. The term module upgrades is used to denote the process of collecting a set of related functions into a programming work assignment with a well designed and precisely defined interface. Our goal has been to define the procedure precisely and allow the subject system to be upgraded incrementally. We have developed the module upgrades procedure, including a set of guidelines and constraints on the products to be produced. To evaluate and improve the proce­dure, we applied it to one module in a complex control software system. We kept our cost records to support more accurate cost estimation for future upgrade projects.

Description

Keywords

Citation