Semantic Web and Service-oriented Computing
Theme leader: James A. Hendler
AbstractService-based computing is a new computing paradigm where computing is seen as a utility, similar to gas, electricity, etc. An application is not physically shipped to the customer but made available for remote usage.
In computing, service-oriented architecture (SOA) when defined in its own standalone-context for a business domain, provides a set of principles for governing concepts and changes while taking them through to realisation phases of systems development and integration. Such an architecture, when fulfilled will package functionality as interoperable services. A system architected and developed as a result of such progressive thinking from a group of architects and developers is called a SOA infrastructure or Service Oriented platform. Service-orientation aims at a loose coupling of services with operating systems, programming languages and other technologies that underlie applications. SOA separates functions into distinct units, or services, which developers make accessible over a network in order that users can combine and reuse them in the production of applications. These services communicate with each other by passing data from one service to another, or by coordinating an activity between two or more services.
Since the distribution of services is supposed to be transparent from the user, any kind of delay in the interaction of these services needs to be kept to a minimum. To achieve a control of these interactions the performance needs to be monitored and in case of under-performing a reconfiguration needs to be triggered. Three different architectures for performance monitoring have been designed, whereby the difference between these architectures is the location of the performance monitor within the distributed system.
A Grid Performance Software (GriPS) has been designed, developed and tested. It is written in Java and has been used to create experimental results to compare and analyse the different performance monitoring architectures. GriPS is now being used at INRIA as foundational toolset for their work on Grid technologies.
Ontologies classifying and describing services are called service ontologies. The currently used WSDL interface describes a service by specifying the operation name, inputs required for the service invocation, output of the service and its target address for invocation. Human intervention is required in this loop since the current architecture only addresses the syntactical aspects of Web services and lacks choreography mechanisms. Service ontologies supplements the WSDL interface, since additional knowledge is required to enable automation discovery, invocation and composition of services. The idea is to annotate web services, enabling the automation of the web service life cycle. The existing conceptual models for describing services are OWL-S, WSMO, WSDL-S, SWSF, SAWSDL.
We have given a powerful formal framework for Semantic Web Service specifications using ITL. The specification and verification of Web services are compositional. This is vital in the domain of We services as services are seen as 'black-boxes'. We have customised Anatempura, an in-house tool for executing Tempura code to work with external programs written in Java. This is a major breakthrough for the lab, as it allows executable ITL specification to be used with third party software. AnaTempura is now being used as a software agent that continually validate service composition.
Our achievements has led to the invitation to become a member of the
OWL-S coalition - DARPA. OWL-S is an ontology for Web Service
specification. We have actively been involved in the 1.0 release
of the language. In this context we have proposed to augment the OWL-S
process model specification with compositional properties. This has
received wide acclaim within the community.