Principle of the object-oriented approach according to which a behavior (a function) of a system results from the cooperation between the objects it is composed of
Introduction to the notion
To guide the semantic aspect approach, the following principles are required:
- abstraction principle
- encapsulation principle;
- factorization principle;
- cooperation principle.
These four principles, which complete the list of the categories of representation, define the logic of the semantic approach. This first enables the semantic matter to be circumscribed; the second encourages you to take advantage of the categories of representation; the third specifies the parsimony principle (or Ockham’s razor) that applies to both modeler and scientist; the last one helps you to apprehend the system dimension, beyond the unit represented by the class.
We need a guide to tackle, beyond the class, the large sets and overall behaviors of a system. This principle is provided by the cooperation of objects: This principle can be read negatively, banning the writing of long accounts, describing how something is processed or how it functions with long action sequences. It is quite the reverse. The actions are distributed on the classes, respecting their semantics. The behavior of the system is achieved by letting the objects “live” and extend their activity.
The cooperation principle is, without a doubt, the most troubling of object logic. However, it reveals the power of object logic in approaching complexity.