API2MoL: Automating the building of bridges between APIs and Model-Driven Engineering

Javier Luis Cánovas Izquierdo 1 Frédéric Jouault 1 Jordi Cabot 1 Jesus Garcia Molina 2
1 ATLANMOD - Modeling Technologies for Software Production, Operation, and Evolution
LINA - Laboratoire d'Informatique de Nantes Atlantique, Département informatique - EMN, Inria Rennes – Bretagne Atlantique
2 Modelum
Modelum - Departamento de Informática y Sistemas [Murcia]
Abstract : Context: A software artefact typically makes its functionality available through a specialized Application Programming Interface (API) describing the set of services offered to client applications. In fact, building any software system usually involves managing a plethora of APIs, which complicates the development process. In Model-Driven Engineering (MDE), where models are the key elements of any software engineering activity, this API management should take place at the model level. Therefore, tools that facilitate the integration of APIs and MDE are clearly needed. Objective: Our goal is to automate the implementation of API-MDE bridges for supporting both the creation of models from API objects and the generation of such API objects from models. In this sense, this paper presents the API2MoL approach, which provides a declarative rule-based language to easily write mapping definitions to link API specifications and the metamodel that represents them. These definitions are then executed to convert API objects into model elements or vice versa. The approach also allows both the metamodel and the mapping to be automatically obtained from the API specification (bootstrap process). Method: After implementing the API2MoL engine, its correctness was validated using several APIs. Since APIs are normally large, we then developed a tool to implement the bootstrap process, which was also validated. Results: We provide a toolkit (language and bootstrap tool) for the creation of bridges between APIs and MDE. The current implementation focuses on Java APIs, although its adaptation to other statically typed object-oriented languages is straightforward. The correctness, expressiveness and completeness of the approach have been validated with the Swing, SWT and JTwitter APIs. Conclusion: API2MoL frees developers from having to manually implement the tasks of obtaining models from API objects and generating such objects from models. This helps to manage API models in MDE-based solutions.
Type de document :
Article dans une revue
Information and Software Technology, Elsevier, 2012, 54 (3), pp.257-273. 〈10.1016/j.infsof.2011.09.006〉
Liste complète des métadonnées

Littérature citée [26 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/hal-00642154
Contributeur : Javier Canovas <>
Soumis le : jeudi 17 novembre 2011 - 15:23:30
Dernière modification le : vendredi 22 juin 2018 - 01:15:39
Document(s) archivé(s) le : samedi 18 février 2012 - 02:32:53

Fichier

api2mol-CanovasJouaultCabotGar...
Fichiers produits par l'(les) auteur(s)

Identifiants

Citation

Javier Luis Cánovas Izquierdo, Frédéric Jouault, Jordi Cabot, Jesus Garcia Molina. API2MoL: Automating the building of bridges between APIs and Model-Driven Engineering. Information and Software Technology, Elsevier, 2012, 54 (3), pp.257-273. 〈10.1016/j.infsof.2011.09.006〉. 〈hal-00642154〉

Partager

Métriques

Consultations de la notice

874

Téléchargements de fichiers

342