Advertisement

Engineering Event-Based Systems with Scopes

  • Ludger Fiege
  • Mira Mezini
  • Gero Mühl
  • Alejandro P. Buchmann
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2374)

Abstract

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.

Keywords

Event Mapping Object Management Group Simple Object Access Protocol Simple Component Loose Coupling 
These keywords were added by machine and not by the authors. This process is experimental and the keywords may be updated as the learning algorithm improves.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 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. 2.
    P. A. Bernstein. Transaction processing monitors. Communications of the ACM, 33(11):75–86, Nov. 1990.Google Scholar
  3. 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. 4.
    D. Box et al. Simple object access protocol (SOAP) 1.1. Technical report, W3C, 2000. http://www.w3.org/TR/SOAP/.
  5. 5.
    L. Cardelli and A. D. Gordon. Mobile ambients. In M. Nivat, editor, Proceedings of Foundations of Software Science and Computation Structures (FoSSaCS), volume 1378 of LNCS, pages 140–155. Springer-Verlag, Berlin, Germany, 1998.CrossRefGoogle Scholar
  6. 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. 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
  8. 8.
    A. Carzaniga, D. S. Rosenblum, and A. L. Wolf. Design and evaluation of a wide-area event notification service. ACM Transactions on Computer Systems, 19(3):332–383, 2001.CrossRefGoogle Scholar
  9. 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. 10.
    M. Colan. InfoBus 1.2 Specification. Lotus.Google Scholar
  11. 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
  12. 12.
    H. Evans and P. Dickman. DRASTIC: A run-time architecture for evolving, distributed, persistent systems. In M. Akşit and S. Matsuoka, editors, European Conference for Object-Oriented Programming (ECOOP’ 97), volume 1241 of LNCS, pages 243–275. Springer-Verlag, 1997.CrossRefGoogle Scholar
  13. 13.
    L. Fiege and G. Mühl. Rebeca Event-Based Electronic Commerce Architecture, 2000. http://www.gkec.informatik.tu-darmstadt.de/rebeca.
  14. 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. 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. 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. 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. 18.
    D. Gelernter. Generative communication in Linda. ACM Transactions on Programming Languages and Systems, 7(1):80–112, Jan. 1985.Google Scholar
  19. 19.
    D. Gelernter. Multiple tuple spaces in Linda. In E. Odijk, M. Rem, and J.-C. Syre, editors, PARLE’ 89: Parallel Architectures and Languages Europe, volume 366 of Lecture Notes in Computer Science, pages 20–27, 1989.CrossRefGoogle Scholar
  20. 20.
    J. Gray and A. Reuter. Transaction Processing: Concepts and Techniques. Morgan Kaufmann, 1993.Google Scholar
  21. 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. 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. 23.
    ISO/IEC. Reference model of open distributed processing. Draft Standard, May 1995.Google Scholar
  24. 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. 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. 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. 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. 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. 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
  30. 30.
    G. Mühl. Generic constraints for content-based publish/subscribe systems. In Proceedings of the 6th International Conference on Cooperative Information Systems (CoopIS’ 01), volume 2172 of LNCS, pages 211–225. Springer, 2001.CrossRefGoogle Scholar
  31. 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. 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. 33.
    Oasis. FIXML-A Markup Language for the Financial Information eXchange (FIX) protocol, July 2001. http://www.oasis-open.org/cover/fixml.html.
  34. 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. 35.
    Object Management Group. CORBA Components. OMG, Framingham, MA, USA, 1999. orbos/99-07-01.Google Scholar
  36. 36.
    Object Management Group. Corba notification service. OMG Document telecom/99-07-01, 1999.Google Scholar
  37. 37.
    Object Management Group. Corba transaction service v1.1. OMG Document formal/00-06-28, 2000.Google Scholar
  38. 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. 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. 40.
    D. Powell. Group communication. Communications of the ACM, 39(4):50–53, Apr. 1996.Google Scholar
  41. 41.
    S. P. Reiss. Connecting tools using message passing in the Field environment. IEEE Software, 7(4):57–66, July 1990.Google Scholar
  42. 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. 43.
    Sun. Java message service specification 1.0.2, 1999.Google Scholar
  44. 44.
    Sun Microsystems, Inc. Enterprise javabeans specification, version 2.0. Proposed Final Draft, 2000. http://java.sun.com/products/ejb/index.html.
  45. 45.
    C. Szyperski. Components Software, Beyond Object-Oriented Programming. Addison-Wesley, 1997.Google Scholar
  46. 46.
    TIBCO, Inc. TIB/Rendezvous. White Paper, 1996. http://www.rv.tibco.com/.
  47. 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

Copyright information

© Springer-Verlag Berlin Heidelberg 2002

Authors and Affiliations

  • Ludger Fiege
    • 1
  • Mira Mezini
    • 1
  • Gero Mühl
    • 1
  • Alejandro P. Buchmann
    • 1
  1. 1.Department of Computer ScienceDarmstadt University of TechnologyDarmstadt

Personalised recommendations