Skip to main content

Abstracting object interactions using composition filters

  • Conference paper
  • First Online:
Object-Based Distributed Programming (ECOOP 1993)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 791))

Included in the following conference series:

Abstract

It is generally claimed that object-based models are very suitable for building distributed system architectures since object interactions follow the client-server model. To cope with the complexity of today's distributed systems, however, we think that high-level linguistic mechanisms are needed to effectively structure, abstract and reuse object interactions. For example, the conventional object-oriented model does not provide high-level language mechanisms to model layered system architectures. Moreover, we consider the message passing model of the conventional object-oriented model as being too low-level because it can only specify object interactions that involve two partner objects at a time and its semantics cannot be extended easily. This paper introduces Abstract Communication Types (ACTs), which are objects that abstract interactions among objects. ACTs make it easier to model layered communication architectures, to enforce the invariant behavior among objects, to reduce the complexity of programs by hiding the interaction details in separate modules and to improve reusability through the application of object-oriented principles to ACT classes. We illustrate the concept of ACTs using the composition filters model.

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. Agha et al, A Linguistic Framework for Dynamic Composition of Fault Tolerance Protocols, Working paper, Department of Computer Science, University of Illinois at Urbana-Campaign, 1992.

    Google Scholar 

  2. M. Aksit & A. Tripathi, Data Abstraction Mechanisms in Sina/ST, OOPSLA '88, pp. 265–275, September 1988.

    Google Scholar 

  3. M. Aksit, Abstract Communication Types, in On the Design of the Object Oriented Language Sina, Ph.D. Dissertation, Chapter 4, Department of Computer Science, University of Twente, The Netherlands, 1989.

    Google Scholar 

  4. M. Aksit, Atomic Delegations, in On the Design of the Object-Oriented Language Sina, Ph.D. Dissertation, Chapter 5, Department of Computer Science, University of Twente, The Netherlands, 1989.

    Google Scholar 

  5. M. Aksit, J.W. Dijkstra & A. Tripathi, Atomic Delegation: Object-oriented Transactions, IEEE Software, Vol. 8, No. 2, March 1991.

    Google Scholar 

  6. M. Aksit & L.M.J. Bergmans, Obstacles in Object-Oriented Software Development, OOPSLA '92, pp. 341–358, Vancouver, Canada.

    Google Scholar 

  7. M. Aksit, L. Bergmans & S. Vural, An Object-Oriented Language-Database Integration Model: The Composition-Filters Approach, ECOOP '92, LNCS 615, pp 372–395, Springer-Verlag, 1992.

    Google Scholar 

  8. M. Aksit & J. Bosch, Issues in Real-Time Language Design, NATO Advanced Study Institute on Real-Time Systems, Position paper to be published as LNCS, Springer-Verlag, Sint Maarten, October 1992.

    Google Scholar 

  9. J. Barber, Computational Reflection in Class-Based Object-Oriented Languages, OOPSLA '89, pp. 317–326, October 1989.

    Google Scholar 

  10. M. v.d. Bempt, Construction of Hierarchies in Distributed Computer Systems, M.Sc. Thesis, Department of Computer Science, University of Twente, The Netherlands, November 1991.

    Google Scholar 

  11. L.M.J. Bergmans, The Sina Distribution Model, M.Sc. Thesis, Department of Computer Science, University of Twente, The Netherlands, March 1990.

    Google Scholar 

  12. L. Bergmans, M. Aksit, K. Wakita & A. Yonezawa, An Object-Oriented Model for Extensible Synchronization and Concurrency Control, Memoranda Informatica 92-87, University of Twente, January 1992.

    Google Scholar 

  13. G. Booch, Object Oriented Design (with applications), Benjamin/Cummings Publishing Company, Inc., 1990.

    Google Scholar 

  14. R. H. Campbell & et al. Principles of Object-Oriented Operating System Design, Report UIUCDCS-R-89-1510, University of Illinois at Urbana-Champaign, USA.

    Google Scholar 

  15. P. Coad & E. Yourdon, Object-Oriented Analysis, 2nd Edition, Yourdon Press, 1991.

    Google Scholar 

  16. P. Coad & E. Yourdon, Object-Oriented Design, Yourdon Press, 1991.

    Google Scholar 

  17. D. de Champeaux, Object-Oriented Analysis and Top-Down Software Development, ECOOP '91, pp. 360–375, July 1991.

    Google Scholar 

  18. H. Dolfing, An Object Allocation Strategy for Sina, M.Sc. Thesis, Department of Computer Science, University of Twente, The Netherlands, November 1990.

    Google Scholar 

  19. N. Francez et al, Script: A Communication Abstraction Mechanism and Its Verification, Science of Computer Programming, 6, 1, pp. 35–88, 1986.

    Google Scholar 

  20. N. de Greef, Object-Oriented System Development, M.Sc. Thesis, Department of Computer Science, University of Twente, The Netherlands, 1991.

    Google Scholar 

  21. Haerder & A. Reuter, Principles of Transaction-Oriented Database Recovery, ACM Computing Surveys, Vol. 15, No. 4, pp. 287–317, December 1983.

    Google Scholar 

  22. R. Helm, I. Holland & D. Ganghopadhyay, Contracts: Specifying Behavioral Compositions in Object-Oriented Systems, OOPSLA '90, pp. 169–180, 1990.

    Google Scholar 

  23. I.M. Holland, Specifying Reusable Components Using Contracts, ECOOP '92, LNCS 615, pp. 287–308, Utrecht, June 1992.

    Google Scholar 

  24. Y. Honda & M. Tokoro, Soft Real-Time Programming Through Reflection, Int. Workshop on New Models for Software Architecture'92, Reflection and meta-Level Architecture, Yonezawa & Smith (eds), pp. 12–23, November 1992.

    Google Scholar 

  25. Y. Ichisugi, S. Matsuoka & A. Yonezawa, A Reflective Object-Oriented Concurrent Language Without a Run-Time Kernel, Int. Workshop on New Models for Software Architecture'92, Reflection and meta-Level Architecture, Yonezawa & Smith (eds), pp. 24–35, November 1992.

    Google Scholar 

  26. E. Jonge, Object-georienteerde Analyse, Ontwerp en Implementatie van een Batchdestillatiebesturing, M.Sc. Thesis, Department of Chemical Engineering, University of Twente, The Netherlands, January 1992.

    Google Scholar 

  27. J. Lamping, G. Kiczales, L. Rodriguez & E. Ruf, An Architecture for an Open Compiler, Int. Workshop on New Models for Software Architecture'92, Reflection and meta-Level Architecture, Yonezawa & Smith (eds), pp. 95–106, November 1992.

    Google Scholar 

  28. K. Lieberherr et al., Graph-Based Software Engineering: Concise Specifications of Cooperative Behavior, Northeastern University, Tech. Report: NU-CCS-91-14, September 1991.

    Google Scholar 

  29. H. Lieberman, Using Prototypical Objects to Implement Shared Behavior, OOPSLA '86, pp. 214–223, 1986.

    Google Scholar 

  30. K. Lieberherr & I. Holland, Assuring Good Style for Object-Oriented Programs, IEEE Software, pp. 38–48, September 1989.

    Google Scholar 

  31. P. Maes, Concepts and Experiments in Computational Reflection, OOPSLA '87, pp. 147–155, October 1987.

    Google Scholar 

  32. S. Pool & J. Bosch, ObjectComposer ICASE Environment, OOPSLA '92 conference demonstration, October 1992.

    Google Scholar 

  33. J. Rumbaugh et al., Object-Oriented Modeling and Design, Prentice-Hall, 1991.

    Google Scholar 

  34. B.C. Smith, Reflection and Semantics in a Procedural Language, MIT-LCS-TR-272, Mass. Ins. of Tech., Cambridge, MA, January 1982.

    Google Scholar 

  35. B. Tekinerdogan, The Design of a Framework for Object-Oriented Atomic Transactions, Draft M.Sc. Thesis, Department of Computer Science, University of Twente, The Netherlands, 1993.

    Google Scholar 

  36. A. Tripathi & M. Aksit, Communication, Scheduling and Resource Management in Sina, JOOP, Vol. 1, No. 4, November/December 1988, pp. 24–37.

    Google Scholar 

  37. Y. Yokote. The Apertos Reflective Operating System: The concept and its Implementation, OOPSLA'92, pp. 414–434, October 1992.

    Google Scholar 

  38. R. Wirfs-Brock et al., Responsibility-Driven Design, Prentice-Hall, 1990.

    Google Scholar 

  39. E. G. Zondag, Hierarchical Management of Distributed Objects, Memoranda Informatica 90-73, 1990.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Rachid Guerraoui Oscar Nierstrasz Michel Riveill

Rights and permissions

Reprints and permissions

Copyright information

© 1994 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Aksit, M., Wakita, K., Bosch, J., Bergmans, L., Yonezawa, A. (1994). Abstracting object interactions using composition filters. In: Guerraoui, R., Nierstrasz, O., Riveill, M. (eds) Object-Based Distributed Programming. ECOOP 1993. Lecture Notes in Computer Science, vol 791. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0017540

Download citation

  • DOI: https://doi.org/10.1007/BFb0017540

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-57932-8

  • Online ISBN: 978-3-540-48389-2

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics