Title :
High-quality specification of self-adaptive software systems
Author :
Luckey, Markus ; Engels, Gregor
Author_Institution :
Univ. of Paderborn, Paderborn, Germany
Abstract :
Today´ software systems have to cope with changing environments while at the same time facing high non-functional requirements such as flexibility and dependability. Recently, these non-functional requirements are addressed using self-adaptivity features, that is, the system monitors its environment and adjusts its structure or behavior in reaction to changes. In classical model-driven software engineering approaches, self-adaptivity introduces additional complexity since self-adaptation features are distributed in a cross-cutting manner at various different locations in the models, resulting in a tightly interwoven model landscape that is hard to understand and maintain. A particular solution to cope with this problem is the separation of concerns (SoC) to focus on the specific concern of self-adaptivity and allow in-depth analyses. Applying SoC requires suitable development processes, languages, and techniques, e.g., for quality assurance, to be available. In this paper, we present a method for the specification of self-adaptive software systems using a UML based concern-specific modeling language called Adapt Case Modeling Language (ACML) that allows the separated and explicit specification of self-adaptivity concerns. Based on formal semantics we show how to apply quality assurance techniques to the modeled self-adaptive system, which enable the provisioning of hard guarantees concerning self-adaptivity characteristics such as adaptation rule set stability and deadlock freedom. Further, we show how the language and techniques integrate with existing software development processes.
Keywords :
Unified Modeling Language; formal specification; software quality; UML based concern-specific modeling language; Unified Modeling Language; adapt case modeling language; formal semantics; high-quality software specification; model-driven software engineering; nonfunctional software requirement; quality assurance technique; self-adaptive software system; separation-of-concerns; software dependability requirement; software development process; software flexibility requirement; Adaptation models; Business; Monitoring; Semantics; Sensors; Servers; Unified modeling language;
Conference_Titel :
Software Engineering for Adaptive and Self-Managing Systems (SEAMS), 2013 ICSE Workshop on
Conference_Location :
San Francisco, CA
Print_ISBN :
978-1-4799-0344-3
DOI :
10.1109/SEAMS.2013.6595501