Dependability analysis in the Ambient Assisted Living Domain: An exploratory case study

Ambient Assisted Living (AAL) investigates the development of systems involving the use of different types of sensors, which monitor activities and vital signs of lonely elderly people in order to detect emergency situations or deviations from desirable medical patterns. Instead of requiring the elderly person to manually push a button to request assistance, state-of-the-art AAL solutions automate the process by 'perceiving' lonely elderly people in their home environment through various sensors and performing appropriate actions under the control of the underlying software. Dependability in the AAL domain is a critical requirement, since poor system availability, reliability, safety, or integrity may cause inappropriate emergency assistance to potentially have fatal consequences. Nevertheless, contemporary research has not focused on assessing dependability in this domain. This work attempts to fill this gap presenting an approach which relies on modern quantitative and qualitative dependability analysis techniques based on software architecture. The analysis method presented in this paper consists of conversion patterns from Unified Modeling Language (UML) behavior models of the AAL software architecture into a formal executable specification, based on a probabilistic process algebra description language, which enables a sound quantitative and qualitative analysis. The UML models specify system component interactions and are annotated with component failure probabilities and system usage profile information. The resulting formal specification is executed on PRISM, a model checking tool adequate for the purpose of our analysis in order to identify a set of domain-specific dependability properties expressed declaratively in Probabilistic Computational Tree Logic (PCTL). The benefits of using these techniques are twofold. Firstly, they allow us to seamlessly integrate the analysis during subsequent software lifecycle stages in critical scenarios. Secondly, we identify the components which have the highest impact on software system dependability, and therefore, be able to address software architecture and individual software component problems prior to implementation and the occurrence of critical errors.

[1]  David S. Rosenblum,et al.  Using Scenarios to Predict the Reliability of Concurrent Component-Based Software Systems , 2005, FASE.

[2]  Katerina Goseva-Popstojanova,et al.  Architecture-based approach to reliability assessment of software systems , 2001, Perform. Evaluation.

[3]  C. A. R. Hoare,et al.  Communicating Sequential Processes (Reprint) , 1983, Commun. ACM.

[4]  John D. Musa,et al.  Operational profiles in software-reliability engineering , 1993, IEEE Software.

[5]  R. Yin Case Study Research: Design and Methods , 1984 .

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

[7]  Genaína Nunes Rodrigues,et al.  Dependability Analysis in the Ambient Assisted Living Domain: An Exploratory Case Study , 2010, 2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse.

[8]  Jeff Magee,et al.  Modelling for Mere Mortals , 1999, TACAS.

[9]  Sebastián Uchitel,et al.  LTSA-MSC: Tool Support for Behaviour Model Elaboration Using Implied Scenarios , 2003, TACAS.

[10]  Holger Storf,et al.  An Approach to and Evaluations of Assisted Living Systems Using Ambient Intelligence for Emergency Monitoring and Prevention , 2009, HCI.

[11]  Bengt Jonsson,et al.  A logic for reasoning about time and reliability , 1990, Formal Aspects of Computing.

[12]  H. D. Rombach,et al.  The Goal Question Metric Approach , 1994 .

[13]  Roger C. Cheung A User-Oriented Software Reliability Model , 1980, IEEE Trans. Software Eng..

[14]  Carl E. Landwehr,et al.  Basic concepts and taxonomy of dependable and secure computing , 2004, IEEE Transactions on Dependable and Secure Computing.

[15]  Leah Hoffman In search of dependable design , 2008 .

[16]  Andrea Bianco,et al.  Model Checking of Probabalistic and Nondeterministic Systems , 1995, FSTTCS.

[17]  Eric Dubois,et al.  Scenario-Based Techniques for Supporting the Elaboration and the Validation of Formal Requirements , 1998, Requirements Engineering.

[18]  Marta Kwiatkowska,et al.  PRISM 2.0: a tool for probabilistic model checking , 2004 .

[19]  Franco Zambonelli,et al.  Developing multiagent systems: The Gaia methodology , 2003, TSEM.

[20]  Sebastián Uchitel,et al.  Synthesis of Behavioral Models from Scenarios , 2003, IEEE Trans. Software Eng..

[21]  Eila Niemelä,et al.  Survey of reliability and availability prediction methods from the viewpoint of software architecture , 2007, Software & Systems Modeling.