Copyright © 2006 Elsevier Inc. All rights reserved.
Interaction tree algorithms to extract effective architecture and layered performance models from traces
Available online 1 September 2006.
References and further reading may be available for this article. To view references and further reading you must purchase this article.
Abstract
Models of software architecture and software performance both depend on identifying and describing the interactions between the components, during typical responses. This work identifies the components and interactions that are active during a tracing experiment, hence the name “effective architecture” and also derives layered performance models. The System Architecture and Model Extraction Technique (SAMEtech) described here overcomes a weakness of previous work with “angio traces” in two ways. It only requires standard trace formats (rather than a custom format which captures causality) and it uses a simpler algorithm which scales up linearly for very large traces. It accepts some limitations: components must not have internal parallelism with forking and joining of the flow of execution. SAMEtech uses pattern matching based on “interaction trees” for detecting various types of interactions (asynchronous, blocking synchronous, nested synchronous, and forwarding). With this information it builds architecture and performance models.
Keywords: Software performance; Performance modelling; Performance tracing; Reverse engineering; Software architecture
Article Outline
- 1. Introduction
- 2. Traces and models
- 2.1. Bookstore example
- 2.2. Message correlation and message trace
- 2.3. Assumption on execution-occurrences (EOs)
- 2.4. The models for architecture and performance
- 2.5. Layered queueing performance model
- 3. Interaction pattern graphs
- 3.1. Interaction trees
- 4. An introduction to SAMEtech
- 5. The SAMEtech algorithm
- 5.1. Definitions
- 5.2. The algorithm
- 5.3. Helper functions
- 5.4. Complexity
- 6. Examples
- 6.1. Tree processing in Part B
- 6.1.1. Example: improper root cleanup
- 6.1.2. Example: detecting a synchronous interaction
- 6.1.3. Example: detecting forwarding
- 6.2. Example of model construction
- 6.3. Example of LQN simplification
- 7. Extensions to SAMEtech
- 8. Bookstore application
- 9. Conclusions
- Acknowledgements
- References
- Vitae







E-mail Article
Add to my Quick Links

Cited By in Scopus (1)

24 wt% of the organic matter. The bitumen was fractionated further and some fractions were separated into normal and branched/cyclic components. By g.c. and g.c.-m.s., 




