Context-Aware Applications for the Web: A Model-Driven Development Approach

Context-Aware Applications for the Web: A Model-Driven Development Approach

Florian Daniel (University of Trento, Italy)
DOI: 10.4018/978-1-60566-290-9.ch003
OnDemand PDF Download:


Adaptivity (the runtime adaptation to user profile data) and context-awareness (the runtime adaptation to generic context data) have been gaining momentum in the field of Web engineering over the last years, especially in response to the ever growing demand for highly personalized services and applications coming from end users. Developing context-aware and adaptive Web applications requires addressing a few design concerns that are proper of such kind of applications and independent of the chosen modeling paradigm or programming language. In this chapter we characterize the design of context-aware Web applications, the authors describe a conceptual, model-driven development approach, and they show how the peculiarities of context-awareness require augmenting the expressivepower of conceptual models in order to be able to express adaptive application behaviors.
Chapter Preview


The evolution of the Information Technology in the last years has seen the World Wide Web transforming from a read-only hypertext media into a full-fledged, multi-channel and multi-service application delivery platform. Current advances in communication and network technologies are changing the way people interact with Web applications. They provide users with different types of mobile devices for accessing – at any time, from anywhere, and with any media – services and contents customized to the users’ preferences and usage environments. More and more users themselves ask for services and applications highly tailored to their individual requirements and, especially due to the increasing affordability of new and powerful mobile communication devices, they also begin to appreciate the availability of ubiquitous access. In order to cope with the growing demand for novel, user-centric application features, such as adaptivity and context-awareness, appropriate development methods for Web applications are required.

Adaptivity is increasingly gaining momentum in the context of modern software systems. Runtime adaptivity provides highly flexible and responsive means for the customization of contents and services with respect to the user’s identity. Varying device characteristics in mobile and multi-channel computing environments can be adequately taken into account and leveraged by means of adaptive software designs, whose development is facilitated by the availability of standardized communication protocols (e.g. HTTP) and markup languages (e.g. HTML or WML), supported by most of today’s mobile devices. Multi-channel deployment does no longer require completely different, parallel design approaches and rather represents a presentation issue on top of unified engineering solutions.

But adaptivity may also enable an application to take into account a wider range of properties describing the interaction between the user and the application, thus paving the way for context-awareness. Context-awareness (Dey & Abowd, 2000; Schilit & Theimer, 1994) is often seen as recently emerged research field in information technology and in particular in the domain of the Web. From the perspective of application front-end development it can however be interpreted as natural evolution of personalization and adaptivity, addressing not only the user’s identity and preferences, but also his/her usage environment. Personalization has already demonstrated its benefits for both users and content providers and has been commonly recognized as fundamental factor for augmenting the efficacy of the overall communication of contents. Context-awareness goes one step further in the same direction, aiming at enhancing the application’s usefulness and efficacy by combining personalization and adaptivity based on an application-specific set of properties (the context) that may affect the execution of the application.

In this chapter, we focus on the development of context-aware applications for the Web and, in particular, we describe a model-driven development method that allows developers to approach the problem at a level of abstraction that enables him/her to focus on the real design challenges of such class of applications, leaving low-level implementation concerns to supporting CASE (Computer-Aided Software Engineering) tools. Considering that software systems are continuously getting more complex and difficult to maintain – partly due to the previously described requirements –, we believe that efficient abstraction mechanisms and design processes, such as those provided by visual, model-driven design methods, are becoming crucial. The focus on essential design issues and the ease of reuse in model-driven design methods may significantly accelerate the overall design process. As we will show in this chapter, starting from application models, code generation techniques may then provide for the automatic generation of application code or templates, thus assuring the fast production of consistent and high quality implementations.


Motivating Examples

Active application features, such as context-aware or adaptive behaviors, may augment the effectiveness of interactions and the efficiency of resource consumption in all those situations where services and contents offered by an application strongly depend on environmental situations, users’ abilities or disabilities, or the state or health of a software system. For example, typical applications demanding for active features and adaptivity are:

Complete Chapter List

