Habilitation of Assist.-Prof. Mag. Dr. Christoph Georg Schütz

IT-Project Data Souvereignty in winter termin 2021/22

Business Intelligence: Washing Gold in Times of Information Overload

See all news.



You can find us here.

Modeling collaborative behavior using cooperation contracts

Authors: M. Schrefl, G. Kappel, P. Lang
Paper: Schr98a (1998)
Citation: Journal "Data & Knowledge Engineering (DKE)", Vol. 26, No. 2, June 1998, Elsevier Science B.V. (North-Holland), ISSN 0169-023X, pp. 191-224, 1998.
Resources: Copy  (In order to obtain the copy please send an email with subject  Schr98a  to


Several objects exhibit collaborative behavior if they act together in answering a message they have received jointly. Collaborative behavior is defined by cooperation contracts which are established between several object classes and which declare a set of cooperative methods. A cooperative method is invoked by a cooperative message sent to a tuple of instances, one for each object class in the cooperation contract. This extends the traditional message passing paradigm which requires the receiver of a message to be a single object only.

Cooperation contracts offer several benefits for behavior modeling in object-oriented database design. Behavior provided by several object classes in concert needs not be dispersed and can be defined in a single place. Therefore, behavior designs become symmetric, better maintainable and better extensible.

Cooperation contracts can easily be made available as beneficial modeling construct in existing object-oriented database management systems by adding a few classes. This paper presents such an extension based on the commercial object-oriented database management system GemStone.

Keywords:multiple polymorphism, collaborative behavior modeling, cooperation contracts, object-oriented database design