by Kyriakos Kritikos and Dimitris Plexousakis
The success of the Web service paradigm has led to a proliferation of available services. While sophisticated semantic (functional) discovery mechanisms have been invented to overcome UDDI's syntactic solution, the number of functionally equivalent Web services returned is still large. The solution to this problem is the description of the non-functional aspect of Web services, in particular quality of service (QoS), which is directly related to their performance. We are currently developing a semantic framework, which includes ontologies and matchmaking algorithms, for the semantic QoS-based description and discovery of Web services.
The aim of this work is to develop a complete framework for the semantic QoS-based description and discovery of Web services. This framework will consist of ontological specifications for the semantic description of QoS of Web services, QoS metrics and specification matchmaking algorithms for the QoS-based Web service discovery and a prototype system implementation for managing these specifications and algorithms.
Associated with each Web service is a set of non-functional attributes/characteristics that may impact its quality of service. Each QoS attribute is measured by one or more QoS metrics, which specify the measurement method, schedule, unit, value range, authority and other measurement details. A QoS specification (offer or demand) of a Web service is materialized as a set of constraints on certain set of QoS metrics. These constraints restrict the metrics to have values in a certain range or in a certain enumeration of values, or to have just one value. Current modelling efforts of QoS specifications in fact differ only in the expressiveness of these constraints. However, when it comes to the modelling of QoS metrics, these efforts fail. The main reason is that their QoS metric model is syntactic, poor (ie not capturing all aspects of QoS metric definition) and not extensible. Based on the above deficiencies, we have conducted extensive research that resulted in the identification of a set of requirements for a complete QoS-based Web service description. By taking into account these requirements, we have developed an upper ontology of QoS-based Web service description called OWL-Q. This is comprised of many sub-ontologies (facets), each of which can be extended independently of the others. This ontology also complements OWL-S, the W3C submission for the functional specification of Web services. The sub-ontology specifying a QoS metric is depicted in Figure 1.
The most prominent QoS-based Web service discovery algorithms fail to produce accurate results because they rely either on syntactic descriptions of QoS metrics or on semantically poor QoS metric descriptions. Hence, in both cases, they cannot infer the equivalence of two QoS metrics based on descriptions provided by different parties (eg Web service provider and requester). Different specifications can occur for two reasons: either because of a different perception of the same concept, or a different type of system reading or measurement (low-level or high-level) for the same metric. Provided that two QoS metric descriptions are expressed in OWL-Q, we have developed a rule-based QoS metric-matching algorithm that infers the equivalence of the two metrics. This algorithm is composed of three main rules, each corresponding to a different case in a comparison of two metrics. The last rule is recursive and reaches the final point of checking the equivalence of two mathematical formulae in order to infer the equivalence of the metrics. Equivalency of mathematical expressions is generally undecidable, but powerful mathematical engines like Mathematica and Maple can successfully deal with many hard cases.
One of the most prominent approaches for QoS-based Web service discovery transforms QoS-based Web service specifications into Constraint Satisfaction Problems (CSPs). Each CSP is checked for consistency (ie whether it admits any solution at all). Matchmaking is then performed according to the concept of conformance (ie if every solution of the offer is a solution to the demand). We have extended this approach in three ways: a) using our QoS metric-matching algorithm, we assign the same CSP variable to equivalent metrics; b) if equivalent metrics use different units, then a unit transformation procedure is carried out on the appropriate parts of the provider's CSP; and c) the types of discovery results were expanded.
We are currently in the development phase of our QoS-based Web service discovery process by using the Pellet reasoner for inferencing and the ECLiPSe Constraint Logic Programming (CLP) system for solving constraints. The Java programming language is used as a bridge between them. The architecture of the system under development is shown in Figure 2. Upon completion, the QoS metric-matching algorithm will be evaluated using synthetic data and simulation methods. In addition, we are currently investigating the relaxation of hard constraints into soft ones for solving the CSPs in cases where the QoS-based Web service matchmaking procedure fails to produce any useful result. Regarding QoS modelling, we plan to devise mid-level ontologies describing domain-independent QoS metrics for helping Web service providers and requesters in expressing QoS-based Web service specifications. Moreover, we intend to extend OWL-Q by modelling other types of non-functional attributes like context (location, time, user preferences, service execution environment etc). Last but not least, we envisage QoS-aware, dynamic Web service composition: this will be done by enforcing global QoS constraints, and for every metric, using metric evaluation functions imposed on any possible workflow (Web service) composition construct to produce global QoS metric values through construct reduction.
Kyriakos Kritikos, ICS-FORTH, Greece
Tel: +30 2810 391637