Role-Based Adaptation of Structural Enterprise Reference Models to Application Models

Large software systems are in need of a construction plan to determine and define every concept and element used in order to not end up in complex, unusable and cost-intensive systems. Different modeling languages, like UML, support the development of these construction plans and visualize them for a system’s stakeholders. Reference models are a specific kind of construction plan that capture domain knowledge for reuse through adaptation. The actual benefit of reference models is their adaptivity towards a specific use case. They work as a blueprint and the users can apply their own adaptations to fit specific demands. In order to perform these adaptations, the user can rely on various tools and mechanisms [1,2]. Our approach is to combine these reference model adaptations with the concept of roles [3] to model the more dynamic parts and to separate the core elements (provided via the reference model) from user made adaptations. This leads to a strict separation of the two aspects – reuse and adaptation – within application model construction. The actual advantage of using roles as the sole adaptation mechanism is twofold: (a) the structure from the original reference model and the dynamics from roles can be combined to model the interface between structure and behavior, and (b) through the strict separation of these aspects it will be easier to react on evolution (new versions) of the reference model and easier to (re)adapt to new requirements and features. As a consequence, the roles enriched final application model can be used to describe systems in more detail, with different perspectives, and, if available, can be implemented with role supporting programming languages. But even without this step, the application model itself will provide valuable insights into the overall construction plan of a system through the combination of structure and behavior and a clear separation of relatively stable domain knowledge from its use case specific adaptation.

We will propose a clearly defined methodological approach to adapt a reference model into a user specified application model via roles. Our aim is to constitute and evaluate such an approach and establish it as a modeling paradigm for applying roles on reference models. This includes the development of a (formal) domain specific modeling language as well as tools to support the actual use of the new approach. Related topics are software development and evolution, software architecture, system and enterprise modeling.

[1] P. Fettke, P. Loos. „Classification of reference models: a methodology and its application“. In Information Systems and e-Business Management. 2003

[2] B. Hofreiter, C. Huemer, G. Kappel et al. „Inter-organizational reference models – May inter-organizational systems profit from reference modeling?“. In Business System Management and Engineering. 2012

[3] J. Almeida, G. Guizzardi and P. Santos. „Applying and extending a semantic foundation for role-related concepts in enterprise modelling“. In 12th IEEE International Enterprise Distributed Object Computing Conference. 2008