Alessio Bucaioni

dblp:143/4024 · DBLP profile ↗
← Back
37ranked-venue papers
22as first author
31since 2021 · last 2026
0000-0002-8027-0611ORCID · corroborated

Domains — the database's venue-derived domains; a paper can count in several

Software engineering, systems software and programming languages · 32 · 19 first-author · 27 since 2021Applied, interdisciplinary, general and emerging computing · 5 · 2 first-author · 3 since 2021Systems, architecture and hardware · 4 · 3 first-author · 3 since 2021Databases, data management, data science and information retrieval · 1 · 1 first-author · 1 since 2021Human-computer interaction and ubiquitous computing · 1 · 1 since 2021
YearPublicationVenuePosition
2026 CONTAaC: Continuous Architecting as Code
Alessandra Somma, Alessio Bucaioni, Patrizio Pelliccione
ICSA2
2026 Digital twins for essential services
abstract
Digital twins, dynamic digital representations of physical systems, are emerging as transformative tools for enhancing crisis preparedness and resilience in critical societal sectors. By enabling real-time monitoring, simulation, and optimization, these technologies offer actionable insights to support proactive risk mitigation, efficient resource allocation, and continuous improvement of crisis response strategies. This study provides a comprehensive knowledge overview of digital twins, focusing on their applicability and impact in key sectors such as energy, healthcare, and transportation. Specifically, it examines the essential services most suited for digital twin adoption, the role of safety-critical data throughout their life-cycle, and their utility in identifying and mitigating risks within critical infrastructure. We employed a mixed-methods research design, combining systematic and gray literature reviews with expert interviews to integrate academic insights with practical perspectives. The findings reveal significant opportunities for digital twins to enhance operational efficiency, strategic planning, and crisis management. However, practical implementation remains in its infancy, with challenges related to cost, complexity, and limited real-world applications. In addition, this study provides actionable recommendations for stakeholders, emphasizing investment in digital twin technologies, robust data governance, and the development of standardized protocols. Future research directions include exploring applications of DTs in emerging sectors, such as crisis preparedness and societal resilience, advancing artificial intelligence integration, and adopting a system-of-systems perspective to address societal challenges comprehensively.
Alessio Bucaioni, Jakob Axelsson, Moris Behnam, Enxhi Ferko
Future Gener. Comput. Syst.1
2026 A checklist of quality concerns for architecting ML-intensive systems
abstract
Machine learning components are being deployed across nearly every business sector and their importance is continually growing. However, the engineering practices for building these systems remain poorly understood compared to those for conventional software systems. This work provides practical guidance to support architects in designing and implementing machine learning-intensive systems, and identifies areas where there are gaps in understanding and achievement. Building on our prior research, we developed a checklist of quality concerns for architects of machine learning-intensive systems. This checklist was iteratively refined through expert interviews and subsequently validated in a workshop with experienced architects. The main result of this work is a comprehensive list of 40 checks, organized into two main categories and 16 subcategories. Also, we present the results of a workshop where the importance and degree of achievement of each check was assessed by 25 practicing architects of ML-intensive systems. The findings of this study contribute to a better understanding of the unique challenges of ML-intensive systems and offer initial guidance to practitioners, and researchers on areas where future work should be directed. The findings of this study offer valuable support to architects in addressing the unique challenges of ML-intensive systems and provide guidance to practitioners and researchers in terms of where future work should be focused.
Alessio Bucaioni, Rick Kazman, Patrizio Pelliccione
J. Syst. Softw.1
2026 Corrigendum to "A checklist of quality concerns for architecting ML-intensive systems" [Journal of Systems and Software 231 (2026) 112612]
Alessio Bucaioni, Rick Kazman, Patrizio Pelliccione
J. Syst. Softw.1
2026 From engineering models to digital twins: Generating AAS from SysML v2 models
abstract
Context: Digital twins serve as virtual representations of systems, enabling capabilities such as intelligent monitoring, real-time control, decision-making, and predictive analytics. The Asset Administration Shell (AAS) is the pivotal Industry 4.0 standard for digital twin engineering. In parallel, the Systems Modeling Language (SysML) has emerged as a modeling standard for systems engineering, providing a formalized and semantically rich approach to system modeling. SysML v2 is its recent evolution. With its growing adoption, multiple models are expected to be widely available, each capturing different facets of the modeled system by leveraging diverse engineering capabilities offered by various tool ecosystems. Problem: Instead of manually re-creating models for digital twinning, existing system models should be leveraged to relieve repetitive modeling tasks. While SysML v2 and AAS are prominent standards in DT engineering, they lack direct integration, necessitating a dedicated approach for their seamless interoperability. Purpose: This paper presents a practical investigation into the conceptual alignment between the SysML v2 and AAS specifications, with a focus on their structural and behavioral modeling aspects. It proposes an implementable approach for mapping SysML v2 to AAS, enabling the automated generation of AAS models from SysML v2 models. Method: To realize this approach, we employ model-driven engineering techniques leveraging the Eclipse Modeling Framework (EMF) and model transformations based on the Query View Transformation (QVT) language. The proposed model transformation incorporates query mechanisms for extracting structured elements, preserving information and structural integrity, and ensuring static semantic consistency at design-time and seamless integration between the two investigated standards. We develop and validate the model transformation following an iterative test-driven development approach using an existing set of 24 SysML v2 examples, sourced from the official SysML v2 repository. Result: We deliver a QVT-based, EMF-compliant transformation that automatically generates AAS submodel templates from SysML v2 models, preserving structural hierarchies and behavioral semantics via dedicated AAS concepts and their extension. Through an iterative, test-driven development process, we validate metamodel conformance, information preservation, and structural integrity. The current mapping addresses design-time concepts, and the implementation supports forward transformation. All conceptual mappings, QVT scripts, and example artifacts are publicly available in a dedicated repository.
Enxhi Ferko, Luca Berardinelli, Alessio Bucaioni, Moris Behnam, Manuel Wimmer
J. Syst. Softw.3
2025 PyLC+: A Scalable Python Framework for Automated Translation and Testing of Industrial PLC Programs
abstract
As industrial PLC programs become more complex, automated testing and verification methods are needed to ensure their reliability and correctness. This paper presents PyLC+, a modular framework that translates PLC programs into Python, allowing for automated AI-driven test generation. PyLC+ builds upon our previous work, addressing limitations by adopting a class-based modular architecture that improves the tool’s scalability, maintainability, and extensibility. This structural refinement eliminates reliance on nested functions, facilitating the translation of large-scale, real-world PLC programs while maintaining precise use of cyclic execution. Furthermore, PyLC+ introduces automated handling of stateful FBs, ensuring compliance with IEC 61131-3 execution semantics.Additionally, the tool proposes integrating LLM-driven test generation with search-based test generation to improve the efficiency and effectiveness of testing PLC software. We tested PyLC+ in a large-scale company developing train control systems, demonstrating its efficiency and effectiveness in handling complex industrial PLC programs.
Mikael Ebrahimi Salari, Eduard Paul Enoiu, Alessio Bucaioni, Wasif Afzal, Cristina Cerschi Seceleanu
COMPSAC3
2025 Multi-Partner Project: A Model-Driven Engineering Framework for Federated Digital Twins of Industrial Systems (MATISSE)
abstract
Digital twins are virtual representations of real-world entities or systems. Their primary goal is to help organizations understand and predict the behaviour and properties of these entities or systems. Additionally, digital twins enhance activities such as monitoring, verification, validation, and testing. However, the inherent complexity of digital twins implies challenges throughout the systems engineering process. This notably includes design, development, and analysis phases, as well as deployment, execution, and maintenance. Moreover, existing approaches, methods, techniques, and tools for modelling, simulating, validating, and monitoring single digital twins must now address the increased complexity in federation scenarios. These scenarios introduce new challenges, such as digital twin identification, shared metadata, cross-digital twin communication and synchronization, and federation governance. The KDT Joint Undertaking MATISSE project tackles these challenges by aiming to provide a model-driven framework for the continuous engineering of federated digital twins. It leverages model-driven engineering techniques and practices as the core enabling technology, with traceability serving as an essential infrastructural service for the digital twins federation. In this paper, we introduce the MATISSE conceptual framework for digital twins, highlighting both the novelty of the project's concept and its technical objectives. As the project is still in its initial phase, we identify key research challenges relevant to the DATE community and propose a preliminary research roadmap. This roadmap addresses traceability and federation mechanisms, the required continuous engineering strategy, and the development of digital twin-based services for verification, validation, prediction, and monitoring. To illustrate our approach, we present two concrete scenarios that demonstrate practical applications of the MATISSE conceptual framework.
Alessio Bucaioni, Romina Eramo, Luca Berardinelli, Hugo Bruneliere, Benoît Combemale, Djamel Eddine Khelladi, Vittoriano Muttillo, Andrey Sadovykh, Manuel Wimmer
DATE1
2025 Benchmarking Large Language Models for Autonomous Run-time Error Repair: Toward Self-Healing Software Systems
abstract
As software systems grow in complexity and become integral to daily operations, traditional approaches to software testing, maintenance, and evolution are increasingly inadequate. Recent advances in artificial intelligence, particularly in large language models, offer promising avenues for achieving self-healing software—software capable of autonomously detecting, diagnosing, and repairing faults without human intervention. However, while much of the existing literature focuses on on code repair of vulnerabilities or repository-level bugs, the application of large language models for autonomously repairing run-time errors—which require dynamic analysis and execution context awareness—remains largely uncharted.
Alessio Bucaioni, Gabriele Gualandi, Johan Toma
EASE1
2025 When Retriever Meets Generator: A Joint Model for Code Comment Generation
abstract
Background. Automatically generating concise, informative comments for source code can lighten documentation effort and accelerate program comprehension. Retrievalaugmented approaches first fetch code snippets with existing comments and then synthesize a new comment, yet retrieval and generation are typically optimized in isolation, allowing irrelevant neighbors to propagate noise downstream. Aims. To tackle the issue, we propose a novel approach named RAGSum with the aim of both effectiveness and efficiency in recommendations. Method. RAGSum is built on top of fuse retrieval and generation using a single CodeT5 backbone. Results. We report preliminary results on a unified retrievalgeneration framework built on CodeT5. A contrastive pretraining phase shapes code embeddings for nearest-neighbor search; these weights then seed end-to-end training with a composite loss that (i) rewards accurate top-k retrieval; and (ii) minimizes comment-generation error. More importantly, a lightweight self-refinement loop is deployed to polish the final output. We evaluated the framework on three cross-language benchmarks (Java, Python, C), and compared it with three well-established baselines. The results show that our approach substantially outperforms the baselines with respect to BLEU, METEOR, and ROUTE-L. Conclusions. These findings indicate that tightly coupling retrieval and generation can raise the ceiling for comment automation and motivate forthcoming replications and qualitative developer studies.
Tien P. T. Le, Anh M. T. Bui, Huy N. D. Pham, Alessio Bucaioni, Phuong T. Nguyen 0001
ESEM4
2025 ROSE: Transformer-Based Refactoring Recommendation for Architectural Smells
abstract
Architectural smells such as God Class, Cyclic Dependency, and Hub-like Dependency degrade software quality and maintainability. Existing tools detect such smells but rarely suggest how to fix them. This paper explores the use of pre-trained transformer models-CodeBERT and CodeT5-for recommending suitable refactorings based on detected smells. We frame the task as a three-class classification problem and fine-tune both models on over 2 million refactoring instances mined from 11,149 open-source Java projects. CodeT5 achieves 96.9% accuracy and 95.2% F1, outperforming CodeBERT and traditional baselines. Our results show that transformer-based models can effectively bridge the gap between smell detection and actionable repair, laying the foundation for future refactoring recommendation systems. We release all code, models, and data under an open license to support reproducibility and further research.
Samal Nursapa, Anastassiya Samuilova, Alessio Bucaioni, Phuong T. Nguyen 0001
ESEM3
2025 Architecture as Code
abstract
After more than thirty-five years of research and development in software architecture, several fundamental challenges remain unsolved. First, despite the importance of having a well-defined architecture description aligned with the system, inconsistencies and misalignments are still prevalent. Second, although numerous languages exist to describe architectures, none have achieved widespread use or recognition as a de facto standard. Third, while architecture is dynamic and evolving, with architectural decisions often made by non-architect stakeholders, there are no universally accepted methodologies to capture emergent aspects and incorporate them into the architecture.In this paper, we explore the emerging concept of architecture as code. Inspired by the success of infrastructure as code, which enables infrastructure management in a codified, automated, and repeatable manner, architecture as code aims to bring similar benefits to software architecture. To the best of our knowledge, this is the first scientific paper to study this concept in depth within the context of software architecture, providing a comprehensive description and analysis of its characteristics. We also investigate how architecture as code is implemented and applied in practice.
Alessio Bucaioni, Amleto Di Salle, Ludovico Iovino, Patrizio Pelliccione, Franco Raimondi
ICSA1
2025 A model-driven approach for engineering Mobility Digital Twins: The Bologna case study
abstract
As cities grapple with increasing congestion, sustainability concerns, and the need for efficient mobility systems, Mobility Digital Twins (MoDTs) have emerged as promising technology for improving urban transportation. However, the development of MoDTs remains hindered by challenges such as structural complexity, data heterogeneity, lack of interoperability, and limited support for scalability, maintainability, and adaptability. This work aims to address these barriers by introducing a structured and systematic engineering framework that supports the design development of MoDT, reducing technical debt, development costs and human errors, while promoting long-term evolution. We propose a Model-Driven Engineering (MDE) approach that organizes the development of MoDTs through models at different levels of abstraction and adopts automated transformations from high-level specifications to executable code artifacts, supporting MoDT life-cycle. The proposed approach is validated through its application in developing a MoDT for the city of Bologna, Italy. To support this, we introduce the M2DT tool, which automates the workflow from high-level models to software code artifacts. The resulting BoMoDT platform is built using open-source technologies and real mobility data. This case study demonstrates the feasibility and effectiveness of our approach, which, to our knowledge, is the first to apply a model-driven strategy for the entire MoDT development. A qualitative evaluation confirms that our framework addresses key challenges in MoDT development. Quantitative experiments further validate BoMoDT’s ability to accurately reproduce and monitor real urban mobility conditions. The proposed approach offers a solid foundation for addressing MoDT development challenges. By combining automation with structured abstraction, it improves adaptability and maintainability while enabling scalable integration, helping make MoDTs more accessible for future urban system design. • Six challenges in Mobility Digital Twins are identified from literature analysis. • A model-driven approach is introduced to structure their development. • The approach is applied to real world urban mobility case study. • BoMoDT is presented as DT platform for simulation and monitoring of Bologna mobility. • Fidelity and responsiveness are quantitatively evaluated.
Alessandra Somma, Domenico Amalfitano, Alessio Bucaioni, Alessandra De Benedictis
Inf. Softw. Technol.3
2025 Model-driven engineering for Software Architecture
Alessio Bucaioni, Amleto Di Salle, Ludovico Iovino, Peng Liang 0001
J. Syst. Softw.1
2024 Automating Data Extraction from Semi-Structured Industrial Documents: The Alstom Experience
abstract
In the system development of modern railroad vehicles, engineers frequently use a plethora of diverse notations to specify various systems, subsystems, and their associated concerns. The use of diverse notations introduces complex challenges linked with their management and integration. Conventional practices, which rely on manual revisions and translations, prove to be both time-intensive and cost-prohibitive. In addition, they carry substantial risks of human error, thereby potentially introducing faults into the system. Such practices are deemed inadequate for the railway industry, which is safety-critical in its nature and places paramount importance on the assurance of reliability and data integrity. To address these challenges, we developed a regular expression-based system facilitating the automatic translation of semi-structured texts into structured data, with a particular focus on ensuring data integrity and reliability. We have defined the system capitalizing on the insights and practical experience of our industrial partner, Alstom Rail Sweden AB, and validated it within their development process. The validation demonstrated the practicality of the system in a real-world context and highlighted valuable lessons learned throughout the process. Building on these insights, we applied model-driven engineering principles to generalize the system, providing an automated solution to the data extraction challenge from tender documents in the railway domain.
Tobias Möller, Alessio Bucaioni, Antonio Cicchetti
ETFA3
2024 Leveraging GANs to Generate Synthetic Log Files for Smart-Troubleshooting in Industry 4.0
abstract
In this paper, we tackle the challenge of generating synthetic log files using generative adversarial networks to support smart-troubleshooting experimentation. Log files are critical for implementing monitoring systems for smart-troubleshooting, as they capture valuable information about the activities and events occurring within the monitored system. Analyzing these logs is crucial for effective smart-troubleshooting, enhancing the overall efficiency, reliability, and security of smart manufacturing processes. However, accessing public log data is difficult due to privacy concerns and the need to protect sensitive information. Moreover, for the purpose of effective troubleshooting, it is essential to have datasets that include fault, error, and failure logs as well as standard logs. In recent years, synthetic log files have emerged as a promising solution to augment limited real-world datasets and facilitate the development and evaluation of anomaly detection techniques. Building on this concept of synthetic data, we have developed a specific log generation technique and dataset tailored for testing smart-troubleshooting techniques in heteroge-neous connected systems environments, such as industrial cyber-physical systems and the internet of things. First, we propose a methodology that generates synthetic log files based on generative adversarial networks. Later, we instantiate this methodology using different Generative Adversarial Network implementations and present a validation and a comprehensive comparative analysis of their performance. Eventually, we provide a robust dataset for anomaly detection and threat analysis in cyberspace security. Based on the results of our comparison, CTGAN has shown superior performance in generating high-quality synthetic log files.
Sania Partovian, Francesco Flammini, Alessio Bucaioni
SEAA3
2024 Continuous Conformance of Software Architectures
abstract
Software architectures are pivotal in the success of software-intensive systems and serve as foundational elements that significantly impact the overall software quality. Reference architectures abstract software elements, define main responsibilities and interactions within a domain, and guide the architectural design of new systems. Using reference architectures offers advantages like enhanced interoperability, cost reduction through reusability, decreased project risks, improved communication, and adherence to best practices. However, these benefits are most pronounced when software architectures align with reference architectures. Deviations from prescribed reference architectures can nullify these benefits. Uncontrolled misalignment can become prohibitively expensive, necessitating costly redevelopments, with maintenance costs reaching up to 90% of development costs. Conformance-checking processes and identifying and resolving violations in the software architecture are essential to mitigate misalignment. To address these challenges, we introduce the concept of continuous conformance that is expressed as a distance function, together with a process supporting it. Continuous conformance quantifies the degree to which a software architecture adheres to a designated reference architecture. The conformance concept enables multi-level, incremental, and non-blocking checking and restoration tasks and allows the check of partial architectures without obstructing the design process. We operationalize this process through an assistive modeling tool to architect an Internet of things-based system.
Alessio Bucaioni, Amleto Di Salle, Ludovico Iovino, Leonardo Mariani, Patrizio Pelliccione
ICSA1
2024 Modelling centralised automotive E/E software architectures
Alessio Bucaioni, Patrizio Pelliccione, Saad Mubeen
Adv. Eng. Informatics1
2024 Architecting ML-enabled systems: Challenges, best practices, and design decisions
abstract
Machine learning is increasingly used in a wide set of applications ranging from recommendation engines to autonomous systems through business intelligence and smart assistants. Designing and developing machine learning systems is a complex process that can be eased by leveraging effective design decisions tackling the most important challenges and by having a good system and software architecture. The research goal of this work is to identify common challenges, best design practices, and main software architecture design decisions of machine learning enabled systems from the point of view of researchers and practitioners. We performed a mixed method including a systematic literature review and expert interviews. We started with a systematic literature review. From an initial set of 3038 studies, we selected 41 primary studies, which we analysed according to a data extraction, analysis, and synthesis process. In addition, we conducted 12 expert interviews that involved researchers and professionals with machine learning expertise from 9 different countries. We identify 35 design challenges, 42 best practices and 27 design decisions when architecting machine learning systems. By eliciting main design challenges, we contribute to best practices and design decisions. In addition, we identify correlations among design challenges, decisions and best practices. We believe that practitioners and researchers can benefit from this first and comprehensive analysis of current software architecture design challenges, best practices, and design decisions.
Roger Nazir, Alessio Bucaioni, Patrizio Pelliccione
J. Syst. Softw.2
2023 Timing-Aware Variability Resolution in EAST-ADL Product Line Architecture
abstract
Product line architectures play a vital role in the automotive industry in supporting cross-product development involving several hardware and software variation points for different vehicle variants. The effective resolution of multiple variation points for the generation of valid variants is complex, especially when dealing with both software and hardware components implying timing constraints, simultaneously. EAST-ADL is a well-known domain-specific modelling language supporting cross-product development using different levels of abstraction. Furthermore, it offers timing extensions to perform system and component-level timing verification. In this article, we propose an EAST-ADL-compliant and timing-aware variability resolution approach to generate valid product variants effectively. The method relies on existing EAST-ADL product line architecture for system modelling, where several variation points at different levels of abstraction are identified. We propose a variability resolution algorithm where several configuration decisions, starting from the topmost vehicle level down to the design level, are incor-porated for seamless variability resolution. Furthermore, timing decisions based on analysis and design prototypes are provided to generate variant-specific timing constraints. The approach is validated on the car wiper use case provided by our industrial partner, Volvo, an international original equipment manufacturer in the automotive domain. In the use case, three product variants comprising a full system model with associated timing constraints are generated successfully. The results show the feasibility of the proposed approach and indicate its effectiveness in managing timing-aware product variants.
Muhammad Waseem Anwar, Alessio Bucaioni, Federico Ciccozzi
APSEC2
2023 Impact of Key Scrum Role Locations in Student Distributed Software Development Projects
abstract
Employing an agile development methodology, particularly Scrum, in a distributed student project setting is challenging for both teachers and involved students. Allowing distributed student teams to self-organize and assign key Scrum roles using various strategies, specifically regarding the locations of students taking on key roles, increases the complexity of such projects. In addition, the interaction of the Project Owner role with the project customer, which occurs outside the distributed student team, adds a new dimension to this problem. This paper investigates the impact of various key role assignment strategies, and their interactions, on the performance of distributed student projects. Furthermore, we investigate the intensity of collaboration within the distributed team and between key project roles, as well as their impact on project performance. We analyzed data collected on 37 distributed student projects conducted over the course of eight academic years. The results reveal that letting students assign key project roles regardless of their location in the distributed team has no significant impact on the quality of project outcomes. However, a deeper analysis uncovers that more educationally desirable assignments of those roles exist; favoring increased collaboration intensity within distributed student teams.
Igor Cavrak, Alessio Bucaioni, Raffaela Mirandola
CSEE&T2
2023 Analysing Interoperability in Digital Twin Software Architectures for Manufacturing
Enxhi Ferko, Alessio Bucaioni, Patrizio Pelliccione, Moris Behnam
ECSA2
2023 Standardisation in Digital Twin Architectures in Manufacturing
abstract
Engineering digital twins following standardised reference architectures is an upcoming requirement for ensuring their adoption and facilitating their creation, processing, and integration. The ISO 23247 standard proposes a reference architecture for digital twins in manufacturing, including an entity-based reference model and a functional view specified in terms of functional entities. During our experience with projects in the field, we noticed that standards, and in particular the ISO 23247 standard, are not completely followed. In this paper, we analyse to what extent digital twin architectures documented in the literature are aligned with the reference architecture presented in the ISO 23247 standard. We achieved this through a mixed-methods research methodology that includes the analysis of 29 digital twin architectures in the manufacturing domain resulting from a systematic literature review of 140 peer-reviewed studies, a survey with 33 respondents, and four semi-structured, in-depth expert interviews. On the basis of our findings, practitioners and researchers can reflect, discuss, and plan actions for future research and development activities.
Enxhi Ferko, Alessio Bucaioni, Patrizio Pelliccione, Moris Behnam
ICSA2
2023 Enabling Blended Modelling of Timing and Variability in EAST-ADL
abstract
EAST-ADL is a domain-specific modelling language for the design and analysis of vehicular embedded systems. Seamless modelling through multiple concrete syntaxes for the same language, known as blended modelling, offers enhanced modelling flexibility to boost collaboration, lower modelling time, and maximise the productivity of multiple diverse stakeholders involved in the development of complex systems, such as those in the automotive domain. Together with our industrial partner, which is one of the leading contributors to the definition of EAST-ADL and one of its main end-users, we provided prototypical blended modelling features for EAST-ADL. In this article, we report on our language engineering work towards the provision of blended modelling for EAST-ADL to support seamless graphical and textual notations. Notably, for selected portions of the EAST-ADL language (i.e., timing and variability packages), we introduce ad-hoc textual concrete syntaxes to represent the language's abstract syntax in alternative textual notations, preserving the language's semantics. Furthermore, we propose a full-fledged runtime synchronisation mechanism, based on the standard EAXML schema format, to achieve seamless change propagation across the two notations. As EAXML serves as a central synchronisation point, the proposed blended modelling approach is workable with most existing EAST-ADL tools. The feasibility of the proposed approach is demonstrated through a car wiper use case from our industrial partner - Volvo. Results indicate that the proposed blended modelling approach is effective and can be applied to other EAST-ADL packages and supporting tools.
Muhammad Waseem Anwar, Federico Ciccozzi, Alessio Bucaioni
SLE3
2023 From low-level programming to full-fledged industrial model-based development: the story of the Rubus Component Model
abstract
Abstract Developing distributed real-time systems is a complex task that has historically entailed specialized handcraft. In this paper, we propose a retrospective on the (r)evolutionary changes that led to the transition from low-level programming to industrial full-fledged model-based development embodied by the Rubus Component Model and its tool-ecosystem. We focus on the needs, challenges, and solutions of a 15-year-long evolution journey of a software development approach that has gone from low-level and manual programming to a highly automated environment offering modeling, analysis, and development of vehicular software systems with multi-criticality for deployment on single- and multi-core platforms.
Alessio Bucaioni, Federico Ciccozzi, Amleto Di Salle, Mikael Sjödin
Softw. Syst. Model.1
2023 Reference architectures modelling and compliance checking
abstract
Abstract Reference architectures (RAs) are successfully used to represent families of concrete software architectures in several domains such as automotive, banking, and the Internet of Things. RAs inspire architects when designing concrete architectures, and they help to guarantee compliance with architectural decisions, regulatory requirements, as well as architectural qualities. Despite their importance, reference architectures still suffer from a number of open technical issues, including (i) the lack of a common interpretation, a precise notation for their representation and documentation, and (ii) the lack of conformance mechanisms for checking the compliance of concrete architectures to their related reference architecture, architectural decisions, regulatory requirements, etc. This paper addresses these two issues by introducing a model-driven approach that leverages (i) a domain-independent metamodel for the representation of reference architectures and (ii) the combination of model transformation and weaving techniques for the automatic conformance checking of concrete architectures. We evaluate the applicability, effectiveness, and generalizability of our approach using illustrative examples from the web browsers and automotive domains, including an assessment from an independent practitioner.
Alessio Bucaioni, Amleto Di Salle, Ludovico Iovino, Ivano Malavolta, Patrizio Pelliccione
Softw. Syst. Model.1
2022 Automotive Service-oriented Architectures: a Systematic Mapping Study
abstract
Service-oriented architectures are emerging as a promising solution to deal with the increasing complexity of automotive software systems. In this paper, we conduct a systematic mapping study to investigate the use of service-oriented architecture for the development of automotive software systems. This study aims at providing publication trends, available architectural solutions, core benefits and open challenges in the automotive service-oriented architectures. From an initial set of 341 peer-reviewed publications, we select 28 primary studies, which are classified and analysed using a systematic and comprehensive protocol. Using the extracted data, we provide both quantitative and qualitative analyses using vertical and orthogonal analysis. The results indicate that there has been a significant increase in the number of publications recently, and that the studies focused on defining functionalities and data flows among them. Functional suitability is found to be the most recognised benefit while security, safety and reliability are the most addressed challenges when utilising service-oriented architectures in the automotive domain.
Nemanja Kukulicic, Damjan Samardzic, Alessio Bucaioni, Saad Mubeen
SEAA3
2022 Enabling automated integration of architectural languages: An experience report from the automotive domain
abstract
Modern automotive software systems consist of hundreds of heterogeneous software applications, belonging to separated function domains and often developed within distributed automotive ecosystems consisting of original equipment manufactures, tier-1 and tier-2 companies. Hence, the development of modern automotive software systems is a formidable challenge. A well-known instrument for coping with the tremendous heterogeneity and complexity of modern automotive software systems is the use of architectural languages as a way of enabling different and specific views over these systems. However, the use of different architectural languages might come with the cost of reduced interoperability and automation as different languages might have weak to no integration. In this article, we tackle the challenge of integrating two architectural languages heavily used in the automotive domain for the design and timing analysis of automotive software systems: AMALTHEA and Rubus Component Model. The main contributions of this paper are (i) a mapping scheme for the translation of an AMALTHEA architecture into a Rubus Component Model architecture where high-precision timing analysis can be run, and the back annotation of the analysis results on the starting AMALTHEA architecture; (ii) the implementation of the proposed scheme, which uses the concept of model transformations for enabling a full-fledged automated integration; (iii) the application of such automation on three industrial automotive systems being the brake-by-wire, the full blown engine management system and the engine management system. We discuss and evaluate the proposed contributions using an online, experts survey and the above-mentioned use cases. Based on the evaluation results, we conclude that the proposed automation mechanism is correct and applicable in industrial contexts. Besides, we observe that the performance of the automation mechanism does not degrade when translating large models with several thousands of elements. Eventually, we conclude that experts in this field find the proposed contribution industrially relevant.
Alessio Bucaioni, Matthias Becker 0004
J. Syst. Softw.1
2022 Model-based generation of test scripts across product variants: An experience report from the railway industry
abstract
Abstract Software product line engineering emerged as an effective approach for the development of families of software‐intensive systems in several industries. Although its use has been widely discussed and researched, there are still several open challenges for its industrial adoption and application. One of these is how to efficiently develop and reuse shared software artifacts, which have dependencies on the underlying electrical and hardware systems of products in a family. In this work, we report on our experience in tackling such a challenge in the railway industry and present a model‐based approach for the automatic generation of test scripts for product variants in software product lines. The proposed approach is the result of an effort leveraging the experiences and results from the technology transfer activities with our industrial partner Alstom SA in Sweden. We applied and evaluated the proposed approach on the Aventra software product line from Alstom SA. The evaluation showed that the proposed approach mitigates the development effort, development time, and consistency drawbacks associated with the traditional, manual creation of test scripts. We performed an online survey involving 37 engineers from Alstom SA for collecting feedback on the approach. The result of the survey further confirms the aforementioned benefits.
Alessio Bucaioni, Fabio Di Silvestro, Mehrdad Saadatmand, Henry Muccini
J. Softw. Evol. Process.1
2022 Modelling in low-code development: a multi-vocal systematic review
abstract
Abstract In 2014, a new software development approach started to get a foothold: low-code development. Already from its early days, practitioners in software engineering have been showing a rapidly growing interest in low-code development. In 2021 only, the revenue of low-code development technologies reached 13.8 billion USD. Moreover, the business success of low-code development has been sided by a growing interest from the software engineering research community. The model-driven engineering community has shown a particular interest in low-code development due to certain similarities between the two. In this article, we report on the planning, execution, and results of a multi-vocal systematic review on low-code development, with special focus to its relation to model-driven engineering. The review is intended to provide a structured and comprehensive snapshot of low-code development in its peak of inflated expectations technology adoption phase. From an initial set of potentially relevant 720 peer-reviewed publications and 199 grey literature sources, we selected 58 primary studies, which we analysed according to a meticulous data extraction, analysis, and synthesis process. Based on our results, we tend to frame low-code development as a set of methods and/or tools in the context of a broader methodology, often being identified as model-driven engineering.
Alessio Bucaioni, Antonio Cicchetti, Federico Ciccozzi
Softw. Syst. Model.1
2021 Model-based Automation of Test Script Generation Across Product Variants: a Railway Perspective
abstract
In this work, we report on our experience in defining and applying a model-based approach for the automatic generation of test scripts for product variants in software product lines. The proposed approach is the result of an effort leveraging the experiences and results from the technology transfer activities with our industrial partner Bombardier Transportation. The proposed approach employs metamodelling and model transformations for representing different testing artefacts and making their generation automatic. We demonstrate the industrial applicability and efficiency of the proposed approach using the Bombardier Transportation Aventra software product line. We observe that the proposed approach mitigates the development effort, time consumption and consistency drawbacks typical of traditional strategies.
Alessio Bucaioni, Fabio Di Silvestro, Mehrdad Saadatmand, Henry Muccini, Thorvaldur Jochumsson
AST1
2021 Aligning Architecture with Business Goals in the Automotive Domain
abstract
When designing complex automotive systems in practice, employed technologies and architectural decisions need to reflect business goals. While the software architecture community has acknowledged the need to align business goals with architectural decisions, there is a lack of practical approaches to achieve this alignment. In this paper, we intend to close this gap by providing a systematic approach for architecture-business alignment. The approach describes how to align architecture with business concerns by eliciting goals, identifying quality attributes, and deriving architectural tactics. We iteratively developed and evaluated the approach together with an international automotive manufacturer. We show the application of the proposed approach within our participating company leveraging a use case related to software-over-the-air technologies. The proposed approach is perceived as beneficial by our participants, since it provides a structured mechanism to align architecture and business goals by determining key architectural concerns as quality attributes and tactics.
Alessio Bucaioni, Patrizio Pelliccione, Rebekka Wohlrab
ICSA1
2020 Towards Model-Based Performability Evaluation of Production Systems
abstract
Future smart factories will be increasingly required to predict expected performance and dependability metrics related to their production processes. Domain-specific metrics include overall equipment effectiveness that measures production system availability/uptime, performance/speed and output quality. In this work-in-progress paper, we take initial steps towards a model-based approach to evaluate production-specific metrics using domain-specific languages, model transformations and stochastic modelling formalism.
Alessio Bucaioni, Francesco Flammini, Mats Ahlskog
ETFA1
2020 From AMALTHEA to RCM and Back: a Practical Architectural Mapping Scheme
abstract
This paper focuses on the mapping between two industrial architectural languages: AMALTHEA and Rubus Component Model. Both languages are heavily used within the automotive domain for the design and timing analysis of automotive software, respectively. The main contribution of this paper is a mapping scheme between the two architectural languages enabling i) the translation of an AMALTHEA architecture into a Rubus Component Model architecture where high-precision timing analysis can be performed ii) and the back-propagation of the analysis results on the AMALTHEA architecture. We validate the applicability of the proposed mapping scheme using an industrial use case from the automotive domain: the brake-by-wire system. We discuss the industrial relevance and lessons learnt of this work using expert interviews.
Alessio Bucaioni, Matthias Becker 0004, John Lundbäck, Harald Mackamul
SEAA1
2020 Technical Architectures for Automotive Systems
abstract
Driven by software, the automotive domain is living an unprecedented revolution with original equipment manufacturers increasingly becoming software companies. Vehicle electrical and electronic software architectures are considered means for addressing several concerns, which span from safety to security, through electrification and autonomy. Such architectures serve also as pivotal means for enabling communication between an original equipment manufacturer and suppliers (tier 1 and 2 companies) within the automotive ecosystem. In the automotive domain, software architectures include (at least) three different views of descending abstraction: functional, logical, and technical. In this work, we focus on the technical view with a two-folded contribution. On the one hand, we propose a feature model of technical architectures for automotive systems. On the other hand, starting from the elicited feature model, we present three technical reference architectures able to guide three generations of automotive systems. We evaluate the contribution of this work by means of a focus group validation session and short semi-structured interviews with automotive experts and practitioners.
Alessio Bucaioni, Patrizio Pelliccione
ICSA1
2020 Modelling multi-criticality vehicular software systems: evolution of an industrial component model
abstract
Abstract Software in modern vehicles consists of multi-criticality functions, where a function can be safety-critical with stringent real-time requirements, less critical from the vehicle operation perspective, but still with real-time requirements, or not critical at all. Next-generation autonomous vehicles will require higher computational power to run multi-criticality functions and such a power can only be provided by parallel computing platforms such as multi-core architectures. However, current model-based software development solutions and related modelling languages have not been designed to effectively deal with challenges specific of multi-core, such as core-interdependency and controlled allocation of software to hardware. In this paper, we report on the evolution of the Rubus Component Model for the modelling, analysis, and development of vehicular software systems with multi-criticality for deployment on multi-core platforms. Our goal is to provide a lightweight and technology-preserving transition from model-based software development for single-core to multi-core. This is achieved by evolving the Rubus Component Model to capture explicit concepts for multi-core and parallel hardware and for expressing variable criticality of software functions. The paper illustrates these contributions through an industrial application in the vehicular domain.
Alessio Bucaioni, Saad Mubeen, Federico Ciccozzi, Antonio Cicchetti, Mikael Sjödin
Softw. Syst. Model.1
2017 Technology-Preserving Transition from Single-Core to Multi-core in Modelling Vehicular Systems
Alessio Bucaioni, Saad Mubeen, Federico Ciccozzi, Antonio Cicchetti, Mikael Sjödin
ECMFA1
2016 Handling Uncertainty in Automatically Generated Implementation Models in the Automotive Domain
abstract
Models and model transformations, the two core constituents of Model-Driven Engineering, aid in software development by automating, thus taming, error-proneness of tedious engineering activities. In many cases, the result of these automated activities is an overwhelming amount of information. This is the case of one-to-many model transformations that, e.g. in model-based design-space exploration, can potentially generate a massive amount of candidate models (i.e., solution space) from one single source model. In our scenario, from one design model we generate a set of possible implementation models on which timing analysis is run. The aim is to find the best model from a timing perspective. However, multiple implementation models can have equally good analysis results. Therefore, the engineer is expected to investigate the solution space for making a final decision, using criteria which fall outside the analysis' criteria themselves. Since candidate models can be many and very similar to each other, manually finding differences and commonalities is an impractical and error-prone task. In order to provide the engineer with an expressive representation of models' commonalities and differences, we propose the use of modelling with uncertainty. We achieve this by elevating the solution space to a first-class status, adopting a compact notation capable of representing the solution space by means of a single model with uncertainty. Commonalities and differences are thus represented by means of uncertainty points for the engineer to easily grasp them and consistently make her decision without manually inspecting each model individually.
Alessio Bucaioni, Antonio Cicchetti, Federico Ciccozzi, Saad Mubeen, Alfonso Pierantonio, Mikael Sjödin
SEAA1