|
ABSTRACT
Design patterns, components, and frameworks have been successfully used to build various distributed real-time, and embedded (DRE) systems such as high-performance servers, telecommunication systems, and control systems. An application developer may choose from several approaches to implement a distributed application and the choice of design patterns and their configuration can impact the overall performance of the system. Unlike components, design patterns are often descriptions of a programming approach and need to be reified for each application. However, some core pattern implementations can often be reused across applications, if they can be correctly configured to meet application requirements. Currently, there is no general way to quantify the performance of components and design pattern implementations across various dimensions such as throughput, response time, and scalability. The overall performance of applications that are composed from pre-coded components and patterns can be inferred using analytical techniques by modeling the behavior of the individual components. In particular, while we know from experience that patterns exhibit various tradeoffs in terms of performance and complexity; we would like to explore these tradeoffs in a formal way. Toward this goal, we make the following contributions in this thesis: 1) we develop analytical models for various design patterns using queuing models, 2) we present a technique to analyze the performance of combinations of design patterns as observed in real-world applications, and 3) we validate the models using empirical measurements.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
A. Bogárdi-Mészöly, T. Levendovszky, and H. C. (Hungary). Using queueing model in predicting the response time of asp.net web applications. In The IASTED Conference on Software Engineering, February 2006.
|
| |
2
|
Frank Buschmann , Regine Meunier , Hans Rohnert , Peter Sommerlad , Michael Stal, Pattern-oriented software architecture: a system of patterns, John Wiley & Sons, Inc., New York, NY, 1996
|
| |
3
|
Center for Distributed Object Computing. The ZEN ORB. www.zen.uci.edu, University of California at Irvine.
|
| |
4
|
R. G. Franks. The Layered Queueing Network Tutorial.
|
| |
5
|
|
| |
6
|
T. Gensler and C. Zeidler. Rule-driven component composition for embedded systems. In 4th ICSE Workshop on Component-Based Software Engineering: Component Certification and System Prediction, 2004.
|
| |
7
|
|
| |
8
|
S. Gorappa and R. Klefstad. Modeling the performance of communication framework design patterns using queuing theory. In Proceedings of the 10th International Symposium on Performance Evaluation of Computer and Telecommunication Systems, July 2007.
|
| |
9
|
J. Hu, S. Gorappa, J. A. Colmenares, and R. Klefstad. Compadres: A Lightweight Real-time Java Component Middleware Framework for Composing Distributed, Real-time, Embedded Systems. In Middleware, November 2007.
|
| |
10
|
|
| |
11
|
R. Jain. The Art of Computer Systems Performance Analysis. John Wiley and Sons, Inc., 1991.
|
| |
12
|
|
 |
13
|
|
| |
14
|
A. Kogekar, D. Kaul, A. Gokhale, P. Vandal, U. Praphamontripong, S. Gokhale, J. Zhang, Y. Lin, and J. Gray. Model-driven generative techniques for scalable performability analysis of distributed systems. In Parallel and Distributed Processing Symposium, April 2006.
|
| |
15
|
|
| |
16
|
|
| |
17
|
|
| |
18
|
S. Microsystems. Enterprise JavaBeans specification, v2.1.
|
| |
19
|
I. Pyarali, C. O'Ryan, D. Schmidt, N. Wang, V. Kachroo, and A. Gokhale. Applying optimization principle patterns to real-time orbs, 2000.
|
| |
20
|
|
| |
21
|
|
| |
22
|
|
| |
23
|
|
| |
24
|
D. C. Schmidt and et al. Leader/Followers - A Design Pattern for Efficient Multi-threaded Event Demultiplexing and Dispatching. In 7th Pattern Languages of Programs Conference, 2000.
|
 |
25
|
|
| |
26
|
|
| |
27
|
R. D. van der Mei, R. Hariharan, and P. Reeser. Web server performance modeling. Telecommunication Systems, 16(3--4):361--378, 2001.
|
| |
28
|
N. Wang, D. C. Schmidt, A. Gokhale, C. D. Gill, B. Natarajan, J. P. Loyall, R. E. Schantz, and C. Rodrigues. Qos-enabled middleware (chapter 6). In Middleware for Communications. John Wiley & Sons, 2004.
|
|