Many concepts in object-oriented conceptual modelling have complex semantics that are unfortunately not precisely defined. This paper demonstrates that, with a few simple and formally defined concepts, one can define more complex concepts (such as, for example, aggregation) in a precise and formal way. The core concepts offer the possibility of layering modelling concepts: a particular pattern of simple lower-level concepts can be used to represent a single high-level concept. The advantage is that the high-level concept is defined in terms of the lower-level concepts. Because of their simplicity, the lower-level concepts are much easier to define formally. The high-level concept benefits from this formal definition: its own formal definition can be inferred from the formal definition of its constituent lower-level concepts. This layered approach can also be followed on a project-by-project basis by defining high-level concepts that are only applicable in the context of one particular project.
[1]
Monique Snoeck,et al.
Core modelling concepts to define aggregation
,
2001,
Obj. Logiciel Base données Réseaux.
[2]
Monique Snoeck,et al.
Object-Oriented Enterprise Modelling with MERODE
,
1999
.
[3]
Monique Snoeck,et al.
Existence Dependency: The Key to Semantic Integrity Between Structural and Behavioral Aspects of Object Types
,
1998,
IEEE Trans. Software Eng..
[4]
Joél Brunet.
An Enhanced Definition of Composition and its use for Abstraction
,
1998
.
[5]
James Ross,et al.
Information modeling - an object-oriented approach
,
1994,
Prentice Hall object-oriented series.
[6]
Brian Henderson-Sellers,et al.
What is this thing called aggregation?
,
1999,
Proceedings Technology of Object-Oriented Languages and Systems. TOOLS 29 (Cat. No.PR00275).
[7]
Alain Pirotte,et al.
An Aggregation Model and its C++ Implementation
,
1997,
OOIS.