Towards Automatic Service Composition within ARGUGRID

Towards Automatic Service Composition within ARGUGRID

Nabeel Azam (InforSense Ltd., London, UK), Vasa Curcin (Imperial College London, UK), Li Guo (Imperial College London, UK) and Moustafa Ghanem (InforSense Ltd., London, UK and Imperial College London, UK)
DOI: 10.4018/978-1-61520-973-6.ch004
OnDemand PDF Download:
No Current Special Offers


Workflow systems play an important role in service-oriented computing as they provide an intuitive mechanism for orchestrating the execution of remote services. Constructing new workflows from raw services however, is not always a straight-forward task. It requires resolving many decisions including locating available services, determining which of them match the user requirements and also deciding how to compose them together into valid applications. Workflow construction activities can be simplified, or possibly even automated, by using a combination of semantic annotations and delegation of the decision making tasks to intelligent agents. Two key challenges arise when developing a practical system that attempts to address this vision. The first is elaborating the key properties of service workflows and the decisions that agents are required to assist in. This information is needed for designing and implementing the internals of the agent mind. The second is designing and implementing the run-time interfaces between the workflow system and the agent system to enable the exchange of information between them. This chapter describes our experience in addressing these two challenges and in developing a framework that simplifies the workflow creation process within the ARGUGRID project.
Chapter Preview



Over the last decade the service-oriented computing paradigm has been advocated as a new model for developing Grid-based applications (Atkinson, 2005; Foster, 2002; Surridge, 2005; Talia, 2002). The concept builds on the notion of a “service” (e.g. Web Service or Grid Service) that provides a uniform and standardized interface to remote resources. These services are advertised by service providers and can be discovered and used by service requestors. Workflow systems play an important role within the paradigm. They provide the languages and execution mechanisms that enable users to orchestrate the execution of available services, compose them together to build applications and develop new aggregated services that can be used in further applications. Multi-agent systems can play an important role in assisting the users of such systems by providing them with decision making support.

In a service oriented world service providers host remote services and publish their location and properties in a service registry. By querying the registry, service requestors can discover and access these services. In addition to the description of the service functionality and its access methods, published service properties can also include information such as its execution costs (e.g. number of CPUs required), the price of accessing the service and so forth. In a traditional workflow system it is the human users (service requestors) who make the decisions about which services to use and in what sequence. In doing so they need to ensure that the costs and properties of the composed services meet their application requirements.

The process of orchestrating remote services is not a simple task, especially for those users who are not technical experts. Ideally, for such users many of the service selection and workflow construction decisions should be automated. The two key challenges that arise when designing an agent-based system to assist in this process are:

  • Elaborating the properties of service workflows and associated decision making processes to the agent designer in order to assist in implementing the internals of the agent mind.

  • Designing the middleware that interfaces between a workflow system and an agent system to support the exchange of information between them at run-time.

Addressing the above issues is typically tied to the characteristics of both the workflow system and agent system used. The work presented in this chapter is based on our experience in the ARGUGRID project (Curcin, 2006; Toni, 2008) which investigated the use of an argumentation-based multi-agent system to support service discovery and composition. Since many of the key principles are generic and could be applied easily to other systems, we focus on describing them in a system-independent fashion first before presenting the details of their implementation.

It should be noted that within the full ARGUGRID vision, agents can represent both service providers and requestors and are allowed to enter into negotiation on different service parameters. The discussion on agent negotiation is beyond the scope of this chapter and we focus primarily on exploring the issues relating to interfacing a workflow system to an intelligent agent representing a service requestor. The reader interested in the negotiation aspects of the ARGUGRID system is referred to the following publications: Bromuri (2009), Morge (2008) and Urovi (2008).

Complete Chapter List

Search this Book: