On Describing B2B Processes with Semantic Web Technologies
by Santtu Toivonen, Tapio Pitkäranta, and Jung Ung Min
The PAX project, carried out by VTT Information Technology in cooperation with the Center for Integrated Facility Engineering (CIFE) at Stanford University, concentrates on Intelligent Web Services within the context of two specific B2B cases, namely service chain composition and expediting process.
Two emerging trends are reshaping the Web as we know it today. One of these is the Semantic Web, in which content is consumed by computer programs in addition to humans. The other is Web Services, which provides a set of standards and practices for the remote use of computer applications. The combination of these two is sometimes referred to as Intelligent Web Services. The PAX project concentrates on this within the context of two specific B2B cases, namely service chain composition and expediting process. More specifically, the cases are approached in a 'bottom-up' manner, meaning that service providers have a degree of freedom in describing and executing their services. This in turn means that some level of intelligence or adaptability is expected from the service consumers, that is, the service composer and the expeditor.
Web Services carry on the tradition of distributed computing. Individual services are scattered over the Internet and are used remotely. Web Services are modular and composite by nature, meaning that simpler services can be grouped together to form more complex ones. It is necessary that the service composer be able both to find the services and also to evaluate them before the composition. Service discovery is easier to achieve, since Web Services are addressable with URIs, which can be stored in a common repository such as UDDI. Service evaluation is not so straightforward, because it presupposes descriptions of the services in a commonly agreed-upon fashion. This problem is especially evident if the service composer is a computer program. Service descriptions must be serialised in a machine-understandable format, and conform to a common ontology.
The richness of service descriptions can vary from plain service-type categorisation to detailed descriptions about service characteristics. The PAX project concentrates especially on process-related service descriptions. Services are described using Semantic Web technologies such as RDF and OWL. Figure 1 depicts a complex Web Service, which is composed based on the process descriptions of the individual services.
|Figure 1: Composing and executing a complex Web Service.
In the PAX project, the service composition task is approached in terms of a specific scenario from the construction industry. In this scenario there is a subcontractor (SC), sub-subcontractors (SSCs), banks, and material suppliers. The scenario also contains three kinds of processes: informational (such as requests for quotes), material (such as product deliveries), and financial (money flow). Some of the processes are one-to-one (eg product deliveries) whereas others are one-to-many (eg biddings for SSCs and banks). The scenario can also be configured, based for example on whether the project is on or behind schedule. For instance, the service composer, in this case the SC, can choose the more expensive but faster SSC if the project is behind schedule - something that it would not do if the project was running on time.
Apart from this type of service composition task, the adaptability of software agents is also investigated. More specifically, agents adapt to interaction protocol descriptions if unaware of the utilised protocols beforehand. Interaction protocols are typically used when modelling software agent conversations. They too are described using Semantic Web technologies, and conform to a common interaction protocol ontology.
|Figure 2: Interaction protocol-based expediting process.
The specific case chosen for studying interaction protocol-based adaptability is an expediting process, depicted in Figure 2. The general contractor (GC) expects status reports from SCs regularly. Suppose it has received one from some SC, containing information about an important steel delivery that has not yet arrived. GC designates an expeditor to contact other process participants directly in order to verify the status of the steel delivery. Traditionally this means paying visits to the shop floors or making phone calls. Instead, expediting is now approached with novel technologies, namely software agents representing the process participants and Semantic Web languages for describing the utilised interaction protocols.
From SC's status report, GC is able to extract the steel order ID as well as contact information for the steel supplier (SS) and an external carrier (CR). With the order ID, it asks SS for the delivery ID of that order. Note that GC is initially unaware of the interaction protocols provided by SS and CR. Rather, it is aware of a common interaction protocol ontology according to which the individual protocol descriptions are designed. With that knowledge, it is able to adapt its behaviour to correspond to SS's interaction protocol.
With the delivery ID provided by SS, GC then contacts CR and requests a delivery report. Like SS, CR also offers descriptions of the interaction protocols it uses to communicate, and GC then adapts its behaviour to conform to those. After receiving the delivery report, GC can compare the information in the status report and the delivery report and take action if needed. The comparison and possible resulting actions can be performed either by the software agent itself or, more realistically, by a human being.
Santtu Toivonen, Tapio Pitkäranta VTT
Jung Ung Min, Stanford University, USA