Want to read any of the papers below, and you can’t access the online publication? Just drop me a line, and I’ll send you a preprint 🙂
ConferenceAbel Gómez, Markel Iglesias-Urkia, Aitor Urbieta, Jordi Cabot
Proceedings of the 23rd ACM/IEEE International Conference on Model Driven Engineering Languages and Systems, Association for Computing Machinery, Virtual Event, Canada, 2020, ISBN: 9781450370196.
In this Internet of Things (IoT) era, our everyday objects have evolved into the so-called cyber-physical systems (CPS). The use and deployment of CPS has especially penetrated the industry, giving rise to the Industry 4.0 or Industrial IoT (IIoT). Typically, architectures in IIoT environments are distributed and asynchronous, communication being guided by events such as the publication of (and corresponding subscription to) messages.While these architectures have some clear advantages (such as scalability and flexibility), they also raise interoperability challenges among the agents in the network. Indeed, the knowledge about the message content and its categorization (topics) gets diluted, leading to consistency problems, potential losses of information and complex processing requirements on the subscriber side to try to understand the received messages.In this paper, we present our proposal relying on AsyncAPI to automate the design and implementation of these architectures using model-based techniques for the generation of (part of) event-driven infrastructures. We have implemented our proposal as an open-source tool freely available online.
Full Text AvailablePreprint
Journal ArticleMarkel Iglesias-Urkia, Abel Gómez, Diego Casado-Mansilla, Aitor Urbieta
In: Personal and Ubiquitous Computing, 2020, ISSN: 1617-4917.
Similarly to the standardization effort initiated for the World Wide Web in the 1990s, the World Wide Web Consortium is currently working on the Web of Things (WoT) specification. This initiative aims to tackle current fragmentation in the so-called Internet of Things by using existing Web standards. The ultimate goal is to cope with the increasing number of devices that are being connected to the Internet and to enable interoperability among them. On the other hand, Model-Driven Engineering (MDE) approaches make use of models to raise the abstraction level with the objective of accelerating the software development process, enabling design and code reuse, and increasing software quality.This work proposes to apply MDE techniques to enable the efficient development of WoT servients. Based on the WoT Thing Description specification, this work proposes both a textual-based concrete syntax and a model-based abstract syntax—both fully compliant with the WoT specification—that enable the generation of WoT servients in C++ with CoAP communication capabilities. This proposal is implemented by a tool that covers the whole development process, which is publicly available under an open source license.
Full Text Available
Journal ArticleAbel Gómez, Xabier Mendialdua, Konstantinos Barmpis, Gábor Bergmann, Jordi Cabot, Xabier de Carlos, Csaba Debreceni, Antonio Garmendia, Dimitrios S. Kolovos, Juan de Lara
In: Software and Systems Modeling, 19 (5), pp. 1229–1261, 2020, ISSN: 1619-1374.
Scalability in modeling has many facets, including the ability to build larger models and domain-specific languages (DSLs) efficiently. With the aim of tackling some of the most prominent scalability challenges in model-based engineering (MBE), the MONDO EU project developed the theoretical foundations and open-source implementation of a platform for scalable modeling and model management. The platform includes facilities for building large graphical DSLs, for splitting large models into sets of smaller interrelated fragments, to index large collections of models to speed-up their querying, and to enable the collaborative construction and refinement of complex models, among other features. This paper reports on the tools provided by MONDO that Ikerlan, a medium-sized technology center which in the last decade has embraced the MBE paradigm, adopted in order to improve their processes. This experience produced as a result a set of model editors and related technologies that fostered collaboration and scalability in the development of wind turbine control applications. In order to evaluate the benefits obtained, an on-site evaluation of the tools was performed. This evaluation shows that scalable MBE technologies give new growth opportunities to small- and medium-sized organizations.
Full Text Available
Journal ArticleAlexandra Mazak, Sabine Wolny, Abel Gómez, Jordi Cabot, Manuel Wimmer, Gerti Kappel
In: Journal of Object Technology, 19 (3), pp. 3:1-15, 2020, ISSN: 1660-1769, (Special Issue dedicated to Martin Gogolla on his 65th Birthday).
Full Text AvailableOpen Access
ConferenceMarkel Iglesias-Urkia, Abel Gómez, Diego Casado-Mansilla, Aitor Urbieta
Proceedings of the 9th International Conference on the Internet of Things, IoT 2019 ACM, New York, 2019, ISBN: 978-1-4503-7207-7.
One of the main ongoing standardization efforts of the Internet of Things (IoT) at the application layer is the Web of Things (WoT), which aims to enable interoperability using already existing standards. However, keeping up the design and implementation of IoT applications with the exponentially increasing number of devices being interconnected is costly in workforce resources. Model-Driven Engineering (MDE) approaches increase the level of abstraction using models, and allowing to reuse design and code. This lowers the use of resources for implementing solutions seamlessly. This is why in this work we implement a MDE approach based on the WoT, allowing easy WoT-based device generation. Besides, automated code generation is applied to reduce manual tasks even further. Using the Eclipse Modelling Framework (EMF) and its associated plugins, we provide a way of describing models graphically and generate the code automatically, reducing development and testing time.
ConferenceAndrey Sadovykh, Dragos Truscan, Wasif Afzal, Hugo Bruneliere, Adnan Ashraf, Abel Gómez, Alexandra Espinosa, Gunnar Widforss, Pierluigi Pierini, Elizabeta Fourneret, Alessandra Bagnato
Software Technology: Methods and Tools. TOOLS 2019, 11771 , Lecture Notes in Computer Science Springer International Publishing, Cham, 2019, ISBN: 978-3-030-29852-4.
MegaM@Rt2 Project is a major European effort towards the model-driven engineering of complex Cyber-Physical systems combined with runtime analysis. Both areas are dealt within the same methodology to enjoy the mutual benefits through sharing and tracking various engineering artifacts. The project involves 27 partners that contribute with diverse research and industrial practices addressing real-life case study challenges stemming from 9 application domains. These partners jointly progress towards a common framework to support those application domains with model-driven engineering, verification, and runtime analysis methods. In this paper, we present the motivation for the project, the current approach and the intermediate results in terms of tools, research work and practical evaluation on use cases from the project. We also discuss outstanding challenges and proposed approaches to address them.
Journal ArticleAndrey Sadovykh, Wasif Afzal, Dragos Truscan, Pierluigi Pierini, Hugo Bruneliere, Alessandra Bagnato, Abel Gómez, Jordi Cabot, Orlando Avila-García
In: Microprocessors and Microsystems, 71 , pp. 102848, 2019, ISSN: 0141-9331.
MegaM@Rt2 is a large European project dedicated to the provisioning of a model-based methodology and supporting tooling for system engineering at a wide scale. It notably targets the continuous development and runtime validation of such complex systems by developing a framework addressing a large set of engineering processes and application domains. This collaborative project involves 27 partners from 6 different countries, 9 industrial case studies as well as over 30 different software tools from project partners (and others). In the context of the MegaM@Rt2 project, we elaborated on a pragmatic model-driven approach to specify the case study requirements, design the high-level architecture of a framework, perform the gap analysis between the industrial needs and current state-of-the-art, and plan a first framework development roadmap accordingly. The present paper describes the generic tool-supported approach that came out as a result. It also details its concrete application in the MegaM@Rt2 project. In particular, we discuss the collaborative modeling process, the requirement definition tooling, the approach for components modeling, as well as the traceability and document generation. In addition, we show how we used the proposed solution to specify the MegaM@Rt2 framework’s conceptual tool components centered around three complementary tool sets: the MegaM@Rt2 System Engineering Tool Set, the MegaM@Rt2 Runtime Analysis Tool Set and the MegaM@Rt2 Model & Traceability Management Tool Set. The paper ends with a discussion on the practical lessons we have learned from this work so far.
ConferenceGwendal Daniel, Abel Gómez, Jordi Cabot
2019 13th International Conference on Research Challenges in Information Science (RCIS), IEEE, 2019, ISBN: 978-1-7281-4844-1.
The growing need to store and manipulate large volumes of data has led to the blossoming of various families of data storage solutions. Software modelers can benefit from this growing diversity to improve critical parts of their applications, using a combination of different databases to store the data based on access, availability, and performance requirements. However, while the mapping of conceptual schemas to relational databases is a well-studied field of research, there are few works that target the role of conceptual modeling in a multiple and diverse data storage settings. This is particularly true when dealing with the mapping of constraints in the conceptual schema. In this paper we present the UMLto[No]SQL approach that maps conceptual schemas expressed in UML/OCL into a set of logical schemas (either relational or NoSQL ones) to be used to store the application data according to the data partition envisaged by the designer. Our mapping covers as well the database queries required to implement and check the model’s constraints. UMLto[No]SQL takes care of integrating the different data storages, and provides a modeling layer that enables a transparent manipulation of the data using conceptual level information.
ConferenceAndrey Sadovykh, Alessandra Bagnato, Dragos Truscan, Pierluigi Pierini, Hugo Bruneliere, Abel Gómez, Jordi Cabot, Orlando Avila-García, Wasif Afzal
Proceedings of 6th International Conference in Software Engineering for Defence Applications, 925 , Advances in Intelligent Systems and Computing Springer International Publishing, Cham, 2019, ISBN: 978-3-030-14687-0.
MegaM@Rt2 is a large European project dedicated to the provisioning of a model-based methodology and supporting tooling for system engineering at a wide scale. It notably targets the continuous development and runtime validation of such complex systems by developing the MegaM@Rt2 framework to address a large set of engineering processes and application domains. This collaborative project involves 27 partners from 6 different countries, 9 industrial case studies as well as over 30 different tools from project partners (and others). In the context of the project, we opted for a pragmatic model-driven approach in order to specify the case study requirements, design the high-level architecture of the MegaM@Rt2 framework, perform the gap analysis between the industrial needs and current state-of-the-art, and to plan a first framework development roadmap accordingly. The present paper concentrates on the concrete examples of the tooling approach for building the framework architecture. In particular, we discuss the collaborative modeling, requirements definition tooling, approach for components modeling, traceability and document generation. The paper also provides a brief discussion of the practical lessons we have learned from it so far.
Journal ArticleAbel Gómez, Ricardo J. Rodríguez, María-Emilia Cambronero, Valentín Valero
In: Software & Systems Modeling, 18 (5), pp. 2973-3003, 2019, ISSN: 1619-1374.
UML sequence diagrams are used to graphically describe the message interactions between the objects participating in a certain scenario. Combined fragments extend the basic functionality of UML sequence diagrams with control structures, such as sequences, alternatives, iterations, or parallels. In this paper, we present a UML profile to annotate sequence diagrams with combined fragments to model timed Web services with distributed resources under the publish/subscribe paradigm. This profile is exploited to automatically obtain a representation of the system based on Colored Petri nets using a novel model-to-model (M2M) transformation. This M2M transformation has been specified using QVT and has been integrated in a new add-on extending a state-of-the-art UML modeling tool. Generated Petri nets can be immediately used in well-known Petri net software, such as CPN Tools, to analyze the system behavior. Hence, our model-to-model transformation tool allows for simulating the system and finding design errors in early stages of system development, which enables us to fix them at these early phases and thus potentially saving development costs.
Full Text AvailableOpen Access
ConferenceHugo Bruneliere, Romina Eramo, Abel Gómez, Valentin Besnard, Jean Michel Bruel, Martin Gogolla, Andreas Kästner, Adrian Rutle
Software Technologies: Applications and Foundations, 11176 , Springer International Publishing, Cham, 2018, ISBN: 978-3-030-04771-9.
This paper reports on the first Workshop on Model-Driven Engineering for Design-Runtime Interaction in Complex Systems (also called MDE@DeRun 2018) that took place during the STAF 2018 week. It explains the main objectives, content and results of the event. Based on these, the paper also proposes initial directions to explore for further research in the workshop area.
ConferenceAbel Gómez, Jordi Cabot, Manuel Wimmer
Conceptual Modeling, 11157 , Springer International Publishing, Cham, 2018, ISBN: 978-3-030-00847-5.
Existing modeling tools provide direct access to the most current version of a model but very limited support to inspect the model state in the past. This typically requires looking for a model version (usually stored in some kind of external versioning system like Git) roughly corresponding to the desired period and using it to manually retrieve the required data. This approximate answer is not enough in scenarios that require a more precise and immediate response to temporal queries like complex collaborative co-engineering processes or runtime models.
In this paper, we reuse well-known concepts from temporal languages to propose a temporal metamodeling framework, called TemporalEMF, that adds native temporal support for models. In our framework, models are automatically treated as temporal models and can be subjected to temporal queries to retrieve the model contents at different points in time. We have built our framework on top of the Eclipse Modeling Framework (EMF). Behind the scenes, the history of a model is transparently stored in a NoSQL database. We evaluate the resulting TemporalEMF framework with an Industry 4.0 case study about a production system simulator. The results show good scalability for storing and accessing temporal models without requiring changes to the syntax and semantics of the simulator.
ConferenceAbel Gómez, Connie U. Smith, Amy Spellmann, Jordi Cabot
System Analysis and Modeling. Languages, Methods, and Tools for Systems Engineering, 11150 , Lecture Notes in Computer Science Springer International Publishing, Cham, 2018, ISBN: 978-3-030-01042-3.
Performance problems such as sluggish response time or low throughput are especially annoying, frustrating and noticeable to users. Fixing performance problems after they occur results in unplanned expenses and time. Our vision is an MDE-intensive software development paradigm for complex systems in which software designers can evaluate performance early in development, when the analysis can have the greatest impact. We seek to empower designers to do the analysis themselves by automating the creation of performance models out of standard design models. Such performance models can be automatically solved, providing results meaningful to them. In our vision, this automation can be enabled by using model-to-model transformations: First, designers create UML design models embellished with the Modeling and Analysis of Real Time and Embedded systems (MARTE) design specifications; and secondly, such models are transformed to automatically solvable performance models by using QVT. This paper reports on our first experiences when implementing these two initial activities.
ConferenceAbel Gómez, Orlando Avila-García, Jordi Cabot, José Ramón Juárez, Aitor Urbieta, Eugenio Villar
Actas de las XXIII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2018), Sistedes, 2018.
A major challenge for the European electronic components and systems (ECS) industry is to increase productivity and reduce costs while ensuring safety and quality. Model-Driven Engineering (MDE) principles have already shown valuable capabilities for the development of ECSs but still need to scale to support real-world scenarios implied by the full deployment and use of complex electronic systems, such as Cyber-Physical Systems, and real-time systems. Moreover, maintaining efficient traceability, integration and communication between fundamental stages of the development lifecycle (i.e., design time and runtime) is another challenge to the scalability of MDE tools and techniques. This paper presents “MegaModelling at runtime — Scalable model-based framework for continuous development and runtime validation of complex systems” (MegaM@Rt2), an ECSEL–JU project whose main goal is to address the above mentioned challenges. Driven by both large and small industrial enterprises, with the support of research partners and technology providers, MegaM@Rt2 aims to deliver a framework of tools and methods for: (i) system engineering/design and continuous development,(ii) related runtime analysis, and (iii) global model and traceability management.
Journal ArticleWasif Afzal, Hugo Bruneliere, Davide Di Ruscio, Andrey Sadovykh, Silvia Mazzini, Eric Cariou, Dragos Truscan, Jordi Cabot, Abel Gómez, Jesús Gorroñogoitia, Luigi Pomante, Pavel Smrz
In: Microprocessors and Microsystems, 61 , pp. 86 - 95, 2018, ISSN: 0141-9331.
A major challenge for the European electronic industry is to enhance productivity by ensuring quality of development, integration and maintenance while reducing the associated costs. Model-Driven Engineering (MDE) principles and techniques have already shown promising capabilities, but they still need to scale up to support real-world scenarios implied by the full deployment and use of complex electronic components and systems. Moreover, maintaining efficient traceability, integration, and communication between two fundamental system life cycle phases (design time and runtime) is another challenge requiring the scalability of MDE. This paper presents an overview of the ECSEL1 project entitled “MegaModelling at runtime – Scalable model-based framework for continuous development and runtime validation of complex systems” (MegaM@Rt2), whose aim is to address the above mentioned challenges facing MDE. Driven by both large and small industrial enterprises, with the support of research partners and technology providers, MegaM@Rt2 aims to deliver a framework of tools and methods for: 1) system engineering/design and continuous development, 2) related runtime analysis and 3) global models and traceability management. Diverse industrial use cases (covering strategic domains such as aeronautics, railway, construction and telecommunications) will integrate and demonstrate the validity of the MegaM@Rt2 solution. This paper provides an overview of the MegaM@Rt2 project with respect to its approach, mission, objectives as well as to its implementation details. It further introduces the consortium as well as describes the work packages and few already produced deliverables.
Full Text AvailablePreprint
ConferenceAbel Gómez, Xabier Mendialdua, Gábor Bergmann, Jordi Cabot, Csaba Debreceni, Antonio Garmendia, Dimitrios S. Kolovos, Juan de Lara, Salvador Trujillo
Modelling Foundations and Applications: 13th European Conference, ECMFA 2017, Held as Part of STAF 2017, Marburg, Germany, July 19-20, 2017, Proceedings, 10376 , Lecture Notes in Computer Science Springer International Publishing, 2017, ISBN: 978-3-319-61482-3.
Scalability in modeling has many facets, including the ability to build larger models and domain specific languages (DSLs) efficiently. With the aim of tackling some of the most prominent scalability challenges in Model-based Engineering (MBE), the MONDO EU project developed the theoretical foundations and open-source implementation of a platform for scalable modeling and model management. The platform includes facilities for building large DSLs, for splitting large models into sets of smaller interrelated fragments, and enables modelers to construct and refine complex models collaboratively, among other features.
ConferenceAbel Gómez, José Merseguer
Actas de las XXI Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2016), SISTEDES, Salamanca, Spain, 2016.
Tags: Computer Aided Design (CASE), Data-Intensive Applications (DIA), DICE, Model-Driven Engineering (MDE), Modeling and Analysis of Real Time and Embedded systems (MARTE), Petri net (PN), Simulation, UML Profiles, Unified Modeling Language (UML)| | |
Las aplicaciones intensivas en datos (AID) que usan tecnologías de Big Data se están convirtiendo en una parte importante del mercado de desarrollo de software. Sin embargo, las técnicas --y su automatización-- para el asesoramiento de la calidad para este tipo de aplicaciones es claramente insuficiente. El proyecto DICE H2020 tiene como objetivo definir metodologías y crear herramientas para desarrollar y monitorizar AID mediante técnicas de ingeniería dirigida por modelos. En este artículo presentamos un componente clave del proyecto DICE: su herramienta de simulación. Esta herramienta es capaz de evaluar el rendimiento de AID simulando su comportamiento mediante modelos de redes de Petri. Como complemento, existe a disposición un vídeo mostrando la herramienta en http://tiny.cc/z1qzay.
ConferenceAbel Gómez, José Merseguer, Elisabetta Di Nitto, Damian A. Tamburri
Proceedings of the 2nd International Workshop on Quality-Aware DevOps, co-located with ACM SIGSOFT International Symposium on Software Testing and Analysis 2016 (ISSTA'16), QUDOS 2016 ACM, New York, NY, USA, 2016, ISBN: 978-1-4503-4411-1, (Saarbrücken, Germany).
Tags: Computer Aided Design (CASE), Data-Intensive Applications (DIA), DICE, Model-Driven Engineering (MDE), Modeling and Analysis of Real Time and Embedded systems (MARTE), UML Profiles, Unified Modeling Language (UML)| | |
Data intensive applications that leverage Big Data technologies are rapidly gaining market trend. However, their design and quality assurance are far from satisfying software engineers needs. In fact, a CapGemini research shows that only 13% of organizations have achieved full-scale production for their Big Data implementations. We aim at addressing an early design and a quality evaluation of data intensive applications,being our goal to help software engineers on assessing quality metrics, such as the response time of theapplication. We address this goal by means of a quality analysis tool-chain.At the core of the tool, we are developing a Profile that converts the Unified Modeling Language into a domain specific modeling language for quality evaluation of data intensive applications.
ConferenceHamza Ed-douibi, Javier Luis Cánovas Izquierdo, Abel Gómez, Massimo Tisi, Jordi Cabot
Proceedings of the 31st Annual ACM Symposium on Applied Computing, SAC '16 ACM, New York, NY, USA, 2016, ISBN: 978-1-4503-3739-7, (Pisa, Italia).
In the last years, there has been an increasing interest for Model-Driven Engineering (MDE) solutions in the Web. Web-based modeling solutions can leverage on better support for distributed management (i.e., the Cloud) and collaboration. However, current modeling environments and frameworks are usually restricted to desktop-based scenarios and therefore their capabilities to move to the Web are still very limited. In this paper we present an approach to generate Web APIs out of models, thus paving the way for managing models and collaborating on them online. The approach, called EMF-REST, takes Eclipse Modeling Framework (EMF) data models as input and generates Web APIs following the REST principles and relying on well-known libraries and standards, thus facilitating its comprehension and maintainability. Also, EMF-REST integrates model and Web-specific features to provide model validation and security capabilities, respectively, to the generated API.
ConferenceAbel Gómez, Massimo Tisi, Gerson Sunyé, Jordi Cabot
Fundamental Approaches to Software Engineering: 18th International Conference, FASE 2015, Held as Part of the European Joint Conferences on Theory and Practice of Software, ETAPS 2015, London, UK, April 11-18, 2015, Proceedings, 9033 , Lecture Notes in Computer Science Springer Berlin Heidelberg, 2015, ISBN: 978-3-662-46675-9.
The progressive industrial adoption of Model-Driven Engineering (MDE) is fostering the development of large tool ecosystems like the Eclipse Modeling project. These tools are built on top of a set of base technologies that have been primarily designed for small-scale scenarios, where models are manually developed. In particular, efficient runtime manipulation for large-scale models is an under-studied problem and this is hampering the application of MDE to several industrial scenarios.
In this paper we introduce and evaluate a map-based persistence model for MDE tools. We use this model to build a transparent persistence layer for modeling tools, on top of a map-based database engine. The layer can be plugged into the Eclipse Modeling Framework, lowering execution times and memory consumption levels of other existing approaches. Empirical tests are performed based on a typical industrial scenario, model-driven reverse engineering, where very large software models originate from the analysis of massive code bases. The layer is freely distributed and can be immediately used for enhancing the scalability of any existing Eclipse Modeling tool.
Journal ArticleAbel Gómez, M. Carmen Penadés, José H. Canós, Marcos R.S. Borges, Manuel Llavador
In: Information and Software Technology, 56 (9), pp. 1101 - 1121, 2014, ISSN: 0950-5849, (Special Sections from “Asia-Pacific Software Engineering Conference (APSEC), 2012” and “ Software Product Line conference (SPLC), 2012”).
Advances in customization have highlighted the need for tools supporting variable content document management and generation in many domains. Current tools allow the generation of highly customized documents that are variable in both content and layout. However, most frameworks are technology-oriented, and their use requires advanced skills in implementation-related tools, which means their use by end users (i.e. document designers) is severely limited.
Starting from past and current trends for customized document authoring, our goal is to provide a document generation alternative in which variants are specified at a high level of abstraction and content reuse can be maximized in high variability scenarios.
Based on our experience in Document Engineering, we identified areas in the variable content document management and generation field open to further improvement. We first classified the primary sources of variability in document composition processes and then developed a methodology, which we called DPL – based on Software Product Lines principles – to support document generation in high variability scenarios.
In order to validate the applicability of our methodology we implemented a tool – DPLfw – to carry out DPL processes. After using this in different scenarios, we compared our proposal with other state-of-the-art tools for variable content document management and generation.
The DPLfw showed a good capacity for the automatic generation of variable content documents equal to or in some cases surpassing other currently available approaches. To the best of our knowledge, DPLfw is the only framework that combines variable content and document workflow facilities, easing the generation of variable content documents in which multiple actors play different roles.
ConferenceAbel Gómez, M. Carmen Penadés, José H. Canós
Actas de las XVII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2012). Almería, septiembre de 2012., SISTEDES, 2012, ISBN: 978-84-15487-28-9.
Tags: Darwin Information Typing Architecture (DITA), Document Product Line (DPL), DPLfw, Feature Modeling (FM), Model-Driven Engineering (MDE), Software Product Lines (SPL), Variable Data Printing (VDP)| | |
Actualmente existen soluciones tecnológicas para la generación de documentos personalizados en cuanto a sus contenidos y apariencia. Sin embargo, todas ellas requieren de amplios conocimientos en lenguajes especializados (XML, XSLT o XPATH entre otros) y no contemplan tareas relacionadas específicamente con el dominio, como es la identificación de la variabilidad en el contenido de los documentos. En este trabajo presentamos DPLfw, un entorno de trabajo basado en modelos para la generación de documentos con contenido variable. DPLfw es una implementación de la propuesta de Líneas de Producto de Documentos, donde la variabilidad en el contenido se representa mediante características, y la generación de documentos se soporta sobre un proceso basado en Líneas de Productos. Este artículo describe la arquitectura de DPLfw, a la vez que muestra su uso en la generación de documentación de usuario.
ConferenceAbel Gómez, M. Carmen Penadés, José H. Canós, Marcos R.S. Borges, Manuel Llavador
Proceedings of the 16th International Software Product Line Conference - Volume 1, SPLC '12 ACM, New York, NY, USA, 2012, ISBN: 978-1-4503-1094-9, (Salvador, Brazil).
Tags: Darwin Information Typing Architecture (DITA), Document Product Line (DPL), DPLfw, Feature Modeling (FM), Model-Driven Engineering (MDE), Software Product Lines (SPL), Variable Data Printing (VDP)| | |
Variable Data Printing solutions provide means to generate documents whose content varies according to some criteria. Since the early Mail Merge-like applications that generated letters with destination data taken from databases, different languages and frameworks have been developed with increasing levels of sophistication. Current tools allow the generation of highly customized documents that are variable not only in content, but also in layout. However, most frameworks are technology-oriented, and their use requires high skills in implementation-related tools (XML, XPATH, and others), which do not include support for domain-related tasks like identification of document content variability.
In this paper, we introduce DPLfw, a framework for variable content document generation based on Software Product Line Engineering principles. It is an implementation of the Document Product Lines (DPL) approach, which was defined with the aim of supporting variable content document generation from a domain-oriented point of view. DPL models document content variability in terms of features, and product line-like processes support the generation of documents. We define the DPLfw architecture, and illustrate its use in the definition of variable-content emergency plans.
ConferenceAbel Gómez, Isidro Ramos
Information Systems Development: Business Systems and Services: Modeling and Development, Springer New York, New York, NY, 2011, ISBN: 978-1-4419-9790-6, (Prague, Czech Republic).
Feature Modeling is a technique that uses diagrams to characterize the variability of software product lines. The arrival of metamodeling frameworks in the Model-Driven Engineering field (MDE) has provided the necessary background to exploit these diagrams (called feature models) in information systems development processes. However, these frameworks have some limitations when they must deal with software artifacts at several abstraction layers. This paper presents a prototype that allows the developers to define cardinality-based feature models with complex model constraints. The prototype uses model transformations to build Domain Variability Models (DVM) that can be instantiated. This proposal permits us to take advantage of existing tools to validate model instances and finally to automatically generate code. Moreover, DVMs can play a key role in complex MDE processes automating the use of feature models in software product lines.
Full Text AvailablePreprint
ConferenceElena Navarro, Abel Gómez, Patricio Letelier, Isidro Ramos
Information Systems Development: Asian Experiences, Springer New York, New York, NY, USA, 2010, ISBN: 978-1-4419-7355-9, (Nanchang, China).
Model-driven development (MDD) approach is gaining more and more attention both from practitioners and academics because of its positive influences in terms of reliability and productivity in the software development process. ATRIUM is one of the current proposals following the MDD principles as the development is driven by models and a tool, MORPHEUS, supports both its activities and models. This tool provides facilities for modelling, metamodelling, and analysis and integrates an engine to execute transformations. In this work, this tool is presented describing both its architecture and its capabilities.
Full Text AvailablePreprint
ConferenceAbel Gómez, Isidro Ramos
Fourth International Workshop on Variability Modelling of Software-intensive Systems – Proceedings, (37), VaMoS 2010 Institut für Informatik und Wirtschaftsinformatik (ICB) ICB Research Reports, Essen, Germany, 2010, ISSN: 1860‐2770, (Linz, Austria).
Tags: Feature Modeling (FM), Model-Driven Architecture (MDA), Model-Driven Engineering (MDE), Object Constraint Language (OCL), Query/View/Transformation (QVT), Software Product Lines (SPL), Unified Modeling Language (UML)| | |
Feature Modeling is a technique which uses a specific visual notation to characterize the variability of product lines by means of diagrams. In this sense, the arrival of metamodeling frameworks in the Model-Driven Engineering field has provided the necessary background to exploit these diagrams (called feature models) in complex software development processes. However, these frameworks (such as the Eclipse Modeling Framework) have some limitations when they must deal with software artifacts at several abstraction layers. This paper presents a prototype that allows the developers to define cardinality-based feature models with constraints. These models are automatically translated to Domain Variability Models (DVM) by means of model-to-model transformations. Thus, such models can be instantiated, and each different instantiation is a configuration of the feature model. This appproach allows us to take advantage of existing generative programming tools, query languages and validation formalisms; and, what is more, DVMs can play a key role in MDE processes as they can be used as inputs in complex model transformations.
ConferenceAbel Gómez, José Á. Carsí, Artur Boronat, Isidro Ramos, Claudia Täubner, Silke Eckstein
Proceedings of the 4th International Workshop on Language Engineering (ateM 2007), (4/2007), Mainzer Informatik-Berichte Johannes Gutenberg-Universität Mainz Institut für Informatik, 2007, ISSN: 0931-9972, (Nashville, TN, USA).
Tags: Bioinformatics, Data Migration, Intergenomics, Model Driven Software Development (MDSD), Model Transformation (MT), Model-Driven Engineering (MDE), Petri net (PN), Query/View/Transformation (QVT)| | |
This paper shows how Model-Driven Software Development (MDSD) can be applied in the bioinformatics field since biological data structures can be easily expressed by means of models. The existence of several heterogeneous data sources is usual in the bioinformatics context. In order to validate the information stored in these data sources, several formalisms and simulation tools have been adopted. The process of importing data from the source databases and introducing it in the simulation tools is usually done by hand. This work describes how to overcome this drawback by applying MDSD techniques (e.g. model transformations). Such techniques allow us to automate the data migration process between source databases and simulation tools, making the transformation process independent of the data persistence format, obtaining more modular tools and generating traceability information automatically.
Full Text AvailablePreprint
ConferenceAbel Gómez, Artur Boronat, José Á. Carsí, Isidro Ramos
Actas de las XII Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2007), Zaragoza, Spain, September 11-14, 2007., Thomson Editorial, 2007, ISBN: 978-84-9732-595-0.
MOMENT CASE es un prototipo que mediante un proceso de desarrollo de software dirigido por modelos permite generar el código SQL necesario para la creación de una base de datos de un sistema de información, partiendo de la especificación de éste mediante un diagrama de clases UML, y mediante transformaciones de modelos sucesivas. La herramienta proporciona además capacidades de trazabilidad y generación automática de documentación.
Como motor para las transformaciones emplea la herramienta MOMENT (http://moment.dsic.upv.es.), que usa como back-end un potente sistema de reescritura de términos. MOMENT CASE constituye un caso de estudio en el que convergen un marco formal de gestión de modelos y una herramienta de modelado industrial dando soporte a estándares abiertos como UML.
Full Text AvailablePreprintSpanish
ConferenceAbel Gómez, Artur Boronat, Pascual Queralt, José Á. Carsí, Isidro Ramos
Actas de las V Jornadas de Trabajo DYNAMICA, Ingeniería del Software y Sistemas de Información research group Universitat Politècnica de València, Valencia, Spain, 2006, ISBN: 84-690-2623-2.
La Ingeniería Dirigida por modelos es un campo en la Ingeniería del Software que, durante años, ha representado los artefactos software como modeles con el objetivo de incrementar la productividad, calidad, y reducir los gastos en el proceso de desarrollo de software. Los modelos proporcionan una descripción más abstracta de un artefacto software que el código final de la aplicación. Las compañías de desarrollo de software han aumentado su interés en este campo. Como por ejemplo encontramos las aproximaciones Model Driven Architecture, apoyada por la OMG, así como las Software Factories, apoyadas en este caso por Microsoft.
El Desarrollo Dirigido por Modelos ha evolucionado del campo de la Ingeniería Dirigida por Modelos. En él, no sólo las tareas de diseño y generación de código están involucradas, sino que también se incluyen las capacidades de trazabilidad, gestión de modelos, tareas de meta-modelado, intercambio y persistencia de modelos, etc. Para poder abordar estas tareas, las operaciones entre modelos, transformaciones, y consultas sobre ellos son problemas relevantes que deben ser resueltos. En el contexto de MDA se abordan desde el punto de vista de los estándares abiertos. El este caso, el estándar Meta Object Facility (MOF), proporciona un mecanismo para definir metamodelos. Por su parte, el estándar Query/Views/Transformations (QVT) indica cómo proporcionar soporte tanto para transformaciones como para consultas. A diferencia de otros lenguajes nuevos, QVT se apoya en el ya existente lenguaje Object Constraint Language (OCL) para realizar las consultas sobre los artefactos software. Además, dentro de la ingeniería dirigida por modelos se ha propuesto una nueva disciplina denominada Gestión de Modelos. Ésta considera los modelos y las correspondencias entre ellos como entidades de primer orden, proporcionando un conjunto de operadores independientes de metamodelo y basados en teoría de conjuntos para tratar con ellos (Merge, Cross, Diff, ModelGen, etc.). Estos operadores proporcionan una solución reutilizable y componible para las tareas descritas anteriormente.
En esta demo presentamos la herramienta MOMENT, que da soporte a todas estas aproximaciones surgidas dentro de la Ingeniería por modelos. MOMENT proporciona un soporte algebraico a los operadores de gestión de modelos, así como a las tareas de transformación y consulta de modelos mediante un eficiente sistema de reescritura de términos —Maude— y desde un entorno de modelado industrial —Eclipse Modeling Framework (EMF)—. EMF puede ser visto como una implementación del estándar MOF, y permite la importación automática de artefactos software desde orígenes de datos heterogéneos: modelos UML, esquemas relacionales, esquemas XML, etc. En este sentido MOMENT aprovecha las capacidades de modularidad y parametrización de Maude para proporcionar un entorno de gestión, transformación y consulta de modelos de forma genérica e independiente de metamodelo.
ConferenceAbel Gómez, Artur Boronat, Luis Hoyos, José Á. Carsí, Isidro Ramos
XI Jornadas de Ingeniería del Software y Bases de Datos (JISBD 2006), Octubre 3-6, 2006, Sitges, Barcelona, Spain., CIMNE, Barcelona, Spain, 2006, ISBN: 84-95999-99-4, (Sitges, Barcelona, Spain).
La Ingeniería dirigida por Modelos permite incrementar la productividad en el proceso de desarrollo software, obteniendo herramientas más interoperables y sencillas de mantener mediante técnicas que elevan el nivel de abstracción. En esta dirección ha aparecido la disciplina «Gestión de Modelos», que proporciona un conjunto de operadores genéricos basados en teoría de conjuntos para tratar con modelos. Esta aproximación muestra su potencia en las capacidades de composicionalidad de los operadores que proporciona. Este artículo describe cómo proporciona soporte a la definición de operadores complejos una herramienta del marco de la Gestión de Modelos mediante un lenguaje específico de dominio.
Full Text AvailableSpanish