Article Preview
Top1. Introduction
The increasingly growing number of services available on the web and the increasingly widespread use of technologies, such as wireless connections, Internet and portable devices, are stimulating the development of context-aware, ubiquitous computing methodologies for service provisioning.
By services we mean electronic services according to the definition provided by O’Sullivan, Edmond, and Ter Hofstede (2002) that describe them as software entities, provided by service providers, that perform actions on behalf of other entities (service requestors).
Electronic services are distributed over the Internet and this gives rise to the necessity of finding these services by enabling a link between the service provider and the service requestor. Service discovery mechanisms provide the functionalities to find these links through a matchmaking process in which a service request (i.e. representation of the requestor need) is compared with service advertisements (i.e. service representations created by service providers) and the most accurate match has to be provided to the service requestor; efficient service discovery mechanisms should retrieve all the relevant items the requestor is interested in (highest value of recall) and only the items the requestor is interested in (highest value of precision).
The existing service discovery mechanisms, present in literature, can be classified into four different types, as proposed by Klein and Bernstein (2004):
- •
Keyword-based: this approach retrieves items that contain the query’s keywords.
- •
Table-based: both items and queries are described as tables with attribute-value pairs that represent service and queries’ properties. This approach retrieves items whose property values match the query values.
- •
Concept-based: it defines a semantic structure of concepts, such as ontology, and allows retrieving items on the basis of types-matching rather than keyword-matching.
- •
Deductive: this approach uses the logic to express the service semantics and retrieves items by deducing which ones achieve the functionality described in the query.
Klein and Bernstein also provide an analysis of the recall and precision of these four service discovery approaches and they resolve that keyword-based methods offer the lowest precision and recall rates, while the deductive approach offers the best precision and recall rates. However, the crucial drawbacks of the deductive approach are both the difficulty to model service requests and service descriptions using formal logic and, the high computational complexity due to the proof process and consequently the considerable slowness of the search process.
Concept-based service discovery methods are the best compromise between a high precision and recall rates and a reasonable computational complexity. The use of a semantic structure of concepts specifically improves the matchmaking as semantic relationships between concepts can be exploited to establish the type of matching between advertisements and requests.
Another aspect that leads to the improvement of service discovery mechanisms is the use of contextual information. Integrating user preferences, position and needs, available resources and environmental features into the process of service discovering allows providing the user with more relevant services that are also better tailored to her/his needs.