V. B. Nguyen, ``Impact of Adding Customizibility On Software Architecture: A Case Study'', M.S. Thesis, Technical Report CS97-532, Department of Computer Science and Engineering, University of California, San Diego, March 1997.


Abstract

A software product evolves due to changes in customer's requirements, technology and just by generalization of the system over time. Software readability and structures are degraded as enhancements are made to the system, and maintenance becomes the most expensive phase of software development. One way to lessen maintenance cost is to restructure the system. Bowdidge's star diagram is a visualization tool to assist in meaning-preserving restructuring and understanding programs. Chen extended the original star diagram tool to create a tool for planning a restructuring to work with large C programs. A major part of Chen's work was improving the viewability of a star diagram. Chen improved the viewability by providing two mechanisms to hide unwanted information: depth elision and star arm trimming. Star arm trimming is also used as a planning mechanism. In his tool both elision and trimming features are effective at reducing the number of nodes and the height of a star diagram approximately by half. His work suggested that more elision methods would further enhance a star diagram's viewability. In this research, we wanted to add a customizable elision layer by extending Chen's elision framework, and so we incorporated a narrow set of property-based elisions. However, extending Chen's framework was difficult and complicated. Therefore, we changed the elision metaphor, and reorganized our system architecture in order to generalize the property-based elision problem. Our research presents a simple, efficient, and extendable elision layer, and exposes the flexibility of our existing system.