Nowadays, web services became one of the main alternatives for communication between software systems and even inside the components of the same application. In some domains, the change of requirements happens frequently, demanding flexibility from the architecture of the applications, and consequently also in the web services that they provide. In this context, the goal of this work is to provide an architecture that can be used for dynamic web services, allowing services to be changed and introduced at runtime. To fulfill these requirements this work proposes the usage of Adaptive Object Models (AOM) combined with existing web service framework, using dynamic adapters to integrate and decouple them. The framework Esfinge AOM Role Mapper received features to implement the behavioral part of the AOM model and to map the AOM rule objects with metadata to methods with code annotations in the dynamic adapters. The proposed architecture passes the adapters generated at runtime to the existing framework, which provide the web service based on its methods and code annotations. An evaluation based on a case study performed scenario-based tests to verify the architecture capability to create and change dynamic web services. Additionally, a modularity analysis verified the coupling between classes that use both frameworks. As a result, the proposed architectural solution was able to implement the dynamic web services in all the scenarios keeping the classes that handle the AOM model decoupled from the classes responsible for providing the web services. CCS Concepts • Software and its engineering → Object oriented frameworks.
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. Objective: To solve such limitations, this work aims to propose a model that enables the reuse of frameworks designed for classic object-oriented domain models in an AOM application. Methods: 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. Results: 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. Conclusion: 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.
scite is a Brooklyn-based organization that helps researchers better discover and understand research articles through Smart Citations–citations that display the context of the citation and describe whether the article provides supporting or contrasting evidence. scite is used by students and researchers from around the world and is funded in part by the National Science Foundation and the National Institute on Drug Abuse of the National Institutes of Health.
customersupport@researchsolutions.com
10624 S. Eastern Ave., Ste. A-614
Henderson, NV 89052, USA
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.
Copyright © 2024 scite LLC. All rights reserved.
Made with 💙 for researchers
Part of the Research Solutions Family.