70 likes | 87 Views
Explore the concept of Orthogonal Classification (OCA) for model support at runtime. Understand the basic principles of OCA through examples. Discuss the distinction between linguistic and logical "instance of" relationships, multi-level models, and open issues in the field.
E N D
Coherent Support for Models at Run-Time through Orthogonal Classification Colin Atkinson and Matthias Gutheil University of Mannheim, Germany Presented by Olivier Barais and Franck Fleurey
Talk outline • Introduction to OCA • Basic principles of OCA • Multi-level model example • Open issues
Introduction • With UML, the typing relationship is generally a linguistic type relationship • It is not so clear in MDE • This paper proposes to distinguish between two kinds of “instance of” relationships • A linguistic “instance of” relationship • A logical or ontological “instance of” relationship
? Basic principles of OCA • Linguistic level and logical level are orthogonal • Limited to three linguistic levels • Issue: Why do you need PLM? • Could we have multiple “instance of” relationship at the same level?
Multi-level model example Clabject Fields ?
Issues on inheritance and classifiction of clabjects • Simple inheritance vs. Multiple inheritance • Can a clabject have a « linguistic instance of » relationship with several clabjects • Simple classification vs. Multiple classification • Can a clabject have a « logical instance of » relationship with several clabjects • Static inheritance vs. Dynamic inherithance • Can a clabject change its « linguistic instance of » relationship • Static classification vs. Dynamic classification • Can a clabject change its « logical instance of » relationship
Open Issues • Benefits of using OCA for models@Runtime • Separate clearly the two « instance of » relationships • Useful @ runtime if you can change dynamically the logical “instance of” clabjects • What about dynamic typing? • Nevertheless, introduce the same fields at different levels? • Do we really need PLM model ? • Perhaps, could we design a typical models @ runtime app with OCA