Communicating sequential processes
Communications of the ACM
Architecture-based approach to reliability assessment of software systems
Performance Evaluation
Operational Profiles in Software-Reliability Engineering
IEEE Software
Synthesis of Behavioral Models from Scenarios
IEEE Transactions on Software Engineering
TACAS '99 Proceedings of the 5th International Conference on Tools and Algorithms for Construction and Analysis of Systems
Developing multiagent systems: The Gaia methodology
ACM Transactions on Software Engineering and Methodology (TOSEM)
PRISM 2.0: A Tool for Probabilistic Model Checking
QEST '04 Proceedings of the The Quantitative Evaluation of Systems, First International Conference
Basic Concepts and Taxonomy of Dependable and Secure Computing
IEEE Transactions on Dependable and Secure Computing
Living assistance systems: an ambient intelligence approach
Proceedings of the 28th international conference on Software engineering
A User-Oriented Software Reliability Model
IEEE Transactions on Software Engineering
In search of dependable design
Communications of the ACM - Web science
UAHCI '09 Proceedings of the 5th International on ConferenceUniversal Access in Human-Computer Interaction. Part II: Intelligent and Ubiquitous Interaction Environments
LTSA-MSC: tool support for behaviour model elaboration using implied scenarios
TACAS'03 Proceedings of the 9th international conference on Tools and algorithms for the construction and analysis of systems
Dependability Analysis in the Ambient Assisted Living Domain: An Exploratory Case Study
SBCARS '10 Proceedings of the 2010 Fourth Brazilian Symposium on Software Components, Architectures and Reuse
Using scenarios to predict the reliability of concurrent component-based software systems
FASE'05 Proceedings of the 8th international conference, held as part of the joint European Conference on Theory and Practice of Software conference on Fundamental Approaches to Software Engineering
Relevance and perspectives of AAL in Brazil
Journal of Systems and Software
Hi-index | 0.00 |
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.