On the Role of Features in Analyzing the Architecture of Self-Adaptive Software Systems

Ahmed Elkhodary, Sam Malek, Naeem Esfahani · 2009

Abstract. In traditional software families, feature-orientation has been shown effective for bridging the semantic gap between a software system’s requirements and its architecture. Over the past few years, the emergence of self-adaptive software systems, which are significantly more challenging to build than traditional systems, has gained the attention of the software engineering research community. In this paper, we show that using features at runtime could alleviate some of the key challenges of building such systems. The underlying insights are that: (1) features allow representation of the engineer’s knowledge about some facets of the system that can be used to enhance the adaptation logic, and (2) features can serve as an abstraction to deal with the heterogeneity of the underlying architectural models, analytical algorithms, and implementation platforms. We describe the role of features in a self-adaptive framework that we have developed, entitled FeatUre-oriented SelfadaptatION (FUSION). We also report on our preliminary experience with FUSION that demonstrates the benefits of using features in different stages of self-adaptation. Keywords: Self-Adaptive Systems, QoS Analysis, Feature-Oriented Modeling 1

Read the paper · More papers on PaperTik