Thais Batista1,2 - PowerPoint PPT Presentation

1 / 17
About This Presentation
Title:

Thais Batista1,2

Description:

ACME/Armani. Software Architecture Description Language ... Architecture modification script (in enhanced ACME/Armani) to the Architectural configurator ... – PowerPoint PPT presentation

Number of Views:31
Avg rating:3.0/5.0
Slides: 18
Provided by: FINA9
Category:
Tags: armani | batista1 | thais

less

Transcript and Presenter's Notes

Title: Thais Batista1,2


1
Managing Dynamic Reconfiguration in
Component-based Systems
Thais Batista1,2 Ackbar Joolia2 Geoff Coulson2
1Informatics Department Federal University of Rio
Grande do Norte Natal RN, Brazil 2Computing
Department Lancaster University Lancaster, UK
2
Summary
  • Motivation
  • Plastik
  • ACME
  • OpenCOM
  • Reconfiguration
  • Programmed
  • Ad-hoc
  • Final Remarks

3
Motivation
  • Integration
  • Architectural Description Languages (ADLs)
  • Runtime Component Models

Software Architecture Description
4
Plastik
  • ADL/Component runtime integration meta-framework
  • ADL enhanced ACME/Armani
  • Runtime the OpenCOM component model
  • Support for Reconfiguration
  • Programmed Reconfiguration
  • Changes specified at design time
  • Ad-hoc Reconfiguration
  • Changes specified at runtime (unforeseen at
    design time)

5
Plastik Architecture
  • ADL Levels
  • Style Level
  • Generic patterns with constraints
  • Instance Level
  • Style instance (can define additional
    constraints)
  • Runtime Level
  • System Configurator
  • Architectural Configurator
  • Supports reconfiguration requests at ADL level
  • Translation between Architecture and Runtime
  • Runtime Configurator
  • Manages runtime level

6
ACME/Armani
  • Software Architecture Description Language
  • Interchange language among different ADLs
  • Extensible
  • Armani
  • FOPL-based language
  • Constraints over ACME architectures

7
ACME/Armani
  • Style
  • Components
  • Ports (do not distinguish offered and required
    ports)
  • Connectors
  • Roles
  • Systems
  • Representations
  • Attachments
  • Properties
  • Name, type, value
  • Types
  • Constraints

8
OpenCOM
  • Component Frameworks
  • Components
  • Interfaces
  • Receptacles
  • Bindings
  • Capsules
  • Reflective meta-models
  • Architecture meta-model
  • Interception meta-model
  • Interface meta-model

9
Mapping ACME/Armani - OpenCOM
10
Reconfiguration
  • ACME/Armani Support
  • Invariants
  • Extended with construct enables type extension
  • Representation construct enables switching from
    one representation of a component to another
  • Properties construct

11
Programmed Reconfiguration
  • ACME extensions
  • Conditional construct
  • On (ltpredicategt) do ltactionsgt
  • Destruction of existing elements
  • detach ltelementgt
  • remove ltelementgt
  • Dependencies
  • dependencies ltstatementsgt
  • Dynamic
  • ltconnectorgt to dynamic ltcomponentype.portgt

12
Programmed Reconfiguration
  • Example On-do, detach, remove

On (Link.net_bandwidth low) do detach
MPEG_dec.downTo to AppToTrans.souce remove
MPEG-dec Component H263-dec decoder new
decoder extended with Property
decoder-type H263 Attachments
H263-dec.downTo to AppToTrans.source
  • Example dynamic

Attachments ConnX.r to dynamic Network.p
13
Programmed Reconfiguration
  • Example dependencies

Component transport OSIComp ...
dependencies extended with RequiredPort
bufport Component bm bufferManager
Invariant forall pProvidedPort in
bm.Ports p.rate gt 1000
Connector transtobuf ProvidedRole
pr RequiredRole rr
Attachments transport.bufport to
transtobuf.rr bm.pp to transtobuf.pr

14
Programmed Reconfiguration
  • Runtime Support
  • On-do compiled into a FSM representation
  • ADL predicates represented as OpenCOM properties
  • detach/remove use OpenCOMs architecture
    meta-model
  • dependencies statement implies in the dynamic
    loading (and binding) all specified dependencies
  • dynamic builds on OpenCOMs load/bind APIs
    (according to the specified policies)

15
Ad-hoc Reconfiguration
  • ADL level ad-hoc reconfiguration
  • Architecture modification script (in enhanced
    ACME/Armani) to the Architectural configurator

Component BigBufferManager ProvidedPort pp
RequiredPort rp detach
BrufferManager.pp to transtobuf.pr remove
BufferManager Component bbm BigBufferManager
new BigBufferManager Attachments
BigBufferManager.pp to transtobuf.pr
Change Script
16
Ad-hoc Reconfiguration
  • Runtime ad-hoc reconfiguration
  • Operations applied to the OpenCOM reflective
    models

Component_instance loggingI Loaded_component
logging // new component logging
load(comp_type_logging) loggingI
instantiate(logging) If (ArchMM.connected(Networ
k-comp, Link-comp)) ArchMM.unbind(Network-co
mp, Link-comp) ArchMM.bind(NEWBINDER,
Network-comp, loggingI) ArchMM.bind(NEWBINDER
, loggingI, Link-comp) ArchMM.insert(loggingI
, CLSID) ArchMM.updateLink(CLSID,
Network-Comp) Runtime Reconfiguration
17
Final Remarks
  • Plastik meta-framework
  • ADL with formal support enhanced ACME/Armani
  • Component runtime environment OpenCOM
  • Programmed and Ad-hoc reconfiguration
  • Future directions
  • Mapping Implementation (in progress)
  • Experiments in realistic application scenarios
Write a Comment
User Comments (0)
About PowerShow.com