IEEE Access (Jan 2021)

A Model to Enable the Reuse of Metadata-Based Frameworks in Adaptive Object Model Architectures

  • Eduardo Guerra,
  • Antonio De Oliveira Dias,
  • Luiz Gustavo D. O. Veras,
  • Ademar Aguiar,
  • Joelma Choma,
  • Tiago Silva Da Silva

DOI
https://doi.org/10.1109/ACCESS.2021.3087795
Journal volume & issue
Vol. 9
pp. 85124 – 85143

Abstract

Read online

The Adaptive Object Model (AOM) is an architectural style in which domain entity types are represented as instances that can be changed at runtime. It can be used to achieve higher flexibility in domain classes. Due to AOM entities having a distinct structure, they are not compatible with most popular frameworks, especially those that use reflection and code annotations. To solve such limitations, this study aims to propose a model that enables the reuse of frameworks designed for classic object-oriented domain models in an AOM application. The proposed model uses dynamically-generated adapters for AOM entities that encapsulate them in a class with the format expected by the frameworks. A reference implementation was developed in the Esfinge AOM RoleMapper framework to evaluate the viability of the proposed model. Initially, to evaluate the solution feasibility, a case study was carried out using the Hibernate framework. Further, an experiment was conducted to assess how the participants perceived the framework functionality reuse through the proposed model. The feasibility study revealed that the solution could be applied in a complex setting for the chosen object-relational mapping frame. It raised some difficulties that can be addressed in future studies. In the experiment, the development time did not present a significant difference compared to the competing approach. Despite the considerable learning curve, most participants considered that the proposed approach has more advantages than the alternative. Based on the evaluations, we can conclude that the proposed model can be successfully employed to use AOM entities with frameworks that were not designed for AOM applications. The possibility of reusing existing frameworks can reduce the effort required to adopt an AOM architecture and, consequently, be a facilitator in implementing more flexible and adaptive approaches.

Keywords