Abstract
Performance characteristics as response time and through-put play an important role in defining the quality of software products. The software developers should be able to assess and understand the performance effects of various architectural decisions starting at an early stage, when changes are easy and less expensive, and continuing through-out the software life cycle. This can be achieved by constructing and analyzing quantitative performance models that capture the interactions between the main system components and point to the system’s performance trouble spots. The paper proposes a formal approach to building Layered Queueing Network (LQN) performance models from Unified Modeling Language (UML) descriptions of the high-level architecture of a system, and more exactly from the architectural patterns used in the system. The performance modelling formalism, LQN, is an extension of the well-known Queueing Network modelling technique. The transformation from a UML architectural description of a given system to its LQN model is based on PROGRES, a well-known visual language and environment for programming with graph rewriting systems.
Research partially supported by the Natural Sciences and Engineering Research Council of Canada (NSERC), and by the Communications and Information Technology Ontario (CITO).
Access this chapter
Tax calculation will be finalised at checkout
Purchases are for personal use only
Preview
Unable to display preview. Download preview PDF.
References
R. Allen, D. Garlan, “A Formal Basis for Architectural Connection”, ACM Transactions on Software Engineering Methodology, Vol.6, No.3, pp. 213–249, July
G. Booch, J. Rumbaugh, I. Jacobson, The Unified Modeling Language User Guide, Addison-Wesley, 1999.
F. Buschmann, R. Meunier, H. Rohnert, P. Sommerland, M. Stal, Pattern-Oriented Software Architecture: A System of Patterns, Wiley Computer Publishing, 1996
G. Franks, A. Hubbard, S. Majumdar, D. Petriu, J. Rolia, C. M. Woodside, “A toolset for Performance Engineering and Software Design of Client-Server Systems”, Performance Evaluation, Vol. 24, Nb. 1–2, pp. 117–135, November 1995.
J. Dilley, R. Friedich, T. Jin, J. Rolia, “Measuremnt Tool and Modelling Techniques for Evaluating Web Server Performance” in Lectures Notes in Computer Science, vol.1245, Springer, pp. 155–168, R. Marie, B. Plateau, M. Calzarosa, G. Rubino (eds), Proc. of 9-th Int. Conference on Modelling Techniques and Tools for Performance Evaluation, June 1997.
J. E. Neilson, C. M. Woodside, D. Petriu, and S. Majumdar, “Software bottlenecking in client-server systems and rendezvous networks”, IEEE Transactions on Software Engineering, vol. 21(19) pp. 776–782, September 1995.
Object Management Group, The Common Object Request Broker: Architecture and Specification, Object Management Group and X/Open, Framingham, MA and Reading Berkshire UK, 1992.
D. Petriu, X. Wang, “Deriving Software Performance Models from Architectural Patterns by Graph Transformations”, Proc. of the Sixth International Workshop on Theory and Applications of Graph Transformations TAGT’98, Paderborn, Germany, Nov. 1998.
J. A. Rolia, K. C. Sevcik, “The Method of Layers”, IEEE Trans. On Software Engineering, Vol. 21, Nb. 8, pp. 689–700, August 1995.
A. Schürr, “Introduction to PROGRES, an attribute graph grammar based specification language”, in Graph-Theoretic Concepts in Computer Science, M. Nagl (ed), Vol. 411 of Lecture Notes in Computer Science, pp. 151–165, 1990.
A. Schürr, “PROGRES: A Visual Language and Environment for PROgramming with Graph Rewrite Systems”, Technical Report AIB 94-11, RWTH Aachen, Germany, 1994.
A. Schürr, “Programmed Graph Replacement Systems”, in Handbook of Graph Grammars and Computing by Graph Transformation, G. Rozenberg (ed), pp. 479–546, 1997.
M. Shaw, D. Garlan, Software Architectures: Perspectives on an Emerging Discipline, Prentice Hall, 1996.
M. Shaw, “Some Patterns for Software Architecture” in Pattern Languages of Program Design 2 (J. Vlissides, J. Coplien, and N. Kerth eds.), pp. 255–269, Addison Wesley, 1996.
C. U. Smith, Performance Engineering of Software Systems, Addison Wesley, 1990.
C. Shousha, D. C. Petriu, A. Jalnapurkar, K. Ngo, “Applying Performance Modelling to a Telecommunication System”, Proceedings of the First International Workshop on Software and Performance, Santa Fe, USA, pp. 1–6, Oct.1998.
C. M. Woodside. “Through-put Calculation for Basic Stochastic Rendezvous Net works”. Performance Evaluation, vol.9(2), pp. 143–160, April 1988
C. M. Woodside, J. E. Neilson, D. C. Petriu, S. Majumdar, “The Stochastic Rendezvous Network Model for Performance of Synchronous Client-Server-like Distributed Software”, IEEE Transactions on Computers, Vol.44, Nb.1, pp. 20–34, January 1995.
Author information
Authors and Affiliations
Editor information
Editors and Affiliations
Rights and permissions
Copyright information
© 2000 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Petriu, D.C., Wang, X. (2000). From UML Descriptions of High-Level Software Architectures to LQN Performance Models. In: Nagl, M., Schürr, A., Münch, M. (eds) Applications of Graph Transformations with Industrial Relevance. AGTIVE 1999. Lecture Notes in Computer Science, vol 1779. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-45104-8_4
Download citation
DOI: https://doi.org/10.1007/3-540-45104-8_4
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-67658-4
Online ISBN: 978-3-540-45104-4
eBook Packages: Springer Book Archive