On the Behavioral Drift Estimation of Ubiquitous Computing Systems in Partially Known Environments

Background. With the recent advent of the so-called connected objects, today largely present in our surroundings, software applications have an open door to the physical world through sensors and actuators. However, although it offers huge opportunities in many areas (e.g., smart-home, smart-cities, etc...), it poses a serious methodological challenge. Indeed, while classical software applications operate in the well known and delimited digital world, the so-called ambient applications operate in and through the physical world, open and subject to uncertainties that cannot be modeled accurately and entirely. These uncertainties lead the behavior of the ambient applications to potentially drift over time against requirements. In this paper, we propose a framework to estimate the behavioral drift of the ambient applications against requirements at runtime. Methodology. We rely on the Moore Finite State Machines (FSM) modeling framework to specify the ideal behavior an ambient application is supposed to meet, irrespective of the operating environment and the underlying software infrastructure. We then appeal on the control theory and propose a framework to transform the Moore FSM to its associated Continuous Density Hidden Markov Model (CD-HMM) state observer. By accounting for uncertainties through probabilities, it extends Moore FSM with viability zones, i.e. zones where the behavioral requirements of the ambient applications are acceptable. The observation of the execution of a concrete ambient application together with the statistical modeling framework underlying its associated state observer allow to compute the likelihood of an observation sequence to have been produced by the application. The likelihood then gives direct insight into the behavioral drift of the concrete application against requirements. Results. We validate our approach through a concrete use-case in the field of school lighting. The results demonstrate the soundness and efficiency of the proposed approach for estimating the behavioral drift of the ambient applications at runtime. In light of these results, one can envision using this estimation to support a decision-making algorithm (e.g., within a self-adaptive system).

[1]  Krzysztof Sacha,et al.  Translatable Finite State Time Machine , 2007, SDL Forum.

[2]  Christoph Grimm,et al.  Coverage of Uncertainties in Cyber-Physical Systems , 2015 .

[3]  Arthur I. Karshmer,et al.  Living assistance systems: an ambient intelligence approach , 2006, ICSE.

[4]  Marta Z. Kwiatkowska Advances in Quantitative Verification for Ubiquitous Computing , 2013, ICTAC.

[5]  Ezio Bartocci,et al.  Runtime Verification with State Estimation , 2011, RV.

[6]  James R. Benya Lighting for Schools. , 2001 .

[7]  Holger Giese,et al.  Living with Uncertainty in the Age of Runtime Models , 2014, Models@run.time@Dagstuhl.

[8]  John Krumm,et al.  Ubiquitous Computing Fundamentals , 2009 .

[9]  Bran Selic,et al.  Understanding Uncertainty in Cyber-Physical Systems: A Conceptual Model , 2016, ECMFA.

[10]  Shunzheng Yu,et al.  Hidden semi-Markov models , 2010, Artif. Intell..

[11]  C. Julien,et al.  On the State of the Art in Verification and Validation in Cyber Physical Systems TR-ARiSE-2014-001 , 2014 .

[12]  Nelly Bencomo,et al.  A world full of surprises: bayesian theory of surprise to quantify degrees of uncertainty , 2014, ICSE Companion.

[13]  Gabor Karsai,et al.  Towards Practical Runtime Verification and Validation of Self-Adaptive Software Systems , 2013, Software Engineering for Self-Adaptive Systems.

[14]  Ricardo M.S.F. Almeida,et al.  Daylighting in classrooms - the daylight factor as a performance criterion , 2014 .

[15]  P. Cochat,et al.  Et al , 2008, Archives de pediatrie : organe officiel de la Societe francaise de pediatrie.

[16]  Hong Linh Truong,et al.  MQTT-S — A publish/subscribe protocol for Wireless Sensor Networks , 2008, 2008 3rd International Conference on Communication Systems Software and Middleware and Workshops (COMSWARE '08).

[17]  Antonio Ruiz Cortés,et al.  Article in Press G Model the Journal of Systems and Software an Overview of Dynamic Software Product Line Architectures and Techniques: Observations from Research and Industry , 2022 .

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

[19]  Jean-Yves Tigli,et al.  Safe Composition in Middleware for the Internet of Things , 2015, M4IoT@Middleware.

[20]  Jean-Pierre Aubin,et al.  Viability Theory: New Directions , 2011 .

[21]  Jean-Marc Jézéquel,et al.  Perpetual Assurances for Self-Adaptive Systems , 2019, Software Engineering for Self-Adaptive Systems.

[22]  Rajeev Alur,et al.  Principles of Cyber-Physical Systems , 2015 .

[23]  Rogério de Lemos,et al.  Software Engineering for Self-Adaptive Systems: Assurances (Dagstuhl Seminar 13511) , 2013, Dagstuhl Reports.

[24]  Lawrence R. Rabiner,et al.  A tutorial on hidden Markov models and selected applications in speech recognition , 1989, Proc. IEEE.

[25]  Marta Z. Kwiatkowska From software verification to ‘everyware’ verification , 2013, Computer Science - Research and Development.

[26]  Ferdinand Wagner,et al.  Modeling Software with Finite State Machines : A Practical Approach , 2006 .

[27]  Ferdinand Wagner,et al.  Modeling Software with Finite State Machines , 2006 .

[28]  Nelly Bencomo,et al.  QuantUn: Quantification of uncertainty for the reassessment of requirements , 2015, 2015 IEEE 23rd International Requirements Engineering Conference (RE).