1. |
|
|
2. |
|
|
3. |
- Abbas, Muhammad
(författare)
-
Requirements-Level Reuse Recommendation and Prioritization of Product Line Assets
- 2021
-
Licentiatavhandling (övrigt vetenskapligt/konstnärligt)abstract
- Software systems often target a variety of different market segments. Targeting varying customer requirements requires a product-focused development process. Software Product Line (SPL) engineering is one possible approach based on reuse rationale to aid quick delivery of quality product variants at scale. SPLs reuse common features across derived products while still providing varying configuration options. The common features, in most cases, are realized by reusable assets. In practice, the assets are reused in a clone-and-own manner to reduce the upfront cost of systematic reuse. Besides, the assets are implemented in increments, and requirements prioritization also has to be done. In this context, the manual reuse analysis and prioritization process become impractical when the number of derived products grows. Besides, the manual reuse analysis process is time-consuming and heavily dependent on the experience of engineers.In this licentiate thesis, we study requirements-level reuse recommendation and prioritization for SPL assets in industrial settings. We first identify challenges and opportunities in SPLs where reuse is done in a clone-and-own manner. We then focus on one of the identified challenges: requirements-based SPL assets reuse and provide automated support for identifying reuse opportunities for SPL assets based on requirements. Finally, we provide automated support for requirements prioritization in the presence of dependencies resulting from reuse.
|
|
4. |
- Alnawasreh, Khaled, 1987, et al.
(författare)
-
Online robustness testing of distributed embedded systems: An industrial approach
- 2017
-
Ingår i: Proceedings - 2017 IEEE/ACM 39th International Conference on Software Engineering: Software Engineering in Practice Track, ICSE-SEIP 2017. - : IEEE. - 9781538627174 ; , s. Artno 7965437-
-
Konferensbidrag (refereegranskat)abstract
- Having robust systems that behave properly even in presence of faults is becoming increasingly important. This is the case of the system we investigate in this paper, which is an embedded distributed system consisting of components that communicate with each other via messages exchange in the RBS (Radio Based Station) at Ericsson AB in Gothenburg, Sweden. Specifically, this paper describes a novel fault injection approach for testing the robustness of distributed embedded systems with very limited computation power. The new approach is inspired by Netflix's ChaosMonkey, a fault injection approach that has been developed for testing distributed systems hosted in the cloud. However, ChaosMonkey cannot be used in the context of RBS since the latter consists of small-embedded components with specific requirements of performance, programming language, and communication paradigm. This paper reports about the approach called Postmonkey we developed, illustrates the results of applying it to RBS, and discusses the potential of utilizing fault injection to test complex, embedded, and distributed systems. The approach and tool are now adopted by Ericsson. © 2017 IEEE.
|
|
5. |
- Askarpour, Mehrnoosh, et al.
(författare)
-
RoboMAX: Robotic Mission Adaptation eXemplars
- 2021
-
Ingår i: Proceedings - 2021 International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2021. ; , s. 245-251
-
Konferensbidrag (refereegranskat)abstract
- Emerging and future applications of robotic systems pose unique self-adaptation challenges. To support the research needed to address these challenges, we provide an extensible repository of robotic mission adaptation exemplars. Co-designed with robotic application stakeholders including researchers, developers, operators, and end-users, our repository captures key sources of uncertainty, adaptation concerns, and other distinguishing characteristics of such applications. An online form enables external parties to supply new exemplars for curation and inclusion into the repository. We envisage that our RoboMAX repository will enable the development, evaluation, and comparison of self-adaptation approaches for the robotic systems domain.
|
|
6. |
- Autili, M., et al.
(författare)
-
A Software Exoskeleton to Protect and Support Citizen's Ethics and Privacy in the Digital World
- 2019
-
Ingår i: Ieee Access. - : Institute of Electrical and Electronics Engineers (IEEE). - 2169-3536. ; 7, s. 62011-62021
-
Tidskriftsartikel (refereegranskat)abstract
- Citizens of the digital world are threatened. The digital systems that surround them are increasingly able to make autonomous decisions over and above them and on their behalf. They feel that their moral rights, as well as the social, economic, and political spheres, can be affected by the behavior of such systems. Although unavoidable, the digital world is becoming uncomfortable and potentially hostile to its users as human beings and as citizens. Notwithstanding the introduction of the GDPR and of initiatives to establish criteria on software transparency and accountability, users feel vulnerable and unprotected. In this paper, we present EXOSOUL, an overarching research framework that aims at building a software a personalized exoskeleton that enhances and protects users by mediating their interactions with the digital world according to their own ethics of actions and privacy of data. The exoskeleton disallows or adapts the interactions that would result in unacceptable or morally wrong behaviors according to the ethics and privacy preferences of the users. With their software shield, users will feel empowered and in control, and more in the balance of forces with the other actors of the digital world. To reach the breakthrough result of automatically building a personalized exoskeleton, EXOSOUL identifies multidisciplinary challenges never touched before: 1) defining the scope for and inferring citizen's ethical preferences; 2) treating privacy as an ethical dimension managed through the disruptive notion of active data; and 3) automatically synthesizing ethical actuators, i.e., connector components that mediate the interaction between the user and the digital world to enforce her ethical preferences. In this paper, we discuss the research challenges of EXOSOUL in terms of their feasibility and risks.
|
|
7. |
- Autili, M., et al.
(författare)
-
Aligning Qualitative, Real-Time, and Probabilistic Property Specification Patterns Using a Structured English Grammar
- 2015
-
Ingår i: IEEE Transactions on Software Engineering. - 0098-5589. ; 41:7, s. 620-638
-
Tidskriftsartikel (refereegranskat)abstract
- Formal methods offer an effective means to assert the correctness of software systems through mathematical reasoning. However, the need to formulate system properties in a purely mathematical fashion can create pragmatic barriers to the application of these techniques. For this reason, Dwyer et al. invented property specification patterns which is a system of recurring solutions to deal with the temporal intricacies that would make the construction of reactive systems very hard otherwise. Today, property specification patterns provide general rules that help practitioners to qualify order and occurrence, to quantify time bounds, and to express probabilities of events. Nevertheless, a comprehensive framework combining qualitative, real-time, and probabilistic property specification patterns has remained elusive. The benefits of such a framework are twofold. First, it would remove the distinction between qualitative and quantitative aspects of events; and second, it would provide a structure to systematically discover new property specification patterns. In this paper, we report on such a framework and present a unified catalogue that combines all known plus 40 newly identified or extended patterns. We also offer a natural language front-end to map patterns to a temporal logic of choice. To demonstrate the virtue of this new framework, we applied it to a variety of industrial requirements, and use PSPWizard, a tool specifically developed to work with our unified pattern catalogue, to automatically render concrete instances of property specification patterns to formulae of an underlying temporal logic of choice.
|
|
8. |
- Bersani, M. M., et al.
(författare)
-
PuRSUE -from specification of robotic environments to synthesis of controllers
- 2020
-
Ingår i: Formal Aspects of Computing. - : Association for Computing Machinery (ACM). - 0934-5043 .- 1433-299X. ; 32, s. 187-227
-
Tidskriftsartikel (refereegranskat)abstract
- Developing robotic applications is a complex task, which requires skills that are usually only possessed by highly-qualified robotic developers. While formal methods that help developers in the creation and design of robotic applications exist, they must be explicitly customized to be impactful in the robotics domain and to support effectively the growth of the robotic market. Specifically, the robotic market is asking for techniques that: (i) enable a systematic and rigorous design of robotic applications though high-level languages; and (ii) enable the automatic synthesis of low-level controllers, which allow robots to achieve their missions. To address these problems we present the PuRSUE (Planner for RobotS in Uncontrollable Environments) approach, which aims to support developers in the rigorous and systematic design of high-level run-time control strategies for robotic applications. The approach includes PuRSUE-ML a high-level language that allows for modeling the environment, the agents deployed therein, and their missions. PuRSUE is able to check automatically whether a controller that allows robots to achieve their missions might exist and, then, it synthesizes a controller. We evaluated how PuRSUE helps designers in modeling robotic applications, the effectiveness of its automatic computation of controllers, and how the approach supports the deployment of controllers on actual robots. The evaluation is based on 13 scenarios derived from 3 different robotic applications presented in the literature. The results show that: (i) PuRSUE-ML is effective in supporting designers in the formal modeling of robotic applications compared to a direct encoding of robotic applications in low-level modeling formalisms; (ii) PuRSUE enables the automatic generation of controllers that are difficult to create manually; and (iii) the plans generated with PuRSUE are indeed effective when deployed on actual robots.
|
|
9. |
|
|
10. |
- Bozhinoski, Darko, et al.
(författare)
-
Managing safety and mission completion via collective run-time adaptation
- 2019
-
Ingår i: Journal of Systems Architecture. - : Elsevier BV. - 1383-7621. ; 95, s. 19-35
-
Tidskriftsartikel (refereegranskat)abstract
- Multi-Robot Systems (MMRSs) are an emerging class of systems that are composed of a team of robots, various devices (like movable cameras, sensors) which collaborate with each other to accomplish defined missions. Moreover, these systems must operate in dynamic and potentially uncontrollable and unknown environments that might compromise the safety of the system and the completion of the defined mission. A model of the environment describing, e.g., obstacles, no-fly zones, wind and weather conditions might be available, however, the assumption that such a model is both correct and complete is often wrong. In this paper, we describe an approach that supports execution of missions at run time. It addresses collective adaptation problems in a decentralized fashion, and enables the addition of new entities in the system at any time. Moreover, it is based on two adaptation resolution methods: one for (potentially partial) resolution of mission-related issues and one for full resolution of safety-related issues.
|
|
11. |
- Bozhinoski, Darko, et al.
(författare)
-
Safety for mobile robotic systems: A systematic mapping study from a software engineering perspective
- 2019
-
Ingår i: Journal of Systems and Software. - : Elsevier BV. - 0164-1212. ; 151:1, s. 150-179
-
Tidskriftsartikel (refereegranskat)abstract
- Robotic research is making huge progress. However, existing solutions are facing a number of challenges preventing them from being used in our everyday tasks: (i) robots operate in unknown environments, (ii) robots collaborate with each other and even with humans, and (iii) robots shall never injure people or create damages. Researchers are targeting those challenges from various perspectives, producing a fragmented research landscape. We aim at providing a comprehensive and replicable picture of the state of the art from a software engineering perspective on existing solutions aiming at managing safety for mobile robotic systems. We apply the systematic mapping methodology on an initial set of 1274 potentially relevant research papers, we selected 58 primary studies and analyzed them according to a systematically-defined classification framework. This work contributes with (i) a classification framework for methods or techniques for managing safety when dealing with the software of mobile robotic systems (MSRs), (ii) a map of current software methods or techniques for software safety for MRSs, (iii) an elaboration on emerging challenges and implications for future research, and (iv) a replication package for independent replication and verification of this study. Our results confirm that generally existing solutions are not yet ready to be used in everyday life. There is the need of turn-key solutions ready to deal with all the challenges mentioned above.
|
|
12. |
- Bucaioni, Alessio, 1987-, et al.
(författare)
-
Aligning Architecture with Business Goals in the Automotive Domain
- 2021
-
Ingår i: 2021 IEEE 18TH INTERNATIONAL CONFERENCE ON SOFTWARE ARCHITECTURE (ICSA). - 9781728162607 ; , s. 126-137
-
Konferensbidrag (refereegranskat)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 use design science research to iteratively develop and evaluate 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. We conclude that 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.
|
|
13. |
- Bucaioni, A., et al.
(författare)
-
Aligning Architecture with Business Goals in the Automotive Domain
- 2021
-
Ingår i: 2021 IEEE 18th International Conference on Software Architecture (ICSA) 22-26 March 2021, Stuttgart, Germany. - : IEEE. - 9781728162607
-
Konferensbidrag (refereegranskat)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.
|
|
14. |
- Bucaioni, Alessio, 1987-, et al.
(författare)
-
Architecting and Analysing Connected Autonomous Vehicles
- 2020
-
Ingår i: Proceedings - 2020 IEEE International Conference on Software Architecture Companion, ICSA-C 2020. - : Institute of Electrical and Electronics Engineers Inc.. ; , s. 5-6
-
Konferensbidrag (refereegranskat)abstract
- © 2020 IEEE. This tutorial focuses on the vehicular domain, which is living a very interesting moment due to the many challenges the domain is experiencing, including autonomy of vehicles, vehicles that are becoming constituent systems in the system-of-systems context and many more. The ever-increasing software complexity in vehicles requires software architecture descriptions, which enable the software developers to compare and relate different products across different vehicle programs, development units, and organisations (in the vehicular ecosystem). Many vehicular functions are constrained by stringent timing requirements. The developers of these functions are required to analyse and verify these requirements at the software architecture level and often very early during the development process [1], [2]. In this context, the tutorial focuses on the design and timing predictability verification of vehicular software architectures for different Electrical and Electronic (E/E) architectures in connected and autonomous vehicles. The key takeaways of the tutorial are: i) an overview of the software development for various vehicular E/E architectures; ii) an overview of state of the art in the area; iii) understanding rudiments and value of timing analysis for this domain; iv) experience an industrial process for architecting and analysing the vehicle software via hands-on practice and demonstration.
|
|
15. |
- Bucaioni, A., et al.
(författare)
-
Technical Architectures for Automotive Systems
- 2020
-
Ingår i: IEEE International Conference on Software Architecture (ICSA), 16-20 March 2020, Salvador, Brazil, pp. 46-57. - : IEEE. - 9781728146591
-
Konferensbidrag (refereegranskat)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.
|
|
16. |
- Bucchiarone, Antonio, et al.
(författare)
-
Rule-based modeling and static analysis of self-adaptive systems by graph transformation
- 2015
-
Ingår i: Lecture Notes in Computer Science. - Cham : Springer International Publishing. - 0302-9743 .- 1611-3349. ; 8950, s. 582-601
-
Tidskriftsartikel (refereegranskat)abstract
- Software systems nowadays require continuous operation despite changes both in user needs and in their operational environments. Self-adaptive systems are typically instrumented with tools to autonomously perform adaptation to these changes while maintaining some desired properties. In this paper we model and analyze self-adaptive systems by means of typed, attributed graph grammars. The interplay of different grammars representing the application and the adaptation logic is realized by an adaption manager. Within this formal framework we define consistency and operational properties that are maintained despite adaptations and we give static conditions for their verification. The overall approach is supported by the AGG tool for modeling, simulating, and analyzing graph transformation systems. A case study modeling a business process that adapts to changing environment conditions is used to demonstrate and validate the formal framework.
|
|
17. |
- Caporuscio, Mauro, 1975-, et al.
(författare)
-
Compositional Verification of Middleware-Based Software Architecture Descriptions
- 2004
-
Ingår i: Proceedings of the 26th International Conference on Software Engineering (ICSE '04). - : IEEE Press. ; , s. 221-230
-
Konferensbidrag (refereegranskat)abstract
- In this paper we present a compositional reasoning to verify middleware-based software architecturedescriptions. We consider a nowadays typical software system development, namely the development of a software application A on a middleware M. Our goal is to efficiently integrate verification techniques, like model checking, in the software life cycle in order to improve the overall software quality. The approach exploits the structure imposed on the system by the software architecture in order to develop an assume-guarantee methodology to reduce properties verification from global to local. We apply the methodology on a non-trivial case study namely the development of a Gnutella system on top of the SIENA event-notification middleware.
|
|
18. |
- Caporuscio, Mauro, 1975-, et al.
(författare)
-
Engineering MDA into Compositional Reasoning for Analyzing Middleware-Based Applications
- 2005
-
Ingår i: Software Architecture. - Berlin, Heidelberg : Springer. - 9783540262756 ; , s. 130-145
-
Bokkapitel (övrigt vetenskapligt/konstnärligt)abstract
- Behavioral analysis of middleware-based applications typically requires the analysis of the middleware and the application, in a monolithic way. In terms of model-checking, this is a complex task and may result in the well known “state-explosion” problem. These considerations led us to investigate a compositional verification approach which decomposes the system in accordance with its Software Architecture. The architectural decomposability theorem we defined in previous work decomposes the system into three logical layer: (i) application components, (ii) proxies and, (iii)middleware. This logical separation allows for reducing the global system validation to the verification of local behaviors.In this paper, we engineer the architectural decomposability theorem to the analysis of middleware-based applications by automatically generating the proxies needed by the components in order to properly interact with each other via the middleware. In particular, following the Model Driven Architecture approach and by making use of the Abstract State Machine formalism, we describe a set of transformation rules that allow for deriving correct proxies for using CORBA. By means of the proposed transformations, the correctness of the proxy behavioral models is guaranteed without the need to validate them with respect to the assumptions posed by the theorem.
|
|
19. |
- Caporuscio, Mauro, 1975-, et al.
(författare)
-
Formal Analysis of Architectural Patterns
- 2004
-
Ingår i: Software Architecture. - Berlin, Heidelberg : Springer. - 9783540220008 ; , s. 10-24
-
Bokkapitel (övrigt vetenskapligt/konstnärligt)abstract
- Architectural patterns characterize and specify structural and behavioral properties of (sub)systems, thus allowing the provision of solutions for classes of problems.In this paper we show the use of architectural patterns as an abstraction to carry on, and reuse, formal reasoning on systems whose configuration can dynamically change.This kind of systems is hard to model and to reason about due to the fact that we cannot simply build a model with fixed topology (i.e. fixed number of components and connectors) and validate properties of interest on it.The work presented in this paper proposes an approach that given an architectural pattern which expresses a class of systems configurations and a set of properties of interest (i) selects, if any, aminimal configuration for which the specified properties make sense, (ii) an abstraction of the chosen architectural model erformed, in order to reduce the complexity of the verification phase. In this stage, abstractions are driven by the properties of interest. The output of this abstraction step can be model-checked, tested and analyzed by using a standard model-checking framework. (iii) The verification results obtained in the previous step are lifted to generic configurations by performing manual reasoning driven by the constraints posed by the architectural pattern.The approach will be applied by using an event-based architectural pattern to a publish/subscribe system, the Siena middleware, in order to validate its features and its mobility extension.
|
|
20. |
- Caporuscio, Mauro, 1975-, et al.
(författare)
-
Rapid System Development Via Product Line Architecture Implementation
- 2006
-
Ingår i: Rapid Integration of Software Engineering Techniques. - Berlin, Heidelberg : Springer. - 9783540340638 ; , s. 18-33
-
Bokkapitel (övrigt vetenskapligt/konstnärligt)abstract
- Software Product Line (SPL) engineering allows designers to reason about an entire family of software applications, instead of a single product, with a strategic importance for the rapid development of new applications. While much effort has been spent so far in understanding and modeling SPLs and their architectures, very little attention has been given on how to systematically enforce SPL architectural decisions into the implementation step.In this paper we propose a methodological approach and an implementation framework, based on a plugin component-based development, which allows us to move from an architectural specification of the SPL to its implementation in a systematic way. We show the suitability of this framework through its application to the TOOL one case study SPL.
|
|
21. |
- Casalaro, G. L., et al.
(författare)
-
Model-driven engineering for mobile robotic systems: a systematic mapping study
- 2022
-
Ingår i: Software and Systems Modeling. - : Springer Science and Business Media LLC. - 1619-1366 .- 1619-1374. ; 21, s. 19-49
-
Tidskriftsartikel (refereegranskat)abstract
- Mobile robots operate in various environments (e.g. aquatic, aerial, or terrestrial), they come in many diverse shapes and they are increasingly becoming parts of our lives. The successful engineering of mobile robotics systems demands the interdisciplinary collaboration of experts from different domains, such as mechanical and electrical engineering, artificial intelligence, and systems engineering. Research and industry have tried to tackle this heterogeneity by proposing a multitude of model-driven solutions to engineer the software of mobile robotics systems. However, there is no systematic study of the state of the art in model-driven engineering (MDE) for mobile robotics systems that could guide research or practitioners in finding model-driven solutions and tools to efficiently engineer mobile robotics systems. The paper is contributing to this direction by providing a map of software engineering research in MDE that investigates (1) which types of robots are supported by existing MDE approaches, (2) the types and characteristics of MRSs that are engineered using MDE approaches, (3) a description of how MDE approaches support the engineering of MRSs, (4) how existing MDE approaches are validated, and (5) how tools support existing MDE approaches. We also provide a replication package to assess, extend, and/or replicate the study. The results of this work and the highlighted challenges can guide researchers and practitioners from robotics and software engineering through the research landscape.
|
|
22. |
|
|
23. |
- Cicchetti, Antonio, et al.
(författare)
-
Towards a Framework for Distributed and Collaborative Modeling
- 2009
-
Ingår i: 2009 18TH IEEE INTERNATIONAL WORKSHOP ON ENABLING TECHNOLOGIES: INFRASTRUCTURES FOR COLLABORATIVE ENTERPRISES. - 9781424447282 ; , s. 149-154
-
Konferensbidrag (refereegranskat)abstract
- Increasingly, models are becoming first class core assets, and model-driven engineering requires novel techniques, tools, and practices to face the globalization of software development in the (always more) pervasive IT world. This paper proposes a framework for synchronous and asynchronous concurrent and collaborative modeling. Synchronous collaborative modeling offers services for sharing the modeling space, models, documentation, and configuration, while asynchronous collaborative modeling offers services for supporting merging of models modified and edited separately by different software engineers. Our approach is based on the observation that it is in general more convenient to store differences between subsequent versions of a system than the whole models of each stage.
|
|
24. |
- Ciccozzi, Federico, et al.
(författare)
-
Adopting MDE for Specifying and Executing Civilian Missions of Mobile Multi-Robot Systems
- 2016
-
Ingår i: IEEE Access: The Multidisciplinary Open Access. - 2169-3536. ; 4, s. 6451-6466
-
Tidskriftsartikel (refereegranskat)abstract
- Robots are meant to replace humans for a broad variety of everyday tasks, such as environmental monitoring or patrolling large public areas for security assurance. The main focus of researchers and practitioners has been on providing tailored software and hardware solutions for very specific and often complex tasks. On one hand, these solutions show great potential and provide advanced capabilities for solving the specific task. On the other hand, the polarized attention to task-specific solutions makes them hard to reuse, customize, and combine. In this paper we propose a family of domain-specific modeling languages for the specification of civilian missions of mobile multi-robot systems. These missions are meant to be described in terms of models that are: 1) closer to the general problem domain; 2) independent from the underlying technologies; 3) ready to be analyzed, simulated, and executed; and 4) extensible to new application domains, thus opening up the use of robots to even non-technical operators. Moreover, we show the applicability of the proposed family of languages in two real-world application domains: unmanned multicopters and autonomous underwater vehicles.
|
|
25. |
- Ciccozzi, Federico, 1983-, et al.
(författare)
-
Editorial to theme issue on model-driven engineering of component-based software systems
- 2019
-
Ingår i: Software and Systems Modeling. - : Springer Science and Business Media LLC. - 1619-1374 .- 1619-1366. ; 18:1, s. 7-10
-
Tidskriftsartikel (övrigt vetenskapligt/konstnärligt)abstract
- This theme issue aims at providing a forum for disseminating latest trends in the use and combination of model-driven engineering (MDE) and component-based software engineering (CBSE). One of the main aims of MDE is to increase productivity in the development of complex systems, while reducing the time to market. Regarding CBSE, one of the main goals is to deliver and then support the exploitation of reusable “off-the-shelf” software components to be incorporated into larger applications. An effective interplay of MDE and CBSE can bring benefits to both communities: on the one hand, the CBSE community would benefit from implementation and automation capabilities of MDE, and on the other hand, MDE would benefit from the foundational nature of CBSE. In total, we received 23 submissions to this theme issue, and each submission was reviewed by at least three reviewers. Thanks to the high quality of the submissions that we received, we could eventually accept six papers for publication.
|
|
26. |
- Ciccozzi, Federico, 1983-, et al.
(författare)
-
Engineering the software of robotic systems
- 2017
-
Ingår i: Proceedings - 2017 IEEE/ACM 39th International Conference on Software Engineering Companion, ICSE-C 2017. - : IEEE. ; , s. 507-508
-
Konferensbidrag (refereegranskat)abstract
- The production of software for robotic systems is often case-specific, without fully following established engineering approaches. Systematic approaches, methods, models, and tools are pivotal for the creation of robotic systems for real-world applications and turn-key solutions. Well-defined (software) engineering approaches are considered the 'make or break' factor in the development of complex robotic systems. The shift towards well-defined engineering approaches will stimulate component supply-chains and significantly reshape the robotics marketplace. The goal of this technical briefing is to provide an overview on the state of the art and practice concerning solutions and open challenges in the engineering of software required to develop and manage robotic systems. Model-Driven Engineering (MDE) is discussed as a promising technology to raise the level of abstraction, promote reuse, facilitate integration, boost automation and promote early analysis in such a complex domain.
|
|
27. |
- Ciccozzi, Federico, et al.
(författare)
-
Model-driven engineering: a facilitator for engineering mission-critical IoT systems
- 2017
-
Ingår i: IEEE Software. - 1937-4194 .- 0740-7459. ; 34:1, s. 46-53
-
Tidskriftsartikel (refereegranskat)abstract
- In mission-critical Internet of Things systems, applications require not only high availability, reliability, safety, and security but also regulatory compliance, scalability, and serviceability. In addition, they're exposed to uncertainty and variability. Model-driven engineering is a candidate for meeting these challenges.
|
|
28. |
- Ciccozzi, Federico, et al.
(författare)
-
Model-Driven Engineering for Mission-Critical IoT Systems
- 2017
-
Ingår i: IEEE Software. - : IEEE. - 0740-7459 .- 1937-4194. ; 34:1, s. 46-53
-
Tidskriftsartikel (refereegranskat)abstract
- Mission-critical Internet of Things (MC-IoT) systems involve heterogeneous things from both the digital and physical worlds. They run applications whose failure might cause significant and possibly dramatic consequences, such as interruption of public services, significant business losses, and deterioration of enterprise operations. These applications require not only high availability, reliability, safety, and security but also regulatory compliance, scalability, and serviceability. At the same time, they're exposed to various facets of uncertainty, spanning from software and hardware variability to mission planning and execution in possibly unforeseeable environments. Model-driven engineering can potentially meet these challenges and better enable the adoption of MC-IoT systems.
|
|
29. |
-
Context-aware, Autonomous and Smart Architectures (CASA@ECSA 2017)
- 2017
-
Proceedings (redaktörskap) (övrigt vetenskapligt/konstnärligt)abstract
- Software is becoming more and more aware of its execution context. Decisions made at design time are moved at run time to enhance the services offered by the software. The Context-aware, Autonomous, and Smart Architectures (CASA) workshop aims to address the issues and challenges raised by the development and evaluation of software that is context-aware, dynamic, autonomous, smart, adaptive, selfmanaged. Novel approaches are needed to face the new issues raised by such software. Further, existing architectural solutions should be adapted and improved to meet the dynamic requirements of today systems.
|
|
30. |
- Di Ruscio, D., et al.
(författare)
-
A family of domain-specific languages for specifying civilian missions of multi-robot systems
- 2014
-
Ingår i: CEUR Workshop Proceedings. - 1613-0073. ; 1319, s. 16-29
-
Konferensbidrag (refereegranskat)abstract
- The next future will be pervaded by robots performing a variety of tasks (e.g., environmental monitoring, patrolling large public areas for security assurance). So far, researchers and practitioners are mainly focusing on hardware/software solutions for specialized and complex tasks; however, despite the accuracy and the advanced capabilities of current solutions, this trend leads to task-specific solutions, difficult to be reused and combined. In this paper we propose a family of domain-specific languages for specifying missions of multi-robot systems by means of models that are (i) independent from the technologies, (ii) ready to be analysed, simulated, and executed, (iii) extensible to new application areas, and (iv) closer to the problem domain, thus democratizing the use of robots to non-technical operators. We show the applicability of the proposed family of languages in a real project in the domain of autonomous unmanned aerial vehicles.
|
|
31. |
- Di Ruscio, D., et al.
(författare)
-
A model-driven approach to detect faults in FOSS systems
- 2015
-
Ingår i: Journal of Software-Evolution and Process. - : Wiley. - 2047-7473. ; 27:4, s. 294-318
-
Tidskriftsartikel (refereegranskat)abstract
- Free and Open-Source Software (FOSS) Linux distributions are among the most complex modern software systems. They are made of thousands of components (software packages) evolving rapidly without centralized coordination. The upgrade of FOSS systems is managed by meta-installers, which solve package dependencies and conflicts and lead the system to a new system configuration by installing or removing packages. Current tools are able to predict a very limited set of upgrade faults before deployment, and this leaves a wide range of faults unpredicted. In this paper, we focus on faults that remain unpredicted, for example, missing packages, packages that are not properly installed, and missing services, with the aim of providing a solution for them. Specifically, in this paper, we propose a model-driven approach and supporting tools to prevent specific classes of system configuration faults before performing the real upgrade. Once the system configuration is represented as a model, the configuration model is evaluated by means of queries, each devoted to discover a specific class of faults. The approach is intrinsically extensible so that user communities can add new queries when new classes of faults are identified. The approach has been validated by executing the fault detector on configuration models in which faults have been intentionally injected and by analyzing produced results.
|
|
32. |
|
|
33. |
- Di Ruscio, D., et al.
(författare)
-
Engineering a platform for mission planning of autonomous and resilient quadrotors
- 2013
-
Ingår i: 5th workshop on Software Engineering for Resilient Systems, SERENE 2013; Kiev; Ukraine. - Berlin, Heidelberg : Springer. - 9783642408939
-
Konferensbidrag (refereegranskat)abstract
- Quadrotors and UAVs in general are becoming as attractive instruments to safely and efficiently perform environmental monitoring missions. In professional use, quadrotors are manually controlled by expert operators via a remote controller. In research, several projects provide various degrees of automation for the execution of the mission; however, those projects are based on the use of programming languages which are too distant from the background of the stakeholders operating in the field (e.g., fire fighters, policemen, etc.). In this paper we propose FLYAQ, a platform enabling to (i) graphically define monitoring missions via a web interface, (ii) decompose the mission according to the number and nature of available quadrotors, and (iii) generate the implementation code orchestrating all the quadrotors of the swarm to fulfil the common goal of the mission. The FLYAQ platform enables operators to focus on the mission itself, rather than on technical concerns arising from the use of quadrotors. A reconfiguration engine is specifically designed to make the swarm resilient to faults and external events that may compromise the mission. Moreover, under some limitations explained in the paper, the reconfiguration engine permits to change the mission at run-time. The FLYAQ platform will be distributed as an open-source product. © 2013 Springer-Verlag.
|
|
34. |
- Diniz Caldas, Ricardo, 1994, et al.
(författare)
-
A hybrid approach combining control theory and AI for engineering self-adaptive systems
- 2020
-
Ingår i: Proceedings - 2020 IEEE/ACM 15th International Symposium on Software Engineering for Adaptive and Self-Managing Systems, SEAMS 2020. - New York, NY, USA : ACM. ; , s. 9-19
-
Konferensbidrag (refereegranskat)abstract
- Control theoretical techniques have been successfully adopted as methods for self-adaptive systems design to provide formal guarantees about the effectiveness and robustness of adaptation mechanisms. However, the computational effort to obtain guarantees poses severe constraints when it comes to dynamic adaptation. In order to solve these limitations, in this paper, we propose a hybrid approach combining software engineering, control theory, and AI to design for software self-adaptation. Our solution proposes a hierarchical and dynamic system manager with performance tuning. Due to the gap between high-level requirements specification and the internal knob behavior of the managed system, a hierarchically composed components architecture seek the separation of concerns towards a dynamic solution. Therefore, a two-layered adaptive manager was designed to satisfy the software requirements with parameters optimization through regression analysis and evolutionary meta-heuristic. The optimization relies on the collection and processing of performance, effectiveness, and robustness metrics w.r.t control theoretical metrics at the offline and online stages. We evaluate our work with a prototype of the Body Sensor Network (BSN) in the healthcare domain, which is largely used as a demonstrator by the community. The BSN was implemented under the Robot Operating System (ROS) architecture, and concerns about the system dependability are taken as adaptation goals. Our results reinforce the necessity of performing well on such a safety-critical domain and contribute with substantial evidence on how hybrid approaches that combine control and AI-based techniques for engineering self-adaptive systems can provide effective adaptation.
|
|
35. |
- Diniz Caldas, Ricardo, 1994, et al.
(författare)
-
Towards Mapping Control Theory and Software Engineering Properties using Specification Patterns
- 2021
-
Ingår i: 2021 IEEE International Conference on Autonomic Computing and Self-Organizing Systems Companion (ACSOS-C). - Washington DC, United States : IEEE. - 9781665443937
-
Konferensbidrag (refereegranskat)abstract
- A traditional approach to realize self-adaptation in software engineering (SE) is by means of feedback loops. The goals of the system can be specified as formal properties that are verified against models of the system. On the other hand, control theory (CT) provides a well-established foundation for designing feedback loop systems and providing guarantees for essential properties, such as stability, settling time, and steady state error. Currently, it is an open question whether and how traditional SE approaches to self-adaptation consider properties from CT. Answering this question is challenging given the principle differences in representing properties in both fields. In this paper, we take a first step to answer this question. We follow a bottom up approach where we specify a control design (in Simulink) for a case inspired by Scuderia Ferrari (F1) and provide evidence for stability and safety. The design is then transferred into code (in C) that is further optimized. Next, we define properties that enable verifying whether the control properties still hold at code level. Then, we consolidate the solution by mapping the properties in both worlds using specification patterns as common language and we verify the correctness of this mapping. The mapping offers a reusable artifact to solve similar problems. Finally, we outline opportunities for future work, particularly to refine and extend the mapping and investigate how it can improve the engineering of self-adaptive systems for both SE and CT engineers.
|
|
36. |
- Dodig Crnkovic, Gordana, 1955, et al.
(författare)
-
Future Intelligent Autonomous Robots, Ethical by Design. Learning from Autonomous Cars Ethics
- 2021
-
Tidskriftsartikel (övrigt vetenskapligt/konstnärligt)abstract
- Development of the intelligent autonomous robot technology presupposes its anticipated beneficial effect on the individuals and societies. In the case of such disruptive emergent technology, not only questions of how to build, but also why to build and with what consequences are important. The field of ethics of intelligent autonomous robotic cars is a good example of research with actionable practical value, where a variety of stakeholders, including the legal system and other societal and governmental actors, as well as companies and businesses, collaborate bringing about shared view of ethics and societal aspects of technology. It could be used as a starting platform for the approaches to the development of intelligent autonomous robots in general, considering human-machine interfaces in different phases of the life cycle of technology - the development, implementation, testing, use and disposal. Drawing from our work on ethics of autonomous intelligent robocars, and the existing literature on ethics of robotics, our contribution consists of a set of values and ethical principles with identified challenges and proposed approaches for meeting them. This may help stakeholders in the field of intelligent autonomous robotics to connect ethical principles with their applications. Our recommendations of ethical requirements for autonomous cars can be used for other types of intelligent autonomous robots, with the caveat for social robots that require more research regarding interactions with the users. We emphasize that existing ethical frameworks need to be applied in a context-sensitive way, by assessments in interdisciplinary, multi-competent teams through multi-criteria analysis. Furthermore, we argue for the need of a continuous development of ethical principles, guidelines, and regulations, informed by the progress of technologies and involving relevant stakeholders.
|
|
37. |
- Dodig Crnkovic, Gordana, 1955, et al.
(författare)
-
Future Intelligent Autonomous Robots, Ethical by Design. Lessons Learned from Autonomous Cars Ethics
- 2023
-
Ingår i: Proceedings ICSIT, International Conference on Society and Information Technologies. ; 2023-March, s. 92-98
-
Konferensbidrag (refereegranskat)abstract
- The "ethical by design" approach involves examining all stages of a lifecycle of technology to ensure that they are ethically justifiable and socially sustainable. Building on our work on the ethics of autonomous intelligent robocars, and studies of the literature on the ethics of robotics, we propose for robot applications a set of values and ethical principles including safety, security, privacy, transparency, and explainability, accountability, fairness, human control, well-being, autonomy and freedom, and sustainability. This may help stakeholders in the field of intelligent autonomous robotics to connect ethical principles with their applications. Most ethical considerations we identified in our work on autonomous cars are relevant to all AI-powered robots, but robots require additional examination depending on their application domain, such as social robots (care robots, personal companions, robots used in education, health care, elderly care, education, entertainment, chat-bots), industrial robots, etcetera. Thus, existing ethical frameworks need to be applied in a context-sensitive way, by assessments in interdisciplinary, multi-competent teams through multi-criteria analysis. Furthermore, we argue for the need for continuous development of ethical principles, guidelines, and regulations, informed by the progress of technologies and involving relevant stakeholders. This implies designing the socio-technical system as an intelligent learning ecology.
|
|
38. |
- Eliasson, Ulf, 1984, et al.
(författare)
-
Architecting in the Automotive Domain: Descriptive vs Prescriptive Architecture
- 2015
-
Ingår i: 12th Working IEEE/IFIP Conference on Software Architecture (WICSA), 2015. - : IEEE. - 9781479919222 ; , s. 115-118
-
Konferensbidrag (refereegranskat)abstract
- To investigate the new requirements and challenges of architecting often safety critical software in the automotive domain, we have performed two case studies on Volvo Car Group and Volvo Group Truck Technology. Our findings suggest that automotive software architects produce two different architectures (or views) of the same system. The first one is a high-level descriptive architecture, mainly documenting system design decisions and describing principles and guidelines that should govern the overall system. The second architecture is the working architecture, defining the actual blueprint for the implementation teams and being used in their daily work. The working architecture is characterized by high complexity and considerably lower readability than the high-level architecture. Unfortunately, the team responsible for the high-level architecture tends to get isolated from the rest of the development organization, with few communications except regarding the working architecture. This creates tensions within the organizations, sub-optimal design of the communication matrix and limited usage of the high-level architecture in the development teams. To adapt to the current pace of software development and rapidly growing software systems new ways of working are required, both on technical and on an organizational level.
|
|
39. |
- Eliasson, Ulf, 1984, et al.
(författare)
-
The Need of Complementing Plan-Driven Requirements Engineering with Emerging Communication: Experiences from Volvo Car Group
- 2015
-
Ingår i: 23rd IEEE International Requirements Engineering Conference, RE 2015, Ottawa, Canada, 24-28 August. - : IEEE. - 9781467369053
-
Konferensbidrag (refereegranskat)abstract
- The automotive industry is currently going through an enormous change, transitioning from being pure hardware and mechanical companies to becoming more software focused. Currently, software development is embedded into a V-Model process that defines how software requirements are extracted from system requirements. In recent years, OEMs have come to recognize the importance and opportunities offered by software, which include better management and shorter time-to-market of distinguishing features. Strategies to better utilize software include in-house software development and new ways to collaborate with suppliers. However, in their effort to take advantage of these opportunities, engineers struggle with the formal process imposed on software development. In this paper, we investigate the impact of this struggle on the flow of requirements, including challenges and practices. We found that new ways of working with requirements had emerged that are partly not supported, partly hindered by the old tooling and processes for requirements engineering. Requirements flow both vertical and horizontal in the organization and across the supply-chain. Support for the new way of working should allow us to refine requirements iteratively throughout their life-cycle, handle the discussion of rationales, and to manage assumptions. We found strategies of achieving this to differ not only between OEMs, but also between different divisions inside the OEMs.
|
|
40. |
- Fagerström, Martin, 1979, et al.
(författare)
-
Verdict Machinery: On the need to automatically make sense of test results
- 2016
-
Ingår i: International Symposium on Software Testing and Analysis (ISSTA '16). - New York, NY, USA : ACM. - 9781450343909 ; , s. 225-234
-
Konferensbidrag (refereegranskat)abstract
- Along with technological developments and increasing competition there is a major incentive for companies to produce and market high quality products before their competitors. In order to conquer a bigger portion of the market share, companies have to ensure the quality of the product in a shorter time frame. To accomplish this task companies try to automate their test processes as much as possible. It is critical to investigate and understand the problems that occur during different stages of test automation processes. In this paper we report on a case study on automatic analysis of non-functional test results.We discuss challenges in the face of continuous integration and deployment and provide improvement suggestions based on interviews at a large company in Sweden. The key contributions of this work are filling the knowledge gap in research about performance regression test analysis automation and providing warning signs and a road map for the industry.
|
|
41. |
- Felix Solano, Gabriela, et al.
(författare)
-
Taming uncertainty in the assurance process of self-adaptive systems: A goal-oriented approach
- 2019
-
Ingår i: ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems. - : IEEE. - 2156-7891 .- 2157-2305. ; 2019-May, s. 89-99
-
Konferensbidrag (refereegranskat)abstract
- Goals are first-class entities in a self-adaptive system (SAS) as they guide the self-adaptation. A SAS often operates in dynamic and partially unknown environments, which cause uncertainty that the SAS has to address to achieve its goals. Moreover, besides the environment, other classes of uncertainty have been identified. However, these various classes and their sources are not systematically addressed by current approaches throughout the life cycle of the SAS. In general, uncertainty typically makes the assurance provision of SAS goals exclusively at design time not viable. This calls for an assurance process that spans the whole life cycle of the SAS. In this work, we propose a goal-oriented assurance process that supports taming different sources (within different classes) of uncertainty from defining the goals at design time to performing self-adaptation at runtime. Based on a goal model augmented with uncertainty annotations, we automatically generate parametric symbolic formulae with parameterized uncertainties at design time using symbolic model checking. These formulae and the goal model guide the synthesis of adaptation policies by engineers. At runtime, the generated formulae are evaluated to resolve the uncertainty and to steer the self-adaptation using the policies. In this paper, we focus on reliability and cost properties, for which we evaluate our approach on the Body Sensor Network (BSN) implemented in OpenDaVINCI. The results of the validation are promising and show that our approach is able to systematically tame multiple classes of uncertainty, and that it is effective and efficient in providing assurances for the goals of self-adaptive systems.
|
|
42. |
- Ferko, Enxhi, et al.
(författare)
-
Investigating interoperability in Digital Twin Architectures.
-
Annan publikation (övrigt vetenskapligt/konstnärligt)abstract
- Digital Twin architectures comprise multi-integrated building blocks, which include components for data acquisition, management, and processing. Effective and error-prone data exchange between building blocks of the digital twin is the foundation of its successful implementation reflecting the growing importance of interoperability (i.e. ability of systems to exchange data and make use of the data that is exchanged). This paper examines communication technologies (such as protocols and standards) used for the development of digital twins for manufacturing identifying interfaces between physical counterparts and digital twins, as well as between different digital twins, with the ultimate goal of analysing data interoperability concerns. At this end, we use the assessment model “Levels of Conceptual Interoperability Model” to define the applicable levels of interoperability for the identified interfaces and discuss the trade-offs for reaching higher levels of interoperability.
|
|
43. |
- Ferko, Enxhi, et al.
(författare)
-
Standardisation in Digital Twin Architectures in Manufacturing
- 2023
-
Ingår i: 2023 IEEE 20th International Conference on Software Architecture (ICSA). - 9798350397499 ; , s. 70-81
-
Konferensbidrag (refereegranskat)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 mixedmethods 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.
|
|
44. |
- García Gonzalo, Sergio, 1989, et al.
(författare)
-
An Architecture for Decentralized, Collaborative, and Autonomous Robots
- 2018
-
Ingår i: Proceedings - 2018 IEEE 15th International Conference on Software Architecture, ICSA 2018. ; , s. 75-84
-
Konferensbidrag (refereegranskat)abstract
- Robotic applications are typically realized using ad hoc and domain-specific solutions, which challenges the engineering and cross-project reuse of such applications. Especially in complex scenarios, where self-adaptive robots collaborate among themselves or with humans, the effective and systematic engineering of such applications is becoming increasingly important. Such scenarios require decentralized software architectures that foster fault-tolerant ways of managing large teams of (possibly) heterogeneous robots. To the best of our knowledge, no existing architecture for robot applications supports decentralized and self-adaptive collaboration. To address this gap, we conducted a design science study with 21 practitioners and experts in the field of robotics to develop an architecture fulfilling these requirements through several iterations. We present SERA, an architecture for robot applications that supports human-robot collaboration, as well as adaptation and coordination of single- and multi-robot systems in a decentralized fashion. SERA is based on layers that contain components that manage the adaptation at different levels of abstraction and communicate through well-defined interfaces. We successfully validated SERA by considering a set of real scenarios, by both using simulators and real robots, by involving robotic experts, and by benchmarking it with state-of-the-art solutions.
|
|
45. |
- García Gonzalo, Sergio, 1989, et al.
(författare)
-
MAPmAKER: Performing multi-robot LTL planning under uncertainty
- 2019
-
Ingår i: Proceedings - 2019 IEEE/ACM 2nd International Workshop on Robotics Software Engineering, RoSE 2019. ; , s. 1-4
-
Konferensbidrag (refereegranskat)abstract
- Robot applications are being increasingly used in real life to help humans performing dangerous, heavy, and/or monotonous tasks. They usually rely on planners that given a robot or a team of robots compute plans that specify how the robot(s) can fulfill their missions. Current robot applications ask for planners that make automated planning possible even when only partial knowledge about the environment in which the robots are deployed is available. To tackle such challenges we developed MAPmAKER, which provides a decentralized planning solution and is able to work in partially known environments. Decentralization is realized by decomposing the robotic team into subteams based on their missions, and then by running a classical planning algorithm. Partial knowledge is handled by calling several times a classical planning algorithm. Demo video available at: https://youtu.be/TJzC_u2yfzQ.
|
|
46. |
- García Gonzalo, Sergio, 1989, et al.
(författare)
-
Robotics Software Engineering: A Perspective from the Service Robotics Domain (Summary)
- 2020
-
Ingår i: Lecture Notes in Informatics. - 1617-5468. ; P-310, s. 41-42
-
Konferensbidrag (refereegranskat)abstract
- We present our paper published in the proceedings of the ACM Joint European Software Engineering Conference and Symposium on the Foundations of Software Engineering 2020. Robots that support humans by performing useful tasks (a.k.a., service robots) are booming worldwide. In contrast to industrial robots, the development of service robots comes with severe software engineering challenges, since they require high levels of robustness and autonomy to operate in highly heterogeneous environments. As a domain with critical safety implications, service robotics faces a need for sound software development practices. In this paper, we present the first large-scale empirical study to assess the state of the art and practice of robotics software engineering. We conducted 18 semi-structured interviews with industrial practitioners working in 15 companies from 9 different countries and a survey with 156 respondents (from 26 countries) from the robotics domain. Our results provide a comprehensive picture of (i) the practices applied by robotics industrial and academic practitioners, including processes, paradigms, languages, tools, frameworks, and reuse practices, (ii) the distinguishing characteristics of robotics software engineering, and (iii) recurrent challenges usually faced, together with adopted solutions. The paper concludes by discussing observations, derived hypotheses, and proposed actions for researchers and practitioners.
|
|
47. |
- García Gonzalo, Sergio, 1989, et al.
(författare)
-
Software variability in service robotics
- 2023
-
Ingår i: Empirical Software Engineering. - : Springer Science and Business Media LLC. - 1573-7616 .- 1382-3256. ; 28:2
-
Tidskriftsartikel (refereegranskat)abstract
- Robots artificially replicate human capabilities thanks to their software, the main embodiment of intelligence. However, engineering robotics software has become increasingly challenging. Developers need expertise from different disciplines as well as they are faced with heterogeneous hardware and uncertain operating environments. To this end, the software needs to be variable—to customize robots for different customers, hardware, and operating environments. However, variability adds substantial complexity and needs to be managed—yet, ad hoc practices prevail in the robotics domain, challenging effective software reuse, maintenance, and evolution. To improve the situation, we need to enhance our empirical understanding of variability in robotics. We present a multiple-case study on software variability in the vibrant and challenging domain of service robotics. We investigated drivers, practices, methods, and challenges of variability from industrial companies building service robots. We analyzed the state-of-the-practice and the state-of-the-art—the former via an experience report and eleven interviews with two service robotics companies; the latter via a systematic literature review. We triangulated from these sources, reporting observations with actionable recommendations for researchers, tool providers, and practitioners. We formulated hypotheses trying to explain our observations, and also compared the state-of-the-art from the literature with the-state-of-the-practice we observed in our cases. We learned that the level of abstraction in robotics software needs to be raised for simplifying variability management and software integration, while keeping a sufficient level of customization to boost efficiency and effectiveness in their robots’ operation. Planning and realizing variability for specific requirements and implementing robust abstractions permit robotic applications to operate robustly in dynamic environments, which are often only partially known and controllable. With this aim, our companies use a number of mechanisms, some of them based on formalisms used to specify robotic behavior, such as finite-state machines and behavior trees. To foster software reuse, the service robotics domain will greatly benefit from having software components—completely decoupled from hardware—with harmonized and standardized interfaces, and organized in an ecosystem shared among various companies.
|
|
48. |
- García Gonzalo, Sergio, 1989, et al.
(författare)
-
Variability modeling of service robots: Experiences and challenges
- 2019
-
Ingår i: ACM International Conference Proceeding Series. - New York, NY, USA : ACM.
-
Konferensbidrag (refereegranskat)abstract
- Sensing, planning, controlling, and reasoning, are human-like capabilities that can be articially replicated in an autonomous robot. Such a robot implements data structures and algorithms devised on a large spectrum of theories, from probability theory, mechanics, and control theory to ethology, economy, and cognitive sciences. Software plays a key role in the development of robotic systems, as it is the medium to embody intelligence in the machine. During the last years, however, software development is increasingly becoming the bottleneck of robotic systems engineering due to three factors: (a) the software development is mostly based on community efforts and it is not coordinated by key stakeholders; (b) robotic technologies are characterized by a high variability that makes reuse of software a challenging practice; and (c) robotics developers are usually not specically trained in software engineering. In this paper, we illustrate our experiences from EU, academic, and industrial projects in identifying, modeling, and managing variability in the domain of service robots. We hope to raise awareness for the specic variability challenges in robotics software engineering and to inspire other researchers to advance thiseld.
|
|
49. |
- Garcia, Sergio, et al.
(författare)
-
High-level mission specification for multiple robots
- 2019
-
Ingår i: SLE 2019: Proceedings of the 12th ACM SIGPLAN International Conference on Software Language Engineering. - New York, NY, USA : ACM.
-
Konferensbidrag (refereegranskat)abstract
- Mobile robots are increasingly used in our everyday life to autonomously realize missions. A variety of languages has been proposed to support roboticists in the systematic development of robotic applications, ranging from logical languages with well-defined semantics to domain-specific languages with user-friendly syntax. The characteristics of both of them have distinct advantages, however, developing a language that combines those advantages remains an elusive task. We present PROMISE, a novel language that enables domain experts to specify missions on a high level of abstraction for teams of autonomous robots in a user-friendly way, while having well-defined semantics. Our ambition is to permit users to specify high-level goals instead of a series of specific actions the robots should perform. The language contains a set of atomic tasks that can be executed by robots and a set of operators that allow the composition of these tasks in complex missions. The language is supported by a standalone tool that permits mission specification through a textual and a graphical interface and that can be integrated within a variety of frameworks. We integrated PROMISE with a software platform providing functionalities such as motion control and planning. We conducted experiments to evaluate the correctness of the specification and execution of complex robotic missions with both simulators and real robots. We also conducted two user studies to assess the simplicity of PROMISE. The results show that PROMISE effectively supports users to specify missions for robots in a user-friendly manner.
|
|
50. |
- Garcia, Sergio, et al.
(författare)
-
PROMISE: High-level mission specification for multiple robots
- 2020
-
Ingår i: Proceedings - International Conference on Software Engineering. - New York, NY, USA : ACM. - 0270-5257.
-
Konferensbidrag (refereegranskat)abstract
- Service robots, a type of robots that perform useful tasks for humans, are foreseen to be broadly used in the near future in both social and industrial scenarios. Those robots will be required to operate in dynamic environments, collaborating among them or with users. Specifying the list of requested tasks to be achieved by a robotic team is far from being trivial. Therefore, mission specification languages and tools need to be expressive enough to allow the specification of complex missions (e.g., detailing recovery actions), while being reachable by domain experts who might not be knowledgeable of programming languages. To support domain experts, we developed PROMISE, a Domain-Specific Language that allows mission specification for multiple robots in a user-friendly, yet rigorous manner. PROMISE is built as an Eclipse plugin that provides a textual and a graphical interface for mission specification. Our tool is in turn integrated into a software framework, which provides functionalities as: (1) automatic generation from specification, (2) sending of missions to the robotic team; and (3) interpretation and management of missions during execution time. PROMISE and its framework implementation have been validated through simulation and real-world experiments with four different robotic models. Video: https://youtu.be/RMtqwY2GOlQ
|
|