Performance Modeling Framework for CORBA Based Distributed Systems

Pekka Kähkipuro:Performance Modeling Framework for CORBA Based Distributed Systems. PhD Thesis, Report A-2000-3, Department of Computer Science, University of Helsinki, May 2000. 151 + 16 pages. <http://www.cs.helsinki.fi/TR/A-2000/3>

Full paper: PDF file

Abstract

The CORBA platform is increasingly popular in distributed computing due to its ability to hide complex implementation issues from application developers. However, performance consequences of the underlying techniques often remain visible to software developers. Moreover, new performance concerns may emerge because of additional layering and indirection. Performance modeling allows developers to understand and predict the performance of CORBA based systems.

In this work, we propose a performance modeling framework for supporting the development of CORBA based distributed systems. The main elements of the framework are (1) a notation for expressing the performance models, (2) a set of modeling techniques for representing common solutions in CORBA based systems, (3) an algorithm for solving the resulting models for a number of relevant metrics, (4) a tool for automating some of the tasks required by the framework, and (5) a methodology for creating and modifying the models.

Our modeling notation is based on the Unified Modeling Language (UML). To include performance related information into UML diagrams, we define several extensions that conform to the standard UML extension mechanisms. Special techniques are proposed for supporting layered modeling so that different aspects of the system can be described with separate and interrelated UML diagrams.

To solve UML based performance models, we transform the models into queuing networks with simultaneous resource possessions. The networks are further decomposed into a set of auxiliary product-form queuing networks, and iteration is used for finding an approximate solution that respects the mutual dependencies between the auxiliary networks. This algorithm combines existing approximation techniques in a novel way so that commonly occurring situations in object-oriented systems, such as callbacks and recursive calls, can be dealt with.

Our concise methodology defines a layered structure for modeling CORBA based distributed systems. In addition, it describes activities for creating and refining the models. We also present a prototype tool and discuss a case study where the results of a performance model are compared to metrics obtained from an actual system. The case study confirms that a relatively complex CORBA based system can be modeled with the framework without significant difficulties.

Index Terms

Categories and Subject Descriptors:
C.2.4 Computer-communication networks: Distributed Systems
C.4 Performance of systems - Modeling Techniques
D.2.2 Software engineering: Design Tools and Techniques

General Terms: Design, Performance

Additional Key Words and Phrases: CORBA, mean value analysis, middleware, queuing network models, software performance engineering, Unified Modeling Language


Online Publications of Department of Computer Science, Juhani Kuittinen
Last updated Mar 06, 2001