A visual representation model for software subsystem decomposition

Decomposing a software system into subsystems is an important activity in the reverse engineering and maintenance domains. One approach to subsystem decomposition is based on data mining techniques. The ISA (Identification of Subsystems based on Associations) methodology decomposes a software system into subsystems by mining association rules from a database representation of the target system. This paper defines a visual representation model (RM) to graphically present the information produced by ISA. RM provides a graphical view of the recovered subsystem decomposition, the subsystems components, and the relationships among the subsystems. RM includes notation to represent hierarchies of file implications and hierarchies of subsystems. Results of applying RM to represent the subsystem decomposition of a COBOL system are discussed.

[1]  James H. Cross,et al.  Reverse engineering and design recovery: a taxonomy , 1990, IEEE Software.

[2]  Hausi A. Müller,et al.  Composing subsystem structures using (k,2)-partite graphs , 1990, Proceedings. Conference on Software Maintenance 1990.

[3]  Arun Lakhotia,et al.  A Unified Framework For Expressing Software Subsystem Classification Techniques , 1997, J. Syst. Softw..

[4]  William E. Lorensen,et al.  Object-Oriented Modeling and Design , 1991, TOOLS.

[5]  Doris L. Carver,et al.  Design Recovery with Data Mining Techniques , 1998, PAKDD.

[6]  Ramakrishnan Srikant,et al.  Fast Algorithms for Mining Association Rules in Large Databases , 1994, VLDB.

[7]  David Harel,et al.  On visual formalisms , 1988, CACM.

[8]  Gokul V. Subramaniam,et al.  Deriving an object model from legacy Fortran code , 1996, 1996 Proceedings of International Conference on Software Maintenance.

[9]  Song C. Choi,et al.  Extracting and restructuring the design of large systems , 1990, IEEE Software.

[10]  Aniello Cimitile,et al.  An Improved Algorithm for Identifying Objects in Code , 1996, Softw. Pract. Exp..

[11]  Harry M. Sneed,et al.  Extracting object-oriented specification from procedurally oriented programs , 1995, Proceedings of 2nd Working Conference on Reverse Engineering.

[12]  Ben Shneiderman,et al.  Tree-maps: a space-filling approach to the visualization of hierarchical information structures , 1991, Proceeding Visualization '91.

[13]  Tomasz Imielinski,et al.  Mining association rules between sets of items in large databases , 1993, SIGMOD Conference.

[14]  Doris L. Carver,et al.  Identification of data cohesive subsystems using data mining techniques , 1998, Proceedings. International Conference on Software Maintenance (Cat. No. 98CB36272).

[15]  Ted J. Biggerstaff,et al.  Design recovery for maintenance and reuse , 1989, Computer.

[16]  Padhraic Smyth,et al.  From Data Mining to Knowledge Discovery: An Overview , 1996, Advances in Knowledge Discovery and Data Mining.

[17]  Melissa P. Chase,et al.  Analysis and presentation of recovered software architectures , 1996, Proceedings of WCRE '96: 4rd Working Conference on Reverse Engineering.

[18]  F. S. Germano,et al.  An overall process based on fusion to reverse engineer legacy code , 1996, Proceedings of WCRE '96: 4rd Working Conference on Reverse Engineering.

[19]  Malcolm Munro,et al.  PUI: a tool to support program understanding , 1997, Proceedings Fifth International Workshop on Program Comprehension. IWPC'97.