Redesign for flexibility and maintainability: a case study

In this paper, we analyze software that we inherited from another party. We analyze its architecture and use common design principles to identify critical changes in order to improve its flexibility with respect to a set of planned extensions. We describe flexibility issues that we encountered and h...

Full description

Bibliographic Details
Main Authors: Ackermann, Christopher (Author), Lindvall, Mikael (Author), Dennis, Gregory D. (Contributor)
Other Authors: Massachusetts Institute of Technology. Department of Electrical Engineering and Computer Science (Contributor)
Format: Article
Language:English
Published: Institute of Electrical and Electronics Engineers, 2010-10-05T14:44:31Z.
Subjects:
Online Access:Get fulltext
Description
Summary:In this paper, we analyze software that we inherited from another party. We analyze its architecture and use common design principles to identify critical changes in order to improve its flexibility with respect to a set of planned extensions. We describe flexibility issues that we encountered and how they were addressed by a redesign and re-implementation. The study shows that basic and well-established design concepts can be used to guide the design and redesign of software.
National Science Foundation (U.S.) (grant CCF0438933)