Design and Development of Communities of Web Services

Design and Development of Communities of Web Services

Zakaria Maamar (Zayed University, UAE)
DOI: 10.4018/978-1-60566-026-4.ch163
OnDemand PDF Download:
$37.50

Abstract

In the field of Web services (Benatallah, Sheng, & Dumas, 2003; Bentahar, Maamar, Benslimane, & Thiran, 2007; Medjahed & Bouguettaya, 2005), a community gathers Web services that offer similar functionalities. Hotel booking and car rental are samples of functionalities. This gathering takes place regardless of who developed the Web services, where the Web services are located, and how the Web services function to satisfy their functionalities. A Web service is an accessible application that can be discovered according to its functionality and then invoked in order to satisfy users’ needs. In addition, Web services can be composed in a way that permits modeling and executing complex business processes. Composition is one of Web services’ strengths as it targets user needs that cannot be satisfied by any single available Web service. A composite Web service obtained by combining available Web services may be used (Figure 1). The use of communities in composition scenarios offers two immediate benefits. The first benefit is the possibility of accelerating the search of Web services required to satisfy user needs by looking for communities rather than screening UDDI (universal description, discovery, and integration) and ebXML registries. The second benefit is the late execution binding of the required Web services once the appropriate communities are identified. Both benefits stress the need of examining Web services in a different way. Current practices in the field of Web services assume that a community is static and Web services in a community always exhibit a cooperative attitude. These practices need to be revisited as per the following arguments. A community is dynamic: New Web services enter, other Web services leave, some Web services become temporarily unavailable, and some Web services resume operation after suspension. All these events need to be closely monitored so that inconsistent situations are avoided. Moreover, Web services in a community can compete on nonshareable computing resources, which may delay their performance scheduling. Web services can also announce misleading information (e.g., nonfunctional details) in order to boost their participation opportunities in composition scenarios. Finally, Web services can be malicious in that they can try to alter other Web services’ data or operations. To look into ways of making Web services communities active, we describe in this article some mechanisms that would enable Web services among other things to enter a community, to leave a community after awhile, to reenter the same community if some opportunities loom, and to be rewarded for being part of a community. These mechanisms would be developed along three perspectives, which we refer to as the following. • Community management: How do we establish or dismantle a new or existing community of Web services? • Web services attraction and retention: How do we invite and convince new Web services to join a community? How do we retain existing Web services in a community? • Interaction management: How are interactions between Web services regulated in a community? How do we deal with conflicts in a community?
Chapter Preview
Top

Introduction

In the field of Web services (Benatallah, Sheng, & Dumas, 2003; Bentahar, Maamar, Benslimane, & Thiran, 2007; Medjahed & Bouguettaya, 2005), a community gathers Web services that offer similar functionalities. Hotel booking and car rental are samples of functionalities. This gathering takes place regardless of who developed the Web services, where the Web services are located, and how the Web services function to satisfy their functionalities. A Web service is an accessible application that can be discovered according to its functionality and then invoked in order to satisfy users’ needs. In addition, Web services can be composed in a way that permits modeling and executing complex business processes. Composition is one of Web services’ strengths as it targets user needs that cannot be satisfied by any single available Web service. A composite Web service obtained by combining available Web services may be used (Figure 1). The use of communities in composition scenarios offers two immediate benefits. The first benefit is the possibility of accelerating the search of Web services required to satisfy user needs by looking for communities rather than screening UDDI (universal description, discovery, and integration) and ebXML registries. The second benefit is the late execution binding of the required Web services once the appropriate communities are identified. Both benefits stress the need of examining Web services in a different way.

Figure 1.

Example of composition scenario

Current practices in the field of Web services assume that a community is static and Web services in a community always exhibit a cooperative attitude. These practices need to be revisited as per the following arguments. A community is dynamic: New Web services enter, other Web services leave, some Web services become temporarily unavailable, and some Web services resume operation after suspension. All these events need to be closely monitored so that inconsistent situations are avoided. Moreover, Web services in a community can compete on nonshareable computing resources, which may delay their performance scheduling. Web services can also announce misleading information (e.g., nonfunctional details) in order to boost their participation opportunities in composition scenarios. Finally, Web services can be malicious in that they can try to alter other Web services’ data or operations.

To look into ways of making Web services communities active, we describe in this article some mechanisms that would enable Web services among other things to enter a community, to leave a community after awhile, to reenter the same community if some opportunities loom, and to be rewarded for being part of a community. These mechanisms would be developed along three perspectives, which we refer to as the following.

  • Community management: How do we establish or dismantle a new or existing community of Web services?

  • Web services attraction and retention: How do we invite and convince new Web services to join a community? How do we retain existing Web services in a community?

  • Interaction management: How are interactions between Web services regulated in a community? How do we deal with conflicts in a community?

Top

Background

The term community means different things to different people. In Longman Dictionary, community is “a group of people living together and/or united by shared interests, religion, nationality, etc.” In the field of knowledge management, communities of practice constitute groups within (or sometimes across) organizations who share a common set of information needs or problems (Davies, Duke, & Sure, 2003). A community is not a formal organizational unit but an informal network of entities with common interests and concerns.

Key Terms in this Chapter

Composition: It targets users’ needs that cannot be satisfied by any single available Web service: A composite Web service obtained by combining available Web services may be used instead.

Web Service: It is a software application identified by a URI whose interfaces and binding are capable of being defined, described, and discovered by XML (extensible markup language) artifacts, and that supports direct interactions with other software applications using XML-based messages via Internet-based applications.

Community: It is a group of people living together and/or united by shared interests, religion, nationality, and so on.

Universal Description, Discovery, and Integration (UDDI): It is a specification that provides a platform-independent way of describing services, discovering businesses, and integrating business services using the Internet.

Ontology Web Language for Web Services (OWL-S): OWL-S supplies Web service providers with a core set of markup-language constructs for describing the properties and capabilities of their Web services in unambiguous, computer-interpretable form.

Contract-Net Protocol: It contracts and subcontracts jobs between two types of agents known as the initiator and the participant.

Alliance: An alliance is an arrangement in which two or more countries, groups, and so forth agree to work together to try to change or achieve something.

Complete Chapter List

Search this Book:
Reset