In order for service users to get the best service that meets their requirements, they prefer to personalize their non-functional attributes, such as reliability and price. However, the personalization makes it challenging because service providers have to deal with conflicting non-functional attributes when selecting services for users. In addition, users may sometimes want to explicitly specify their trade-offs among non-functional attributes to make their preferences known to service providers. Typically, users\u27 service search requests with conflicting non-functional attributes may result in a ranked list of services that partially meet their needs. When this happens, it is natural for users to submit other similar requests, with varying preferences on non-functional attributes, in an attempt to find services that fully meet their needs. This situation produces a challenge for the users to choose an optimal service based on their preferences, from the multiple ranked lists that partially satisfy their request.
Existing memory-based collaborative filtering (CF) service recommendation methods that employ this recommendation technique usually depend on non-functional attribute values obtained at service invocation to compute the similarity between users or items, and also to predict missing non-functional attributes. However, this approach is not sufficient because the non-functional attribute values of invoked services may not necessarily satisfy their personalized preferences.
The main contributions of this work are threefold. First, a novel service selection method, which is based on fuzzy logic, that considers users\u27 personalized preferences and their trade-offs on non-functional attributes during service selection is presented. Second, a method that aggregates multiple ranked lists of services into a single aggregated ranked list, where top ranked services are selected for the user is also presented. Two algorithms were proposed: 1) Rank Aggregation for Complete Lists (RACoL), that aggregates complete ranked lists and 2) Rank Aggregation for Incomplete Lists (RAIL) to aggregate incomplete ranked lists. Finally, a CF-based service recommendation method that considers users\u27 personalized preference on non-functional attributes if proposed. Examples using real-world services are presented to evaluate the proposed methods and experiments are carried out to validate their performance --Abstract, page iii