Skip to main content

A design framework for internet-scale event observation and notification

  • Regular Sessions
  • Conference paper
  • First Online:
Software Engineering — ESEC/FSE'97 (ESEC 1997, SIGSOFT FSE 1997)

Abstract

There is increasing interest in having software systems execute and interoperate over the Internet. Execution and interoperation at this scale imply a degree of loose coupling and heterogeneity among the components from which such systems will be built. One common architectural style for distributed, loosely-coupled, heterogeneous software systems is a structure based on event generation, observation and notification. The technology to support this approach is well-developed for local area networks, but it is ill-suited to networks on the scale of the Internet. Hence, new technologies are needed to support the construction of large-scale, event-based software systems for the Internet. We have begun to design a new facility for event observation and notification that better serves the needs of Internet-scale applications. In this paper we present results from our first step in this design process, in which we defined a framework that captures many of the relevant design dimensions. Our framework comprises seven models-an object model, an event model, a naming model, an observation model, a time model, a notification model, and a resource model. The paper discusses each of these models in detail and illustrates them using an example involving an update to a Web page. The paper also evaluates three existing technologies with respect to the seven models.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. D.J. Barrett, L.A. Clarke, P.L. Tarr, and A.E. Wise, “A Framework for Event-Based Software Integration”, ACM Trans. Software Engineering and Methodology, vol. 5, no. 4, pp. 378–421, 1996.

    Google Scholar 

  2. P.C. Bates and J.C. Wileden, “High-Level Debugging of Distributed Systems: The Behavioral Abstraction Approach”, Journal of Systems and Software, vol. 3, no. 4, pp. 255–264,1983.

    Google Scholar 

  3. T. Bemers-Lee, L. Masinter, and M. McCahill, “Uniform Resource Locators (URL)”, Internet Engineering Task Force, Request for Comments RFC 1738, December 1994.

    Google Scholar 

  4. M.I. Bolsky and D.G. Kom, The New KornShell Command and Programming Language, 2nd ed. Upper Saddle River, NJ: Prentice Hall, 1995.

    Google Scholar 

  5. K. Brockschmidt, Inside OLE. Redmond, WA: Microsoft Press, 1995.

    Google Scholar 

  6. S. Chernicoff, Macintosh TM Revealed, vol. 2: Programming with the Toolbox, 2nd ed. Indianapolis, IN: Hayden Books, 1987.

    Google Scholar 

  7. D. Cohen, “Compiling Complex Database Transition Triggers”, Proc. of SIGMOD '89: 1989 Int'l Conf. on Management of Data, pp. 225–2234, 1989.

    Google Scholar 

  8. R. Daniel and M. Meaning, ”Resolution of Uniform Resource Identifiers using the Domain Name System”, Internet Engineering Task Force, Internet Draft (Work in Progress) 21 November 1996.

    Google Scholar 

  9. CJ. Fidge, “Logical Time in Distributed Computing Systems”, IEEE Computer, vol. 24, no. 8, pp. 28–33, 1991.

    Google Scholar 

  10. D. Garlan and D. Notkin, “Formalizing Design Spaces: Implicit Invocation Mechanisms”, Proc. of VDM '91: 4th Int'l Symposium of VDM Europe on Formal Software Development Methods, Noordwijkerhout, The Netherlands, pp. 31–44, 1991.

    Google Scholar 

  11. N.H. Gehani and H.V. Jagadish, “Ode as an Active Database: Constraints and Triggers”, Proc. of VLDB 91: 17th Int'l Conf. on Very Large Data Bases, pp. 327–336, 1991.

    Google Scholar 

  12. M.R. Genesereth and S.P. Ketchpel, “Software Agents”, Communications of the ACM, vol. 37, no. 7, pp. 48–53 and 147, 1994.

    Google Scholar 

  13. C. Gerety, “HP SoftBench: A New Generation of Software Development Tools”, HewlettPackard Journal, vol. 41, no. 3, pp. 48–59, 1990.

    Google Scholar 

  14. R.S. Hall, D. Heimbigner, A. van der Hoek, and A.L. Wolf, “An Architecture for Post-Development Configuration Management in a Wide-Area Network”, Proc. of 1997 Int'l Conf. on Distributed Computing Systems, Baltimore, MD, pp. 269–278, 1997.

    Google Scholar 

  15. R.W. Hall, A. Mathur, F. Jahanian, A. Prakash, and C. Rassmussen, “Corona: A Communication Server for Scalable, Reliable Group Collaboration Systems”, Proc. of CSCW '96 6th Conf, on Computer Supported Cooperative Work, Boston, MA, pp. 140–149,1996.

    Google Scholar 

  16. D. Heller, “The XView Notifier”, Unix World, pp. 123–133, 1990.

    Google Scholar 

  17. A.M. Julienne and B.Holtz, ToolTalk and Open Protocols: Inter-Application Communication: Prentice Hall, 1994.

    Google Scholar 

  18. B. Kantor and P. Lapsley, “Network News Transfer Protocol”, Internet Engineering Task Force, Request for Comments RFC 977, February 1986.

    Google Scholar 

  19. A. Kaplan and J.C. Wileden, “Formalization and Application of a Unifying Model for Name Management”, Proc. of ACM SIGSOFT '95 Third Symposium on the Foundations of Software Engineering, Washington, DC, pp. 161–172, 1995.

    Google Scholar 

  20. B. Krishnamurthy and D.S. Rosenblum, “Yeast: A General Purpose Event-Action System”, IEEE Trans. Software Engineering, vol. 21, no. 10, pp. 845–857,1995.

    Google Scholar 

  21. L. Lamport, “Time, Clocks and the Ordering of Events in a Distributed System”, Communications of the ACM, vol. 21, no. 7, pp. 558–565, 1978.

    Google Scholar 

  22. T.J. LeBlanc and J.M. Mellor-Crummey, “Debugging Parallel Programs with Instant Replay”, IEEE Trans. Computers, vol. C-36, no. 4, pp. 471–482,1987.

    Google Scholar 

  23. D.C. Luckham, D.P. Helmbold, D.L. Bryan, and M.A. Haberler, “Task Sequencing Language for Specifying Distributed Ada Systems (TSL-1)”, Proc. of PARLE-The Conf. on Parallel Architectures and Languages Europe, Volume II: Parallel Languages, pp. 444–463,1987.

    Google Scholar 

  24. D.C. Luckham, J.J. Kenney, L.M. Augustin, J. Vera, D. Bryan, and W. Mann, “Specification and Analysis of System Architecture Using Rapide”, IEEE Trans. Software Engineering, vol. 21, no. 4, pp. 336–355, 1995.

    Google Scholar 

  25. F. Mattern, “Virtual Time and Global States of Distributed Systems”, Proc. of Parallel and Distributed Algorithms, pp. 215–226, 1988.

    Google Scholar 

  26. R. Milner, Communication and Concurrency. Hemel Hempstead, Hertfordshire, UK: Prentice Hall International, 1989.

    Google Scholar 

  27. Object Management Group, “The Common Object Request Broker: Architecture and Specification”, revision 2.0, July 1995.

    Google Scholar 

  28. Object Management Group, “Common Object Services Specification, Volume I”, revision 1.0, March 1994.

    Google Scholar 

  29. V. Pratt, “Modeling Concurrency with Partial Orders”, Int'l Journal of Parallel Programming, vol. 15, no. 1, pp. 33–71, 1986.

    Google Scholar 

  30. J.M. Purtilo, “The POLYLITH Software Bus”, ACM Trans. Programming Languages and Systems, vol. 16, no. 1, pp. 151–174, 1994.

    Google Scholar 

  31. S.P. Reiss, “Connecting Tools Using Message Passing in the Field Environment”, IEEE Software, vol. 7, no. 4, pp. 57–66, 1990.

    Google Scholar 

  32. D.S. Rosenblum, “Specifying Concurrent Systems with TSL”, IEEE Software, vol. 8, no. 3, pp. 52–61, 1991.

    Google Scholar 

  33. R.W. Selby, A.A. Porter, D.C. Schmidt, and J. Berney, “Metric-Driven Analysis and Feedback Systems for Enabling Empirically Guided Software Development”, Proc. of 13th Int'l Conf. on Software Engineering, pp. 288–298, 1991.

    Google Scholar 

  34. J. Siegel, CORBA Fundamentals and Programming. New York, NY: Wiley, 1996.

    Google Scholar 

  35. TelecommunicationsInformationNetworkingArchitectureConsortium,“TINA Notification Service Description”, July 1996.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Mehdi Jazayeri Helmut Schauer

Rights and permissions

Reprints and permissions

Copyright information

© 1997 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Rosenblum, D.S., Wolf, A.L. (1997). A design framework for internet-scale event observation and notification. In: Jazayeri, M., Schauer, H. (eds) Software Engineering — ESEC/FSE'97. ESEC SIGSOFT FSE 1997 1997. Lecture Notes in Computer Science, vol 1301. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-63531-9_24

Download citation

  • DOI: https://doi.org/10.1007/3-540-63531-9_24

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-63531-4

  • Online ISBN: 978-3-540-69592-9

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics