Addressing the QoS drift in specification models of self-adaptive service-based systems

Analysts elaborate precise and verifiable specification models, using as inputs non-functional requirements and assumptions drawn from the current environment studied at design time. As most real world applications exist in dynamic environments, recently there has been research efforts towards the design of software systems that use their specification models during runtime. The main idea is that software systems should endeavor to keep their requirements satisfied by adapting their architectural configurations when appropriated. Unfortunately, such specifications models use specific numbers (i.e. values) to specify non-functional constraints (NFCs) and may become rapidly obsolete during runtime given the drastic changes that operational environments can go through. The above may create circumstances when software systems are unaware that their requirements have been violated. To mitigate the obsolescence of specification models we have already proposed to use computing with words (CWW) to represent the NFCs with linguistic values instead of numbers. The “numerical meanings” of these linguistic values are computed from the measurements of non-functional properties (NFPs) gathered by a monitoring infrastructure. This article introduces the concept of “QoS-drift” to represent a significant degree of change in the “numerical meanings” of the linguistic values of the NFPs in the service market. We add to our former proposal a QoS-drift's vigilance unit to update linguistic values only when a QoS-drift is detected. Therefore, the new models are proactive and automatically maintained, what results in a more efficient assessment of run-time requirements' compliance under non-stationary environments. We validate the effectiveness of our approach using (1) a service market of 1500 services with two NFPs, (2) a synthetical QoS-drift and, (3) five systems built by different service compositions. We have detected that four of the five systems experienced requirements violations that would not have been detected without the use of our approach.

[1]  Luciano Baresi,et al.  Toward Open-World Software: Issue and Challenges , 2006, Computer.

[2]  Jerry M. Mendel The perceptual computer: an architecture for computing with words , 2001, 10th IEEE International Conference on Fuzzy Systems. (Cat. No.01CH37297).

[3]  Nelly Bencomo,et al.  Requirements-Aware Systems: A Research Agenda for RE for Self-adaptive Systems , 2010, 2010 18th IEEE International Requirements Engineering Conference.

[4]  Jerry M. Mendel,et al.  Challenges for Perceptual Computer Applications and How They Were Overcome , 2012, IEEE Computational Intelligence Magazine.

[5]  Mark Harman,et al.  The role of Artificial Intelligence in Software Engineering , 2012, 2012 First International Workshop on Realizing AI Synergies in Software Engineering (RAISE).

[6]  Daniela Hall Automatic parameter regulation of perceptual systems , 2006, Image Vis. Comput..

[7]  Ronald R. Yager,et al.  Aggregation of ordinal information , 2007, Fuzzy Optim. Decis. Mak..

[8]  Ludmila I. Kuncheva,et al.  Classifier Ensembles for Changing Environments , 2004, Multiple Classifier Systems.

[9]  Michael Jackson,et al.  Four dark corners of requirements engineering , 1997, TSEM.

[10]  Hernán Astudillo,et al.  Mitigating the obsolescence of quality specifications models in service-based systems , 2012, 2012 Second IEEE International Workshop on Model-Driven Requirements Engineering (MoDRE).

[11]  Victor R. Basili,et al.  The TAME Project: Towards Improvement-Oriented Software Environments , 1988, IEEE Trans. Software Eng..

[12]  Mike Mannion,et al.  SMART requirements , 1995, SOEN.

[13]  原田 秀逸 私の computer 環境 , 1998 .

[14]  Lotfi A. Zadeh,et al.  Fuzzy logic = computing with words , 1996, IEEE Trans. Fuzzy Syst..

[15]  Sam Malek,et al.  Uncertainty in Self-Adaptive Software Systems , 2010, Software Engineering for Self-Adaptive Systems.

[16]  James C. Bezdek,et al.  Pattern Recognition with Fuzzy Objective Function Algorithms , 1981, Advanced Applications in Pattern Recognition.

[17]  Xiao-Jun Zeng,et al.  A hybrid learning algorithm with a similarity-based pruning strategy for self-adaptive neuro-fuzzy systems , 2009, Appl. Soft Comput..

[18]  Paolo Traverso,et al.  Service-Oriented Computing: State of the Art and Research Challenges , 2007, Computer.

[19]  Nelly Bencomo,et al.  Models@run.time , 2014, Lecture Notes in Computer Science.

[20]  Gerhard Widmer,et al.  Learning in the presence of concept drift and hidden contexts , 2004, Machine Learning.

[21]  Luis Martínez-López,et al.  An analysis of symbolic linguistic computing models in decision making , 2013, Int. J. Gen. Syst..

[22]  Hernán Astudillo,et al.  Self-Adaptive Fuzzy QoS-Driven Web Service Discovery , 2011, 2011 IEEE International Conference on Services Computing.

[23]  Lotfi A. Zadeh,et al.  The Concepts of a Linguistic Variable and its Application to Approximate Reasoning , 1975 .

[24]  Peyman Oreizy,et al.  An architecture-based approach to self-adaptive software , 1999, IEEE Intell. Syst..