Search this Book:
Editorial Advisory Board
Table of Contents
Thomas Strang
Theo Kanter
Dragan Stojanovic
Dragan Stojanovic
Chapter 1
Davy Preuveneers, Koen Victor, Yves Vanrompay, Peter Rigole, Manuele Kirsch Pinheiro
In recent years, many researchers have studied context-awareness to support non-intrusive adaptability of context-aware applications. Context-aware... Sample PDF
Context-Aware Adaptation in an Ecology of Applications
Chapter 2
Tarak Chaari, Mohamed Zouari, Frédérique Laforest
Pervasive information systems aim to make information available anywhere and at anytime. These systems should be used in different contexts... Sample PDF
Ontology Based Context-Aware Adaptation Approach
Chapter 3
Florian Daniel
Adaptivity (the runtime adaptation to user profile data) and context-awareness (the runtime adaptation to generic context data) have been gaining... Sample PDF
Context-Aware Applications for the Web: A Model-Driven Development Approach
Chapter 4
I. Roussaki, M. Strimpakou, C. Pils, N. Kalatzis, N. Liampotis
In ubiquitous computing environments, context management systems are expected to administrate large volumes of spatial and non-spatial information... Sample PDF
Distributed Context Management in Support of Multiple Remote Users
Chapter 5
Jared Zebedee, Patrick Martin, Kirk Wilson, Wendy Powley
Pervasive computing presents an exciting realm where intelligent devices interact within the background of our environments to create a more... Sample PDF
An Adaptable Context Management Framework for Pervasive Computing
Chapter 6
Yuanping Li, Ling Feng, Lizhu Zhou
Context is an essential element in mobile and ubiquitous computing. Users’ information needs can be better understood and supplied by means of... Sample PDF
Context-Aware Database Querying: Recent Progress and Challenges
Chapter 7
Carsten Jacob, Heiko Pfeffer, Stephan Steglich
The idea of context-aware services has been around for a long time. The rise of user mobility enabled by well-equipped mobile devices, increasing... Sample PDF
Employing Context Information and Semantics to Advance Responsiveness in Service Composition
Chapter 8
Heinz-Josef Eikerling, Pietro Mazzoleni
The authors present a holistic approach for the efficient design, implementation, and validation of context-aware mobile services. The according... Sample PDF
A Methodology for the Design, Development and Validation of Adaptive and Context-Aware Mobile Services
Chapter 9
Stefan Dietze, Alessio Gugliotta, John Domingue
Context-awareness is highly desired, particularly in highly dynamic mobile environments. Semantic Web Services (SWS) address context-adaptation by... Sample PDF
Bridging the Gap between Mobile Application Contexts and Semantic Web Resources
Chapter 10
Claudia Raibulet
Due to its nature, a mobile-enabled environment is very dynamic: reachable resources and services change very often. Users hardly know which... Sample PDF
Adaptive Resource and Service Management in a Mobile-Enabled Environment
Chapter 11
Nahuel Lofeudo, Andrés Fortier, Gustavo Rossi
Mobile context-aware applications have specific needs regarding data communications and position sensing, that current standard hardware is still... Sample PDF
Kindergarten: A Novel Communication Mechanism for Mobile Context-Aware Applications
Chapter 12
Laurent Gomez, Annett Laube, Alessandro Sorniotti
Access control is the process of granting permissions in accordance to an authorization policy. Mobile and ubiquitous environments challenge... Sample PDF
Access Control in Mobile and Ubiquitous Environments
Chapter 13
Amr Ali Eldin, Semir Daskapan, Jan van den Berg
With the growing interest in context-aware services, attention has been given to privacy and trust issues. Context-aware privacy architectures are... Sample PDF
Privacy Automation in Context-Aware Services
Chapter 14
Adrien Joly, Pierre Maret, Fabien Bataille
These times, when the amount of information exponentially grows on the Internet, when most people can be connected at all times with powerful... Sample PDF
Leveraging Semantic Technologies towards Social Ambient Intelligence
Chapter 15
Federica Paganelli, Dino Giuli
The delivery of real-time, context-aware, and personalized information to end-users for mobility support is a high-priority objective in improving... Sample PDF
An Evaluation of Context-Aware Infomobility Systems
Chapter 16
Nikos Tsianos, Panagiotis Germanakos, Zacharias Lekkas, Constantinos Mourlas
The notion of context in context-aware applications is not merely an issue of external situational circumstances or device/channel properties, but... Sample PDF
Incorporating Human Factors in the Development of Context-Aware Personalized Applications: The Next Generation of Intelligent User Interfaces
About the Contributors