A framework for context-aware self-adaptive mobile applications SPL

Rabeb Mizouni, Mohammad Abu Matar, Zaid Al Mahmoud, Salwa Alzahmi, Aziz Salah

Research output: Contribution to journalArticlepeer-review

40 Scopus citations

Abstract

Mobile Applications are rapidly emerging as a convenient medium for using a variety of services. Over time and with the high penetration of smartphones in society, self-adaptation has become an essential capability required by mobile application users. In an ideal scenario, an application is required to adjust its behavior according to the current context of its use. This raises the challenge in mobile computing towards the design and development of applications that sense and react to contextual changes to provide a value-added user experience. In its general sense, context information can relate to the environment, the user, or the device status. In this paper, we propose a novel framework for building context aware and adaptive mobile applications. Based on feature modeling and Software Product Lines (SPL) concepts, this framework guides the modeling of adaptability at design time and supports context awareness and adaptability at runtime. In the core of the approach, is a feature meta-model that incorporates, in addition to SPL concepts, application feature priorities to drive the adaptability. A tool, based on that feature model, is presented to model the mobile application features and to derive the SPL members. A mobile framework, built on top of OSGI framework to dynamically adapt the application at runtime is also described.

Original languageBritish English
Pages (from-to)7549-7564
Number of pages16
JournalExpert Systems with Applications
Volume41
Issue number16
DOIs
StatePublished - 15 Nov 2014

Keywords

  • Feature priority
  • Mobile devices
  • Multi-view variability model
  • Runtime adaptability
  • SPL

Fingerprint

Dive into the research topics of 'A framework for context-aware self-adaptive mobile applications SPL'. Together they form a unique fingerprint.

Cite this