Skip to main content
QUICK REVIEW

[Paper Review] Using Models at Runtime to Address Assurance for Self-Adaptive Systems

Betty H. C. Cheng, Kerstin Eder|arXiv (Cornell University)|May 5, 2015
Advanced Software Engineering Methodologies3 citations
TL;DR

This paper proposes using runtime models (M@RT) to enable continuous assurance in self-adaptive software systems, where runtime adaptation complicates traditional pre-deployment verification. By maintaining and analyzing executable models during execution, the approach supports dynamic verification of system behavior against requirements, ensuring correctness under runtime changes and enabling proactive adaptation decisions.

ABSTRACT

A self-adaptive software system modifies its behavior at runtime in response to changes within the system or in its execution environment. The fulfillment of the system requirements needs to be guaranteed even in the presence of adverse conditions and adaptations. Thus, a key challenge for self-adaptive software systems is assurance. Traditionally, confidence in the correctness of a system is gained through a variety of activities and processes performed at development time, such as design analysis and testing. In the presence of selfadaptation, however, some of the assurance tasks may need to be performed at runtime. This need calls for the development of techniques that enable continuous assurance throughout the software life cycle. Fundamental to the development of runtime assurance techniques is research into the use of models at runtime (M@RT). This chapter explores the state of the art for usingM@RT to address the assurance of self-adaptive software systems. It defines what information can be captured by M@RT, specifically for the purpose of assurance, and puts this definition into the context of existing work. We then outline key research challenges for assurance at runtime and characterize assurance methods. The chapter concludes with an exploration of selected application areas where M@RT could provide significant benefits beyond existing assurance techniques for adaptive systems.

Motivation & Objective

  • Address the challenge of ensuring system correctness and requirement fulfillment in self-adaptive systems, where runtime adaptations introduce uncertainty.
  • Overcome limitations of traditional development-time assurance techniques that cannot account for runtime behavior changes.
  • Enable continuous assurance throughout the software lifecycle by integrating model-based techniques at runtime.
  • Identify and characterize key research challenges in runtime assurance using models.
  • Demonstrate the potential of M@RT in application domains requiring high dependability under dynamic conditions.

Proposed method

  • Leverage executable models (M@RT) that are maintained and updated during system execution to reflect runtime states and adaptation decisions.
  • Integrate model checking and runtime verification techniques to validate system behavior against formal specifications at execution time.
  • Use model transformation and runtime monitoring to correlate system state with model semantics and detect deviations.
  • Support adaptation decisions by analyzing model-based predictions and constraints derived from requirements.
  • Employ formal semantics and model execution environments to ensure consistency between models and actual system behavior.
  • Apply architectural patterns that decouple model management from application logic to enable modular and scalable assurance.

Experimental results

Research questions

  • RQ1How can models be effectively used at runtime to support assurance in self-adaptive systems?
  • RQ2What types of information can be captured by runtime models to support assurance, and how does this differ from development-time modeling?
  • RQ3What are the key research challenges in enabling continuous assurance through M@RT?
  • RQ4How do existing assurance techniques fall short in the context of self-adaptive systems, and in what ways can M@RT overcome these limitations?
  • RQ5In which application domains can M@RT provide measurable advantages over traditional assurance methods?

Key findings

  • Runtime models can capture dynamic system states, adaptation decisions, and behavioral constraints, enabling real-time validation of system behavior.
  • M@RT supports continuous assurance by allowing formal analysis and runtime verification of system properties during execution.
  • The integration of models at runtime enables proactive detection of requirement violations before they lead to system failure.
  • The approach enhances system dependability by providing traceable, formal evidence of correctness under changing conditions.
  • Application in domains like cyber-physical systems and cloud environments demonstrates M@RT's potential to exceed traditional assurance techniques in adaptability and precision.
  • The chapter identifies key challenges such as model consistency, performance overhead, and tooling support, which require further research.

Better researchstarts right now

From reading papers to final review, dramatically reduce your research time.

No credit card · Free plan available

This review was created by AI and reviewed by human editors.