architecture-driven self- adaptation and self- management in robotics systems by george edwards,...

17
Architecture-Driven Self-Adaptation and Self-Management in Robotics Systems By George Edwards, Joshua Garcia, Farshad Tajalli, Daniel Popescu, Nenad Medvidovic, Gaurav Sukhatme, Brad Petrus Presentation by Joshua Garcia and Farshad Tajalli

Post on 21-Dec-2015

214 views

Category:

Documents


1 download

TRANSCRIPT

Architecture-Driven Self-Adaptation and Self-Management in Robotics Systems

By George Edwards, Joshua Garcia, Farshad Tajalli,Daniel Popescu, Nenad Medvidovic, Gaurav Sukhatme, Brad Petrus

Presentation by Joshua Garcia and Farshad Tajalli

Today’s Software Systems

• 24/7 systems

• Long-lived, decentralized, heterogeneous, mobile,

ubiquitous

2

Self-awareness and Self-adaptation

Software Architecture for Robotics

3

Self-awareness and Self-adaptation

D. Kim et al. SHAGE: a framework for self-managed robot software. In Proceedings of SEAMS 2006, pages 79–85. ACM New York, NY, USA, 2006.

J. Georgas and R. Taylor. Policy-based self-adaptive architectures: a feasibility study in the robotics domain. In Proceedings of SEAMS 2008, pages 105–112. ACM New York, NY, USA, 2008.

D. Sykes et al. From goals to components: a combined approach to self-management. In Proceedings of SEAMS 2008, pages 1–8. ACM New York, NY, USA, 2008.

Layered Architecture

5

Approach

o Layered Architecture

o Component-based Approach

o Meta-level Components vs. Application Components

o Meta-level Component Types

• Collector, Analyzer, Admin

o Meta-level Component Layering

o Meta-level components form a control loop on the lower level architecture

o Implementation Support for Meta-level component types and layers

6

Approach Advantages

o Architectural Awareness

• Architectural awareness of components in the layer below

o Self-adaptation support for meta-level component types

o Self-adaptation support for qualities of service

o Support for Adaptive Reference Architectures

7

Meta-Level Components

Meta-Level Components Types

o Collector

o Analyzer

o Admin

8

Collector

o Read access to lower architecture

o A collection of Monitors

• added to the Components and Connectors in the lower layer

• exceptions, variables and events

o Collector aggregates the monitored data

o Flexibility of monitor installation

9

Analyzer

o Read access to lower architecture

o A collection of Policies

o Policies are evaluated against monitored data

received from Collectors

o Triggers adaptations and reconfigurations

o Directs Admins to modify the lower architecture

10

Admin

o Read\Write access to lower architecture

o Adapts the lower architecture

• Add, delete, connect, disconnect

o Reconfigures the lower architecture

components, connectors and etc.

11

Layered Architecture

12

Fault Tolerance Example

13

IComponentIConnector

Scaffold

AbstractDispatcher

Round RobinDispatcher

AbstractScheduler

FifoScheduler

Brick

Architecture

ExtensibleComponent

Component

Connector

Event

Port

IPort

Serializable

IArchitecture

#mutualPort

Implementation Support – Prism-MW

16

• Meta-level component type adaptation• Robotics-specific meta-level component types Meta-level

Component

Three Layer Reference Model

19

Application to Three Layer Reference Model

20

Application Scenario

21

Conclusion

o Meta-level component types and layering

• Support for qualities of service

• Ensures correct functionality and system stability

• Implementation support for meta-level component

types and layers

• Support for adaptive reference architectures

22