Slicing Software Architectures

This paper introduces a new form of slicing, named architectural slicing, to aid architectural understanding and reuse. In contrast to traditional slicing, architectural slicing is designed to operate on the architectural description of a software system, rather than the source code of a program. Architectural slicing provides knowledge about the high-level architecture of a software system, rather than the low-level implementation details of a program.

[1]  Susan Horwitz,et al.  Incremental program testing using program dependence graphs , 1993, POPL '93.

[2]  Wojtek Kozaczynski,et al.  Automated support for legacy code understanding , 1994, CACM.

[3]  Joe D. Warren,et al.  The program dependence graph and its use in optimization , 1987, TOPL.

[4]  David W. Binkley,et al.  Interprocedural slicing using dependence graphs , 1990, TOPL.

[5]  Frank Tip,et al.  A survey of program slicing techniques , 1994, J. Program. Lang..

[6]  Keith Brian Gallagher,et al.  Using Program Slicing in Software Maintenance , 1991, IEEE Trans. Software Eng..

[7]  Eugene H. Spafford,et al.  Debugging with dynamic slicing and backtracking , 1993, Softw. Pract. Exp..

[8]  Mark David Weiser,et al.  Program slices: formal, psychological, and practical investigations of an automatic program abstraction method , 1979 .

[9]  Jingde Cheng,et al.  Slicing Concurrent Logic Programs , 1997 .

[10]  Andrea De Lucia,et al.  Understanding function behaviors through program slicing , 1996, WPC '96. 4th Workshop on Program Comprehension.

[11]  Mary Shaw,et al.  Abstractions for Software Architecture and Tools to Support Them , 1995, IEEE Trans. Software Eng..

[12]  Jingde Cheng,et al.  Static slicing of concurrent object-oriented programs , 1996, Proceedings of 20th International Computer Software and Applications Conference: COMPSAC '96.

[13]  Jingde Cheng,et al.  Slicing Concurrent Programs - A Graph-Theoretical Approach , 1993, AADEBUG.

[14]  David Eichmann,et al.  Program and interface slicing for reverse engineering , 1993, [1993] Proceedings Working Conference on Reverse Engineering.

[15]  David Garlan,et al.  Acme: an architecture description interchange language , 1997, CASCON.

[16]  Kevin Crowston,et al.  The interdisciplinary study of coordination , 1994, CSUR.