ACM Home Page
Please provide us with feedback. Feedback
A technique for illustrating dynamic component level interactions within a software architecture
Full text PdfPdf (455 KB)
Source IBM Centre for Advanced Studies Conference archive
Proceedings of the 1998 conference of the Centre for Advanced Studies on Collaborative research table of contents
Toronto, Ontario, Canada
Page: 18  
Year of Publication: 1998
Author
Chris Pal  Department of Computer Science, University of Waterloo, Waterloo, Ontario, Canada N2L 3G1 and Computing Research Laboratory for the Environment (CRLE), University of Guelph, Guelph, Ontario, Canada, N1G 2W1
Sponsors
IBM Canada : IBM Canada
NRC : National Research Council - Canada
Publisher
IBM Press 
Bibliometrics
Downloads (6 Weeks): 2,   Downloads (12 Months): 21,   Citation Count: 0
Additional Information:

abstract   references   index terms   peer to peer  

Tools and Actions: Review this Article  
Save this Article to a Binder    Display Formats: BibTex  EndNote ACM Ref   

ABSTRACT

Graphical descriptions of software architectures often focus on static call and data relationships between components gathered by parsing source code. These types of architecture graphs can exhibit extremely high connectivity and possess little contextual information with respect to the nature of the relationships between components. This paper illustrates a technique and notation for extracting and graphically representing dynamic component-level interactions obtained at runtime during important scenarios of code execution. A case study of the extraction of a concrete architecture and its fusion with runtime information to create dynamic architectural views is used to illustrate the technique and notation. In this technique, low level executable components are successively grouped into abstracted components using an architecture extraction tool. This grouping creates a static structural view of the system. Dynamic interactions or low-level call sequences are obtained from debugger call stack information. The grouping relationships allow interactions to be abstracted and depicted as ordered and directed edges between the higher level components. The illustration of dynamic interactions within the abstract concrete components has the potential to reduce the cognitive distance from the initial concept of a system to the concrete implementation details. The approach is illustrated using the C language integrated production rule system (CLIPS 5.1).


REFERENCES

Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.

 
1
 
2
{2} I. Bowman, S. Siddiqi and M. C. Tanuan, Concrete Architecture of the Linux Kernel. Feb. 12, 1998. University of Waterloo, report for CS746, Software Architectures. Online (April 1998) http://plg.uwaterloo.ca/ ~itbowman/CS746G/a2
3
 
4
{4} C. L. Forgy, Rete: A Fast Algorithm for the Many Pattern/Many Object Pattern Match Problem. Artificial Intelligence vol. 19, pp. 17-37, 1982.
 
5
{5} D. Garlan and M. Shaw, An Introduction to Software Architecture, Advances in Software Engineering and Knowledge Engineering, Volume 1, World Scientific Publishing Co., 1993.
 
6
{6} J. C. Giarratano, The CLIPS Users Guide 6.05. November 1, 1997 Online (April 1998) http://www.ghgcorp.com/clips/download/ documentation/usrguide.pdf
7
 
8
 
9
{9} M. Kamel, J. P. D. Keast and C. Pal, Concrete Architecture of the Linux Kernel. Feb. 12, 1998. University of Waterloo, report for CS746, Online (April 1998) http:// plg.uwaterloo.ca/~holt/cs/746/98/a2.keast.ps
 
10
 
11
 
12
{12} J. Keast, An extraction of GAWK. report for CS746, Software Architectures. University of Waterloo. April 1998.
 
13
{13} E. Koutsofios and S. C. North, The Dot Users Manual. AT&T Bell Laboratories, Murray Hill, NJ. November 20, 1996. Online (Sept 1998) http://www.research. att.com/sw/tools/graphviz/dotguide.ps.gz
 
14
{14} S. Mancoridis, ISF: A Visual Formalism for Specifying Interconnection Styles for Software Design, International Journal of Software Engineering and Knowledge Engineering (to appear, 1998).
 
15
{15} H. A. Müller, M. A. Orgun, S. R. Tilley, and J. S. Uhl. A reverse engineering approach to subsystem structure identification. Journal of Software Maintenance: Research and Practice, 5(4), pages 181-204, December 1993.
 
16
 
17
{17} M. Shaw and P. Clements, A Field Guide to Boxology: Preliminary Classification of Architectural Styles for Software Systems, Manuscript, C.S. Dept and Software Engineering Institute, Carnegie Mellon Univ., Pittsburgh, PA 15213.
 
18
{18} A. Tateishi, Filtering Run-Time Artifacts Using Software Landscapes. 1994, Masters Thesis. University of Toronto. Department of Computer Science. Online (April 1998) http://www.cs.toronto.edu/~ruhtra/
 
19
{19} V. Tzerpos, R. C. Holt and G. Farmaner, Web-Based Presentation of Hierarchic Software Architecture. Workshop on Software Engineering, International Conference on Software Engineering 1997, Boston, May 19, 1997.


Peer to Peer - Readers of this Article have also read: