model driven softw are engineering of self adaptive
play

Model-Driven Softw are Engineering of Self- Adaptive System s - PowerPoint PPT Presentation

Model-Driven Softw are Engineering of Self- Adaptive System s Charles University, 16.02.2010 Holger Giese System Analysis & Modeling Group, Hasso Plattner Institute for Software Systems Engineering at the University of Potsdam, Germany


  1. Model-Driven Softw are Engineering of Self- Adaptive System s Charles University, 16.02.2010 Holger Giese System Analysis & Modeling Group, Hasso Plattner Institute for Software Systems Engineering at the University of Potsdam, Germany holger.giese@hpi.uni-potsdam.de

  2. Outline 2 I Motivation – Why self-adaptiveness? I I Foundations - What is self-adaptiveness? I I I Construction – How to build them? I V Quality Assurance – How to ensure their quality? V Conclusion 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  3. I Motivation: Softw are Evolution & Aging 3 Softw are Evolution [ Lehman&Belady1985,Lehman1997] : ■ Programs always include explicit and implicit assumptions about the real world domain Environment ■ The real world domain and the program (and its explicit and implicit assumptions) must be maintained Original compatible and valid with one another ■ Developing software is a complex feedback system abstract Validation: Describes Developer the model the original Two types of softw are aging [ Parnas1994] : for the Software purpose ■ Lack of Movem ent: Aging caused by the failure of the correct? (Model) product’s owners to modify it to meet changing needs. ■ I gnorant Surgery: Aging caused as a result of changes runs on that are made. Platform ■ This “one-two punch” can lead to rapid decline in the value of a software product. 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  4. I Motivation: Softw are Com plexity & Adm inistration 4 Autonom ic Com puting [ AC2001] : ■ Evolution via automation also produces com plexity as an unavoidable byproduct (especially true for IT Environment systems: incredible progress in speed, storage and communication; extreme growth software with > 30 Original million loc and > 4,000 programmers) ■ In fact, the growing complexity of the I/ T infrastructure abstract threatens to underm ine the very benefits information Admin technology aims to provide, because systems cannot be managed any more. Software (Model) Proposed solution: ■ make things simpler for administrators and users of I/ T runs on by autom ating its m anagem ent (Paradoxically, it seems we need to create even more complex systems). Platform ■ Inspiration is the massively complex systems of the human body: the autonom ic nervous system . 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  5. I Motivation: Softw are Landscapes vs. Applications 5 Automotive Industrial automation Sensor Networks Environment Original Original Original Mobile Devices Transportation abstract IT Systems Who? � Characteristics: large-scale, heterogeneous, distributed, Software Software Software ad hoc evolution, no central authority (Model) (Model) (Model) � May include: Server backends, embedded subsystems, runs on wireless ad hoc networks, mobile devices, … Platform Platform Platform The software must resolve adaption needs due to changes in The software must resolve adaption needs due to changes in the context and platform itself to be able to work at all the context and platform itself to be able to work at all 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  6. I Motivation: Future Softw are Landscape Exam ple 6 http://www.railcab.de/ Test track Test shuttle A shuttle system that builds convoys to optimize the energy consumption 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  7. I I Foundations: Self-Adaptiveness 7 Environment The software Original The software Original Original itself! itself! W hat do w e need? abstract Who? Software Software Software (Model) (Model) (Model) runs on Platform Platform Platform [Salehie&Tahvildari2009] 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  8. I I Foundations: Adaptation Loop 8 [Brun+2009] 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  9. I I Foundations: Architecture & Self Internal Approach 9 adapt Adaptation Software d u p u y p Context External Approach Adaption Engine d u p u y p Function Context [Salehie&Tahvildari2009] 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  10. I I Foundations: Models and Adaptation 10 Adapt “w ithout” m odels: ■ Still explicit or implicit design-tim e Adaptation m odels are used to guide adaptation processes ■ Lim itation: covers only changes d covered by one model of the software’ u p u y p Software’ Context + context (potentially including some parameters or structural changes that can be observed) Adapt w ith runtim e m odels: ■ Explicit runtim e m odels are used to guide adaptation processes ■ Lim itation: covers only changes captured by the runtime models ( m ultiple !); requires correct adjustment of them from the observations 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  11. I I Foundations: Top-Dow n Architecture Reference Architecture for Self-Management: 11 � Layers for different purposes � Decoupling of the layers in time [Kramer&Magee2007] 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  12. I I Foundations: Bottom -Up Architecture [Dressler2007] 12 Self-organization is a process in which structure and functionality at the global level of a system em erge solely from num erous interactions among the lower-level components. Characteristics: � No central control � Emerging structure � Resulting complexity � High scalability Em ergence is an apparently m eaningful collaboration of components (individuals) resulting in capabilities of the overall system (far) beyond the capabilities of the single components. 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  13. I I Foundations: Subject of Adaptation 13 Adaptation Parameter Structure Behavior (implicit) Infinite Compositional Finite Reconfiguration Adaptation domain domain Static set Dynamic creation of entities and deletion But how can we systematically build the software for But how can we systematically build the software for such systems (construction)? such systems (construction)? 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  14. I I I Construction: Control Loop Development time: 14 || || Function Adaption Context Runtime: � | | � ������������������� Challenges: � | | � ������������������� � | | � Adaption ������������������� � | | � (1) How to design the ������������������� � | | � ������������������� � | | � ������������������� adaptation algo.? � | | � ������������������� � | | � (2) How to architect ������������������� � | | � Function Context ������������������� � | | � systems with control ������������������� � | | � ������������������� � | | � ������������������� loops? (3) How to develop the Legend: � | | � necessary elements ���������������� Software- � | | � Modell System ���������������� � | | � ���������������� system � | | � ���������������� � | | � of the loop? ���������������� 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

  15. I I I Construction: Com plex ( 1 ) design adaptation algo. 15 Com plex developm ent tim e m odels: ■ Application: Monitoring and Restart of Services ■ Instance of the MIAC scheme ■ Identification of required reliability and availability parameters via monitoring ■ An development time availability m odel in form of an Stochastic Petri Net is used to precom pute values for the required parameter adaptation (using interpolation) [ ADS2004] 16.02.2010 | Holger Giese | Model-Driven Software Engineering of Self-Adaptive Systems

Recommend


More recommend