Separation of Concerns in Mobile Hypermedia: Architectural and Modeling Issues

Separation of Concerns in Mobile Hypermedia: Architectural and Modeling Issues

Cecilia Challiol (LIFIA-Facultad de Informática-UNLP, Argentina & CONICET, Argentina), Gustavo Rossi (LIFIA-Facultad de Informática-UNLP, Argentina & CONICET, Argentina), Silvia E. Gordillo (LIFIA-Facultad de Informática-UNLP, Argentina & CIC, Argentina) and Andrés Fortier (LIFIA-Facultad de Informática-UNLP, Argentina, CONICET, Argentina, & Universidad Politécnica de Valencia, Spain)
DOI: 10.4018/978-1-61520-655-1.ch013


Building Mobile Hypermedia and Web Applications is hard because of the myriad of concerns that must be faced, such as those related to the specific application domain, and those typical of mobile software. During recent years, the authors have been researching modelling techniques for mobile hypermedia, and building infrastructure support for this and other kinds of mobile and context aware software. In this chapter, the authors review the modelling features, design mechanisms, and architectural support they have developed to simplify the development process, and to obtain more flexible models and applications.
Chapter Preview

1. Introduction

Mobile Hypermedia and Mobile Web applications are difficult to build and maintain as they pose strong requirements to developers. As usual in complex Web software, this kind of applications must cope with sophisticated content domains, provide good navigation facilities and offer a usable interface (moreover if you consider the small size of mobile devices).

Additionally, mobility adds other issues to be considered such as content (navigation or interface) and adaptation to the actual user location in order to make the application aware of the user’s context (his location). As a consequence, we are obliged to stress our usual modeling and support tools, as we face new modeling and development problems which are certainly challenging.

Unfortunately, run-time platforms are far from being standard (as in “old” Web software), and there are not yet widely used frameworks supporting the myriad of technological elements needed for this kind of software. Sensing devices (both for outdoor or indoor positioning) are also evolving fast, and their interfaces with higher level software components are also a matter of research. Consequently, mobile Hypermedia and Web software are built on top of ad-hoc architectures which encompass a set of abstractions and their corresponding communication and cooperation mechanisms.

Even simple applications, like mobile hypermedia tour guides, present interesting modeling, design and implementation problems. This way they cover different concerns both, functional (like integrating location-based services with navigation), and non-functional (like improving usability while assuring privacy and security).

In the last four years, we have been researching different aspects of mobile hypermedia development. We have proposed a modeling approach for physical hypermedia (Gordillo, Rossi, & Schwabe, 2005), and developed a modular architecture for building context-aware software (Fortier, Cañibano, Grigera, Rossi, & Gordillo, 2006). We have also analyzed different design aspects of mobile hypermedia, particularly those related to context-aware assistance to the traveler (Challiol, Rossi, Gordillo, & De Cristófolo, 2006; Challiol, Fortier, Gordillo, & Rossi, 2007; Rossi, Gordillo, Challiol, & Fortier, 2006) and the impact of different browsing semantics in physical hypermedia applications (Challiol, Muñoz, Rossi, Gordillo, Fortier, & Laurini, 2007).

In this chapter, we intend to synthesize our experience focusing on the different facets of the mobile and context-aware hypermedia engineering enterprise; particularly, we aim at analyze the impact of a wise separation of concerns in different quality properties of mobile hypermedia software.

The structure of the chapter is the following: In Section 2 we motivate the reader to study an example in which we illustrate some of the problems discussed above. In this ay we show that, even using state-of-the-art modeling approaches, there are problems which are inherent to mobile hypermedia, and which require to improve separation of concerns both in relationship with specific application concerns, and also with more “paradigmatic” concerns, such as navigation, user interface, “physicality” of application objects, etc. While some concerns remain orthogonal, others tend to crosscut and require different kinds of advanced techniques (aspects, roles, intelligent use of patterns, etc.). Next, in Section 3, we review existing research work both on modeling and architecting mobile hypermedia applications.

In Section 4 we characterize the different kinds of design and architectural concerns in these applications, and show how these concerns impact on the design complexity and specifically on the ease or difficulty to support the evolution of the application. Next, in Section 5 we analyze each of the problems, and present our solutions for them. We present our choices in such a way that they can be reused in different implementation settings. Particularly, we show how our finer grained micro-architectural constructs, focusing on different concerns such as sensing, context modeling, adaptation, etc. These can be combined to yield solid, modular and easy to evolve systems. In Section 6 we focus on modeling issues and in Section 7 we present our modeling approach. In Section 8, we finally focus on browser support for mobile hypermedia and show how to support concern-oriented browsing. In this context, we revise our research on browsing semantics to outline our vision for a mobile hypermedia browser.

Key Terms in this Chapter

OOHDM: The Object-Oriented Hypermedia Design Method is a mature approach for building hypermedia and Web applications by describing different design models which are then mapped onto a running application.

Mobile Hypermedia: Mobile hypermedia extends the concept of hypermedia. The user, carrying his mobile devices traverses not only the virtual space but also can receive information from the real-world places (physical nodes) that he visits during his detour.

Physical Link: A physical link connects two physical objects. The user traverses a physical link by moving from the source to the target physical objects, instead of waiting that the underlying system “brings” him the information. Navigation in these links is not atomic as may take time, be interrupted, deferred or canceled by the user who changed his decision and moves to another place.

Concern: In the context of this chapter, a concern comprises a set of coherent application requirements; it can therefore encompass an important application theme or domain area. By separating concerns we achieve modularity as we can reason and operate on them independently.

Navigational Model: In OOHDM and other design methodologies, the navigational model specifies in an abstract way, the application’s navigation topology, i.e. the node types and their contents, and the links and other navigation structures (such as indexes) which connect nodes.

Context: Context is any information that is considered relevant to characterize the interaction between a user and the application, for example the user’s location, identity, role, current activity, network or device’s features, etc.

Hypermedia: Hypermedia is a paradigm for organizing and accessing to information by organizing it in a network, in which nodes contain multimedia data and are connected with links. The user traverses the information space by navigating from node to node using links.

Context-Aware: An application is said to be context-aware when it considers the actual context to provide better information and/or services to the user.

Complete Chapter List

Search this Book: