Engineering Event-Based Systems with Scopes
Event notification services enable loose coupling and they are therefore becoming an essential part of distributed systems’ design. However, the development of event services follows the early stages of programming language evolution, disregarding the need for efficient mechanisms to structure event-based applications. In this paper, the well-known notion of scopes is introduced to event-based systems. We show that limiting the visibility of events is a simple yet powerful mechanism that allows to identify application structure and offers a module construct for the loosely coupled components in event-based systems. We are able to customize the semantics of scoped event notification services by binding meta-objects to the application structure that reify important aspects of notification delivery, like interface mappings and transmission policies. The scoping concept facilitates design and implementation by offering encapsulation and adaption of syntax and semantics of event-based systems.
KeywordsEvent Mapping Object Management Group Simple Object Access Protocol Simple Component Loose Coupling
Unable to display preview. Download preview PDF.
- 1.G. Agha and C. J. Callsen. ActorSpace: an open distributed programming paradigm. ACM SIGPLAN Notices, 28(7):23–32, July 1993.Google Scholar
- 2.P. A. Bernstein. Transaction processing monitors. Communications of the ACM, 33(11):75–86, Nov. 1990.Google Scholar
- 3.C. Bornhövd and A. Buchmann. A prototype for metadata-based integration of internet sources. In 11th International Conference on Advanced Information Systems Engineering (CAiSE’99), volume 1626 of LNCS, Heidelberg, Germany, June 1999. Springer-Verlag.Google Scholar
- 4.D. Box et al. Simple object access protocol (SOAP) 1.1. Technical report, W3C, 2000. http://www.w3.org/TR/SOAP/.
- 6.A. Carzaniga, E. Di Nitto, D. S. Rosenblum, and A. L. Wolf. Issues in supporting event-based architectural styles. In ISAW’ 98: Proceedings of the Third International Workshop on Software Architecture, pages 17–20, 1998.Google Scholar
- 7.A. Carzaniga, D. Rosenblum, and A. Wolf. Design of a scalable event notification service: Interface and architecture. Technical Report CU-CS-863-98, Department of Computer Science, Univ. of Colorado at Boulder, USA, 1998.Google Scholar
- 9.M. Cilia, C. Bornhövd, and A. P. Buchmann. Moving active functionality from centralized to open distributed heterogeneous environments. In Proceedings of the 6th International Conference on Cooperative Information Systems (CoopIS’ 01), volume 2172 of LNCS. Springer, 2001.Google Scholar
- 10.M. Colan. InfoBus 1.2 Specification. Lotus.Google Scholar
- 11.G. Cugola, E. Di Nitto, and A. Fuggetta. The JEDI event-based infrastructure and its application to the development of the opss wfms. IEEE Transactions on Software Engineering, 2001.Google Scholar
- 13.L. Fiege and G. Mühl. Rebeca Event-Based Electronic Commerce Architecture, 2000. http://www.gkec.informatik.tu-darmstadt.de/rebeca.
- 14.L. Fiege, G. Mühl, and F. C. Gärtner. A modular approach to build structured event-based systems. In Proceedings of the 2002 ACM Symposium on Applied Computing (SAC’02), pages 385–392, Madrid, Spain, 2002. ACM Press.Google Scholar
- 15.M. J. Franklin and S. B. Zdonik. A framework for scalable dissemination-based systems. In Proceedings of the 12th ACM Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA’ 97), Atlanta, Georgia, USA, Oct. 5–9, 1997.Google Scholar
- 16.M. J. Franklin and S. B. Zdonik. “Data In Your Face”: Push Technology in Perspective. In L. M. Haas and A. Tiwary, editors, SIGMOD 1998, Proceedings ACM SIGMOD International Conference on Management of Data, June 2–4, 1998, Seattle, Washington, USA, pages 516–519. ACM Press, 1998.Google Scholar
- 17.D. Garlan and C. Scott. Adding implicit invocation to traditional programming languages. In Proceedings of the 15th Intl. Conference on Software Engineering (ICSE’ 93), pages 447–455. IEEE Computer Society Press / ACM Press, 1993.Google Scholar
- 18.D. Gelernter. Generative communication in Linda. ACM Transactions on Programming Languages and Systems, 7(1):80–112, Jan. 1985.Google Scholar
- 20.J. Gray and A. Reuter. Transaction Processing: Concepts and Techniques. Morgan Kaufmann, 1993.Google Scholar
- 21.R. Gruber, B. Krishnamurthy, and E. Panagos. The architecture of the READY event notification service. In Proceedings of the 19th IEEE International Conference on Distributed Computing Systems Middleware Workshop, Austin, Texas, USA, May 1999.Google Scholar
- 22.W. Harrison and H. Ossher. Subject-oriented programming (A critique of pure objects). In A. Paepcke, editor, Proceedings of the 8th ACM Conference on Object-Oriented Programming Systems, Languages, and Applications (OOPSLA’ 93), pages 411–428, 1993.Google Scholar
- 23.ISO/IEC. Reference model of open distributed processing. Draft Standard, May 1995.Google Scholar
- 24.G. Kiczales, J. des Rivieres, and D.G. Bobrow. The Art of the Meta-Object Protocol. MIT Press, Cambridge, MA, USA, 1991.Google Scholar
- 25.O. Lassila and R. R. Swick. Resource description framework (RDF) model and syntax specification. W3C Recommendation, Feb. 1999. http://www.w3.org/TR/REC-rdf-syntax.
- 26.C. Liebig, M. Cilia, and A. Buchmann. Event Composition in Time-dependent Distributed Systems. In Proceedings of the 4th Intl. Conference on Cooperative Information Systems (CoopIS’ 99), Sept. 1999.Google Scholar
- 27.P. Maes. Concepts and experiments in computational reflection. In N. Meyrowitz, editor, Proceedings of the 2nd ACM Conference on Object-Oriented Programming Systems, Languages and Applications (OOPSLA’ 87), pages 147–155, Orlando, FL, USA, Oct. 1987. ACM Press.Google Scholar
- 28.J. McAffer. Meta-level programming with CodA. In W. Olthoff, editor, European Conference for Object-Oriented Programming (ECOOP’ 95), volume 952 of LNCS, Aarhus,Denmark, 1995. Springer-Verlag.Google Scholar
- 29.I. Merrick and A. Wood. Coordination with scopes. In Proceedings of the ACM Symposium on Applied Computing (SAC 2000), pages 210–217, Como, Italy, Mar. 2000.Google Scholar
- 31.A. L. Murphy, G. P. Picco, and G.-C. Roman. Lime: A Middleware for Physical and Logical Mobility. In F. Golshani, P. Dasgupta, and W. Zhao, editors, Proceedings of the 21 st International Conference on Distributed Computing Systems (ICDCS-21), pages 524–533, May 2001.Google Scholar
- 32.B. C. Neuman and T. Ts’o. Kerberos: An authentication service for computer networks. IEEE Communications Magazine, 32(9):33–38, Sept. 1994.Google Scholar
- 33.Oasis. FIXML-A Markup Language for the Financial Information eXchange (FIX) protocol, July 2001. http://www.oasis-open.org/cover/fixml.html.
- 34.Object Management Group. The Common Object Request Broker: Architecture and Specification. Version 2.3. Object Management Group, Framingham, MA, USA, 1998.Google Scholar
- 35.Object Management Group. CORBA Components. OMG, Framingham, MA, USA, 1999. orbos/99-07-01.Google Scholar
- 36.Object Management Group. Corba notification service. OMG Document telecom/99-07-01, 1999.Google Scholar
- 37.Object Management Group. Corba transaction service v1.1. OMG Document formal/00-06-28, 2000.Google Scholar
- 38.B. Oki, M. Pfluegl, A. Siegel, and D. Skeen. The information bus—an architecture for extensible distributed systems. In B. Liskov, editor, Proceedings of the 14th Symposium on Operating Systems Principles, pages 58–68, New York, NY, USA, Dec. 1993. ACM Press.Google Scholar
- 39.D. L. Parnas. On the criteria to be used in decomposing systems into modules. Communications of the ACM, 15(12):1053–1058, Dec. 1972.Google Scholar
- 40.D. Powell. Group communication. Communications of the ACM, 39(4):50–53, Apr. 1996.Google Scholar
- 41.S. P. Reiss. Connecting tools using message passing in the Field environment. IEEE Software, 7(4):57–66, July 1990.Google Scholar
- 42.K. J. Sullivan and D. Notkin. Reconciling environment integration and software evolution. ACM Transactions of Software Engineering and Methodology, 1(3):229–269, July 1992.Google Scholar
- 43.Sun. Java message service specification 1.0.2, 1999.Google Scholar
- 44.Sun Microsystems, Inc. Enterprise javabeans specification, version 2.0. Proposed Final Draft, 2000. http://java.sun.com/products/ejb/index.html.
- 45.C. Szyperski. Components Software, Beyond Object-Oriented Programming. Addison-Wesley, 1997.Google Scholar
- 46.TIBCO, Inc. TIB/Rendezvous. White Paper, 1996. http://www.rv.tibco.com/.
- 47.S. Yang and S. Chakravarthy. Formal Semantics of Composite Events for Distributed Environments. In Proceedings of the 15th International Conference on Data Engineering (ICDE’ 99), pages 400–407. IEEE Computer Society Press, 1999.Google Scholar