This Article 
 Bibliographic References 
 Add to: 
Automatic Inclusion of Middleware Performance Attributes into Architectural UML Software Models
August 2005 (vol. 31 no. 8)
pp. 695-711
Distributed systems often use a form of communication middleware to cope with different forms of heterogeneity, including geographical spreading of the components, different programming languages and platform architectures, etc. The middleware will, of course, impact the architecture and the performance of the system. This paper presents a model transformation framework to automatically include the architectural impact and the overhead incurred by using a middleware layer between several system components. Using this framework, architects can model the system in a middleware-independent fashion. Accurate, middleware-aware models can then be obtained automatically using a middleware model repository. The actual transformation algorithm will be presented in more detail. The resulting models can be used to obtain performance models of the system. From those performance models, early indications of the system performance can be extracted.

[1] C.U. Smith, “Designing High-Performance Distributed Applications Using Software Performance Engineering: A Tutorial,” Proc. Computer Management Group, Dec. 1996.
[2] E.D. Lazowska, J. Zahorjan, G.S. Graham, and K.C. Sevcik, Quantitative System Performance, Computer System Analysis Using Queueing Network Models. Prentice-Hall, 1984.
[3] M. Woodside and G. Franks, “Tutorial Introduction to Layered Modeling of Software Performance,” Proc. Workshop Software and Performance, Aug. 2004.
[4] M.A. Marsan, C. Gianni, and B. Gianfranco, “A Class of Generalized Stochastic Petri Nets for the Performance Evaluation of Multiprocessor Systems,” ACM Trans. Computer Systems, vol. 2, no. 2, pp. 93-122, May 1984.
[5] G. Franks, A. Hubbard, S. Majumdar, J. Neilson, C. Petriu, J. Rolia, and M. Woodside, “A Toolset for Performance Engineering and Software Design of Client-Server Systems,” Performance Evaluation, vol. 24, nos. 1-2, pp. 117-135, Feb. 1995.
[6] G. Ciardo, J. Muppala, and K. Trivedi, “SPNP: Stochastic Petri Net Package,” Proc. Third Int'l Workshop Petri Nets and Performance Models, pp. 142-151, 1990.
[7] V. Cortelessa, A. D'Ambrogio, and G. Iazeolla, “Automatic Derivation of Software Performance Models from Case Documents,” Performance Evaluation, vol. 45, nos. 2-3, pp. 81-105, July 2001.
[8] P.G. Gu and D.C. Petriu, “XSLT Transformation from UML Models to LQN Performance Models,” Proc. Third Int'l Workshop Software and Performance (WOSP '2002), pp. 227-234, July 2002.
[9] Object Management Group, “UML Profile for Schedulability, Performance, and Time,” Apr. 2003.
[10] Object Management Group, “Unified Modeling Language Specification, Version 1.4,” 2001.
[11] J. Miller and J. Mukerji, “MDA Guide, Version 1.0.1,” June 2003.
[12] Object Management Group, “The Common Object Request Broker: Architecture and Specification,” 2002.
[13] P. Kähkipuro, “Performance Modeling Framework for CORBA Based Distributed Systems,” PhD thesis, 2000.
[14] D. Petriu, H. Amer, S. Majumdar, and I. Abdul-Fatah, “Using Analytic Models for Predicting Middleware Performance,” Proc. Second Int'l Workshop Software and Performance, pp. 189-194, Sept. 2000.
[15] C.U. Smith and L.G. Williams, “Performance Engineering Models of Corba-Based Distributed-Object Systems,” Proc. Computer Measurement Group Conf., pp. 886-898, Dec. 1998.
[16] T. Verdickt, B. Dhoedt, F. Gielen, and P. Demeester, “Modelling the Performance of CORBA Using Layered Queueing Networks,” Proc. 29th Euromicro Conf., pp. 117-123, 2003.
[17] S. Chen, Y. Liu, I. Gorton, and A. Liu, “Performance Prediction of Component-Based Applications,” J. Systems and Software, vol. 74, no. 1, pp. 35-43, Jan. 2005.
[18] D.C. Petriu and H. Shen, “Applying the UML Performance Profile: Graph Grammar-Based Derivation of LQN Models from UML Specifications,” Proc. 12th Int'l Conf. Computer Performance Evaluation, Modelling Techniques and Tools (TOOLS 2002), pp. 159-177, Apr. 2002.
[19] Object Management Group, “OMG XML Metadata Interchange (XMI) Specification,” OMG Document formal/02-01-01, 2002.

Index Terms:
Index Terms- Distributed software engineering tools and techniques, performance of systems: modeling techniques.
Tom Verdickt, Bart Dhoedt, Frank Gielen, Piet Demeester, "Automatic Inclusion of Middleware Performance Attributes into Architectural UML Software Models," IEEE Transactions on Software Engineering, vol. 31, no. 8, pp. 695-711, Aug. 2005, doi:10.1109/TSE.2005.88
Usage of this product signifies your acceptance of the Terms of Use.