A role model and its metaclass implementation

作者:

Highlights:

摘要

The role generic relationship for conceptual modeling relates a class of objects (e.g., persons) and classes of roles (e.g., students, employees) for those objects. The role relationship is meant to capture dynamic aspects of real-world objects while the usual generalization relationship deals with their more static aspects. Therefore, to take into account both static and dynamic aspects, object languages and systems must somehow support both relationships. This paper presents a generic role model where the semantics of roles is defined at both the class and the instance levels. It discusses the interaction between the role relationship and generalization, and it attempts to clarify some of their similarities and differences. The introduction of roles as an abstraction mechanism in the overall software development lifecycle is reviewed. The paper then proposes a comprehensive implementation for the role relationship, with the help of a metaclass mechanism. Our implementation is illustrated along the lines of the VODAK modeling language. Thus, the semantics of our role model is implemented in a metaclass that is a template to be instantiated in applications. Application classes are then created as instances of the metaclass and they are thereby endowed with structure and behavior consistent with the semantics of roles.

论文关键词:Conceptual modeling,Role model,Object models,Metaclass mechanisms

论文评审过程:Received 2 October 2001, Revised 21 March 2002, Accepted 21 February 2003, Available online 6 May 2003.

论文官网地址:https://doi.org/10.1016/S0306-4379(03)00029-2