A Quality Driven Web Service Selection Model

A Quality Driven Web Service Selection Model

Pierluigi Plebani (Politecnico di Milano, Italy) and Filippo Ramoni (Politecnico di Milano, Italy)
DOI: 10.4018/978-1-61350-432-1.ch007
OnDemand PDF Download:
No Current Special Offers


The chapter introduces a quality of Web service model which can be exploited by a Web service broker during the Web service selection phase. The model considers both user and provider standpoints. On the one hand, providers express their capabilities with respect to measurable dimensions (e.g., response time, latency). On the other hand, users can define the requirements with a higher level of abstraction (e.g. performance). Since the quality is subjective by definition, the presented quality model also maps the user preferences, i.e., how much a quality dimension is more important than another one in evaluating the overall quality. The Analytic Hierarchy Approach (AHP) has been adopted as a technique for expressing user preferences. The chapter also describes how the model can be exploited in the Web service selection process. Starting from a set of functionally equivalent Web services, the selection process identifies which are the Web services able to satisfy the user requirements. Moreover, according to a cost-benefit analysis, the list of selected Web services is sorted and, as a consequence, the best Web service is identified.
Chapter Preview


Service Oriented Computing aims at providing a set of methods and tools to support the design and the execution of applications based on Web services. According to this paradigm, at the design-time, the programmer identifies which is the activity to be performed and tries to find and to select the Web services closer to such requirements. In some cases, the requirements can be figured out only at run-time and specific modules are involved to perform the discovery and selection activities. This is the typical scenario where automatic composition techniques work. Finally, a third situation occurs when a user needs to find a Web service for a specific goal. In this case, the final user manually browses dedicated Web sites to find the Web services able to fulfill the needs. As discussed in (Garofalakis, Panagis, Sakkopoulos, & Tsakalidis, 2006), several tools have been developed to support all of these actors in finding the best Web service according to a set of requirements. Although plenty of proposals aim at finding a solution for the non-functional matchmaking, very few of them are really adopted in practice. The same does not occur in case of functional matchmaking. This situation is probably caused by the different maturity of the models for describing the functional aspects from the model describing the quality of a Web service. In fact, nowadays, WSDL can be considered the standard de-facto for describing how a Web service can be invoked. In the same way, languages as OWL-S or WSMO represent the most well-known approaches for describing the semantics underlying a Web service. On the opposite, the Web service community does not provide the same level of agreement about the description of the quality of Web service. Actually, efforts like WS-Policy (Vedamuthu, Orchard, Hondo, Boubez, & Yendluri, 2007) or the model proposed by the OASIS Consortium (Kim & Lee, 2005) start to offer an attempt of organizing all the aspects concerning the description of the quality of Web services. Nevertheless such models, as well as all other approaches, suffer of two main limitations. Firstly, existing approaches are mainly focused on the technical aspects of Web services (e.g., reliability, security) without any considerations about aspects closer to the business. Secondly, the quality description is usually too technical (e.g., 3DES or AES encryption algorithms) and the final user cannot easily figure out what is the real quality offered by a Web service.

Goal of this chapter is to introduce a quality of service model (1) able to express both technical and business quality aspects, and (2) which considers both programmer and final user perspectives. In a Service Oriented Architecture, our quality model can be adopted by the Web service broker to identify which is the best Web service among a set of functionally equivalent Web services. Such a selection considers the quality of Web service along with the user preferences combining two decision making models: cost-benefit analysis and Analytic Hierarchy Process (AHP). For the sake of simplicity, we assume that our quality-driven selection process commences when a set of functionally equivalent Web services has been previously identified. So, in this work, we skip this preliminary step.

To make the model presentation clearer, we rely on a reference example where we assume that a programmer adopts our model during the implementation of a touristic Web portal. In particular, the programmer, after discovering a set of flight reservation Web services, wants to propose them to the user taking into account the user preferences. Indeed, final users express both functional (e.g., departure date, arrival date) and non-functional (e.g., business vs. economy class, meal offers) requirements and the Web portal has to rank them from the most suitable Web service able to fulfill such requirements, to the less suitable one.

The chapter is structured as follows. First of all we introduce the quality model in terms of who and in which way the quality is defined, and how the user can define the preferences. Exploiting this quality model the following section discusses the approach we propose for a quality-aware Web service selection. A complete example will summarize the whole approach. Finally, after a discussion on related work, we present our standpoint about the future development that could be done in this area.

Key Terms in this Chapter

Derived Quality Dimension: A quality dimension which value depends on other quality dimensions.

Community: Group of people, a standardization body, or even an implicit agreement that aims at proposing a specification for a group of objects with some relevant common characteristics.

Quality Tree: All the quality dimensions defined relevant for a given application domain.

Primitive Quality Dimension: A direct measurable quality dimension (e.g. response time).

Service Selection: Process that aims at identifying a set of services able to satisfy a given set of functional and non-functional constraints.

Complete Chapter List

Search this Book: