RELAX: A language to address uncertainty in self-adaptive systems requirement

Jon Whittle, Pete Sawyer, Nelly Bencomo, Betty H.C. Cheng, Jean Michel Bruel

Research output: Contribution to journalArticleResearchpeer-review

191 Citations (Scopus)

Abstract

Self-adaptive systems have the capability to autonomously modify their behavior at run-time in response to changes in their environment. Self-adaptation is particularly necessary for applications that must run continuously, even under adverse conditions and changing requirements; sample domains include automotive systems, telecommunications, and environmental monitoring systems. While a few techniques have been developed to support the monitoring and analysis of requirements for adaptive systems, limited attention has been paid to the actual creation and specification of requirements of self-adaptive systems. As a result, self-adaptivity is often constructed in an ad-hoc manner. In order to support the rigorous specification of adaptive systems requirements, this paper introduces RELAX, a new requirements language for self-adaptive systems that explicitly addresses uncertainty inherent in adaptive systems. We present the formal semantics for RELAX in terms of fuzzy logic, thus enabling a rigorous treatment of requirements that include uncertainty. RELAX enables developers to identify uncertainty in the requirements, thereby facilitating the design of systems that are, by definition, more flexible and amenable to adaptation in a systematic fashion. We illustrate the use of RELAX on smart home applications, including an adaptive assisted living system.

Original languageEnglish
Pages (from-to)177-196
Number of pages20
JournalRequirements Engineering
Volume15
Issue number2
DOIs
Publication statusPublished - Jun 2010
Externally publishedYes

Keywords

  • Adaptive systems
  • Fuzzy logic
  • Requirements engineering
  • Smart homes
  • Uncertainty

Cite this