• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Autonomics Computing (with some of Adaptive Systems) and Requirements Engineering
 

Autonomics Computing (with some of Adaptive Systems) and Requirements Engineering

on

  • 1,736 views

This presentantion gives an overview on Autonomic Computing. Next, show the state-of-the-art on Requirements Engineering for Autonomic Computing based on 4 papers

This presentantion gives an overview on Autonomic Computing. Next, show the state-of-the-art on Requirements Engineering for Autonomic Computing based on 4 papers

Statistics

Views

Total Views
1,736
Views on SlideShare
1,730
Embed Views
6

Actions

Likes
1
Downloads
97
Comments
0

1 Embed 6

http://www.slideshare.net 6

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Autonomics Computing (with some of Adaptive Systems) and Requirements Engineering Autonomics Computing (with some of Adaptive Systems) and Requirements Engineering Presentation Transcript

    • Autonomics Computing (with some of Adaptive Systems) and Requirements Engineering João Henrique C. Pimentel [email_address]
    • Agenda
      • Overview on Autonomic Computing
      • State-of-the-art
        • Towards Requirements-Driven Autonomic Systems Design
        • Towards Goal-Oriented Development of Self-Adaptive Systems
        • The Four Level of Requirements Engineering for and in Dynamic Adaptive Systems
        • An Automated Approach to Monitoring and Diagnosing Requirements
    • Autonomic Computing Systems
      • Self-configuring
      • Self-optimizing
      • Self-healing
      • Self-protecting
      • Behaviour is switched at runtime
    • Autonomic Computing Systems – by IBM
      • 1 Needs to “know itself”
      • 2 Must configure and reconfigure itself under varying and unpredictable conditions
      • 3 It always looks for ways to optimize its workings.
      • 4 Must perform something akin to healing
      • 5 Must be an expert in self-protection
    • Autonomic Computing Systems – by IBM
      • 6 Knows its environment and the context surrounding its activity, and acts accordingly
      • 7 Can not exist in a hermetic environment
      • 8 Will anticipate the optimized resources needed while keeping its complexity hidden
      • IBM
    • The Autonomic Nervous System
      • is the part of the peripheral nervous system that acts as a control system , maintaining homeostasis in the body. These maintenance activities are primarily performed without conscious control or sensation . The ANS has far reaching effects, including: heart rate, digestion, respiration rate, salivation, perspiration, diameter of the pupils, micturition (the discharge of urine), and sexual arousal. Whereas most of its actions are involuntary, some ANS functions work in tandem with the conscious mind , such as breathing.
      • [wikipedia: http://en.wikipedia.org/wiki/Autonomic_nervous_system]
    • Example of an autonomic system
      • Iron Man suit
    • IBM Levels of Maturity
    • Why get autonomic?
      • The growing complexity of the IT infrastructure threatens to undermine the very benefits information technology aims to provide [IBM]
    • Autonomic Elements (AE)
    • Autonomic Elements (AE)
      • Are the building blocks of Autonomic Computing
      • Consists of an autonomic manager and a set of managed elements
      • We can consider AE as software agents and ACS as multi-agent systems [Nami]
    • How to make a system autonomic?
      • Make it:
        • 1 Monitor the environment
        • 2 Select a behaviour
        • 3 Change to selected behaviour
    • How to support so many behaviours?
      • 1 Design it to support all possible behaviours
      • or 2 Delegate tasks to external software components
      • or 3 Use an evolutionary approach
    • How to do RE for ACS?
      • The requirements approach that seems to be best suited for AC is Goal Oriented Requirements Engineering
    • State-of-the-art on AC RE
      • Now will be presented 4 papers that describes advances on RE that are related to AC
    • Towards Requirements-Driven Autonomic Systems Design. Lapouchnian, A., Liaskos, S., Mylopoulos, J., Yu, Y.
      • Suggests using requirements goal models as a foundation for designing the possible behaviours space
      • Uses an Meeting Scheduling application as example
    • Example – Goal Model
    • Example – Design Models
    • Autonomic Elements
      • Each AE is responsible for one goal
        • This includes managing the Autonomic Elements that are responsible for its sub-goals
    • Towards Goal-Oriented Development of Self-Adaptive Systems. Morandini, M., Penserini, L., Perini, A.
      • Another way of doing ACS from Goal Models
      • Extends Tropos
      • Uses Jadex, a reasoning engine where intelligent agents are programmed with XML and Java
    • Example – Goal Model
    • Example – Model Extended
      • Based on BDI languages (belief-desire-intention)
    • Example – Model even more Extended
      • Possible system errors and recovery activities
    • Example
      • Once the model is ready:
        • Map the model to Jadex (agent definition language)
        • Run it
    • The Four Level of Requirements Engineering for and in Dynamic Adaptive Systems. Berry, D., Cheng, B., Zhang, J.
      • For and in = RE is also made by the system itself
    • Levels
      • Level 4
      • Level 3
      • Level 2
      • Level 1
      • The level indices do not indicate an order of occurence
      decides about decides about decides about
    • Level 1
      • Made by humans
      • Resembles traditional RE
        • Elicitation and analysis on domain
        • Make a set of all possible features
        • Make a set of all target programs to be adopted
        • Specify its funcionalities
    • Level 2
      • Made by the system
      • Once it receives a unpredicted input:
        • Determines how it is different from other inputs
        • Determine which target program to adopt
        • Modify behaviour adopting the target program
      • In other words: “Hey, I’ve got a different input, how should I behave now?”
    • Level 3
      • Made by humans
      • Consists in specifying all the system should know and make to do Level 2
    • Level 4
      • Made by humans
      • Is the research in adaptation mechanisms
    • An Automated Approach to Monitoring and Diagnosing Requirements. Wang, Y., Yu, Y., McIlraith, S., Mylopoulos, J.
      • Describes a framework for monitoring and diagnosing of requirements
      • Based on AI
        • Theories of action and diagnosis
      • Use SAT solvers for diagnosing
    • Framework Overview
    • Example – Squirrel Mail
    • Example – Squirrel Mail
      • (¬webmail started(10) and occ(a7, 11))
    • Further information on autonomics
      • SEAMS: Software Engineering for Adaptive and Self-Managing Systems
        • http://www.hpi.uni-potsdam.de/giese/events/2008/seams2008/
      • ICAC: IEEE International Conference on Autonomic Computing
        • http://www.autonomic-conference.org/
      • DEAS: Workshop on Design and Evolution of Autonomic Application Software
    • Basic references:
      • Towards Requirements-Driven Autonomic Systems Design. Lapouchnian, A., Liaskos, S., Mylopoulos, J., Yu, Y.
      • Towards Goal-Oriented Development of Self-Adaptive Systems. Morandini, M., Penserini, L., Perini, A.
      • The Four Level of Requirements Engineering for and in Dynamic Adaptive Systems. Berry, D., Cheng, B., Zhang, J.
      • An Automated Approach to Monitoring and Diagnosing Requirements. Wang, Y., Yu, Y., McIlraith, S., Mylopoulos, J.
    • Used references:
      • [Nami]: A Survey of Autonomic Computing Systems. Mohammad Reza Nami, Koen Bertels.
      • [IBM]: Autonomic Computing: IBM’s Perspective on the State of Information Technology
    • More recommended references
      • Autonomic Computing: An Overview. Parashar, M., Hariri, S.
      • Autonomic Computing (CMU/SEI-2006-TN-006). Müller, H., O’Brien, L., Klein, M., Wood, B.
      • Evolutionary Computing and Autonomic Computing: Shared Problems, Shared Solutions? Eiben, A.