TOOL SUPPORT FOR PLANNING THE RESTRUCTURING OF DATA ABSTRACTIONS IN LARGE SYSTEMS

Citation
Wg. Griswold et al., TOOL SUPPORT FOR PLANNING THE RESTRUCTURING OF DATA ABSTRACTIONS IN LARGE SYSTEMS, IEEE transactions on software engineering, 24(7), 1998, pp. 534-558
Citations number
44
Categorie Soggetti
Computer Science Software Graphycs Programming","Engineering, Eletrical & Electronic","Computer Science Software Graphycs Programming
ISSN journal
00985589
Volume
24
Issue
7
Year of publication
1998
Pages
534 - 558
Database
ISI
SICI code
0098-5589(1998)24:7<534:TSFPTR>2.0.ZU;2-E
Abstract
Restructuring software to improve its design can lower software mainte nance costs. One problem encountered during restructuring is formulati ng the new design. A meaning-preserving program restructuring tool wit h a star diagram manipulable visualization can help a programmer redes ign a program based on abstract data types. However, the transformatio nal support required for meaning-preserving restructuring is costly to provide. Also, programmers encounter comprehension and recall difficu lties in complex restructuring tasks. Consequently, transformations we re replaced with visual and organizational aids that help a programmer to plan and carry out a complex restructuring. For example, a star di agram manipulation called trimming was added, which mimics the way tha t basic restructuring transformations affect the star diagram display, allowing a programmer to plan a restructuring without depending upon restructuring transformations. With the ability to annotate trimmed st ar diagram components, plans can be recorded and later recalled. Progr ammer-controlled elision was added to help remove clutter from star di agram views. We implemented a star diagram planning tool for C program s, measured its elision capabilities, and performed a programmer study . We found that elision is effective in controlling star diagram size, and the study revealed that each programming team successfully planne d its restructuring in rather different, unanticipated ways. These exp eriments resulted in important improvements in the tool's software des ign and user interface.