Abstract:
Software architecture is receiving increasingly attention as a critical design level for software systems. As software architecture design resources (in the form of architectural descriptions) are going to be accumulated, the development of techniques and tools to support architectural understanding, testing, reengineering, maintaining, and reusing will become an important issue. In this paper we introduce a new dependence analysis technique, named architectural dependence analysis to support software architecture development. In contrast to traditional dependence analysis, architectural dependence analysis is designed to operate on an architectural description of a software system, rather than the source code of a conventional program. Architectural dependence analysis provides knowledge of dependences for the high-level architecture of a software system, rather than the low-level implementation details of a conventional program.
Citations
|
958
|
Software Architecture: Perspectives on an Emerging Discipline
– Shaw, Garlan
- 1996
|
|
908
|
Program slicing
– Weiser
- 1984
|
|
519
|
Interprocedural slicing using dependence graphs
– Horwitz, Reps, et al.
- 1990
|
|
234
|
The Program Dependence Graph in a Software Development
– Ottenstein, Ottenstein
|
|
214
|
Using program slicing in software maintenance
– Gallagher, Lyle
- 1991
|
|
108
|
A formal model of program dependences and its implications for software testing, debugging, and maintenance
– Podgurski, Clarke
- 1990
|
|
81
|
Incremental program testing using program dependency graphs
– Bates, Horiwitz
- 1993
|
|
74
|
Debugging with dynamic slicing and backtracking
– Agrawal, DeMillo, et al.
- 1993
|
|
29
|
Static slicing of concurrent object-oriented programs
– Zhao, Cheng, et al.
- 1996
|
|
27
|
Syntax-directed construction of program dependence graphs
– Harrold, Rothermel
- 1996
|
|
22
|
The Wright Architectural Specification Language
– Allen, Garlan
|
|
19
|
Dependence analysis of parallel and distributed programs and its applications
– Cheng
- 1997
|
|
19
|
The program dependence graph in static program testing
– Korel
- 1987
|
|
18
|
The Program Dependence Graph and Its Use
– Ferrante, Ottenstein
- 1987
|
|
17
|
Understanding function behaviors through program slicing
– Lucia, Fasolino, et al.
- 1996
|
|
7
|
ACME: An interchange language for software architecture, 2nd edition
– Garlan, Monroe, et al.
- 1997
|
|
5
|
Program Dependence Analysis of Concurrent Logic Programs and Its Applications
– Zhao, Cheng, et al.
- 1996
|
|
3
|
Dependence Graphs and Compiler Optimizations
– Wolfe
- 1981
|
|
3
|
ACME BNF and Examples
– Monroe, Garlan, et al.
|
|
1
|
Specification Analysis of System Architecture Using Rapide
– Veera, Mann
- 1995
|
|
1
|
Experience Compiling Fortan to Program Dependence Graphs
– Ottenstein, Ellcey
- 1992
|
|
1
|
Abstractions for Software Architecture and Tools to Support Them
– Young, Zelesnik
- 1995
|