by Douglas C. Schmidt, Chris Cleel
Communications of the ACM
http://siesta.cs.wustl.edu/~cleeland/papers/ORB-patterns/ORB-patterns.ps.gz
Add To MetaCart
Abstract:
Distributed object computing forms the basis for nextgeneration application middleware. At the heart of distributed object computing are Object Request Brokers (ORBs), which automate many tedious and error-prone distributed programming tasks. Like many other distributed applications, conventional ORBs use statically configured software designs, which are hard to maintain, port, and optimize. Likewise, conventional ORBs cannot be extended without modifying their source code, which forces recompilation, relinking, and restarting running ORBs and their associated application objects. This article makes two contributions to the study of extensible and maintainable ORB middleware. First, it presents a case study of key design patterns needed to develop ORBs that can be dynamically configured and evolved for specific application requirements and system characteristics. Second, we quantify the impact of applying patterns to reduce the complexity and improve the maintainability of common ORB tasks. 1
Citations
|
3620
|
Design Patterns. Elements of Reusable Object-Oriented Software
– Gamma, Helm, et al.
- 1998
|
|
491
|
A Complexity Measure
– McCabe
- 1976
|
|
381
|
Pattern-Oriented Software Architecture: A System of Patterns
– Buschmann, Meunier, et al.
- 1998
|
|
274
|
Architectural Support for Quality of Service for CORBA Objects. Theory and Practice of Systems
– Zinky, Bakken, et al.
- 1997
|
|
271
|
CORBA: Integrating diverse applications within distributed heterogeneous environments
– Vinoski
- 1997
|
|
219
|
The Design and Performance of a Real-Time CORBA Event Service
– Harrison, Levine, et al.
- 1997
|
|
205
|
The Design and Performance of Real-Time Object Request Brokers
– Schmidt, Levine, et al.
- 1998
|
|
200
|
Inside Windows NT
– Custer
- 1993
|
|
163
|
ACE: an Object-Oriented Framework for Developing Distributed Applications
– Schmidt
- 1994
|
|
149
|
Reactor: An Object Behavioral Pattern for Concurrent Event Demultiplexing and Event Handler Dispatching
– Schmidt
- 1995
|
|
140
|
A Distributed Object Model for the Java System
– Wollrath, Riggs, et al.
- 1996
|
|
122
|
Active Object: an Object Behavioral Pattern for Concurrent Programming
– Lavender, Schmidt
- 1995
|
|
93
|
An Object-Oriented Framework for Dynamically Configuring Extensible Distributed Communication Systems
– Schmidt, Suda
- 1994
|
|
90
|
Measuring the impact of event dispatching and concurrency models on web server performance over high-speed networks
– Hu, Pyarali, et al.
- 1997
|
|
87
|
Building reliable distributed systems with CORBA. Theory and Practice of Object Systems
– Landis, Maffeis
- 1997
|
|
85
|
Acceptor and Connector: Design Patterns for Actively and Passively Initializing Network Services
– Schmidt
- 1995
|
|
79
|
Design and Performance of an Object-Oriented Framework for HighPerformance Electronic Medical Imaging
– Pyarali, Harrison, et al.
- 1996
|
|
74
|
Flick: A Flexible, Optimizing IDL Compiler
– Eide, Frei, et al.
- 1997
|
|
66
|
The APIC Approach to High Performance Network Interface Design: Protected DMA and Other Techniques
– Dittia, Parulkar, et al.
- 1997
|
|
51
|
Evaluating the Performance of Demultiplexing Strategies for Real-Time CORBA
– Gokhale, Schmidt
- 1997
|
|
48
|
Service Configurator: A Pattern for Dynamic Configuration and Reconfiguration of Communication Services
– Jain, Schmidt
- 1997
|
|
42
|
Alleviating priority inversion and non-determinism in real-time CORBA ORB core architectures
– Schmidt, Mungee, et al.
- 1998
|
|
36
|
Real-Time CORBA
– Wolfe, DiPippo, et al.
- 1997
|
|
33
|
Principles for Optimizing CORBA Internet Inter–ORB Protocol Performance
– Gokhale, Schmidt
- 1998
|
|
28
|
Experience using design patterns to develop reuseable object-oriented communication software
– Schmidt
- 1995
|
|
26
|
Frameworks = Patterns + Components
– Johnson
- 1997
|
|
24
|
Shared libraries in sunOS
– Gingell, Lee, et al.
- 1987
|
|
20
|
An ORB Endsystem Architecture for Statically Scheduled Real-time Applications
– Schmidt, Bector, et al.
- 1997
|
|
19
|
Thread-Specific Storage -- An Object Behavioral Pattern for Accessing perThread State Efficiently
– Schmidt, Harrison, et al.
- 1997
|
|
10
|
Understanding COM
– Box
- 1997
|
|
7
|
Design Principles and Optimizations for High-performance ORBs
– Gokhale, Schmidt
- 1997
|