Implementation of Mining Techniques to Enhance Discovery in Service-Oriented Computing

Implementation of Mining Techniques to Enhance Discovery in Service-Oriented Computing

Chellammal Surianarayanan (Bharathidasan University, India) and Gopinath Ganapathy (Bharathidasan University, India)
DOI: 10.4018/978-1-4666-9562-7.ch018
OnDemand PDF Download:
$30.00
List Price: $37.50

Abstract

Web services have become the de facto platform for developing enterprise applications using existing interoperable and reusable services that are accessible over networks. Development of any service-based application involves the process of discovering and combining one or more required services (i.e. service discovery) from the available services, which are quite large in number. With the availability of several services, manually discovering required services becomes impractical and time consuming. In applications having composition or dynamic needs, manual discovery even prohibits the usage of services itself. Therefore, effective techniques which extract relevant services from huge service repositories in relatively short intervals of time are crucial. Discovery of service usage patterns and associations/relationships among atomic services would facilitate efficient service composition. Further, with availability of several services, it is more likely to find many matched services for a given query, and hence, efficient methods are required to present the results in useful form to enable the client to choose the best one. Data mining provides well known exploratory techniques to extract relevant and useful information from huge data repositories. In this chapter, an overview of various issues of service discovery and composition and how they can be resolved using data mining methods are presented. Various research works that employ data mining methods for discovery and composition are reviewed and classified. A case study is presented that serves as a proof of concept for how data mining techniques can enhance semantic service discovery.
Chapter Preview
Top

Introduction

Service Oriented Architecture (SOA) is an architectural style for building business applications using existing interoperable and reusable services that are accessible over network such as the Internet. A Service is a self contained, autonomous, loosely coupled interoperable software component that implements particular business functionality. It has well defined interface to expose its functionality to its clients. Web services, a set of eXtensible Markup Language (XML) based protocols, namely, Web Service Description Language (WSDL), Simple Object Access Protocol (SOAP) and Universal Description, Discovery and Integration(UDDI)(Gottschalk, Graham, Kreger, & Snell, 2002) become de facto platform for implementing SOA. New business applications are built by assembling existing services with the help of Web services. Simple business requirements can be fulfilled by atomic services whereas complex business processes can be fulfilled by composite services which are formed by combining more than one service in a particular pattern. The process of combining more than one atomic service to achieve a composite functionality is called service composition (Claro, Albers, & Hao, 2006). Services which undergo composition should be discovered based on functional characteristics prior to composition itself. Service discovery is a mandatory prerequisite for composition.

The functional characteristics of services are expressed through service name, operation name and input and output parameters of operations. Typically, service users express their needs in the form of key words or in terms of input and output parameters. To find a suitable service, the query is matched with each service description available in a service repository as in Figure 1.

Figure 1.

Process of service discovery

Service discovery turns into difficult task due to the steady growth in number of services in the Web and other service repositories of enterprises (Rao, & Su, 2005). Despite the availability of several services, each service has a limited functionality and very frequently, a query is fulfilled by service composition. The atomic services involved in composition may originate from different as well as heterogeneous business organizations. Further services are described using different semantic service description languages such as WSDL, Semantically Annotated Web Service Description Language(SAWSDL), Web Ontology Language for Services (OWL-S), etc. In such situations, discovering required services manually becomes impractical and time consuming. Business organizations look for efficient methods for choosing appropriate services from huge service repositories for composition within relatively short intervals of time. It is crucial to have a scalable infrastructure for service discovery (Nayak, 2008) which drives the need for applying some techniques to characterize, group, categorize and properly organize services. As data mining provides a collection of exploratory techniques it fits as a natural choice for resolving the issues related to discovery and composition.

In enterprises, data mining tasks are mainly employed to two kinds of data, (i) historical data which are characterized and summarized by various concept hierarchies in multiple dimensions and (ii) events or data logged at server (Web log). In the case of services, mining tasks are employed to repository of service descriptions and service execution log as in Figure 2. Applying mining methods to historical data helps in extraction of hidden knowledge such as whether credit card can be issued to a customer or not from huge data. In the case of services, manually discovering relevant and useful knowledge from huge service repositories is time consuming and becomes impractical. In practice, mining methods are used to extract useful and hidden knowledge such as which service is more suitable to implement a given business need from huge service repositories in short intervals of times.

Figure 2.

Mining tasks employed to service descriptions and service execution log

Complete Chapter List

Search this Book:
Reset