ScienceDirect® Home Skip Main Navigation Links
You have guest access to ScienceDirect. Find out more.
 
Home
Browse
My Settings
Alerts
Help
 Quick Search
 Search tips (Opens new window)
    Clear all fields    
advertisementadvertisement
Journal of Systems and Software
Volume 80, Issue 4, April 2007, Pages 474-492
Software Performance, 5th International Workshop on Software and Performance
 
Font Size: Decrease Font Size  Increase Font Size
 Abstract - selected
Article
Purchase PDF (538 K)

 
 
 
Related Articles in ScienceDirect
View More Related Articles
 
View Record in Scopus
 
doi:10.1016/j.jss.2006.07.019    How to Cite or Link Using DOI (Opens New Window)
Copyright © 2006 Elsevier Inc. All rights reserved.

Interaction tree algorithms to extract effective architecture and layered performance models from traces

Tauseef Israra, E-mail The Corresponding Author, Murray Woodsideb, Corresponding Author Contact Information, E-mail The Corresponding Author and Greg Franksb, E-mail The Corresponding Author

aGlobal Business Services, IBM Canada, 770 Palladium Dr., Ottawa, Canada K2V 1C8 bDepartment of Systems and Computer Engineering, Carleton University, 1125 Colonel By Drive, Ottawa, Canada K1S 5B6

Available online 1 September 2006.

Purchase the full-text article



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.4.1. Layered Architecture (LArch) model
2.5. Layered queueing performance model
3. Interaction pattern graphs
3.1. Interaction trees
4. An introduction to SAMEtech
4.1. Sketch of interaction tree processing
4.2. Interaction records
4.3. Example
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
7.1. Processing multiple traces
7.2. Delayed operations arising from early replies
8. Bookstore application
9. Conclusions
Acknowledgements
References
Vitae
























Journal of Systems and Software
Volume 80, Issue 4, April 2007, Pages 474-492
Software Performance, 5th International Workshop on Software and Performance
 
Home
Browse
My Settings
Alerts
Help
Elsevier.com (Opens new window)
About ScienceDirect  |  Contact Us  |  Information for Advertisers  |  Terms & Conditions  |  Privacy Policy
Copyright © 2008 Elsevier B.V. All rights reserved. ScienceDirect® is a registered trademark of Elsevier B.V.