Abstract

Context awareness is a first-class attribute of today software systems. Indeed, many applications need to be aware of their context in order to adapt their structure and behavior for offering the best quality of service even in case the software and hardware resources are limited. Modeling the context, its evolution, and its influence on the services provided by (possibly resource constrained) applications are becoming primary activities throughout the whole software life cycle, although it is still difficult to capture the multidimensional nature of context. We propose a framework for modeling and reasoning on the context and its evolution along multiple dimensions. Our approach enables (1) the representation of dependencies among heterogeneous context attributes through a formally defined semantics for attribute composition and (2) the stochastic analysis of context evolution. As a result, context can be part of a model-based software development process, and multidimensional context analysis can be used for different purposes, such as non-functional analysis. We demonstrate how certain types of analysis, not feasible with context-agnostic approaches, are enabled in our framework by explicitly representing the interplay between context evolution and non-functional attributes. Such analyses allow the identification of critical aspects or design errors that may not emerge without jointly taking into account multiple context attributes. The framework is shown at work on a case study in the eHealth domain.

Highlights

  • Software is increasingly pervading our daily life, as ever more tasks that, up to few years ago, were performed by mechanical devices are delegated to software automation

  • We show how our approach can be combined with other engineering activities like model-based non-functional requirements (NFR) analyses to answer questions like: "What happens to non-functional attributes if context evolves along a certain trend?", or "Does the designed adaptation strategy permit to guarantee NFR over time?", which cannot be addressed without combining context, design, and non-functional modeling

  • We have proposed in [8] a stochastic extension of state machines, called Context Evolution Models2 (CEM), where the context is modeled as a combination of three different Context Sources (CS), namely the physical location of users, the logical location of software components, and the status of hardware resources

Read more

Summary

Introduction

Software is increasingly pervading our daily life, as ever more tasks that, up to few years ago, were performed by mechanical devices are delegated to software automation. The aim of this paper is the introduction of a framework for: (1) describing and reasoning on heterogeneous context attributes and their (isolated or combined) evolution, and (2) modeling and analyzing non-functional properties of multidimensional context-aware systems. For the former goal, we introduce a unifying representation of context based on a stochastic extension of statecharts [26], where each state represents (a combination of) context values and the probabilistic transitions represent the context evolution.

An illustrative case study: a mobile eHealth application
Context modeling through composable context evolution models
Context attributes and FOCEM
Context composition and HOCEM
Reasoning on the context
Context attribute modeling
Context composition semantics and scenario analysis
Steady-state analysis
Transient-state analysis
Sensitivity analysis
Applying context modeling to non-functional analysis
Software application modeling
MeH service view
MeH component view
MeH deployment view
16: MULTIMEDIA DATA
MeH context view
Adding non-functional annotations
Context-aware non-functional analysis
Context-aware transient-state reliability analysis
Context-aware steady-state performance analysis
Related work
Context modeling and reasoning
On combining context reasoning and model-based analysis
Findings
Discussion and conclusions

Talk to us

Join us for a 30 min session where you can share your feedback and ask us any queries you have

Schedule a call

Disclaimer: All third-party content on this website/platform is and will remain the property of their respective owners and is provided on "as is" basis without any warranties, express or implied. Use of third-party content does not indicate any affiliation, sponsorship with or endorsement by them. Any references to third-party content is to identify the corresponding services and shall be considered fair use under The CopyrightLaw.