21
Managing software variability for dynamic reconfiguration of robot control systems Davide Brugali University of Bergamo, Italy

Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Managing software variability

for dynamic reconfiguration

of robot control systems

Davide Brugali

University of Bergamo, Italy

Page 2: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Outline

• Managing software variability for :

1. Reducing software development costs

2. Enforcing NF-Requirements at runtime

• Challenges in software variability management

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Page 3: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

The cost of software development for service robots

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

care utensil robot

floor-cleaning robot

container-transporting robot

Page 4: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

The cost of software development for service robots

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

• up to 90% of the life-cycle costs are influenced by decisions taken in early development phases

• the cost estimate uncertainty is higher in early phases

• the majority of the costs are incurred during production, and use (i.e. maintenance)

Page 5: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Current practice : single system development

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

∞ Possible systems

Requirements specification

Architecture design and analysis

Components design

Components implementation

Running code

System Deployment

Available technologies

Courtesy of Svahnberg, van Gurp, Bosch

Courtesy of Svahnberg, van Gurp, Bosch

Page 6: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Current practice

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Variability Modeling of Service Robots: Experiences and Challenges

Sergio García, Daniel Strüber, Davide Brugali, Alessandro Di Fava, Philipp Schillinger, Patrizio Pelliccione, Thorsten Berger

13th International Workshop on Variability Modelling of Software-Intensive Systems, February 6-8, 2019, Leuven Belgium

Page 7: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Reasons for NOT REUSING software components

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Page 8: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Software Product Lines

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

∞ Possible systems

Running code

Domain Analysis

Architecture design and analysis

Components design

Code implementation

System Deployment

Requirements specification

Product Derivation

Available technologies

DE

AE

Courtesy of Svahnberg, van Gurp, Bosch

∞ Possible systems

Page 9: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Robotic variability : Hardware

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Page 10: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Robotic variability : Task

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Logistic

Social interaction Housekeeping

Page 11: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Robotic variability : Environment

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Mostly static Highly dynamic

Outdoor

Page 12: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Robotic variability : Capabilities

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Page 13: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Challenges

1. To identify Domain-specific software architectures

• that capture robotic variability and

• allow assessing system-level quality aspects

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Page 14: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Safe navigation

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Page 15: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Logistics Scenario

Requirements :

the robot transports fragile medical items

the corridors are not crowded (mostly static)

the path is marked with visual landmarks

Configuration :

Trajectory planning : jerk-limited

Obstacle avoidance : DWA

Localization : Aruco markers

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Page 16: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Logistics Scenario

Requirements :

the robot transports fragile medical items

the corridors are not crowded

the path is marked with visual landmarks

use a laser range finder and a geometric map

Configuration :

Trajectory planning : jerk-limited

Obstacle avoidance : DWA

Localization : Aruco markers

Localization : AMCL

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

SCARCE ILLUMINATION

Page 17: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Safe navigation

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Page 18: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Response Time Analysis of System Variants

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Model-based development of QoS-aware Reconfigurable Autonomous Robotic Systems

Brugali D., Mirandola R., Capilla R., Trubiani C. 2018 Second IEEE International Conference on Robotic Computing

Page 19: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Challenges

1. Modeling NF-Requirements for configurable systems

• Modeling the relationship between NF-Requirements and System Variants

• Defining Modeling languages

Modeling and Analysis of safety requirements in robot navigation with an extension of UML MARTE

Brugali D. 2018 IEEE International Conference on Real-Time Computing and Robotics

2. Analysis of NF-Requirements for configurable systems

• To apply analysis methods to each configuration leads to combinatorial explosion.

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Page 20: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Conclusions

• Variability management for :

• Reducing development costs

• Enforcing NF-Requirements at runtime

• Paradigm shift

• From single system development to SPL

• Emphasis on Architectures not on Components

• Challenges

• Designing Domain-specific architectures

• Modelling and analysis of NF-Requirements for reconfigurable systems

Royal Academy of Engineering - London, UK, 13-14 Nov 2019

Page 21: Managing software variability for dynamic reconfiguration ... · Software Product Lines Royal Academy of Engineering - London, UK, 13-14 Nov 2019 ∞ Possible systems Running code

Thank you

Questions ?

Davide Brugali

University of Bergamo, Italy