The increasing complexity of the new object-oriented software technologies leads to the necessity of some form of quantitative (performance) model when a system is designed. This is particularly true when the system itself is a complex, distributed, client-server system. Simulation can sometimes be used for this purpose but analytical models are preferred where possible in view of their greater efficiency and flexibility for experimentation.
Enterprise JavaBeans (EJB) is a state-of-the-art architecture for developing, deploying and managing reliable enterprise applications in production environments (e.g. e-commerce, engineering). This thesis presents the development of an analytical model for the EJB component architecture, typically used as the application server of a distributed, three-tier, client-server system.
More specifically, an analytical performance model is developed for the EJB architecture method execution mechanism in order to predict its performance in terms of throughput (number of method executions per unit time) and mean response time. This is achieved by abstracting the execution mechanism as a queueing network with a non-standard form of blocking. The overall network is decomposed into sub-networks in order to isolate the blocking characteristics. The blocking sub-model is then solved for the probability distribution of blocking time and a simple formula for its mean value is obtained. This result is used in a flow-equivalent server (FES) model of the whole system where the overall queueing network is reduced by aggregating sub-networks into single nodes with queue length dependent service rates that capture the essence of the blocking effects. The analytical model of the server's method calling processes is then validated against simulation in terms of both throughput and queue length distribution, good agreement being obtained in both cases.
Furthermore, interval analysis techniques are used in order to study sensitivities of the performance measures. The approximate solution obtained is adapted to interval arithmetic in order to represent the uncertainty in some of the model parameters. Monotonicity properties of intermediate computations are exploited to achieve a more efficient interval solution. This solution is then used to perform different sensitivity analyses with respect to the uncertain parameters to investigate how the variation of these parameters influences the performance results.
Finally, the solution algorithms obtained are applied using different combinations of parameter values. In this sense, experiments have been conducted in order to investigate how the software parameters influence the system throughput and response time. Moreover, given the workload distribution for the different classes that comprise the system, the best software parameter combination can be found.
pubs.doc.ic.ac.uk: built & maintained by Ashok Argent-Katwala.