Service Discovery with Personal Awareness in Smart Environments

Service Discovery with Personal Awareness in Smart Environments

Kobkaew Opasjumruskit, Jesús Expósito, Birgitta König-Ries, Andreas Nauerz, Martin Welsch
DOI: 10.4018/978-1-4666-4695-7.ch004
(Individual Chapters)
No Current Special Offers


Web service descriptions with Semantic Web annotations can be exploited to automate dynamic discovery of services. The approaches introduced aim at enabling automatic discovery, configuration, and execution of services in dynamic environments. In this chapter, the authors present the service discovery aspect of MERCURY, a platform for straightforward, user-centric integration and management of heterogeneous devices and services via a Web-based interface. In the context of MERCURY, they use service discovery to find appropriate sensors, services, or actuators to perform a certain functionality required within a user-defined scenario (e.g., to obtain the temperature at a certain location, book a table at a restaurant close to the location of all friends involved, etc.). A user will specify a service request, which will be fed to a matchmaker, which compares the request to existing service offers and ranks these offers based on how well they match the service request. In contrast to existing works, the service discovery approach the authors use is geared towards non-IT-savvy end users and is not restricted to single service-description formalism. Moreover, the matchmaking algorithm should be user-aware and environmentally adaptive (e.g. depending on the user’s location or surrounding temperature), rather than specific to simple keywords-based searches, which depend on the users’ expertise and mostly require several tries. Hence, the goal is to develop a service discovery module on top of existing techniques, which will rank discovered services to serve users’ queries according to their personal interests, expertise, and current situations.
Chapter Preview


Context-aware pervasive computing has become a prevalent topic over the last decade. With the upcoming of ubiquitous mobile devices, which provide heterogeneous sensors and facilitate internet access to users, we are close to realising the idea of the “Web of Things” (Mattern & Floerkemeier, 2010). In the Web of Things world, physical things are becoming smart web connected devices. Not only can they create, store and share data, they can even be programmed to make decisions based on these data. In addition to these concepts, things have become not only remotely controllable and able to communicate with each other, but also able to automatically adapt themselves to the demands of the user. By measuring the context of users and preferences, things (in particular resources) can be altered or configured to match the requirements of each user. For example, a user may want to receive an alert, if a weather advisory that concerns him (i.e., refers to a region where he will be when the advisory becomes active) is published. To achieve this functionality, a weather advisory service needs to be combined with information obtained from the user’s calendar or his flight reservation service or another service that provides information about his whereabouts.

Even though various works have been devoted to the above concepts, none of them can relieve the painful integration nor ease the complexity of the usage for the non-technical user. Therefore, the major goal of the MERCURY project is to equip the non-IT-savvy users with the user-context adaptive service in order to utilize resources in their own environments. MERCURY is able to support both, generic everyday tasks, like, “set my to-do-task for working out when my daily calorie intake is above the limit”, and sophisticated tasks involving several sensors, services and actuators. An example for such a sophisticated task is, “Monitoring medical sensors, such as glucose meters, electrocardiogram (EKG) sensors, respiratory sensors, etc. When there is any sign of unusual condition, send an alarm to a caregiver or a nearby physician”. While maintaining a user-friendly interface, another crucial gap that has not been efficiently addressed in any existing solution is – how to utilize information retrieved from mobile devices or social web in order to provide the user with an automation and recommendation system. Therefore, in order to cover the challenges mentioned above, we continue focusing on the service discovery requirement based on the work proposed in Opasjumruskit, Exposito, Koenig-Ries, Nauerz, and Welsch (2012).

The remainder of this chapter is organized as follows: First, we will review related work, which our assumptions and ideas are based on. We then review the existing approaches for discovering services and carve out the most important aspects of successful and thus most promising solutions. Afterwards, the Background section briefly presents an overview of MERCURY and motivates the relation to the service discovery topic. We present how service discovery fits into MERCURY and provide tangible use cases. Next, we make basic assumptions, which define the scope of our research, elaborate the implementation of the user-context adaptive service recommender. Finally, we describe our proposed architecture.

In section Building Blocks, we explain, in more detail, the request converter along an exemplary use case. In this building block, the service discovery results are improved by involving personal awareness. Next, the result integrator, which is used for merging ranked results from several service matchmakers, is described. We then conclude the chapter and finally, point out the remaining challenges for our future work.

Complete Chapter List

Search this Book: