A Framework for Rule-Based Dynamic Adaptation

1. A Framework for Rule-Based Dynamic Adaptation By Ivan Lanese, Antonio Bucchiarone, and Fabrizio Montesi Presentation by Christian Nørskov 2. Table of contents -…
of 19
All materials on our website are shared by users. If you have any questions about copyright issues, please report us to resolve them. We are always happy to assist you.
Related Documents
  • 1. A Framework for Rule-Based Dynamic Adaptation By Ivan Lanese, Antonio Bucchiarone, and Fabrizio Montesi Presentation by Christian Nørskov
  • 2. Table of contents - Motivation - Adaptation - Rules - Algorithm - Conclusion - Future work
  • 3. Motivation - Adaptation usually set constraints on the environment conditions or on the user behavior. - User goals may however change dynamically. - Adaptation without shutting down applications. - Dynamic adaptation is challenging, since information is not known at development time.
  • 4. Example - Travelling Scenario
  • 5. Adaptation - Adaptation hooks - Information on part of its structure and behavior - Adaptation rules - Developed separately - Adaptation manager - Responsible for the rules
  • 6. Rules - The environment have full control over the rules - Rule is defined by: - a description - an applicability condition - new code - the set of variable needed - the non-functional properties
  • 7. Rules When is the applicability of rules checked? - Application-triggered - Manager-triggered In which order are the rules applied? - Non-deterministic - Priority Update What do the rules do? - Corrective Rules - Enhancing Rules
  • 8. Rules Application-triggered: - On Initialization - On Wait - On Activity Enter Manager-triggered: - On registration - At Time Intervals - On Rule Update
  • 9. Rules Non-deterministic Update - Rules are applied in non-deterministic order Priority Update - Rules are given a priority, in which they are checked for compatibility
  • 10. Rules Corrective Rules - Correcting activities, where current implementation is not viable - Compulsory flag set to true Enhancing Rules - Enhance existing activity - Compulsory flag set to false
  • 11. Algorithm Definition 1 (Adaptable application): An adaptable application is an application exposing and adaptation interface, providing functionalities for accessing the public part of its state and for replacing its domain activities with external activities.
  • 12. Algorithm Definition 2 (Adaptation interface): The adaptation interface of an application A is a set of quadruples (DA , VA , NFA ,COMPA ). - DA is a description of the activity - VA is the set of public variables - NFA is the values of non-functional properties - COMPA is a boolean function given two sets of non- functional values, to decide which is more desirable
  • 13. Algorithm Definition 3 (Adaptation Manager): An adaptation manager p is a pair (Vp , Rp ) where Vp is a set of variables and Rp a set of rules. Each rule R in Rp has the form DR ,cR ⊢ PR (SR , VR , NFR , CFR ) where: - DR is a description of an activity - cR is a boolean expression - PR is a program - SR is a state update - VR is the set of variables required by PR to work - NFR is the set of non-functional properties guaranteed by PR - CFR is the compulsory flag specifying whether the adaptation is compulsory
  • 14. Algorithm
  • 15. Algorithm If all checks succeeded, then adaption has to be performed: 1. the adaptation server sends the new code PR 2. the adaptation interface of the application is updated, with the new non-functional properties (NFR ) 3. the state of the application is updated by setting its variables
  • 16. Algorithm - Example 1 1. DR is matched with DTakeTrain using MATCH 2. are the variables VA enough for VR (VR ⊆ VA ) 3. applicability condition (Number = IC2356) is evaluated 4. CFR is checked (is it compulsory?): no 5. the non-functional properties are compared
  • 17. Conclusion - Separation of running application and adaptation - Dynamically update activities, instead of hardwired solutions
  • 18. Future work - More complex definitions of activity compatibility - Update running activities, preserving their state - Define type systems on rules and on adaptable activities - A general analysis of when non-deterministic update of rules is applicable
  • 19. Questions?
  • Search
    Related Search
    We Need Your Support
    Thank you for visiting our website and your interest in our free products and services. We are nonprofit website to share and download documents. To the running of this website, we need your help to support us.

    Thanks to everyone for your continued support.

    No, Thanks