An Integrated Approach for Service Selection Using Non-Functional Properties and Composition Context

An Integrated Approach for Service Selection Using Non-Functional Properties and Composition Context

Stephan Reiff-Marganiec (University of Leicester, UK) and Hong Qing Yu (Open University, UK)
DOI: 10.4018/978-1-61350-432-1.ch008


In the maturing world of service oriented computing and Web services, we find ourselves in a position where numerous services are available, all of which address a specific need. Selecting the best such service based on the service context and a user’s current need becomes an important aspect. Services can be evaluated based on functional and non-functional criteria: the former represent the operation that the service provides, the latter criteria that differentiate functionally equal services. This chapter presents three closely related items addressing the problem of differentiating functionally equal services to find the most appropriate one in any given situation: (1) a generic and extensible model for non-functional properties, (2) a method for ranking services, and (3) an algorithm for selecting services that are part of larger execution chains. The method is evaluated, and the needs are exemplified with some motivating examples.
Chapter Preview


Service-oriented computing (and its predominant incarnation as web services) is reaching a certain maturity, which is reflected in the number of services that are becoming available. Well established technologies for Service-oriented computing allow providers to describe and deploy services while allowing clients to bind to and invoke these over the internet on demand. Much of the matchmaking task involved in finding an appropriate service is a manual task. Selecting the service is often a question of retrieving functional descriptions from service repositories and then ensuring that the described and required interfaces match a technical level. However, with the rapidly growing number of available services, clients are presented with a choice of functionally similar (or even identical) services. This choice gives clients the opportunity to select services that match other criteria: these are referred to as non-functional properties.

From the single service selection point of view, the non-functional properties are related to local constraints. The local constraints reflect the user preferences and context of the demanded service. From the a service composition point of view, the selection problem becomes more challenging, because the composition context needs to be considered in addition to capture the larger context of the service invocation. For example, assume that service s2 has a better coordination record with service s1 than service s3. Now, if service s1 is selected in the composition, then service s2 is a better choice according to this particular composition constraint. In this chapter we will present more case studies with composite service scenarios. We use a scenario driven approach to identify a non-functional properties model, which allows to capture the properties of relevance for single and composite service selection. We present a service selection method which considers all relevant constraints both for single service selection and composed scenarios – the development of which presents an additional challenge in aggregating the different constraints to get comparable scores for the competing services.

In this chapter, we will address web service selection based on non-functional properties and bring together a complete overview of techniques and approaches developed over a number of years. The main contributions are:

  • A generic and extensible model for non-functional properties,

  • A method for ranking services, based on the LSP (logic scoring for preference) method, and

  • A stepwise backwards algorithm for selecting services in composition scenarios.

The chapter is structured as follows: Case studies from real world scenarios presented in the next section aid in understanding the non-functional properties and composition context and add further motivation for the work. We then present the non-functional properties model for single service properties and the composition context model. Next we introduce our service selection method which is based on Logic Scoring Preference aggregation functions and type-based evaluation functions. Following that, we illustrate the Backward Composition Context based Service Selection approach for service composition focusing on the general operation and use of the concepts illustrated in this chapter. The chapter is completed with an evaluation of the approach and comparison to related work.


Motivating Case Studies

In this section, we describe two typical service composition cases of organising a meeting and planning a trip. Each example includes different composition scenarios which highlight a set of different types of non-functional properties – both properties of the services in question as well as properties of the composition context.

Key Terms in this Chapter

Context: Factors from the environment in which users and services are placed that influence the needs of a user or the provision of a service.

Global Constraints: Constraints for choosing a service as part of a workflow that are based on the required service’s execution context.

Local Constraints: Constraints for choosing a service that are based on a single service’s current context and the current user’s demands

Service Selection: The operation of deciding which of a number of available services to use for addressing a current need.

Simultanenuity: The requirement of a user specifying that independent of the score for a criterion, other criteria must still be considered as equally important.

Replacability: The requirement of a user specifying that either of two criteria, if strong enough, will satisfy the need.

Complete Chapter List

Search this Book: