DOC PREVIEW
Model-Driven Performance Analysis Methodology

This preview shows page 1-2 out of 6 pages.

Save
View full document
View full document
Premium Document
Do you want full access? Go Premium and unlock all 6 pages.
Access to all documents
Download any document
Ad free experience
View full document
Premium Document
Do you want full access? Go Premium and unlock all 6 pages.
Access to all documents
Download any document
Ad free experience
Premium Document
Do you want full access? Go Premium and unlock all 6 pages.
Access to all documents
Download any document
Ad free experience

Unformatted text preview:

Model-Driven Performance Analysis Methodologyfor Distributed Software SystemsSwapna S. Gokhale Aniruddha Gokhale Jeff GrayPaul Vandal Dimple Kaul, Arundhati Kogekar Yuehua LinDept. of CSE Dept. of EECS Dept. of CISUniv. of Connecticut Vanderbilt Univ. Univ. of Alabama at BirminghamStorrs, CT Nashville, TN Birmingham, AL{[email protected] }{[email protected]}{[email protected]}Abstract— A key enabler of the recently popularized, assembly-centric development approach for distributed real-time softwaresystems is QoS-enabled middleware, which provides reusablebuilding blocks in the form of design patterns that codifysolutions to commonly recurring problems. These patterns canbe customized by choosing an appropriate set of configurationparameters. The configuration options of the patterns exert astrong influence on system performance, which is of paramountimportance in many distributed software systems. Despite thisconsiderable influence, currently there is a lack of significantresearch to analyze performance of middleware at design time,where performance issues can be resolved at a much earlierstage of the application life cycle and with substantially lesscosts. The present project seeks to develop a performance analysismethodology for design-time performance analysis for distributedsoftware systems implemented using middleware patterns andtheir compositions. The methodology is illustrated on a pro-ducer/consumer system implemented using the Active Object(AO) pattern in middleware. Finally, broader impacts of themethodology for middleware specialization are also described.I. INTRODUCTIONSociety today is increasingly reliant on the services providedby distributed software systems. These services have becomeprevalent in many domains including health care, finance,telecommunications and avionics. In many of these domains,the performance of a service is just as important as thefunctionality provided by the service.To counter the dual pressures of developing systems whichoffer a rich set of services with good performance, while si-multaneously reducing their time-to-market, service providersare increasingly favoring the assembly-centric approach overthe traditional development-centric approach. A key facilita-tor of this assembly-centric approach has been QoS-enabledmiddleware [18]. Middleware consists of software layersthat provide platform-independent execution semantics andreusable services that coordinate how system components arecomposed and interoperate. Middleware offers a large numberof reusable building blocks in the form of design patterns [4],[20], which codify solutions to commonly recurring problems.These patterns can be customized with an appropriate set ofconfiguration parameters as per system requirements.The choice of configuration parameters have a profoundinfluence on the performance of a pattern and hence a systemimplemented using the pattern. Despite the influence on systemperformance, which is crucial for many software systems, cur-rent methods of selecting the patterns and their configurationoptions are manual, ad-hoc and hence error-prone. The prob-lem is further compounded, because there are no techniquesavailable to analyze the impact of different configurationparameters on the performance of a pattern prior to buildinga system. Performance analysis is thus invariably conductedafter a system is assembled, and it is often too late and tooexpensive to take corrective action if a particular selection ofpatterns and their configuration parameters cannot satisfy thedesired performance expectations. The capability to conductdesign-time performance analysis of middleware patterns andthe composition of these patterns is thus necessary, especiallyfor systems with stringent performance requirements.This project seeks to develop an analysis methodology fordesign-time performance analysis of a system implementedusing middleware patterns. The methodology is comprised oftwo steps. The first step consists of formulating and solvingperformance models of individual middleware patterns. In thesecond step, strategies to compose the performance models ofindividual patterns mirroring their composition and methodsto solve the composite model to estimate system performanceare developed. Our goal is to automate these processes viamodel driven engineering (MDE) [19] where the systemsdeveloper is provided artifacts that are intuitive and closer totheir domain to compose the systems from building blocks.Generative tools [2] supported by the MDE approach canthen automate the synthesis of performance analysis metadatathat is subsequently used by back-end analysis tools. Theillustration of the first step of the methodology on Reactor,Proactor and Active Object (AO) patterns demonstrates thefeasibility of conducting performance analysis of a systemimplemented using a middleware pattern at design time usingthe model-driven paradigm.The rest of the paper is organized as follows: Section II;Section II provides an overview of the performance analysisprocess of a middleware pattern. Section III illustrates theprocess using the AO pattern. Section IV discusses broaderimpacts of the project. Section V offers concluding remarksand directions for future research.1-4244-0910-1/07/$20.00 ©2007 IEEEII. PERFORMANCE ANALYSIS OF A MIDDLEWARE PATTERNIn this section we discuss the process we follow for per-formance analysis of an individual pattern. We describe thevarious steps involved in the process shown in Figure 1 andhow they support each other.Fig. 1. Performance analysis process of a middleware pattern• Model formulation: The model formulation step iscomprised of capturing the basic or the invariant char-acteristics of a pattern into a performance model. Dif-ferent modeling paradigms such as Stochastic RewardNets (SRNs) [17], Layered Queuing Networks [23], andColored Petri Nets [11] may be used for this purpose. Theperformance model can then be solved/simulated usingtools such as SPNP [10] and DesignCPN [12].• Model validation: The performance estimates obtainedby solving the performance model are validated in thisstep using simulation or experimentation. Experimenta-tion is conducted by implementing a system with the pat-tern on the ACE framework www.dre.vanderbilt.edu/ACE. Simulation is conducted using a general-purpose simulation language such as CSIM [21].• Model generalization: In this step the the process offormulating the model is generalized to enable the


Model-Driven Performance Analysis Methodology

Download Model-Driven Performance Analysis Methodology
Our administrator received your request to download this document. We will send you the file to your email shortly.
Loading Unlocking...
Login

Join to view Model-Driven Performance Analysis Methodology and access 3M+ class-specific study document.

or
We will never post anything without your permission.
Don't have an account?
Sign Up

Join to view Model-Driven Performance Analysis Methodology 2 2 and access 3M+ class-specific study document.

or

By creating an account you agree to our Privacy Policy and Terms Of Use

Already a member?