Abstract
Conventional object-oriented modeling lacks support for representing the interaction between objects in a conceptually intuitive way — often dispersing the logic/control of interplay throughout the objects. We introduce the concept of an activity as an abstraction mechanism to model the interplay between objects.
Activities model how our human cognition organizes interaction into units of collective behavior. They are described as classes, allowing interaction to be modeled by such abstraction processes as generalization and aggregation.
At the analysis and design level activities are presented as a general modeling tool for describing the collective behavior of systems of objects. We also discuss how activities can be supported at the implementation level by extending existing language constructs in relation to object-oriented programming languages.
This research was supported in part by the Danish Natural Science Research Council, No. 9400911.
Preview
Unable to display preview. Download preview PDF.
References
Aksit, M., Wakita, K., Bosch, J., Bergmans, L., Yonezawa, A.: Abstracting Object Interactions Using Composition Filters. Proceedings of the ECOOP '93 Workshop on Object-based Distributed Processing, Guerraoui, R., Nierstrasz, O., Riveill, M. (Eds.), LNCS 791, Springer-Verlag, 1994.
Booch, G.: Object Oriented Analysis and Design with Applications. Benjamin/Cummings, 1994.
Chin, R. S., Chanson, S. T.: Distributed Object-Based Programming Systems. ACM Computing Surveys, Vol. 23, No. 1, 1991.
Dahl, O. J., Myhrhaug, B., Nygaard, K.: SIMULA 67 Common Base Language. Norwegian Computing Center, edition February 1984.
Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison Wesley, 1994.
Harrison, W., Ossher, H.: Subject-Oriented Programming (A Critique of Pure Objects). Proceedings of the Object-Oriented Programming Systems, Languages and Applications Conference, 1993.
Helm, R., Holland, I. M., Gangopadhyay, D.: Contracts: Specifying Behavioral Compositions in Object-oriented Systems. Proceedings of the European Conference on Object-Oriented Programming / Object-Oriented Programming Systems, Languages and Applications Conference, 1990.
Holland, I. M.: Specifying Reusable Components Using Contracts. Proceedings of the European Conference on Object-Oriented Programming, 1992.
Jacobson, I., Christerson, M., Jonsson, P., Overgaard, G.: Object-Oriented Software Engineering, A Use Case Driven Approach. Addison Wesley, 1992.
Johnson, R. E., Foote, B.: Designing Reusable Classes. Journal of Object-Oriented Programming, 1988.
Kristensen, B. B.: Transverse Classes & Objects in Object-Oriented Analysis, Design, and Implementation. Journal of Object-Oriented Programming, 1993.
Kristensen, B. B.: Transverse Activities: Abstractions in Object-Oriented Programming. Proceedings of International Symposium on Object Technologies for Advanced Software (ISOTAS'93), 1993.
Kristensen, B. B., May, D. C. M.: Modeling Activities in C++. Proceedings of International Conference on Technology of Object-Oriented Languages and Systems, 1994.
Kristensen, B. B., May, D. C. M.: Modeling with Activities: Abstractions for Collective Behavior. R 96-2001, IES, Aalborg University, 1996.
Kristensen, B. B., K. Østerbye: Roles: Conceptual Abstraction Theory & Practical Language Issues. Accepted for publication in a Special Issue of Theory and Practice of Object Systems (TAPOS) on Subjectivity in Object-Oriented Systems, 1996.
Madsen, O. L., MØller-Pedersen, B., Nygaard, K.: Object Oriented Programming in the Beta Programming Language. Addison Wesley 1993.
May, D. C. M.: Frameworks: An Excursion into Metalevel Design and Other Discourses. Department of Computer Science, Monash University, 1994.
Nassi, I., Shneiderman, B.: Flowchart Techniques for Structured Programming. Sigplan Notices, 8 (8), 1973.
Rumbaugh, J.: Relations as Semantic Constructs in an Object-Oriented Language. Proceedings of the Object-Oriented Programming Systems, Languages and Applications Conference, 1987.
Rumbaugh, J., Blaha, M., Premerlani, W., Eddy, F., Lorensen, W.: Object-Oriented Modeling and Design. Prentice-Hall 1991.
Stroustrup, B.: The C++ Programming Language. 2/E, Addison-Wesley 1991.
Tennent, R. D.: Principles of Programming Languages. Prentice Hall, 1981.
Wirfs-Brock, R., Wilkerson, B., Wiener, L.: Designing Object-Oriented Software. Prentice Hall, 1990.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Kristensen, B.B., May, D.C.M. (1996). Activities: Abstractions for collective behavior. In: Cointe, P. (eds) ECOOP ’96 — Object-Oriented Programming. ECOOP 1996. Lecture Notes in Computer Science, vol 1098. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0053074
Download citation
DOI: https://doi.org/10.1007/BFb0053074
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-61439-5
Online ISBN: 978-3-540-68570-8
eBook Packages: Springer Book Archive