Demo Data from SIGIR 2026 / reviewers in the wild / expert
Jordi Cabot
dblp:18/948
· DBLP profile ↗
187ranked-venue papers
26as first author
54since 2021 · last 2026
0000-0003-2418-2489ORCID · verified
Domains — the database's venue-derived domains; a paper can count in several
Software engineering, systems software and programming languages · 148 · 20 first-author · 43 since 2021Databases, data management, data science and information retrieval · 49 · 9 first-author · 12 since 2021Artificial intelligence and machine learning · 8 · 4 since 2021Applied, interdisciplinary, general and emerging computing · 8 · 4 since 2021Security and privacy · 3 · 1 since 2021Human-computer interaction and ubiquitous computing · 2Theory of computation · 2 · 2 first-author · 1 since 2021Systems, architecture and hardware · 1
Expertise — from the expertise taxonomy: the topics of the expert's papers under the CCF categories. A weight counts papers with recency: 1 for a paper about the topic, 0.3 when the topic is its context, halved every five years.
| Software engineering, system software, and programming languages
10 papers |
Requirements engineering and software design · 37% Empirical software engineering · 22% Software testing · 18% | |
| Artificial intelligence
4 papers |
Trustworthy machine learning · 49% Language models and text generation · 31% Multi-agent systems · 20% | |
| Interdisciplinary, comprehensive, and emerging computing
2 papers |
Computing education · 100% |
Topics — the 23 heaviest of 27, each with the papers that count most for it
| Topic | Weight | Papers | Last | Evidence papers |
|---|---|---|---|---|
Empirical software engineering › open source software
open source governance |
1.1 | 2 | 2025 | Towards Automated Governance: A DSL for Human-Agent Collaboration in Software Projects · ASE 2025 Enabling the Definition and Enforcement of Governance Rules in Open Source Systems · ICSE (2) 2015 |
Programming languages and type systems
domain-specific languages |
0.9 | 1 | 2025 | Towards Automated Governance: A DSL for Human-Agent Collaboration in Software Projects · ASE 2025 |
Requirements engineering and software design
model-driven engineering |
0.9 | 4 | 2019 | Smart Bound Selection for the Verification of UML/OCL Class Diagrams · IEEE Trans. Software Eng. 2019 Gremlin-ATL: a scalable model transformation framework · ASE 2017 MoDisco: a generic and extensible framework for model driven reverse engineering · ASE 2010 |
Machine learning › Trustworthy machine learning
AI safety |
0.8 | 1 | 2024 | Position: Near to Mid-term Risks and Opportunities of Open-Source Generative AI · ICML 2024 |
Natural language and speech › Language models and text generation
large language model |
0.8 | 1 | 2024 | Position: Near to Mid-term Risks and Opportunities of Open-Source Generative AI · ICML 2024 |
Knowledge, reasoning and agents › Multi-agent systems › social choice › computational social choice › information aggregation
opinion aggregation |
0.7 | 1 | 2023 | Dealing with Belief Uncertainty in Domain Models · ACM Trans. Softw. Eng. Methodol. 2023 |
Machine learning › Trustworthy machine learning
uncertainty modeling |
0.7 | 1 | 2023 | Dealing with Belief Uncertainty in Domain Models · ACM Trans. Softw. Eng. Methodol. 2023 |
Requirements engineering and software design › conceptual modeling
domain modeling |
0.7 | 1 | 2023 | Dealing with Belief Uncertainty in Domain Models · ACM Trans. Softw. Eng. Methodol. 2023 |
Software testing
test generation |
0.7 | 1 | 2023 | Automating Bias Testing of LLMs · ASE 2023 |
Software testing › test oracle
test oracle generation |
0.7 | 1 | 2023 | Automating Bias Testing of LLMs · ASE 2023 |
Requirements engineering and software design
non-functional requirements |
0.5 | 1 | 2021 | Dealing with Non-Functional Requirements in Model-Driven Development: A Survey · IEEE Trans. Software Eng. 2021 |
Empirical software engineering › practitioner studies
practitioner survey |
0.5 | 1 | 2021 | Dealing with Non-Functional Requirements in Model-Driven Development: A Survey · IEEE Trans. Software Eng. 2021 |
Program verification
bounded verification |
0.4 | 1 | 2019 | Smart Bound Selection for the Verification of UML/OCL Class Diagrams · IEEE Trans. Software Eng. 2019 |
Requirements engineering and software design › model-driven engineering
model transformation |
0.3 | 1 | 2017 | Gremlin-ATL: a scalable model transformation framework · ASE 2017 |
Human-AI interaction
human-AI collaboration |
0.3 | 1 | 2025 | Towards Automated Governance: A DSL for Human-Agent Collaboration in Software Projects · ASE 2025 |
Software maintenance and evolution
software ecosystems |
0.2 | 1 | 2015 | Enabling the Definition and Enforcement of Governance Rules in Open Source Systems · ICSE (2) 2015 |
Machine learning › Trustworthy machine learning
fairness |
0.2 | 1 | 2023 | Automating Bias Testing of LLMs · ASE 2023 |
Requirements engineering and software design › model-driven engineering
model-driven development |
0.1 | 1 | 2021 | Dealing with Non-Functional Requirements in Model-Driven Development: A Survey · IEEE Trans. Software Eng. 2021 |
Computational complexity
constraint satisfaction |
0.1 | 2 | 2019 | Smart Bound Selection for the Verification of UML/OCL Class Diagrams · IEEE Trans. Software Eng. 2019 UMLtoCSP: a tool for the formal verification of UML/OCL models using constraint programming · ASE 2007 |
Data models and query languages
graph query language |
0.1 | 1 | 2017 | Gremlin-ATL: a scalable model transformation framework · ASE 2017 |
Program verification
model verification |
0.1 | 1 | 2007 | UMLtoCSP: a tool for the formal verification of UML/OCL models using constraint programming · ASE 2007 |
Software maintenance and evolution › software reengineering
software modernization |
0.0 | 1 | 2010 | MoDisco: a generic and extensible framework for model driven reverse engineering · ASE 2010 |
Computing education
software engineering education |
0.0 | 1 | 2008 | From programming to modeling: our experience with a distributed software engineering course · ICSE 2008 |
Methods — techniques the papers use, named apart from their topics
large language model · 3.1prompting · 1.7domain-specific language · 1.7subjective logic · 1.3prompt-based test generation · 1.3opinion merging · 1.3risk mitigation · 0.8constraint programming · 0.8SAT solving · 0.8interview-based survey · 0.5governance rule enforcement · 0.2model-based approach · 0.2constraint logic programming · 0.1ECLiPSe · 0.1
| Year | Publication | Venue | Position |
|---|---|---|---|
| 2026 | BESSER-TestGen: Automated Model-based Unit Test Generation for Low-Code Applications
Fitash Ul Haq, Jordi Cabot |
ICST | 2 |
| 2026 | Low-Code and No-Code with BESSER to Create and Deploy Smart Web Applications
Iván Alfonso, Armen Sulejmani, Aaron David Conrardy, Jordi Cabot |
ICWE | 4 |
| 2026 | A Low-Code Approach for the Automatic Personalization of Conversational Agents
Aaron David Conrardy, Alfredo Capozucca, Jordi Cabot |
ICWE | 3 |
| 2026 | CLERK: A Companion Large Language Model Expert for modeling Regulatory KnowledgeabstractLarge Language Models (LLMs) have the potential to support the transformation of natural language legal text into a regulatory model, a task conventionally known to be time consuming and error prone when done manually. In this paper, we introduce CLERK: a C ompanion L LM E xpert for modeling R egulatory K nowledge existing in natural language legal texts. CLERK captures regulatory knowledge in the format of Legal Goal Requirements Language (GRL) models. CLERK offers three key contributions, utilizing established prompting techniques: (1) Adopting the Tree-of-Thought (ToT) prompting framework, CLERK streamlines the regulatory modeling process by breaking down complex steps into manageable tasks and focusing on those essential for constructing a Legal GRL model only. (2) The ToT framework enables self-evaluation of intermediate outputs. (3) CLERK enhances consistency and clarity, by leveraging additional in-context learning prompting techniques, such as few-shot prompting and output formatting with an explicit syntax definition. Experiments with eight regulatory articles from two domains (healthcare and energy communities) display a notable improvement brought about by CLERK compared to previous approaches. This improvement pertains to identifying relevant actors, goals and their deontic modalities, as well as the relationships among goals. Jonathan Silva Mercado, Qin Ma 0002, Sybren de Kinderen, Karolin Winter, Jordi Cabot |
Data Knowl. Eng. | 5 |
| 2026 | The Software Diversity Card: A framework for reporting diversity in software projectsabstractContext: Interest in diversity in software development has significantly increased in recent years. Reporting on diversity in software projects can enhance user trust and assist regulators in evaluating adoption. Recent AI directives include clauses that mandate diversity information during development, highlighting the growing interest of public regulators. However, current documentation often neglects diversity in favor of technical features, partly due to a lack of tools for its description and annotation. Objectives: This work introduces the Software Diversity Card, a structured approach to document and share diversity-related aspects within software projects. It aims to profile the various teams involved in software development and governance, including user groups in testing and software adaptations for diverse social groups. Methods: We performed a literature review on diversity and inclusion in software development and an analysis of 1,000 top-starred Open Source Software (OSS) repositories in GitHub to identify diversity-related information. Moreover, we present a diversity modeling language, a toolkit for generating the cards using that language, and a study of its application in two real-world software projects. Results: Despite the growing awareness of diversity in the research community, our analysis found a notable lack of diversity reporting in OSS projects. Applying the card to real-world examples highlighted challenges like balancing anonymity with transparency, managing sensitive data, and ensuring authenticity. Conclusion: We believe that our proposal can enhance diversity practices in software development, support public administrations in software assessment, and help businesses promote diversity as a key asset. Joan Giner-Miguelez, Sergio Morales 0001, Sergio Cobos, Javier Luis Cánovas Izquierdo, Robert Clarisó, Jordi Cabot |
Inf. Softw. Technol. | 6 |
| 2026 | Cross-platform evaluation of reasoning capabilities in foundation models
Joachim de Curtò, Irene Zarza, Jordi Cabot, Juan-Carlos Cano, Carlos T. Calafate |
Inf. Process. Manag. | 4 |
| 2025 | ImageBiTe: A Framework for Evaluating Representational Harms in Text-to-Image ModelsabstractAdvances in online text-to-image (T2I) generator models allow users and organizations alike to generate millions of images from text prompts. Unfortunately, recent studies have demonstrated how elementary prompts result in displaying noticeable social biases in the models' output imagery. The potential representational harm of T2I models could lead to further marginalize minority groups. Thus, a systematic approach is required to comprehensively and continuously assess the absence of bias in T2I generators. In this paper, we present ImageBiTe, a framework to systematically and thoroughly evaluate representational discrimination in T2I-generated images, seamlessly integrable into AI engineering processes. ImageBiTe enables development teams to customize their test scenarios and automatically create and run test cases based on user-defined non-discrimination requirements. We have implemented an open-source tool, available on GitHub, to support the application of our approach. Sergio Morales 0001, Robert Clarisó, Jordi Cabot |
CAIN | 3 |
| 2025 | ModelFed: A Federated Protocol for Collaborative Cross-Platform Modeling
Iván Alfonso, Jordi Cabot |
ER | 2 |
| 2025 | Towards Human-in-the-Loop LLM-Enabled Domain Modeling
Jonathan Silva Mercado, Qin Ma 0002, Jordi Cabot, Pierre Kelsen, Henderik A. Proper |
ER | 3 |
| 2025 | Towards Modeling Human-Agentic Collaborative Workflows: A BPMN Extension
Adem Ait, Javier Luis Cánovas Izquierdo, Jordi Cabot |
SEAA | 3 |
| 2025 | From Mock-Ups to IFML-Like GUI Models: Using Large Language Models in Web Engineering
Atefeh Nirumand, Jordi Cabot |
ICWE | 2 |
| 2025 | Towards Automated Governance: A DSL for Human-Agent Collaboration in Software ProjectsabstractThe stakeholders involved in software development are becoming increasingly diverse, with both human contributors from varied backgrounds and AI-powered agents collaborating together in the process. This situation presents unique governance challenges, particularly in Open-Source Software (OSS) projects, where explicit policies are often lacking or unclear. This paper presents the vision and foundational concepts for a novel Domain-Specific Language (DSL) designed to define and enforce rich governance policies in systems involving diverse stakeholders, including agents. This DSL offers a pathway towards more robust, adaptable, and ultimately automated governance, paving the way for more effective collaboration in software projects, especially OSS ones. Adem Ait, Gwendal Jouneaux, Javier Luis Cánovas Izquierdo, Jordi Cabot |
ASE | 4 |
| 2025 | Towards Reliable LLM-based Exam Generation Lessons Learned and Open Challenges in an Industrial ProjectabstractLarge Language Models (LLMs) have revolutionized the way natural language tasks are handled, with big potential applications in the context of education. LLMs can save educators time and effort, for instance, in content creation and exam generation. Although promising, LLMs’ integration into educational products brings some risks that companies must mitigate.In the context of an industrial project, we investigate the effectiveness of LLMs to generate educational multiple-choice questions. The experiments include 16 commercial and open-source LLMs, rely on standard metrics to assess the accuracy (F1 and BLEU) and linguistic quality (perplexity and diversity) of the generated questions, and compare with five specialized models. The results suggest that recent LLMs can outperform the fine-tuned models for question generation, open-source LLMs are very competitive with the commercial ones, with Meta Llama models being the best performing, and DeepSeek as performing as recent GPT4 models.This promising empirical evidence encourages us to focus on advanced prompting strategies, for which we report relevant open challenges we aim to address in the short term. Renzo Degiovanni, Jordi Cabot |
ASE | 2 |
| 2025 | Modelling Neural Network Models
Nadia Daoudi, Iván Alfonso, Jordi Cabot |
RCIS (2) | 3 |
| 2025 | On the suitability of hugging face hub for empirical studies
Adem Ait, Javier Luis Cánovas Izquierdo, Jordi Cabot |
Empir. Softw. Eng. | 3 |
| 2025 | Modeling the obsolescence of models
Iván Alfonso, Jean-Sébastien Sottet, Pierre Brimont, Jordi Cabot |
Softw. Syst. Model. | 4 |
| 2025 | Impromptu: a framework for model-driven prompt engineeringabstractAbstract Generative artificial intelligence (AI) systems are capable of synthesizing complex artifacts such as text, source code or images according to the instructions provided in a natural language prompt. The quality of the input prompt, in terms of both content and structure, has a large impact on the quality of the output. This has given rise to prompt engineering , the process of designing natural language prompts to best take advantage of the capabilities of generative AI systems. This paper describes , a model-driven engineering framework to support the creation, management and reuse of prompts for generative AI. offers a domain-specific language (DSL) to define multimodal prompts in a modular and tool-independent way. The language offers additional features such as versioning, prompt chaining and multi-language support. Moreover, it provides tool support to adapt prompts for specific generative AI systems, execute those prompts on a generative AI system and validate the quality of the response that is generated. is available as a Langium-based Visual Studio Code plugin. Sergio Morales 0001, Robert Clarisó, Jordi Cabot |
Softw. Syst. Model. | 3 |
| 2024 | Application of the Tree-of-Thoughts Framework to LLM-Enabled Domain Modeling
Jonathan Silva Mercado, Qin Ma 0002, Jordi Cabot, Pierre Kelsen, Henderik A. Proper |
ER | 3 |
| 2024 | On the Creation of Representative Samples of Software RepositoriesabstractSoftware repositories is one of the sources of data in Empirical Software Engineering, primarily in the Mining Software Repositories field, aimed at extracting knowledge from the dynamics and practice of software projects. With the emergence of social coding platforms such as GitHub, researchers have now access to millions of software repositories to use as source data for their studies. With this massive amount of data, sampling techniques are needed to create more manageable datasets. The creation of these datasets is a crucial step, and researchers have to carefully select the repositories to create representative samples according to a set of variables of interest. However, current sampling methods are often based on random selection or rely on variables which may not be related to the research study (e.g., popularity or activity). In this paper, we present a methodology for creating representative samples of software repositories, where such representativeness is properly aligned with both the characteristics of the population of repositories and the requirements of the empirical study. We illustrate our approach with use cases based on Hugging Face repositories. June Gorostidi, Adem Ait, Jordi Cabot, Javier Luis Cánovas Izquierdo |
ESEM | 3 |
| 2024 | Position: Near to Mid-term Risks and Opportunities of Open-Source Generative AIabstractIn the next few years, applications of Generative AI are expected to revolutionize a number of different areas, ranging from science & medicine to education. The potential for these seismic changes has triggered a lively debate about potential risks and resulted in calls for tighter regulation, in particular from some of the major tech companies who are leading in AI development. While regulation is important, it is key that it does not put at risk the budding field of open-source Generative AI. We argue for the responsible open sourcing of generative AI models in the near and medium term. To set the stage, we first introduce an AI openness taxonomy system and apply it to 40 current large language models. We then outline differential benefits and risks of open versus closed source AI and present potential risk mitigation, ranging from best practices to calls for technical and scientific contributions. We hope that this report will add a much needed missing voice to the current public discourse on near to mid-term AI safety and other societal impact. Francisco Girbal Eiras, Aleksandar Petrov, Bertie Vidgen, Christian Schröder de Witt, Fabio Pizzati, Katherine Elkins, Supratik Mukhopadhyay, Adel Bibi, Botos Csaba, Fabro Steibel, Fazl Barez, Genevieve Smith, Gianluca Guadagni, Jon Chun, Jordi Cabot, Joseph Marvin Imperial, Juan A. Nolazco-Flores, Lori Landay, Matthew Thomas Jackson, Paul Röttger, Philip Torr 0001, Trevor Darrell, Jakob N. Foerster |
ICML | 15 |
| 2024 | A DSL for Testing LLMs for Fairness and BiasabstractLarge language models (LLMs) are increasingly integrated into software systems to enhance them with generative AI capabilities. But LLMs may reflect a biased behavior, resulting in systems that could discriminate against gender, age or ethnicity, among other ethical concerns. Society and upcoming regulations will force companies and development teams to ensure their AI-enhanced software is ethically fair. To facilitate such ethical assessment, we propose LangBiTe, a model-driven solution to specify ethical requirements, and customize and automate the testing of ethical biases in LLMs. The evaluation can raise awareness on the biases of the LLM-based components of the system and/or trigger a change in the LLM of choice based on the requirements of that particular application. The model-driven approach makes both the requirements specification and the test generation platform-independent, and provides end-to-end traceability between the requirements and their assessment. We have implemented an open-source tool set, available on GitHub, to support the application of our approach. Sergio Morales 0001, Robert Clarisó, Jordi Cabot |
MODELS | 3 |
| 2024 | The Secret Recipe to the Perfect Low-Code Platform
Jordi Cabot |
MODELSWARD | 1 |
| 2024 | HFCommunity: An extraction process and relational database to analyze Hugging Face Hub dataabstractSocial coding platforms such as GitHub or GitLab have become the de facto standard for developing Open-Source Software (OSS) projects. With the emergence of Machine Learning (ML), platforms specifically designed for hosting and developing ML-based projects have appeared, being Hugging Face Hub (HFH) one of the most popular ones. HFH aims at sharing datasets, pre-trained ML models and the applications built with them. With over 400 K repositories, and growing fast, HFH is becoming a promising source of empirical data on all aspects of ML project development. However, apart from the API provided by the platform, there are no easy-to-use solutions to collect the data, nor prepackaged datasets to explore the different facets of HFH. We present HFCommunity, an extraction process for HFH data and a relational database to facilitate an empirical analysis on the growing number of ML projects. Adem Ait, Javier Luis Cánovas Izquierdo, Jordi Cabot |
Sci. Comput. Program. | 3 |
| 2024 | Applying model-driven engineering to the domain of chatbots: The Xatkit experience
Gwendal Daniel, Jordi Cabot |
Sci. Comput. Program. | 2 |
| 2024 | DescribeML: A dataset description tool for machine learningabstractDatasets are essential for training and evaluating machine learning models. However, they are also the root cause of many undesirable model behaviors, such as biased predictions. To address this issue, the machine learning community is proposing as a best practice the adoption of common guidelines for describing datasets. However, these guidelines are based on natural language descriptions of the dataset, hampering the automatic computation and analysis of such descriptions. To overcome this situation, we present DescribeML, a language engineering tool to precisely describe machine learning datasets in terms of their composition, provenance, and social concerns in a structured format. The tool is implemented as a Visual Studio Code extension. Joan Giner-Miguelez, Abel Gómez 0001, Jordi Cabot |
Sci. Comput. Program. | 3 |
| 2024 | What makes a good modeling research contribution?
Richard F. Paige, Jordi Cabot |
Softw. Syst. Model. | 2 |
| 2023 | DataDoc Analyzer: A Tool for Analyzing the Documentation of Scientific DatasetsabstractRecent public regulatory initiatives and relevant voices in the ML community have identified the need to document datasets according to several dimensions to ensure the fairness and trustworthiness of machine learning systems. In this sense, the data-sharing practices in the scientific field have been quickly evolving in the last years, with more and more research works publishing technical documentation together with the data for replicability purposes. However, this documentation is written in natural language, and its structure, content focus, and composition vary, making them challenging to analyze. Joan Giner-Miguelez, Abel Gómez 0001, Jordi Cabot |
CIKM | 3 |
| 2023 | Low-Modeling of (smart) Software
Jordi Cabot |
ICSOFT | 1 |
| 2023 | Automating Bias Testing of LLMsabstractLarge Language Models (LLMs) are being quickly integrated in a myriad of software applications. This may introduce a number of biases, such as gender, age or ethnicity, in the behavior of such applications. To face this challenge, we explore the automatic generation of tests suites to assess the potential biases of an LLM. Each test is defined as a prompt used as input to the LLM and a test oracle that analyses the LLM output to detect the presence of biases. Sergio Morales 0001, Robert Clarisó, Jordi Cabot |
ASE | 3 |
| 2023 | A Tool for the Definition and Deployment of Platform-Independent Bots on Open Source ProjectsabstractThe development of Open Source Software (OSS) projects is a collaborative process that heavily relies on active contributions by passionate developers. Creating, retaining and nurturing an active community of developers is a challenging task; and finding the appropriate expertise to drive the development process is not always easy. To alleviate this situation, many OSS projects try to use bots to automate some development tasks, thus helping community developers to cope with the daily workload of their projects. However, the techniques and support for developing bots is specific to the code hosting platform where the project is being developed (e.g., GitHub or GitLab). Furthermore, there is no support for orchestrating bots deployed in different platforms nor for building bots that go beyond pure development activities. In this paper, we propose a tool to define and deploy bots for OSS projects, which besides automation tasks they offer a more social facet, improving community interactions. The tool includes a Domain-Specific Language (DSL) which allows defining bots that can be deployed on top of several platforms and that can be triggered by different events (e.g., creation of a new issue or a pull request). We describe the design and the implementation of the tool, and illustrate its use with examples. Adem Ait, Javier Luis Cánovas Izquierdo, Jordi Cabot |
SLE | 3 |
| 2023 | HFCommunity: A Tool to Analyze the Hugging Face Hub CommunityabstractIn recent years, empirical studies on software engineering practices have primarily relied on general-purpose social coding platforms such as GITHUB or GITLAB. With the emergence of Machine Learning (ML), platforms specifically designed for hosting and developing ML-based projects have appeared, being HUGGING FACE HUB one of the most popular ones. HUGGING FACE HUB focuses on facilitating the sharing of datasets, pre-trained ML models and applications built with them (spaces in HUGGING FACE HUB terminology). Besides, the Hub is adding more and more collaborative features, such as issues and pull requests, to facilitate the building of these artifacts within the platform itself. With over 100K repositories, and growing fast, HUGGING FACE HUB is therefore becoming a promising source of data on all aspects of ML projects and the community interactions around them. As such, we believe it is a promising source for all types of empirical studies aimed at analyzing the collaborative development and evolution of ML artifacts. Nevertheless, apart from the API provided by the platform, there are no easy-to-use solutions to collect and explore the different facets of HUGGING FACE HUB data, including the repositories, discussions and code evolution. To overcome this situation, in this paper we present HFCOMMUNITY, a relational database populated with HUGGING FACE HUB data to facilitate empirical analysis on the growing number of ML-related development projects. Adem Ait, Javier Luis Cánovas Izquierdo, Jordi Cabot |
SANER | 3 |
| 2023 | Gamifying model-based engineering: The PapyGame tool
Antonio Bucchiarone, Maxime Savary-Leblanc, Xavier Le Pallec, Jean-Michel Bruel, Antonio Cicchetti, Jordi Cabot, Sébastien Gérard |
Sci. Comput. Program. | 6 |
| 2023 | Modeling and enforcing access control policies in conversational user interfacesabstractAbstract Conversational user interfaces (CUIs), such as chatbots, are becoming a common component of many software systems. Although they are evolving in many directions (such as advanced language processing features, thanks to new AI-based developments), less attention has been paid to access control and other security concerns associated with CUIs, which may pose a clear risk to the systems they interface with. In this paper, we apply model-driven techniques to model and enforce access-control policies in CUIs. In particular, we present a fully fledged framework to integrate the role-based access-control (RBAC) protocol into CUIs by: (1) modeling a set of access-control rules to specify permissions over the bot resources using a domain-specific language that tailors core RBAC concepts to the CUI domain; and (2) describing a mechanism to show the feasibility of automatically generating the infrastructure to evaluate and enforce the modeled access control policies at runtime. Elena Planas, Salvador Martínez Perez, Marco Brambilla 0001, Jordi Cabot |
Softw. Syst. Model. | 4 |
| 2023 | Software assistants in software engineering: A systematic mapping studyabstractAbstract The increasing essential complexity of software systems makes current software engineering methods and practices fall short in many occasions. Software assistants have the ability to help humans achieve a variety of tasks, including the development of software. Such assistants, which show human‐like competences such as autonomy and intelligence, help software engineers do their job by empowering them with new knowledge. This article investigates the research efforts that have been conducted on the creation of assistants for software design, construction and maintenance paying special attention to the user‐assistant interactions. To this end, we followed the standard systematic mapping study method to identify and classify relevant works in the state of the art. Out of the 7580 articles resulting from the automatic search, we identified 112 primary studies that present works which qualify as software assistants. We provide all the resources needed to reproduce our study. We report on the trends and goals of the assistants, the tasks they perform, how they interact with users, the technologies and mechanisms they exploit to embed intelligence and provide knowledge, and their level of automation. We propose a classification of software assistants based on interactions and present an analysis of the different automation patterns. As outcomes of our study, we provide a classification of software assistants dealing with the design, construction and maintenance phases of software development, we discuss the results, identify open lines of work and challenges and call for new innovative and rigorous research efforts in this field. Maxime Savary-Leblanc, Loli Burgueño, Jordi Cabot, Xavier Le Pallec, Sébastien Gérard |
Softw. Pract. Exp. | 3 |
| 2023 | Dealing with Belief Uncertainty in Domain ModelsabstractThere are numerous domains in which information systems need to deal with uncertain information. These uncertainties may originate from different reasons such as vagueness, imprecision, incompleteness, or inconsistencies, and in many cases, they cannot be neglected. In this article, we are interested in representing and processing uncertain information in domain models, considering the stakeholders’ beliefs (opinions). We show how to associate beliefs to model elements and how to propagate and operate with their associated uncertainty so that domain experts can individually reason about their models enriched with their personal opinions. In addition, we address the challenge of combining the opinions of different domain experts on the same model elements, with the goal to come up with informed collective decisions. We provide different strategies and a methodology to optimally merge individual opinions. Loli Burgueño, Paula Muñoz 0001, Robert Clarisó, Jordi Cabot, Sébastien Gérard, Antonio Vallecillo |
ACM Trans. Softw. Eng. Methodol. | 4 |
| 2022 | Talk to Your Data: a Chatbot System for Multidimensional DatasetsabstractFinding information may be a complex task for end users, either due to the format in which data is stored, or difficulty in formulating a query that fits the database structure. Conversational interfaces, such as chatbots, can minimize this issue, by facilitating query formulation through natural language. Despite the several applications of chatbots for data querying, the multidimensional aspect of data is rarely addressed in the literature, making the search for information even more challenging. Chatbots can be used for allowing the user to “talk to the data” by adding metrics and dimensions to a query, without relying on technical expertise. Thus, this paper presents a chatbot approach for querying multidimensional data, which captures users intentions and links them to the multidimensional metadata. This linking process allows the bot to set query parameters, using them for accessing the data. The chatbot was implemented for querying an open database containing about 2.5 billions records and over 1700 attributes (including dimensions and metrics), and it was evaluated through an empirical user study involving a group of participants performing a set of search tasks. The evaluation results supported the usefulness of the proposed approach in querying multidimensional data and retrieving information. Maria Helena Franciscatto, Marcos Didonet Del Fabro, Celio Trois, Luis C. E. Bona, Jordi Cabot, Leon Augusto Okida Gonçalves |
COMPSAC | 5 |
| 2022 | A Survey-driven Feature Model for Software Traceability ApproachesabstractAbstract Traceability is the capability to represent, understand and analyze the relationships between software artefacts. Traceability is at the core of many software engineering activities. This is a blessing in disguise as traceability research is scattered among various research subfields, which impairs a global view and integration of the different innovations around the recording, identification, evaluation and management of traces. This also limits the adoption of traceability solutions in industry. In this sense, the goal of this paper is to present a characterization of the traceability mechanism as a feature model depicting the shared and variable elements in any traceability proposal. The features in the model are derived from a survey of papers related to traceability published in the literature. We believe this feature model is useful to assess and compare different proposals and provide a common terminology and background. Beyond the feature model, the survey we conducted also help us to identify a number of challenges to be solved in order to move traceability forward, especially in a context where, due to the increasing importance of AI techniques in Software Engineering, traces are more important than ever in order to be able to reproduce and explain AI decisions. Edouard Batot, Sébastien Gérard, Jordi Cabot |
FASE | 3 |
| 2022 | An Empirical Study on the Survival Rate of GitHub ProjectsabstractThe number of Open Source projects hosted in social coding platforms such as GitHub is constantly growing. However, many of these projects are not regularly maintained and some are even abandoned shortly after they were created. In this paper we analyze early project development dynamics in software projects hosted on GitHub, including their survival rate. To this aim, we collected all 1,127 GitHub repositories from four different ecosystems (i.e., NPM packages, R packages, WordPress plugins and Laravel packages) created in 2016. We stored their activity in a time series database and analyzed their activity evolution along their lifespan, from 2016 to now. Our results reveal that the prototypical development process consists of intensive coding-driven active periods followed by long periods of inactivity. More importantly, we have found that a significant number of projects die in the first year of existence with the survival rate decreasing year after year. In fact, the probability of surviving longer than five years is less than 50% though some types of projects have better chances of survival. Adem Ait, Javier Luis Cánovas Izquierdo, Jordi Cabot |
MSR | 3 |
| 2022 | Towards a DSL for AI Engineering Process Modeling
Sergio Morales 0001, Robert Clarisó, Jordi Cabot |
PROFES | 3 |
| 2022 | Enabling Content Management Systems as an Information Source in Model-Driven Projects
Joan Giner-Miguelez, Abel Gómez 0001, Jordi Cabot |
RCIS | 3 |
| 2022 | On the analysis of non-coding roles in open source developmentabstractAbstract The role of non-coding contributors in Open Source Software (OSS) is poorly understood. Most of current research around OSS development focuses on the coding aspects of the project (e.g., commits, pull requests or code reviews) while ignoring the potential of other types of contributions. Often, due to the assumption that these other contributions are not significant in number and that, in any case, they are handled by the same people that are also part of the “coding team”. This paper aims to investigate whether this is actually the case by analyzing the frequency and diversity of non-coding contributions in OSS development. As a sample of projects for our study we have taken the 100 most popular projects in the ecosystem of NPM, a package manager for JavaScript. Our results validate the importance of dedicated non-coding contributors in OSS and the diversity of OSS communities as, typically, a contributor specializes in a specific subset of roles. We foresee that projects adopting explicit policies to attract and onboard them could see a positive impact in their long-term sustainability providing they also put in place the right governance strategies to facilitate the migration and collaboration among the different roles. As part of this work, we also provide a replicability package to facilitate further quantitative role-based analysis by other researchers. Javier Luis Cánovas Izquierdo, Jordi Cabot |
Empir. Softw. Eng. | 2 |
| 2022 | A domain-specific language for the specification of UCON policiesabstractSecurity policies constrain the behavior of all users of an information system. In any non-trivial system, these security policies go beyond simple access control rules and must cover more complex and dynamic scenarios while providing, at the same time, a fine-grained level decision-making ability. The Usage Control model (UCON) was created for this purpose but so far integration of UCON in mainstream software engineering processes has been very limited, hampering its usefulness and popularity among the software and information systems communities. In this sense, this paper proposes a Domain-Specific Language to facilitate the modeling of UCON policies and their integration in (model-based) development processes. Together with the language, an exploratory approach for policy evaluation and enforcement of the modeled policies via model transformations has been introduced. These contributions have been defined on top of the Eclipse Modeling Framework, the de-facto standard MDE (Model-Driven Engineering) framework making them freely available and ready-to-use for any software designer interested in using UCON for the definition of security policies in their new development projects. Antonia M. Reina Quintero, Salvador Martínez Perez, Angel Jesus Varela-Vaca, María Teresa Gómez-López, Jordi Cabot |
J. Inf. Secur. Appl. | 5 |
| 2022 | User-driven diverse scenario exploration in model findersabstractModel finders can build instances of declarative specifications that satisfy a set of correctness constraints. Some model finders ensure some degree of diversity among the instances they compute. Nevertheless, each model finder uses its own definition of diversity, that may or may not match designer intent. In this paper, we propose a procedure that enables designers to capture the desired notion of diversity they are looking for. Using a simple domain-specific language, they can specify what elements in the specification are relevant when comparing the differences between two instances. This information can then be used to make any model finder diversity-aware while using it as a black box. As a proof of concept, this approach has been implemented on top of the Alloy Analyzer. Robert Clarisó, Jordi Cabot |
Sci. Comput. Program. | 2 |
| 2022 | A generic LSTM neural network architecture to infer heterogeneous model transformations
Loli Burgueño, Jordi Cabot, Sébastien Gérard |
Softw. Syst. Model. | 2 |
| 2022 | Guest editorial to the theme section on AI-enhanced model-driven engineering
Loli Burgueño, Jordi Cabot, Manuel Wimmer, Steffen Zschaler |
Softw. Syst. Model. | 2 |
| 2022 | Modeling should be an independent scientific disciplineabstractAbstract Software modeling started as a paradigm to help developers build better software faster by enabling them to specify, reason and manipulate software systems at a higher-abstraction level while ignoring irrelevant low-level technical details. But this same principle manifests in any other domain that has to deal with complex systems, software-based or not. We argue that bringing to other engineering and scientific fields, our modeling expertise is a win–win opportunity where we can all learn from each other as we all model, but in complementary ways. Nevertheless, to fully unleash the benefits of this collaboration, we must go beyond individual efforts trying to adapt single techniques from one field to another. It requires a deeper reformulation of modeling as a whole. It is time for modeling to become an independent discipline where all fields of knowledge can contribute and benefit from. Jordi Cabot, Antonio Vallecillo |
Softw. Syst. Model. | 1 |
| 2022 | Model-driven development of asynchronous message-driven architectures with AsyncAPIabstractAbstract In the Internet-of-Things (IoT) vision, everyday objects evolve into cyber-physical systems. The massive use and deployment of these systems has given place to the Industry 4.0 or Industrial IoT (IIoT). Due to its scalability requirements, IIoT architectures are typically distributed and asynchronous. In this scenario, one of the most widely used paradigms is publish/subscribe, where messages are sent and received based on a set of categories or topics. However, these architectures face interoperability challenges. Consistency in message categories and structure is the key to avoid potential losses of information. Ensuring this consistency requires complex data processing logic both on the publisher and the subscriber sides. In this paper, we present our proposal relying on AsyncAPI to automate the design and implementation of these asynchronous architectures using model-driven techniques for the generation of (part of) message-driven infrastructures. Our proposal offers two different ways of designing the architectures: either graphically, by modeling and annotating the messages that are sent among the different IoT devices, or textually, by implementing an editor compliant with the AsyncAPI specification. We have evaluated our proposal by conducting a set of experiments with 25 subjects with different expertise and background. The experiments show that one-third of the subjects were able to design and implement a working architecture in less than an hour without previous knowledge of our proposal, and an additional one-third estimated that they would only need less than two hours in total. Abel Gómez 0001, Markel Iglesias-Urkia, Lorea Belategi, Xabier Mendialdua, Jordi Cabot |
Softw. Syst. Model. | 5 |
| 2022 | Efficient model similarity estimation with robust hashing
Salvador Martínez Perez, Sébastien Gérard, Jordi Cabot |
Softw. Syst. Model. | 3 |
| 2021 | An NLP-Based Architecture for the Autocompletion of Partial Domain Models
Loli Burgueño, Robert Clarisó, Sébastien Gérard, Jordi Cabot |
CAiSE | 5 |
| 2021 | A Model-Based Chatbot Generation Approach to Converse with Open Data Sources
Hamza Ed-Douibi, Javier Luis Cánovas Izquierdo, Gwendal Daniel, Jordi Cabot |
ICWE | 4 |
| 2021 | EditorialabstractNo abstract available. Jordi Cabot, Heike Wehrheim, Eerke A. Boiten |
Formal Aspects Comput. | 1 |
| 2021 | Towards a model-driven approach for multiexperience AI-based user interfacesabstractAbstract Software systems start to include other types of interfaces beyond the “traditional” Graphical-User Interfaces (GUIs). In particular, Conversational User Interfaces (CUIs) such as chat and voice are becoming more and more popular. These new types of interfaces embed smart natural language processing components to understand user requests and respond to them. To provide an integrated user experience all the user interfaces in the system should be aware of each other and be able to collaborate. This is what is known as a multiexperience User Interface. Despite their many benefits, multiexperience UIs are challenging to build. So far CUIs are created as standalone components using a platform-dependent set of libraries and technologies. This raises significant integration, evolution and maintenance issues. This paper explores the application of model-driven techniques to the development of software applications embedding a multiexperience User Interface. We will discuss how raising the abstraction level at which these interfaces are defined enables a faster development and a better deployment and integration of each interface with the rest of the software system and the other interfaces with whom it may need to collaborate. In particular, we propose a new Domain Specific Language (DSL) for specifying several types of CUIs and show how this DSL can be part of an integrated modeling environment able to describe the interactions between the modeled CUIs and the other models of the system (including the models of the GUI). We will use the standard Interaction Flow Modeling Language (IFML) as an example “host” language. Elena Planas, Gwendal Daniel, Marco Brambilla 0001, Jordi Cabot |
Softw. Syst. Model. | 4 |
| 2021 | Model-based assisted migration of oracle forms applications: The overall process in an industrial settingabstractAbstract The migration of software is an economically important niche since the daily operations of many business still rely on systems based on legacy technologies. Migration to more recent technologies comes with major technical and management challenges mainly related to knowledge‐loss issues on the specific technology but also on the architecture and design of the legacy. This article presents a method that addresses the reverse/forward engineering tasks as well as some management challenges such as the planning of the migration based on a better understanding of the system. The process relies on the use of models and transformations to create high‐level abstraction views of the legacy. A big challenge with the migration of certain legacy applications is that much of the business logic is inside triggers which are written in the PL/SQL language and scattered across the application layers. Therefore, developers need to know what they need to migrate and where it is. The main contribution of our work is that the abstractions allow developers to understand and plan the migration without the need of having a vast knowledge on the initial technology. Furthermore, our views help developers to decide about the structure and business logic they want to have in the target system. In this article, we describe the application of the method to the Oracle Forms case study. Nevertheless, the approach can be generalized to other technologies through new bridges that transform from said technologies to the abstract views. The article ends by reporting lessons learned from our experience. Cristo Rodríguez, Kelly Garcés, Jordi Cabot, Rubby Casallas, Fabián Melo, Daniel Escobar, Alejandro Salamanca |
Softw. Pract. Exp. | 3 |
| 2021 | Dealing with Non-Functional Requirements in Model-Driven Development: A SurveyabstractContext: Managing Non-Functional Requirements (NFRs) in software projects is challenging, and projects that adopt Model-Driven Development (MDD) are no exception. Although several methods and techniques have been proposed to face this challenge, there is still little evidence on how NFRs are handled in MDD by practitioners. Knowing more about the state of the practice may help researchers to steer their research and practitioners to improve their daily work. Objective: In this paper, we present our findings from an interview-based survey conducted with practitioners working in 18 different companies from 6 European countries. From a practitioner's point of view, the paper shows what barriers and benefits the management of NFRs as part of the MDD process can bring to companies, how NFRs are supported by MDD approaches, and which strategies are followed when (some) types of NFRs are not supported by MDD approaches. Results: Our study shows that practitioners perceive MDD adoption as a complex process with little to no tool support for NFRs, reporting productivity and maintainability as the types of NFRs expected to be supported when MDD is adopted. But in general, companies adapt MDD to deal with NFRs. When NFRs are not supported, the generated code is sometimes changed manually, thus compromising the maintainability of the software developed. However, the interviewed practitioners claim that the benefits of using MDD outweight the extra effort required by these manual adaptations. Conclusion: Overall, the results indicate that it is important for practitioners to handle `NFRs in MDD, but further research is necessary in order to lower the barrier for supporting a broad spectrum of NFRs with MDD. Still, much conceptual and tool implementation work seems to be necessary to lower the barrier of integrating the broad spectrum of NFRs in practice. David Ameller, Xavier Franch, Cristina Gómez 0001, Silverio Martínez-Fernández, João Araújo 0001, Stefan Biffl, Jordi Cabot, Vittorio Cortellessa, Daniel Méndez 0001, Ana Moreira 0001, Henry Muccini, Antonio Vallecillo, Manuel Wimmer, Vasco Amaral 0001, Wolfgang Böhm 0002, Hugo Bruneliere, Loli Burgueño, Miguel Goulão, Sabine Teufl, Luca Berardinelli |
IEEE Trans. Software Eng. | 7 |
| 2020 | An OpenAPI-Based Testing Framework to Monitor Non-functional Properties of REST APIs
Steven Bucaille, Javier Luis Cánovas Izquierdo, Hamza Ed-Douibi, Jordi Cabot |
ICWE | 4 |
| 2020 | OpenAPI Bot: A Chatbot to Help You Understand REST APIs
Hamza Ed-Douibi, Gwendal Daniel, Jordi Cabot |
ICWE | 3 |
| 2020 | A model-based approach for developing event-driven architectures with AsyncAPIabstractIn 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. Abel Gómez 0001, Markel Iglesias-Urkia, Aitor Urbieta, Jordi Cabot |
MoDELS | 4 |
| 2020 | Towards the optical character recognition of DSLsabstractOCR engines aim to identify and extract text strings fromdocuments or images. While current efforts focus mostly inmainstream languages, there is little support for program-ming or domain-specific languages (DSLs). In this paper, wepresent our vision about the current state of OCR recognitionfor DSLs and its challenges. We discuss some strategies toimprove the OCR quality applied to DSL textual expressionsby leveraging DSL specifications and domain data. To bettersupport our ideas we present the preliminary results of anempirical study and outline a research roadmap. Jorge Perianez-Pascual, Roberto Rodríguez-Echeverría, Loli Burgueño, Jordi Cabot |
SLE | 4 |
| 2020 | Participation Inequality and the 90-9-1 Principle in Open SourceabstractParticipation inequality is a major challenge in any shared-resource system. This is known as the "volunteer's dilemma": everybody wants to benefit from a resource without contributing, expecting others will do the work. This paper explores whether this problem also arises in open source development. In particular, we analyze the behaviour of GitHub users to assess whether the 90-9-1 principle applies to open source. We study it both from a qualitative (ratio of activity types) and a quantitative (total number of activities) perspective and we show that the principle does not hold if we consider the GitHub platform as a whole. Surprisingly, results are reversed depending on the specific projects we look at. We believe these results are useful to project managers to better understand and optimize the behaviour of the community around their projects and, as a side effect, they show the importance of diversity in sample selection. Mattia Gasparini, Robert Clarisó, Marco Brambilla 0001, Jordi Cabot |
OpenSym | 4 |
| 2020 | Scalable model views over heterogeneous modeling technologies and resources
Hugo Bruneliere, Florent Marchand de Kerchove, Gwendal Daniel, Sina Madani, Dimitrios S. Kolovos, Jordi Cabot |
Softw. Syst. Model. | 6 |
| 2020 | Grand challenges in model-driven engineering: an analysis of the state of the researchabstractAbstract In 2017 and 2018, two events were held—in Marburg, Germany, and San Vigilio di Marebbe, Italy, respectively—focusing on an analysis of the state of research, state of practice, and state of the art in model-driven engineering (MDE). The events brought together experts from industry, academia, and the open-source community to assess what has changed in research in MDE over the last 10 years, what challenges remain, and what new challenges have arisen. This article reports on the results of those meetings, and presents a set of grand challenges that emerged from discussions and synthesis. These challenges could lead to research initiatives for the community going forward. Antonio Bucchiarone, Jordi Cabot, Richard F. Paige, Alfonso Pierantonio |
Softw. Syst. Model. | 2 |
| 2020 | Scalable modeling technologies in the wild: an experience report on wind turbines control applications development
Abel Gómez 0001, Xabier Mendialdua, Konstantinos Barmpis, Gábor Bergmann, Jordi Cabot, Xabier De Carlos, Csaba Debreceni, Antonio Garmendia, Dimitrios S. Kolovos, Juan de Lara |
Softw. Syst. Model. | 5 |
| 2019 | Multi-platform Chatbot Modeling and Deployment with the Jarvis Framework
Gwendal Daniel, Jordi Cabot, Laurent Deruelle, Mustapha Derras |
CAiSE | 2 |
| 2019 | A Systematic Approach to Generate Diverse Instantiations for Conceptual Schemas
Loli Burgueño, Jordi Cabot, Robert Clarisó, Martin Gogolla |
ER | 2 |
| 2019 | Belief uncertainty in software modelsabstractThis paper discusses the representation of Belief Uncertainty in software models. This kind of uncertainty refers to the situation in which the modeler, or any other belief agent, is uncertain about the behavior of the system, or the statements that the model expresses about it. In this work, we propose to assign a degree of belief to model statements (let they be constraints, or any other model expression), which is expressed by a probability (called credence, in statistical terms) that represents a quantification of such a subjective degree of belief. We discuss how it can be represented using current modeling notations, and how to operate with it in order to make informed decisions. Loli Burgueño, Robert Clarisó, Jordi Cabot, Sébastien Gérard, Antonio Vallecillo |
MiSE@ICSE | 3 |
| 2019 | An LSTM-Based Neural Network Architecture for Model TransformationsabstractModel transformations are a key element in any model-driven engineering approach. But writing them is a time-consuming and error-prone activity that requires specific knowledge of the transformation language semantics. We propose to take advantage of the advances in Artificial Intelligence and, in particular Long Short-Term Memory Neural Networks (LSTM), to automatically infer model transformations from sets of input-output model pairs. Once the transformation mappings have been learned, the LSTM system is able to autonomously transform new input models into their corresponding output models without the need of writing any transformation-specific code. We evaluate the correctness and performance of our approach and discuss its advantages and limitations. Loli Burgueño, Jordi Cabot, Sébastien Gérard |
MoDELS | 2 |
| 2019 | UMLto[No]SQL: Mapping Conceptual Schemas to Heterogeneous DatastoresabstractThe 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. Gwendal Daniel, Abel Gómez 0001, Jordi Cabot |
RCIS | 3 |
| 2019 | Analysis and modeling of the governance in general programming languagesabstractGeneral Programming Languages (GPLs) continuously evolve to adapt to the ever changing technology landscape. The evolution is rooted on technical aspects but it is ultimately decided by the group of people governing the language and working together to solve, vote and approve the new language extensions and modifications. As in any community, governance rules are used to manage the community, help to prioritize their tasks and come to a decision. Typically, these rules specify the decision-making mechanism used in the project, thus contributing to its long-term sustainability by clarifying how core language developers (external contributors and even end-users of the language) can work together. Despite their importance, this core topic has been largely ignored in the study of GPLs. In this paper we study eight well-known GPLs and analyze how they govern their evolution. We believe this study helps to clarify the different approaches GPLs use in this regard. These governance models, depicted as a feature model, can then be reused and mixed by developers of new languages to define their own governance. Javier Luis Cánovas Izquierdo, Jordi Cabot |
SLE | 2 |
| 2019 | Analyzing rich-club behavior in open source projectsabstractThe network of collaborations in an open source project can reveal relevant emergent properties that influence its prospects of success. In this work, we analyze open source projects to determine whether they exhibit a rich-club behavior, i.e., a phenomenon where contributors with a high number of collaborations (i.e., strongly connected within the collaboration network) are likely to cooperate with other well-connected individuals. The presence or absence of a rich-club has an impact on the sustainability and robustness of the project. Mattia Gasparini, Javier Luis Cánovas Izquierdo, Robert Clarisó, Marco Brambilla 0001, Jordi Cabot |
OpenSym | 5 |
| 2019 | A feature-based survey of model view approaches
Hugo Bruneliere, Erik Burger, Jordi Cabot, Manuel Wimmer |
Softw. Syst. Model. | 3 |
| 2019 | Advanced prefetching and caching of models with PrefetchML
Gwendal Daniel, Gerson Sunyé, Jordi Cabot |
Softw. Syst. Model. | 3 |
| 2019 | Smart Bound Selection for the Verification of UML/OCL Class DiagramsabstractCorrectness of UML class diagrams annotated with OCL constraints can be checked using bounded verification techniques, e.g., SAT or constraint programming (CP) solvers. Bounded verification detects faults efficiently but, on the other hand, the absence of faults does not guarantee a correct behavior outside the bounded domain. Hence, choosing suitable bounds is a non-trivial process as there is a trade-off between the verification time (faster for smaller domains) and the confidence in the result (better for larger domains). Unfortunately, bounded verification tools provide little support in the bound selection process. In this paper, we present a technique that can be used to (i) automatically infer verification bounds whenever possible, (ii) tighten a set of bounds proposed by the user and (iii) guide the user in the bound selection process. This approach may increase the usability of UML/OCL bounded verification tools and improve the efficiency of the verification process. Robert Clarisó, Carlos A. González, Jordi Cabot |
IEEE Trans. Software Eng. | 3 |
| 2018 | Automatic Generation of Test Cases for REST APIs: A Specification-Based ApproachabstractThe REpresentation State Transfer (REST) has gained momentum as the preferred technique to design Web APIs. REST allows building loosely coupled systems by relying on HTTP and the Web-friendly format JSON. However, REST is not backed by any standard or specification to describe how to create/consume REST APIs, thus creating new challenges for their integration, testing and verification. To face this situation, several specification formats have been proposed (e.g., OpenAPI, RAML, and API Blueprint), which can help automate tasks in REST API development (e.g., testing) and consumption (e.g., SDKs generation). In this paper we focus on automated REST API testing relying on API specifications, and particularly the OpenAPI one. We propose an approach to generate specification-based test cases for REST APIs to make sure that such APIs meet the requirements defined in their specifications. We provide a proof-of-concept tool implementing our approach, which we have validated with 91 OpenAPI definitions. Our experiments show that the generated test cases cover on average 76.5% of the elements included in the OpenAPI definitions. Furthermore, our experiments also reveal that 40% of the tested APIs fail. Hamza Ed-Douibi, Javier Luis Cánovas Izquierdo, Jordi Cabot |
EDOC | 3 |
| 2018 | TemporalEMF: A Temporal Metamodeling Framework
Abel Gómez 0001, Jordi Cabot, Manuel Wimmer |
ER | 2 |
| 2018 | Automatic Generation of Security Compliant (Virtual) Model Views
Salvador Martínez Perez, Alexis Fouche, Sébastien Gérard, Jordi Cabot |
ER | 4 |
| 2018 | OpenAPItoUML: A Tool to Generate UML Models from OpenAPI Definitions
Hamza Ed-Douibi, Javier Luis Cánovas Izquierdo, Jordi Cabot |
ICWE | 3 |
| 2018 | A Feature-based Survey of Model View ApproachesabstractNo abstract available. Hugo Bruneliere, Erik Burger, Jordi Cabot, Manuel Wimmer |
MoDELS | 3 |
| 2018 | Towards Scalable Model Views on Heterogeneous Model ResourcesabstractWhen engineering complex systems, models are used to represent various systems aspects. These models are often heterogeneous in terms of modeling language, provenance, number or scale. They can be notably managed by different persistence frameworks adapted to their nature. As a result, the information relevant to engineers is usually split into several interrelated models. To be useful in practice, these models need to be integrated together to provide global views over the system under study. Model view approaches have been proposed to tackle such an issue. They provide an unification mechanism to combine and query heterogeneous models in a transparent way. These views usually target specific engineering tasks such as system design, monitoring, evolution, etc. In our present context, the [email protected] industrially-supported European initiative defines a set of large-scale use cases where model views can be beneficial for tracing runtime and design time data. However, existing model view solutions mostly rely on in-memory constructs and low-level modeling APIs that have not been designed to scale in the context of large models stored in different kinds of sources. This paper presents the current status of our work towards a general solution to efficiently support scalable model views on heterogeneous model resources. It describes our integration approach between model view and model persistence frameworks. This notably implies the refinement of the view framework for the construction of large views from multiple model storage solutions. This also requires to study how parts of queries can be computed on the contributing models rather than on the view. Our solution has been benchmarked on a practical large-scale use case from the [email protected] project, implementing a runtime -- design time feedback loop. The corresponding EMF-based tooling support and modeling resources are fully available online. Hugo Bruneliere, Florent Marchand de Kerchove, Gwendal Daniel, Jordi Cabot |
MoDELS | 4 |
| 2018 | Robust Hashing for ModelsabstractThe increased adoption of model-driven engineering (MDE) in complex industrial environments highlights the value of a company's modeling artefacts. As such, any MDE ecosystem must provide mechanisms to both, protect, and take full advantage of these valuable assets. Salvador Martínez Perez, Sébastien Gérard, Jordi Cabot |
MoDELS | 3 |
| 2018 | Towards a Language Server Protocol Infrastructure for Graphical ModelingabstractThe development of modern IDEs is still a challenging and time-consuming task, which requires implementing the support for language-specific features such as syntax highlighting or validation. When the IDE targets a graphical language, its development becomes even more complex due to the rendering and manipulation of the graphical notation symbols. To simplify the development of IDEs, the Language Server Protocol (LSP) proposes a decoupled approach based on language-agnostic clients and language-specific servers. LSP clients communicate changes to LSP servers, which validate and store language instances. However, LSP only addresses textual languages (i.e., character as atomic unit) and neglects the support for graphical ones (i.e., nodes/edges as atomic units). In this paper, we present our vision to decouple graphical language IDEs discussing the alternatives for integrating LSP's ideas in their development. Moreover, we propose a novel LSP infrastructure to simplify the development of new graphical modeling tools, in which Web technologies may be used for editor front-ends while leveraging existing modeling frameworks to build language servers. Roberto Rodríguez-Echeverría, Javier Luis Cánovas Izquierdo, Manuel Wimmer, Jordi Cabot |
MoDELS | 4 |
| 2018 | Model-driven development of OData services: An application to relational databasesabstractOpen Data Protocol (OData) is a protocol to facilitate the publication and consumption of queryable and interoperable data-driven online services. OData is based on the use of RESTful APIs derived from a data model plus a URL-based query language to identify and filter the data described in such model. Due to its maturity and ease of use for end-users and client applications, OData has become the natural choice to publish datasets online. Still, creating OData services is a tedious and time-consuming task, since data providers should (1) represent their data models in OData format, (2) implement the business logic to transform OData requests to SQL statements (or the target storage technology of choice), and (3) de/serialize the exchanged messages conforming to the OData protocol. This paper presents a model-based approach aimed at (semi)automating all these steps. From an initial UML class diagram, we derive all the artifacts required to have an OData service up and running on top of a relational database conforming to the model definition. A prototypical implementation of the approach is provided. Hamza Ed-Douibi, Javier Luis Cánovas Izquierdo, Jordi Cabot |
RCIS | 3 |
| 2018 | Special issue on quality in Model-Driven Engineering
Vasco Amaral 0001, Jordi Cabot, Miguel Goulão |
Comput. Lang. Syst. Struct. | 2 |
| 2018 | Distributing relational model transformation on MapReduce
Amine Benelallam, Abel Gómez 0001, Massimo Tisi, Jordi Cabot |
J. Syst. Softw. | 4 |
| 2018 | Gitana: A software project inspector
Valerio Cosentino, Javier Luis Cánovas Izquierdo, Jordi Cabot |
Sci. Comput. Program. | 3 |
| 2018 | Introduction to the special issue on the 18th international conference on model driven engineering languages and systems (MODELS'15)
Jordi Cabot, Alexander Egyed |
Softw. Syst. Model. | 1 |
| 2017 | The MegaM@Rt2 ECSEL Project: MegaModelling at Runtime - Scalable Model-Based Framework for Continuous Development and Runtime Validation of Complex SystemsabstractA major challenge for the European electronic industry is to enhance productivity while reducing costs and ensuring quality in development, integration and maintenance. Model-Driven Engineering (MDE) principles and techniques have already shown promising capabilities but still need to scale 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-time phases (design time and runtime) is another challenge facing scalability of MDE. This paper presents an overview of the ECSEL 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 & continuous development, 2) related runtime analysis and 3) global model & traceability management, respectively. The diverse industrial use cases (covering domains such as aeronautics, railway, construction and telecommunications) will integrate and apply such a framework that shall demonstrate the validation of the MegaM@Rt2 solution. Wasif Afzal, Hugo Bruneliere, Davide Di Ruscio, Andrey Sadovykh, Silvia Mazzini, Eric Cariou, Dragos Truscan, Jordi Cabot, Daniel Field, Luigi Pomante, Pavel Smrz |
DSD | 8 |
| 2017 | Example-Driven Web API Specification Discovery
Hamza Ed-Douibi, Javier Luis Cánovas Izquierdo, Jordi Cabot |
ECMFA | 3 |
| 2017 | On the Opportunities of Scalable Modeling Technologies: An Experience Report on Wind Turbines Control Applications Development
Abel Gómez 0001, Xabier Mendialdua, Gábor Bergmann, Jordi Cabot, Csaba Debreceni, Antonio Garmendia, Dimitrios S. Kolovos, Juan de Lara, Salvador Trujillo |
ECMFA | 4 |
| 2017 | Traceability Mappings as a Fundamental Instrument in Model Transformations
Zinovy Diskin, Abel Gómez 0001, Jordi Cabot |
FASE | 3 |
| 2017 | A UML Profile for OData Web APIs
Hamza Ed-Douibi, Javier Luis Cánovas Izquierdo, Jordi Cabot |
ICWE | 3 |
| 2017 | Gremlin-ATL: a scalable model transformation frameworkabstractIndustrial use of Model Driven Engineering techniques has emphasized the need for efficiently store, access, and transform very large models. While scalable persistence frameworks, typically based on some kind of NoSQL database, have been proposed to solve the model storage issue, the same level of performance improvement has not been achieved for the model transformation problem. Existing model transformation tools (such as the well-known ATL) often require the input models to be loaded in memory prior to the start of the transformation and are not optimized to benefit from lazy-loading mechanisms, mainly due to their dependency on current low-level APIs offered by the most popular modeling frameworks nowadays. In this paper we present Gremlin-ATL, a scalable and efficient model-to-model transformation framework that translates ATL transformations into Gremlin, a query language supported by several NoSQL databases. With Gremlin-ATL, the transformation is computed within the database itself, bypassing the modeling framework limitations and improving its performance both in terms of execution time and memory consumption. Tool support is available online. Gwendal Daniel, Frédéric Jouault, Gerson Sunyé, Jordi Cabot |
ASE | 4 |
| 2017 | Translating Target to Source Constraints in Model-to-Model TransformationsabstractModel transformations are used to automate model manipulation in Model-Driven Engineering (MDE). In particular, model-to-model transformations produce target models (conformant to a target meta-model) from source ones (conformant to a source meta-model). While transformation correctness is crucial in MDE, developing transformations is error-prone due to the difficulty in testing them. This problem is further aggravated if the source and target meta-models contain OCL integrity constraints, as every transformed source model should satisfy the target integrity constraints.In order to attack this problem, we present a novel method that translates target OCL constraints to the source meta-model using the transformation definition. This way, if a source model satisfies the advanced constraint, the transformed model will satisfy the target constraint. The method has been implemented for the ATL transformation language and integrated with the anATLyzer tool. We show its benefits in combination with model finders, and the promising results of its validation using mutation techniques and transformations developed by third parties. Jesús Sánchez Cuadrado, Esther Guerra, Juan de Lara, Robert Clarisó, Jordi Cabot |
MoDELS | 5 |
| 2017 | An Empirical Study on the Maturity of the Eclipse Modeling EcosystemabstractSince the early days of Model-driven Engineering (MDE), our community has been discussing the reasons why MDE had not quickly became mainstream. It is now clear the answer is a mix of technical and social factors, but among the former, the lack of maturity of MDE tools is often mentioned. The goal of this paper is to explore the question of whether this lack of maturity is actually true. We do so by comparing the maturity of over a hundred modeling and non-modeling projects living together in the Eclipse ecosystem. In both cases, we use the word project to refer to a variety of tools, libraries and other artefacts to build and manipulate software components, either at the model or code level. Our maturity model is based on code-centric and community metrics that we evaluate on the repository data for both kinds of projects. Their incubation status is also considered in the assessment. Results show that there are indeed differences between modeling and non-modeling projects, though less than we expected when setting up the study. Moreover, while the incubation status clearly separates non-modeling projects, the same is not true for modeling projects which seem to remain much more stable across their lifespan. We believe our results help to have a better perspective on maturity of modeling support nowadays and provide ideas for further analysis towards their improvement. Javier Luis Cánovas Izquierdo, Valerio Cosentino, Jordi Cabot |
MoDELS | 3 |
| 2017 | Better call the crowd: using crowdsourcing to shape the notation of domain-specific languagesabstractCrowdsourcing has emerged as a novel paradigm where humans are employed to perform computational tasks. In the context of Domain-Specific Modeling Language (DSML) development, where the involvement of end-users is crucial to assure that the resulting language satisfies their needs, crowdsourcing tasks could be defined to assist in the language definition process. By relying on the crowd, it is possible to show an early version of the language to a wider spectrum of users, thus increasing the validation scope and eventually promoting its acceptance and adoption. We propose a systematic method for creating crowdsourcing campaigns aimed at refining the graphical notation of DSMLs. The method defines a set of steps to identify, create and order the questions for the crowd. As a result, developers are provided with a set of notation choices that best fit end-users' needs. We also report on an experiment validating the approach. Marco Brambilla 0001, Jordi Cabot, Javier Luis Cánovas Izquierdo, Andrea Mauri 0001 |
SLE | 2 |
| 2017 | Model-based analysis of Java EE web security misconfigurations
Salvador Martínez Perez, Valerio Cosentino, Jordi Cabot |
Comput. Lang. Syst. Struct. | 3 |
| 2017 | Foreword to the special section on negative results in software engineering
Richard F. Paige, Jordi Cabot, Neil A. Ernst |
Empir. Softw. Eng. | 2 |
| 2017 | NeoEMF: A multi-database model persistence framework for very large models
Gwendal Daniel, Gerson Sunyé, Amine Benelallam, Massimo Tisi, Yoann Vernageau, Abel Gómez 0001, Jordi Cabot |
Sci. Comput. Program. | 7 |
| 2016 | MetaScience: An Holistic Approach for Research Modeling
Valerio Cosentino, Javier Luis Cánovas Izquierdo, Jordi Cabot |
ER | 3 |
| 2016 | UMLtoGraphDB: Mapping Conceptual Schemas to Graph Databases
Gwendal Daniel, Gerson Sunyé, Jordi Cabot |
ER | 3 |
| 2016 | fREX: fUML-based reverse engineering of executable behavior for software dynamic analysisabstractReverse engineering is still a challenging process, notably because of the growing number, heterogeneity, complexity, and size of software applications. While the analysis of their structural elements has been intensively investigated, there is much less work covering the reverse engineering of their behavioral aspects. To further stimulate research on this topic, we propose fREX as an open framework for reverse engineering of executable behaviors from existing software code bases. fREX currently provides model discovery support for behavior embedded in Java code, employs the OMG's fUML standard language as executable pivot format for dynamic analysis, and uses model transformations to bridge Java and fUML. Thus, fREX also aims at contributing to explore the relationship between programming languages (e.g., Java) and executable modeling languages (e.g., fUML). In this paper, we describe the proposed fREX framework and its current reverse engineering support covering some core Java features. In addition we discuss how the framework can be used for performing different kinds of dynamic analysis on existing software, as well as how it could be extended in the future. Alexander Bergmayr, Hugo Bruneliere, Jordi Cabot, Jokin García, Tanja Mayerhofer, Manuel Wimmer |
MiSE@ICSE | 3 |
| 2016 | Model-based analysis of Java EE web security configurationsabstractThe widespread use of Java EE web applications as a means to provide distributed services to remote clients imposes strong security requirements, so that the resources managed by these applications remain protected from unauthorized disclosures and manipulations. For this purpose, the Java EE framework provides developers with mechanisms to define access-control policies. Unfortunately, the variety and complexity of the provided security configuration mechanisms cause the definition and manipulation of a security policy to be complex and error prone. As security requirements are not static, and thus, implemented policies must be changed and reviewed often, discovering and representing the policy at an appropriate abstraction level to enable their understanding and reenginering appears as a critical requirement. To tackle this problem, this paper presents a (model-based) approach aimed to help security experts to visualize, (automatically) analyse and manipulate web security policies. Salvador Martínez Perez, Valerio Cosentino, Jordi Cabot |
MiSE@ICSE | 3 |
| 2016 | PrefetchML: a framework for prefetching and caching models
Gwendal Daniel, Gerson Sunyé, Jordi Cabot |
MoDELS | 3 |
| 2016 | Findings from GitHub: methods, datasets and limitationsabstractGitHub, one of the most popular social coding platforms, is the platform of reference when mining Open Source repositories to learn from past experiences. In the last years, a number of research papers have been published reporting findings based on data mined from GitHub. As the community continues to deepen in its understanding of software engineering thanks to the analysis performed on this platform, we believe it is worthwhile to reflect how research papers have addressed the task of mining GitHub repositories over the last years. In this regard, we present a meta-analysis of 93 research papers which addresses three main dimensions of those papers: i) the empirical methods employed, ii) the datasets they used and iii) the limitations reported. Results of our meta-analysis show some concerns regarding the dataset collection process and size, the low level of replicability, poor sampling techniques, lack of longitudinal studies and scarce variety of methodologies. Valerio Cosentino, Javier Luis Cánovas Izquierdo, Jordi Cabot |
MSR | 3 |
| 2016 | Mogwaï: A framework to handle complex queries on large modelsabstractWhile Model Driven Engineering is gaining more industrial interest, scalability issues when managing large models have become a major problem in current modeling frameworks. Scalable model persistence has been achieved by using NoSQL backends for model storage, but existing modeling framework APIs have not evolved accordingly, limiting NoSQL query performance benefits. In this paper we present the Mogwaï, a scalable and efficient model query framework based on a direct translation of OCL queries to Gremlin, a query language supported by several NoSQL databases. Generated Gremlin expressions are computed inside the database itself, bypassing limitations of existing framework APIs and improving overall performance, as confirmed by our experimental results showing an improvement of execution time up to a factor of 20 and a reduction of the memory overhead up to a factor of 75 for large models. Gwendal Daniel, Gerson Sunyé, Jordi Cabot |
RCIS | 3 |
| 2016 | Efficient model partitioning for distributed model transformations
Amine Benelallam, Massimo Tisi, Jesús Sánchez Cuadrado, Juan de Lara, Jordi Cabot |
SLE | 5 |
| 2016 | Runtime support for rule-based access-control evaluation through model-transformation
Salvador Martínez Perez, Jokin García, Jordi Cabot |
SLE | 3 |
| 2016 | Lightweight and static verification of UML executable models
Elena Planas, Jordi Cabot, Cristina Gómez 0001 |
Comput. Lang. Syst. Struct. | 2 |
| 2016 | Backwards reasoning for model transformations: Method and applications
Robert Clarisó, Jordi Cabot, Esther Guerra, Juan de Lara |
J. Syst. Softw. | 2 |
| 2016 | JSONDiscoverer: Visualizing the schema lurking behind JSON documents
Javier Luis Cánovas Izquierdo, Jordi Cabot |
Knowl. Based Syst. | 2 |
| 2016 | Feature-based classification of bidirectional transformation approaches
Soichiro Hidaka, Massimo Tisi, Jordi Cabot, Zhenjiang Hu 0002 |
Softw. Syst. Model. | 3 |
| 2015 | On Lightweight Metamodel Extension to Support Modeling Tools Agility
Hugo Bruneliere, Jokin García, Philippe Desfray, Djamel Eddine Khelladi, Regina Hebig, Reda Bendraou, Jordi Cabot |
ECMFA | 7 |
| 2015 | EMF Views: A View Mechanism for Integrating Heterogeneous Models
Hugo Bruneliere, Jokin García, Manuel Wimmer, Jordi Cabot |
ER | 4 |
| 2015 | Gitana: A SQL-Based Git Repository Inspector
Valerio Cosentino, Javier Luis Cánovas Izquierdo, Jordi Cabot |
ER | 3 |
| 2015 | Map-Based Transparent Persistence for Very Large Models
Abel Gómez 0001, Massimo Tisi, Gerson Sunyé, Jordi Cabot |
FASE | 4 |
| 2015 | Enabling the Definition and Enforcement of Governance Rules in Open Source SystemsabstractGovernance rules in software development projects help to prioritize and manage their development tasks, and contribute to the long-term sustainability of the project by clarifying how core and external contributors should collaborate in order to advance the project during its whole lifespan. Despite their importance, specially in Open Source Software (OSS) projects, these rules are usually implicit or scattered in the project documentation/tools (e.g., Tracking-systems or forums), hampering the correct understanding of the development process. We propose to enable the explicit definition and enforcement of governance rules for OSS projects. We believe this brings several important benefits, including improvements in the transparency of the process, its traceability and the semi-automation of the governance itself. Our approach has been implemented on top of My Lyn, a project-management Eclipse plug-in supporting most popular tracking-systems. Javier Luis Cánovas Izquierdo, Jordi Cabot |
ICSE (2) | 2 |
| 2015 | Handling non-functional requirements in Model-Driven Development: An ongoing industrial surveyabstractModel-Driven Development (MDD) is no longer a novel development paradigm. It has become mature from a research perspective and recent studies show its adoption in industry. Still, some issues remain a challenge. Among them, we are interested in the treatment of non-functional requirements (NFRs) in MDD processes. Very few MDD approaches have been reported to deal with NFRs (and they do it in a limited way). However, it is clear that NFRs need to be considered somehow in the final product of the MDD process. To better understand how NFRs are integrated into the existing MDD approaches, we have initiated the NFR4MDD project, a multi-national empirical study, based on interviews with companies working on MDD projects. Our project aims at surveying the state of the practice for this topic. In this paper, we summarize our research protocol and present the current status of our study. The discussion will focus on the peculiarities of our study's context and organization involving about 20 researchers from 8 European countries. David Ameller, Xavier Franch, Cristina Gómez 0001, João Araújo 0001, Richard Berntsson-Svensson, Stefan Biffl, Jordi Cabot, Vittorio Cortellessa, Maya Daneva, Daniel Méndez 0001, Ana Moreira 0001, Henry Muccini, Antonio Vallecillo, Manuel Wimmer, Vasco Amaral 0001, Hugo Bruneliere, Loli Burgueño, Miguel Goulão, Bernhard Schätz, Sabine Teufl |
RE | 7 |
| 2015 | Model-Driven Integration and Analysis of Access-control Policies in Multi-layer Information Systems
Salvador Martínez Perez, Joaquín García 0001, Frédéric Cuppens, Nora Cuppens, Jordi Cabot |
SEC | 5 |
| 2015 | Towards Domain Refinement for UML/OCL Bounded Verification
Robert Clarisó, Carlos A. González, Jordi Cabot |
SEFM | 3 |
| 2015 | Distributed model-to-model transformation with ATL on MapReduceabstractEfficient processing of very large models is a key requirement for the adoption of Model-Driven Engineering (MDE) in some industrial contexts. One of the central operations in MDE is rule-based model transformation (MT). It is used to specify manipulation operations over structured data coming in the form of model graphs. However, being based on computationally expensive operations like subgraph isomorphism, MT tools are facing issues on both memory occupancy and execution time while dealing with the increasing model size and complexity. One way to overcome these issues is to exploit the wide availability of distributed clusters in the Cloud for the distributed execution of MT. In this paper, we propose an approach to automatically distribute the execution of model transformations written in a popular MT language, ATL, on top of a well-known distributed programming model, MapReduce. We show how the execution semantics of ATL can be aligned with the MapReduce computation model. We describe the extensions to the ATL transformation engine to enable distribution, and we experimentally demonstrate the scalability of this solution in a reverse-engineering scenario. Amine Benelallam, Abel Gómez 0001, Massimo Tisi, Jordi Cabot |
SLE | 4 |
| 2015 | An empirical study on simplification of business process modeling languagesabstractThe adaptation, specially by means of a simplification process, of modeling languages is a common practice due to the overwhelming complexity of most standard languages (like UML or BPMN), not needed for typical usage scenarios while at the same time companies don't want to go to the extremes of defining a brand new domain specific language. Unfortunately, there is a lack of examples of such simplification experiences that can be used as a reference for future projects. In this paper we report on a field study aimed at the simplification of a business process modeling language (namely, BPMN) for making it suitable to end users. Our simplification process relies on a set of steps that encompass the selection of the language elements to simplify, generation of a set of language variants for them, measurement of effectiveness of the variants through user modeling sessions and extraction of quantitative and qualitative data for guiding the selection of the best language refinement. We describe the experimental setting, the output of the various steps of the analysis, and the results we obtained from users. Finally, we conclude with an outlook towards the generalization of the approach and consolidation of a language simplification method. Eric Umuhoza, Marco Brambilla 0001, Davide Ripamonti, Jordi Cabot |
SLE | 4 |
| 2015 | Exploring the use of labels to categorize issues in Open-Source Software projectsabstractInternational audience Jordi Cabot, Javier Luis Cánovas Izquierdo, Valerio Cosentino, Belen Rolandi |
SANER | 1 |
| 2015 | Assessing the bus factor of Git repositoriesabstractSoftware development projects face a lot of risks (requirements inflation, poor scheduling, technical problems, etc.). Underestimating those risks may put in danger the project success. One of the most critical risks is the employee turnover, that is the risk of key personnel leaving the project. A good indicator to evaluate this risk is to measure the concentration of information in individual developers. This is also popularly known as the bus factor (“number of key developers who would need to be incapacitated, i.e. hit by a bus, to make a project unable to proceed”). Despite the simplicity of the concept, calculating the actual bus factor for specific projects can quickly turn into an error-prone and time-consuming activity as soon as the size of the project and development team increase. In order to help project managers to assess the bus factor of their projects, in this paper we present a tool that, given a Git-based repository, automatically measures the bus factor for any file, directory and branch in the repository and for the project itself. You can also simulate with the tool what would happen to the project (e.g., which files would become orphans) if one or more developers disappeared. Valerio Cosentino, Javier Luis Cánovas Izquierdo, Jordi Cabot |
SANER | 3 |
| 2015 | GiLA: GitHub label analyzerabstractReporting bugs, asking for new features and in general giving any kind of feedback is a common way to contribute to an Open-Source Software (OSS) project. In GitHub, the largest code hosting service for OSS, this feedback is typically expressed as new issues for the project managed by an issue-tracking system available in each new project repository. Among other features, the issue tracker allows creating and assigning labels to issues with the goal of helping the project community to better classify and manage those issues (e.g., facilitating the identification of issues for top priority components or candidate developers that could solve them). Nevertheless, as the project grows a manual browsing of the project issues is no longer feasible. In this paper we present GiLA, a tool which generates a set of visualizations to facilitate the analysis of issues in a project depending on their label-based categorization. We believe our visualizations are useful to see the most popular labels (and their relationships) in a project, identify the most active community members for those labels and compare the typical issue evolution for each label category. Javier Luis Cánovas Izquierdo, Valerio Cosentino, Belen Rolandi, Alexandre Bergel, Jordi Cabot |
SANER | 5 |
| 2015 | Lightweight string reasoning in model finding
Fabian Büttner, Jordi Cabot |
Softw. Syst. Model. | 2 |
| 2015 | Corpus-based analysis of domain-specific languages
Robert Tairas, Jordi Cabot |
Softw. Syst. Model. | 2 |
| 2014 | An Adapter-Based Approach to Co-evolve Generated SQL in Model-to-Text TransformationsabstractInternational audience Jokin García, Oscar Díaz 0001, Jordi Cabot |
CAiSE | 3 |
| 2014 | Composing JSON-Based Web APIs
Javier Luis Cánovas Izquierdo, Jordi Cabot |
ICWE | 2 |
| 2014 | Improving the Scalability of Web Applications with Runtime Transformations
Esteban Robles Luna, José Matías Rivero, Matias Urbieta, Jordi Cabot |
ICWE | 4 |
| 2014 | MoDisco: A model driven reverse engineering framework
Hugo Bruneliere, Jordi Cabot, Grégoire Dupé, Frédéric Madiot |
Inf. Softw. Technol. | 2 |
| 2014 | Formal verification of static software models in MDE: A systematic review
Carlos A. González, Jordi Cabot |
Inf. Softw. Technol. | 2 |
| 2014 | On the verification of UML/OCL class diagrams using constraint programming
Jordi Cabot, Robert Clarisó, Daniel Riera |
J. Syst. Softw. | 1 |
| 2013 | Automating Inference of OCL Business Rules from User ScenariosabstractUser Scenarios have been advocated as an effective means to capture requirements by describing the system-to-be at the instance or example level. This instance-level information is then used to infer a possible software specification consistent with the provided valid and invalid scenarios. So far existing approaches have often focused on the generation of static models but have omitted the inference of business rules that could complement the static models and improve the precision of the software specification. In this sense this paper provides a first set of invariant inference patterns that are applied on valid and invalid snapshots in order to generate OCL~(Object Constraint Language) integrity constraints that the system should always satisfy. We strengthen the confidence of inferred results based on the user's feedback of generated examples and counterexamples for the considered constraint. The approach is realized with a prolog-based tool that could support the designer to effectively define OCL integrity constraints in a semi-automatic way. Duc-Hanh Dang, Jordi Cabot |
APSEC (1) | 2 |
| 2013 | Enabling the Collaborative Definition of DSMLs
Javier Luis Cánovas Izquierdo, Jordi Cabot |
CAiSE | 2 |
| 2013 | Engaging End-Users in the Collaborative Development of Domain-Specific Modelling Languages
Javier Luis Cánovas Izquierdo, Jordi Cabot, Jesús J. López-Fernández, Jesús Sánchez Cuadrado, Esther Guerra, Juan de Lara |
CDVE | 2 |
| 2013 | Reverse Engineering of Database Security Policies
Salvador Martínez Perez, Valerio Cosentino, Jordi Cabot, Frédéric Cuppens |
DEXA (2) | 3 |
| 2013 | Discovering Implicit Schemas in JSON Data
Javier Luis Cánovas Izquierdo, Jordi Cabot |
ICWE | 2 |
| 2013 | Model-Driven Extraction and Analysis of Network Security Policies
Salvador Martínez Perez, Joaquín García 0001, Frédéric Cuppens, Nora Cuppens, Jordi Cabot |
MoDELS | 5 |
| 2013 | Management of stateful firewall misconfiguration
Joaquín García 0001, Frédéric Cuppens, Nora Cuppens, Salvador Martínez Perez, Jordi Cabot |
Comput. Secur. | 5 |
| 2012 | Lightweight String Reasoning for OCL
Fabian Büttner, Jordi Cabot |
ECMFA | 2 |
| 2012 | Verification of ATL Transformations Using Transformation Models and Model Finders
Fabian Büttner, Marina Egea, Jordi Cabot, Martin Gogolla |
ICFEM | 3 |
| 2012 | Community-driven language developmentabstractSoftware development processes are becoming more collaborative, trying to integrate end-users as much as possible. The idea is to advance towards a community-driven process where all actors (both technical and nontechnical) work together to ensure that the system-to-be will satisfy all expectations. This seems specially appropriate in the field of Domain-Specific Languages (DSLs) typically designed to facilitate the development of software for a particular domain. DSLs offer constructs closer to the vocabulary of the domain which simplifies the adoption of the DSL by endusers. Interestingly enough, the development of DSLs is not a collaborative process itself. In this sense, the goal of this paper is to propose a collaborative infrastructure for the development of DSLs where end-users have a direct and active participation in the evolution of the language. This infrastructure is based on Collaboro, a DSL to represent change proposals, possible solutions and comments arisen during the development and evolution of a language. Javier Luis Cánovas Izquierdo, Jordi Cabot |
MiSE | 2 |
| 2012 | Static Analysis of Model Transformations for Effective Test GenerationabstractModel transformations are an integral part of several computing systems that manipulate interconnected graphs of objects called models in an input domain specified by a metamodel and a set of invariants. Test models are used to look for faults in a transformation. A test model contains a specific set of objects, their interconnections and values for their attributes. Can we automatically generate an effective set of test models using knowledge from the transformation? We present a white-box testing approach that uses static analysis to guide the automatic generation of test inputs for transformations. Our static analysis uncovers knowledge about how the input model elements are accessed by transformation operations. This information is called the input metamodel footprint due to the transformation. We transform footprint, input metamodel, its invariants, and transformation pre-conditions to a constraint satisfaction problem in Alloy. We solve the problem to generate sets of test models containing traces of the footprint. Are these test models effective? With the help of a case study transformation we evaluate the effectiveness of these test inputs. We use mutation analysis to show that the test models generated from footprints are more effective (97.62% avg. mutation score) in detecting faults than previously developed approaches based on input domain coverage criteria (89.9% avg.) and unguided generation (70.1% avg.). Jean-Marie Mottu, Sagar Sen, Massimo Tisi, Jordi Cabot |
ISSRE | 4 |
| 2012 | On Verifying ATL Transformations Using 'off-the-shelf' SMT Solvers
Fabian Büttner, Marina Egea, Jordi Cabot |
MoDELS | 3 |
| 2012 | ATLTest: A White-Box Test Generation Approach for ATL Transformations
Carlos A. González, Jordi Cabot |
MoDELS | 2 |
| 2012 | How do software architects consider non-functional requirements: An exploratory studyabstractDealing with non-functional requirements (NFRs) has posed a challenge onto software engineers for many years. Over the years, many methods and techniques have been proposed to improve their elicitation, documentation, and validation. Knowing more about the state of the practice on these topics may benefit both practitioners' and researchers' daily work. A few empirical studies have been conducted in the past, but none under the perspective of software architects, in spite of the great influence that NFRs have on daily architects' practices. This paper presents some of the findings of an empirical study based on 13 interviews with software architects. It addresses questions such as: who decides the NFRs, what types of NFRs matter to architects, how are NFRs documented, and how are NFRs validated. The results are contextualized with existing previous work. David Ameller, Claudia P. Ayala, Jordi Cabot, Xavier Franch |
RE | 3 |
| 2012 | API2MoL: Automating the building of bridges between APIs and Model-Driven Engineering
Javier Luis Cánovas Izquierdo, Frédéric Jouault, Jordi Cabot, Jesús García Molina |
Inf. Softw. Technol. | 3 |
| 2011 | MELO 2011 - 1st Workshop on Model-Driven Engineering, Logic and Optimization
Jordi Cabot, Patrick Albert, Grégoire Dupé, Marcos Didonet Del Fabro, Scott Uk-Jin Lee |
ECMFA | 1 |
| 2011 | An MDE-Based Approach for Solving Configuration Problems: An Application to the Eclipse Platform
Guillaume Doux, Patrick Albert, Gabriel Barbier, Jordi Cabot, Marcos Didonet Del Fabro, Scott Uk-Jin Lee |
ECMFA | 4 |
| 2011 | Lightweight Verification of Executable Models
Elena Planas, Jordi Cabot, Cristina Gómez 0001 |
ER | 2 |
| 2011 | Lazy Execution of Model-to-Model Transformations
Massimo Tisi, Salvador Martínez Perez, Frédéric Jouault, Jordi Cabot |
MoDELS | 4 |
| 2011 | Towards a General Composition Semantics for Rule-Based Model Transformation
Dennis Wagelaar, Massimo Tisi, Jordi Cabot, Frédéric Jouault |
MoDELS | 3 |
| 2011 | MoScript: A DSL for Querying and Manipulating Model Repositories
Wolfgang Kling, Frédéric Jouault, Dennis Wagelaar, Marco Brambilla 0001, Jordi Cabot |
SLE | 5 |
| 2011 | Cloning in DSLs: Experiments with OCL
Robert Tairas, Jordi Cabot |
SLE | 2 |
| 2011 | Generating operation specifications from UML class diagrams: A model transformation approach
Manoli Albert, Jordi Cabot, Cristina Gómez 0001, Vicente Pelechano |
Data Knowl. Eng. | 2 |
| 2010 | Situational Evaluation of Method Fragments: An Evidence-Based Goal-Oriented Approach
Hesam Chiniforooshan Esfahani, Eric S. K. Yu, Jordi Cabot |
CAiSE | 3 |
| 2010 | Towards Model Driven Tool Interoperability: Bridging Eclipse and Microsoft Modeling Tools
Hugo Bruneliere, Jordi Cabot, Cauê Clasen, Frédéric Jouault, Jean Bézivin |
ECMFA | 2 |
| 2010 | Specifying Aggregation Functions in Multidimensional Models with OCL
Jordi Cabot, Jose-Norberto Mazón, Jesús Pardillo, Juan Trujillo 0001 |
ER | 1 |
| 2010 | Tools for Modeling and Generating Safe Interface Interactions in Web Applications
Marco Brambilla 0001, Jordi Cabot, Michael Grossniklaus |
ICWE | 2 |
| 2010 | MoDisco: a generic and extensible framework for model driven reverse engineeringabstractInternational audience Hugo Bruneliere, Jordi Cabot, Frédéric Jouault, Frédéric Madiot |
ASE | 2 |
| 2010 | Adopting Agile Methods: Can Goal-Oriented Social Modeling Help?abstractThe heavy reliance on the human factor in agile methods poses new challenges for organizations intent on adopting them. Improper role assignment, neglected team dependencies, and overlooked required skills have all been reported as reasons for failures during the introduction of an agile method. Current process modelling languages are not designed for describing or analyzing such human-related issues, and thus, provide little assistance to organizations in the process of adopting an agile method. This paper advocates the use of goal-oriented modeling techniques for depicting social aspects of agile methods. These social models can be used to identify the key factors that contribute to the success or failure of an agile method, thus providing guidance early during the introduction of the method in an organization. The approach is illustrated using the Scrum process. Hesam Chiniforooshan Esfahani, Jordi Cabot, Eric S. K. Yu |
RCIS | 2 |
| 2010 | Dealing with Non-Functional Requirements in Model-Driven DevelopmentabstractThe impact of non-functional requirements (NFRs) over software systems has been widely documented. Consequently, cost-effective software production method shall provide means to integrate this type of requirements into the development process. In this vision paper we analyze this assumption over a particular type of software production paradigm: model-driven development (MDD). We report first the current state of MDD approaches with respect to NFRs and remark that, in general, NFRs are not addressed in MDD methods and processes, and we discuss the effects of this situation. Next, we outline a general framework that integrates NFRs into the core of the MDD process and provide a detailed comparison among all the MDD approaches considered. Last, we identify some research issues related to this framework. David Ameller, Xavier Franch, Jordi Cabot |
RE | 3 |
| 2010 | Lightweight Executability Analysis of Graph Transformation RulesabstractDomain Specific Visual Languages (DSVLs) play a cornerstone role in Model-Driven Engineering (MDE), where (domain specific) models are used to automate the production of the final application. Graph Transformation is a formal, visual, rule-based technique, which is increasingly used in MDE to express in-place model transformations like refactorings, animations and simulations. However, there is currently a lack of methods able to perform static analysis of rules, taking into account the DSVL meta-model integrity constraints. In this paper we propose a lightweight, efficient technique that performs static analysis of the weak executability of rules. The method determines if there is some scenario in which the rule can be safely applied, without breaking the meta-model constraints. If no such scenario exists, the method returns meaningful feedback that helps repairing the detected inconsistencies. Elena Planas, Jordi Cabot, Cristina Gómez 0001, Esther Guerra, Juan de Lara |
VL/HCC | 2 |
| 2010 | From UML/OCL to SBVR specifications: A challenging transformation
Jordi Cabot, Raquel Pau, Ruth Raventós |
Inf. Syst. | 1 |
| 2010 | Verification and validation of declarative model-to-model transformations through invariants
Jordi Cabot, Robert Clarisó, Esther Guerra, Juan de Lara |
J. Syst. Softw. | 1 |
| 2010 | Automatic generation of basic behavior schemas from UML class diagrams
Manoli Albert, Jordi Cabot, Cristina Gómez 0001, Vicente Pelechano |
Softw. Syst. Model. | 2 |
| 2010 | A UML/OCL framework for the analysis of graph transformation rules
Jordi Cabot, Robert Clarisó, Esther Guerra, Juan de Lara |
Softw. Syst. Model. | 1 |
| 2009 | Verifying Action Semantics Specifications in UML Behavioral Models
Elena Planas, Jordi Cabot, Cristina Gómez 0001 |
CAiSE | 2 |
| 2009 | Modelling Safe Interface Interactions in Web Applications
Marco Brambilla 0001, Jordi Cabot, Michael Grossniklaus |
ER | 2 |
| 2009 | Relationship-based change propagation: A case studyabstractSoftware development is an evolutionary process. Requirements of a system are often incomplete or inconsistent, and hence need to be extended or modified over time. Customers may demand new services or goals that often lead to changes in the design and implementation of the system. These changes are typically very expensive. Even if only local modifications are needed, manually applying them is time-consuming and and error-prone. Thus, it is essential to assist users in propagating changes across requirements, design, and implementation artifacts. In this paper, we take a model-based approach and provide an automated algorithm for propagating changes between requirements and design models. The key feature of our work is explicating relationships between models at the requirements and design levels. We provide conditions for checking validity of these relationships both syntactically and semantically. We show how our algorithm utilizes the relationships between models at different levels to localize the regions that should be modified. We use the IBM Trade 6 case study to demonstrate our approach. Marsha Chechik, Winnie Lai, Shiva Nejati 0001, Jordi Cabot, Zinovy Diskin, Steve M. Easterbrook, Mehrdad Sabetzadeh, Rick Salay |
MiSE@ICSE | 4 |
| 2009 | Verifying UML/OCL Operation Contracts
Jordi Cabot, Robert Clarisó, Daniel Riera |
IFM | 1 |
| 2009 | Incremental integrity checking of UML/OCL conceptual schemas
Jordi Cabot, Ernest Teniente |
J. Syst. Softw. | 1 |
| 2008 | From programming to modeling: our experience with a distributed software engineering courseabstractDistributed Software Engineering (DSE) concepts in Computer Science (or Engineering) Degrees are commonly introduced using a hands-on approach mainly consisting of teaching a particular distributed and component-based technology platform (such as Java Enterprise Edition or Microsoft .NET) and proposing the students to develop a small distributed software application with it. Though this approach provides the students with some relevant practical knowledge, we believe that it is not the most appropriate way of teaching all the concepts and particularities of DSE. Thus, in this paper we report on our experience of redesigning an initial DSE course following a model-based approach. By raising the level of abstraction we gained modularity, separation of concerns and technology independence, while making the course evolve according to the latest trends in software development methods. Jordi Cabot, Francisco Durán 0001, Nathalie Moreno, Antonio Vallecillo, José Raúl Romero |
ICSE | 1 |
| 2008 | A Catalogue of Refactorings for Navigation ModelsabstractThe evolution of web applications (from read-only applications for browsing the data to full-fledged content-modification applications) has increased the complexity of navigation models describing the set of web pages included in a web application. In this paper, we propose adopting the refactoring technique to reorganize and improve the quality of such models. This technique was initially proposed to improve the structure of source code without changing its external observable behaviour. We adapt the refactoring technique to the navigation models context and present a catalogue of refactorings specific for this particular kind of models. Jordi Cabot, Cristina Gómez 0001 |
ICWE | 1 |
| 2008 | An Invariant-Based Method for the Analysis of Declarative Model-to-Model Transformations
Jordi Cabot, Robert Clarisó, Esther Guerra, Juan de Lara |
MoDELS | 1 |
| 2008 | Paraphrasing OCL Expressions with SBVR
Raquel Pau, Jordi Cabot |
NLDB | 2 |
| 2007 | From Declarative to Imperative UML/OCL Operation Specifications
Jordi Cabot |
ER | 1 |
| 2007 | Tool Support for Model Checking of Web Application Designs
Marco Brambilla 0001, Jordi Cabot, Nathalie Moreno |
ICWE | 2 |
| 2007 | On the Quality of Navigation Models with Content-Modification Operations
Jordi Cabot, Jordi Ceballos, Cristina Gómez 0001 |
ICWE | 1 |
| 2007 | UMLtoCSP: a tool for the formal verification of UML/OCL models using constraint programmingabstractWe present UMLtoCSP, a tool for the formal verification of UML/OCL models. Given a UML class diagram annotated with OCL constraints, UMLtoCSP is able to automatically check several correctness properties, such as the strong and weak satisfiability of the model or the lack of redundant constraints. The tool uses Constraint Logic Programming as the underlying formalism and the constraint solver ECLiPSe as the verification engine. Jordi Cabot, Robert Clarisó, Daniel Riera |
ASE | 1 |
| 2007 | Automatic Generation of Workflow-Extended Domain Models
Marco Brambilla 0001, Jordi Cabot, Sara Comai |
MoDELS | 2 |
| 2007 | Deriving Operation Contracts from UML Class Diagrams
Jordi Cabot, Cristina Gómez 0001 |
MoDELS | 1 |
| 2007 | Transformation techniques for OCL constraints
Jordi Cabot, Ernest Teniente |
Sci. Comput. Program. | 1 |
| 2006 | Incremental Evaluation of OCL Constraints
Jordi Cabot, Ernest Teniente |
CAiSE | 1 |
| 2006 | Constraint tuning and management for web applicationsabstractSince the Web is becoming a platform for implementing complex B2C and B2B applications instead of simple content publishing sites, the need arises of imposing constraints on the navigation and on the managed information. Web conceptual modeling languages allow to a small extent to specify constraints on the application, by means of some extensions to their basic primitives; however these approaches do not provide a comprehensive framework for efficient and effective constraint management. The goal of this paper is to present a general framework to facilitate the integration of efficient integrity checking methods in Web applications. Our main contribution is the study of a set of parameters that can be inferred from high level Web application modeling, for allowing the tuning of the constraint optimization techniques for each specific Web application. From these parameters we derive the optimal enforcement techniques to be implemented. Marco Brambilla 0001, Jordi Cabot |
ICWE | 2 |
| 2005 | Computing the Relevant Instances That May Violate an OCL Constraint
Jordi Cabot, Ernest Teniente |
CAiSE | 1 |
| 2004 | Roles as Entity Types: A Conceptual Modelling Pattern
Jordi Cabot, Ruth Raventós |
ER | 1 |
| 2003 | Entity Types Derived by Symbol-Generating Rules
Jordi Cabot, Antoni Olivé, Ernest Teniente |
ER | 1 |