Runtime Models as Interfaces for Adapting Software Systems Seminar - - PowerPoint PPT Presentation

runtime models as interfaces for adapting software systems
SMART_READER_LITE
LIVE PREVIEW

Runtime Models as Interfaces for Adapting Software Systems Seminar - - PowerPoint PPT Presentation

Runtime Models as Interfaces for Adapting Software Systems Seminar on Software Engineering for Self-Adaptive Systems Schloss Dagstuhl, October 24-29, 2010 Thomas Vogel System Analysis and Modeling Group Hasso Plattner Institute University of


slide-1
SLIDE 1

Runtime Models as Interfaces for Adapting Software Systems

Seminar on Software Engineering for Self-Adaptive Systems Schloss Dagstuhl, October 24-29, 2010 Thomas Vogel System Analysis and Modeling Group Hasso Plattner Institute University of Potsdam

slide-2
SLIDE 2

Introduction

The term Model-Driven Engineering (MDE) is typically used to describe software development approaches in which abstract models

  • f software systems are created and systematically transformed to

concrete implementations. . . . In our broad vision of MDE, models are not only the primary artifacts of development, they are also the primary means by which developers and other systems understand, interact with, configure and modify the runtime behavior of software.

[France and Rumpe, 2007]

  • Runtime models as interfaces for adaptation
  • Typical or new MDE concepts and techniques for self-adaptive

software systems (online vs. offline)

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 2

slide-3
SLIDE 3

One Runtime Model as an Interface

Sensors Effectors Managed Element Monitor Analyze Plan Execute Autonomic Manager Knowledge

[Kephart and Chess, 2003]

Monitor Analyze Plan Execute Autonomic Manager Sensors Effectors Managed Element Runtime Model Knowledge

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 3

slide-4
SLIDE 4

A Metamodel for a Runtime Model

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 4

slide-5
SLIDE 5

A Metamodel for a Runtime Model

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 4

simplified

slide-6
SLIDE 6

Abstract Runtime Models

complex detailed multiple concerns platform-specific solution space

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 5

slide-7
SLIDE 7

Abstract Runtime Models

complex detailed multiple concerns platform-specific solution space less complex abstract

  • ne concern

platform-independent problem space

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 5

vs.

slide-8
SLIDE 8

Abstract Runtime Models

complex detailed multiple concerns platform-specific solution space Metamodel for a Source Model less complex abstract

  • ne concern

platform-independent problem space Metamodel for a Target Model

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 5

vs.

slide-9
SLIDE 9

MDE for Self-Adaptive Software Systems

Different runtime models for monitoring

  • performance,
  • failures, and
  • architectural constraints,

and for parameter and structural adaptation. Incremental, bidirectional model synchronization based

  • n Triple Graph Grammars

(TGG).

Plan Autonomic Manager Execute Monitor Analyze

architectural element model monitoring defined by uses

Knowledge

Managed System Sensors Effectors adaptation Model Transformation Engine Target Model Source Model Metamodel Metamodel TGG Rules Factories Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 6

slide-10
SLIDE 10

Runtime Model Synchronization

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 7

Further reading: ICAC’09, Models@run.time’09, SEAMS’10

Adaptation Adaptation Monitoring Monitoring EJB System

slide-11
SLIDE 11

Ongoing and Future Work

Which kind of models at which level of abstraction for which adaptation/management task? Architecting self-adaptive systems

[Kramer and Magee, 2007]

Rules, Strategies, Constraints, Requirements and Goals Configuration Space and Variability Models Configuration and Architectural Models Implementation Models Context and Resource Models

Runtime Models (M1) Runtime Metamodels (M2) Runtime Meta-Metamodels (M3)

[Vogel et al., 2010b]

Using models as interfaces for managed systems and within autonomic managers, how to specify the semantics of models and model operations?

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 8

slide-12
SLIDE 12

Ongoing and Future Work cont’d

Distributed Self-Adaptive Systems Self-organizing systems

  • Distributed managed and

managing systems

  • Distribution vs. consistency
  • Distributed models and

MDE techniques

  • Specialized models for
  • monitoring and adapting

managed systems

  • coordination between

autonomic managers

  • . . .

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 9

slide-13
SLIDE 13

Ongoing and Future Work cont’d

Distributed Self-Adaptive Systems Self-organizing systems

  • Distributed managed and

managing systems

  • Distribution vs. consistency
  • Distributed models and

MDE techniques

  • Specialized models for
  • monitoring and adapting

managed systems

  • coordination between

autonomic managers

  • . . .

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 9

?

slide-14
SLIDE 14

References

[France and Rumpe, 2007] France, R. and Rumpe, B. (2007). Model-driven Development of Complex Software: A Research Roadmap. In Proc. of the ICSE Workshop on Future of Software Engineering (FOSE), pages 37–54. IEEE. [Kephart and Chess, 2003] Kephart, J. and Chess, D. (2003). The Vision of Autonomic Computing. IEEE Computer, 36(1):41–50. [Kramer and Magee, 2007] Kramer, J. and Magee, J. (2007). Self-Managed Systems: an Architectural Challenge. In Proc. of the ICSE Workshop on Future of Software Engineering, pages 259–268. IEEE. [Vogel and Giese, 2010] Vogel, T. and Giese, H. (2010). Adaptation and Abstract Runtime Models. In Proc. of the 5th ICSE Workshop on Software Engineering for Adaptive and Self-Managing Systems (SEAMS), pages 39–48. ACM. [Vogel et al., 2009] Vogel, T., Neumann, S., Hildebrandt, S., Giese, H., and Becker, B. (2009). Model-Driven Architectural Monitoring and Adaptation for Autonomic Systems. In Proc. of the 6th Intl. Conference on Autonomic Computing and Communications, pages 67–68. ACM. [Vogel et al., 2010a] Vogel, T., Neumann, S., Hildebrandt, S., Giese, H., and Becker, B. (2010a). Incremental Model Synchronization for Efficient Run-Time Monitoring . In Models in Software Engineering, Workshops and Symposia at MODELS 2009, Reports and Revised Selected Papers, volume 6002 of LNCS, pages 124–139. Springer. [Vogel et al., 2010b] Vogel, T., Seibel, A., and Giese, H. (2010b). Toward Megamodels at Runtime. In Proceedings of the 5th International MODELS Workshop on Models@run.time, volume 641 of CEUR Workshop Proceedings, pages 13–24. CEUR-WS.org.

Thomas Vogel | Dagstuhl 10431 | October 24-29, 2010 10