Presentation is loading. Please wait.

Presentation is loading. Please wait.

Action ADAPT / IDM, November 13th, 2008 Dynamic Adaptive Software Components: The MOCAS Approach1.

Similar presentations


Presentation on theme: "Action ADAPT / IDM, November 13th, 2008 Dynamic Adaptive Software Components: The MOCAS Approach1."— Presentation transcript:

1 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach1 Dynamic Adaptive Software Components: the MOCAS Approach Cyril Ballagny, Nabil Hameurlain, Franck Barbier Self-* Project, Liuppa, University of Pau, France

2 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach2 Context : Autonomic Computing IBM initiative in 2001 To tackle complexity of IT systems Self-management through Self-Configuration Self-Healing Self-Optimization Self-Protection

3 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach3 Outline Definition: Dynamic Adaptation of Open Software Component Systems Main issues: How to adapt the behavior of a software component while it is running? Our proposition: MOCAS (Model Of Component for Adaptive Systems) Future work: Self-adaptation and adaptive coordination Conclusion: the MOCAS characteristics

4 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach4 Definition: Dynamic Software Adaptation Software adaptation is an activity which consists in making a software evolve by modifying it. is necessary « when the system is not accomplishing what it is intended to do, or when better functionality or performance is possible » [DARPA, 1997] is dynamic when the modifications are done while the system is running

5 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach5 Definition: Open Software Component Systems Are extendable while running So that new materials can be introduced into the system Involve two levels of adaptation: At the assembly one (e.g. by breaking the links between components, introducing new components, migrating some ones, …); At the component level (e.g. by tuning its properties, modifying its implementation, …) We focus here on the dynamic adaptation of the inside of software components in an open system

6 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach6 Dynamic Software Adaptation: Main Issues Adaptation must be done when the component is in a quiescent state The state of the component must be transferred during the adaptation process Adaptation must preserve the component integrity

7 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach7 The MOCAS Component Model: Background Behavior Is made discrete by the different states of the component Defines the admissible sequence of the incoming component messages PauWare Principles [RBB06]: A UML state machine model describes the component behavior The behavior is separated from the algorithms The component embeds at runtime its state machine model to realize its behavior

8 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach8 UML Profile of the MOCAS Component Model

9 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach9 Example : Car Component Model

10 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach10 Supported operations of adaptation Refining simple states Reorganizing the protocol of the component Replacing the functional context Hiding/Showing properties Extending business properties Forward First Gear Second Gear Up Down « MOCASFunctionalContext » CarContext Version 1 moveForward() setSpeedValue(value:float) Version 2 « MOCASProperties » CarProperties speedValue : float noiseLevel : integer

11 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach11 The MOCAS Component Model: a state- based container for adaptation The submachine state holds the component behavior The AdaptMOCASComponent signal triggers the adaptation process in an atomic way The guard insures that adaptation is possible Adaptation is deferred if conditions are not fair The historic state enables the state transfer

12 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach12 The MOCAS Component Model: Insuring adaptation The last active state configuration must exist in the new state machine The new functional context must conform to the action interface The new business properties must be an extension of the old ones State invariants must be true after adaptation

13 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach13 Future work Endowing each MOCAS component with a control loop (Autonomic Computing) Using coordination protocol to insure the stability of the component assemblies

14 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach14 Conclusion MOCAS Is a state based component model enabling to build open dynamic adaptive component based systems A MOCAS Component Makes the separation between its behavior, its functional context and its business properties Embeds at runtime a UML state machine model Is installed in a state-based container to perform the adaptation process

15 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach15 References [RBB06] Fabien Romeo, Cyril Ballagny, Franck Barbier. PauWare : a state based component model, Actes des Journées Composants, Canet en Roussillon, France, 4-6 octobre, pp. 1-10, 2006. [BHB07] Cyril Ballagny, Nabil Hameurlain, Franck Barbier. Endowing software components with autonomic capabilities based on modeling language executability. In Proc. of 1st Workshop on Model-driven Software Adaptation M-ADAPT’07 at ECOOP 2007, pages 55–60, Berlin, Germany, July 2007. [BHB08] Cyril Ballagny, Nabil Hameurlain, and Franck Barbier. Dynamic Adaptive Software Components: the MOCAS Approach. In ASBS'08: Proceedings of The First IEEE International Workshop on Autonomous and Autonomic Software-Based Systems, pages 517–524, Cergy-Pontoise, France, 2008. ACM. MOCAS Engine http://mocasengine.sourceforge.net/

16 Action ADAPT / IDM, November 13th, 2008 cyril.ballagny@univ-pau.frcyril.ballagny@univ-pau.fr Dynamic Adaptive Software Components: The MOCAS Approach16 Thank you for your attention! Any Questions?


Download ppt "Action ADAPT / IDM, November 13th, 2008 Dynamic Adaptive Software Components: The MOCAS Approach1."

Similar presentations


Ads by Google