# A Novel Trust-Aware Composite Semantic Web Service Selection Approach

Authors: Denghui Wang; Hao Huang; Changsheng Xie
Journal: Mathematical Problems in Engineering
 (2015)

---

## Abstract

The functional characteristics and the nonfunctional properties of service profile always play very important roles in composite semantic web service selection approach. But the credibility of this information cannot be guaranteed. This paper established a novel trust degree model of this information. Based on this model, the trust degrees can be calculated from execution log and user experience evaluation of candidate web services. Then the paper proposes a new composite semantic web service selection approach based on this credible information. Finally, we present two experiments to prove that the new approach can avoid the influence of exaggerated and unauthentic information effectively and accurately.


---

## Body

## 1. Introduction

With the rapid development of sophisticated application, a single web service is usually too simple to meet the various user requirements. Creating new services through web service composition to provide more complex and on-demand functions becomes essential. Web service composition is introduced to resolve the above problem. However, there exist a number of available web services providing similar or identical functional characteristics, so users need a selection approach that can help them choose the best composite web service.According to user request, the service selection approach should consider two aspects that include features and quality of candidate service. The feature of web service can be described by inputs, outputs, precondition, and effects (IOPE) in semantic web service model. IOPE is called functional property. In many cases, composition techniques and the related tools exploit IOPE predicates that characterize structural and semantic services descriptions to generate the desired compositions [1]. And the QoS represent the quality of web service. QoS is called nonfunctional property. Recently most of researchers use QoS as the main parameters of composite web service selection [2–4]. However, in most of the current web service composition selection methods, it is assumed that the service profile offered by different organization is trusted and authentic. But in fact some organizations of web service are apt to publish unauthentic information for attracting end user. To cope with this problem, it is necessary to avoid exaggerated information by dishonest providers in the selection process. In this paper, we establish a new trust degree model of composite semantic web service. And, based on this model, we propose a novel composite web service selection approach which can calculate the trust degree of QoS and IOPE information from execution log and credible user experience evaluation.This paper is organized as follows: in Section2, we emphatically introduce the related work about composite web service selection. Section 3 introduces the trust degree model for getting reliable QoS value and credible IOPE information. Section 4 explains the approach to calculating trust degree of QoS and IOPE for selecting the best composite web service. Section 5 proposes the experiments that lead to proving that the proposed approach is accurate and effective. Section 6 gives the final conclusion.


## 2. Related Works

The traditional selection and composition of web services rely on the manner of finding the most similar functionalities and the best nonfunctionalities of web service. The QoS is widely employed for describing nonfunctionalities. There are a lot of service selection methods expanded in this regard. Reference [5] proposed an algorithm to combine global QoS constraints with local selection. Reference [6] proposed an approach for web service dynamic composition based on global QoS constraints decomposition. Besides global QoS, [7] proposed a distributed optimal scheme based on local QoS. Reference [8] presented QoS-GRASP, a metaheuristic algorithm for performing QoS-aware web service composition at runtime. QoS-GRASP is a hybrid approach that combines GRASP with Path Relinking. References [9, 10] applied the neurofuzzy decision making approach in the process of selection and choice of the most appropriate web service with respect to quality of service criteria. The method deals with the imprecision of QoS constraints values. And these QoS-based service selection methods always assume that the QoS data coming from service providers and users are effective and trustworthy, which is actually impossible in real environment. So these web service selection methods mentioned above are not perfect. In [11], the authors proposed a novel service composition approach, modeling the trust-based service composition as the multidomain scheduling and assignment problem using the minimum service resources within a certain time constraint. They considered that trust plays a pivotal role in service composition approach. In [12], the researchers presented a trustworthy services selection based on preference selection method that assists users in selecting the right web service, according to their own preference. This method can effectively solve the weaknesses of recommendation systems. In [13], we proposed one method for web service recommendation based on trust-aware QoS. But the method did not consider the functionality property. Thus, this paper based on the above study proposes a novel composite web service selection method according to credible QoS and IOPE information.


## 3. Trust Degree Model

### 3.1. Semantic Web Service Model

Definition 1 (semantic web service).
A semantic web service is defined as a quadruple:(1)
WS
=
SN
,
Des
,
F
,
QoS
,where SN is the identifier of the service; Des is the general information about the service, including service contexts such as text description, ontology definition, version, contractor, and the general information being independent of the specific function; F is the functional attribute of a service; QoS is a set of attribute parameters standing for the quality of service, including some attributes such as cost, response time, successful execution rate, and availability. The last two parameters in the quadruple WS are actually related with service composition.
Moreover, semantic web service’s function attribute can be demonstrated as a quadruple:(2)
F
=
I
,
O
,
P
,
E
,where I is the set of service’s semantic inputs; O is the set of service’s semantic outputs; P is the precondition; E is the effects of the semantic web service. Definitely, a semantic web service can be expressed as follows:(3)
WS
=
SN
,
Des
,
I
,
O
,
P
,
E
,
QoS
.


### 3.2. User Requirement Model

Definition 2 (user request).
A user request of semantic web service can be expressed as a quadruple:(4)
WS
r
=
SN
r
,
Des
r
,
F
r
,
QoS
r
;
F
r
=
I
r
,
O
r
,
P
r
,
E
r
.
The service requester’s information is inDes
r. A service request can be expressed as follows:(5)
WS
r
=
SN
r
,
Des
r
,
I
r
,
O
r
,
P
r
,
E
r
,
QoS
r
.
User request model contains several requirement indexes, and the consumer provides the corresponding constraint condition for every index. But the expression of every index is different, so we need to normalize these indexes. The expression of user requirement indexes can be divided into two categories. One is the value type. And the other one is the interval type. In order to facilitate comparison with the real value, we need to transform the interval type to the value type. At present, there is a variety of deterministic methods. In this paper we use the expanded ordered weighted averaging operator as determining the mathematical formula.
AssumeF
:
R
n
→
R; if F
a
1
,
a
2
,
…
,
a
n
=
∑
ω
j
b
j, wherein W
=
ω
1
,
ω
2
,
…
,
ω
n
T is weighted vector which is associated with F and ω
j
∈
[
0,1
], Σ
ω
j
=
1, and b
j is the jth big value in a group of data (
a
1
,
a
2
,
…
,
a
n
), the F function is called the n-dimensional ordered weighted averaging operator.
Assume thata
=
[
a
L
,
a
U
]
=
{
x
∣
a
L
≤
x
≤
a
U
}; then a is an interval value. The F function has the following formula:(6)
f
k
a
L
,
a
U
=
a
U
+
r
a
L
r
+
1
.
We transform the interval value to the value type through the following formula:(7)
UR
k
a
=
f
k
a
L
,
a
U
=
a
U
,
r
⟶
0
,
a
L
+
a
U
2
,
r
⟶
1
,
a
L
,
r
⟶
∞
,where k is the number of user request indexes. UR
k
(
a
) represents the normality request of the kth user. After normalizing every user requirement index, we can get the user expected value set UR.


### 3.3. Trust Degree Model

Definition 3 (trust degree).
The trust degree of composite semantic service can be expressed as follows:(8)
TD
=
TD
F
,
TD
Q
,where TD
F is the trust degree of functional attributes and TDQ is the trust degree of QoS.
Moreover the genic QoS parameters can be classified into two categories. One is recordable type. The execution value of this QoS type can be recorded in execution log at run time, such as response time and successful execution rate. The other one is unrecordable type. The kind of these QoS parameters cannot be recorded in execution log. It is only evaluated by user experience, such as cost and availability:(9)
TD
Q
=
TD
QR
,
TD
QU
,
TD
QR
=
TD
time
,
TD
rate
,
TD
QU
=
TD
cost
,
TD
available
.


### 3.4. User Experience Evaluation Model

User experience represents the subjective feelings of past users. It can be evaluated by different parameters. According to [14], user experience is evaluated by click rate for getting the web service ranking with PageRank algorithm. In [15], they use usage frequency to evaluate user experience. Either click rate or usage frequency can only reflect overall impression of web service. It is ambiguity. Therefore in the paper we established a new user experience evaluation model according to user requirements. The new model consists of the local user ratings and the global user ratings. The global user ratings present the overall impression of web service. And the local user ratings are good complement to the global user ratings, which evaluate web service from several aspects. However the evaluated index of web service is basically provided by service provider or third parties according to their own professional knowledge. In fact the consumer cannot pay attention to all indicators, or the professional degree of consumer is not enough to give an accurate evaluation. So we use fuzzy logic to represent the user ratings. Fuzzy logic is based on fuzzy sets that represent vague data with the help of the so-called membership functions that represent the degree, referred to as membership, at which a certain datum belongs to a fuzzy data set.Definition 4 (user experience evaluation model).
The fuzzy representation is based on the assumption that the user ratings can be expressed as a number in the range[
0,1
]. That means a user experience evaluation of web service can be presented by assigning values in the range [
0,1
]. Thus user experience evaluation of web service is represented as a fuzzy set UE:(10)
UE
=
UE
g
,
UE
l
,
UE
l
=
x
,
μ
k
x
∣
x
∈
QoS
,where UE
g is the global user ratings evaluation of web service. UE
l is the local user ratings evaluation according to QoS attributes. μ
k
(
x
) represents the grade of membership of x evaluation index from consumer k. The membership function is a function of ratings. We define the membership function for x in a fuzzy set defining WS as follows:(11)
μ
k
x
=
0
,
0
≤
x
≤
α
,
1
1
+
β
/
x
-
α
,
α
<
x
≤
100
.


## 3.1. Semantic Web Service Model

Definition 1 (semantic web service).
A semantic web service is defined as a quadruple:(1)
WS
=
SN
,
Des
,
F
,
QoS
,where SN is the identifier of the service; Des is the general information about the service, including service contexts such as text description, ontology definition, version, contractor, and the general information being independent of the specific function; F is the functional attribute of a service; QoS is a set of attribute parameters standing for the quality of service, including some attributes such as cost, response time, successful execution rate, and availability. The last two parameters in the quadruple WS are actually related with service composition.
Moreover, semantic web service’s function attribute can be demonstrated as a quadruple:(2)
F
=
I
,
O
,
P
,
E
,where I is the set of service’s semantic inputs; O is the set of service’s semantic outputs; P is the precondition; E is the effects of the semantic web service. Definitely, a semantic web service can be expressed as follows:(3)
WS
=
SN
,
Des
,
I
,
O
,
P
,
E
,
QoS
.


## 3.2. User Requirement Model

Definition 2 (user request).
A user request of semantic web service can be expressed as a quadruple:(4)
WS
r
=
SN
r
,
Des
r
,
F
r
,
QoS
r
;
F
r
=
I
r
,
O
r
,
P
r
,
E
r
.
The service requester’s information is inDes
r. A service request can be expressed as follows:(5)
WS
r
=
SN
r
,
Des
r
,
I
r
,
O
r
,
P
r
,
E
r
,
QoS
r
.
User request model contains several requirement indexes, and the consumer provides the corresponding constraint condition for every index. But the expression of every index is different, so we need to normalize these indexes. The expression of user requirement indexes can be divided into two categories. One is the value type. And the other one is the interval type. In order to facilitate comparison with the real value, we need to transform the interval type to the value type. At present, there is a variety of deterministic methods. In this paper we use the expanded ordered weighted averaging operator as determining the mathematical formula.
AssumeF
:
R
n
→
R; if F
a
1
,
a
2
,
…
,
a
n
=
∑
ω
j
b
j, wherein W
=
ω
1
,
ω
2
,
…
,
ω
n
T is weighted vector which is associated with F and ω
j
∈
[
0,1
], Σ
ω
j
=
1, and b
j is the jth big value in a group of data (
a
1
,
a
2
,
…
,
a
n
), the F function is called the n-dimensional ordered weighted averaging operator.
Assume thata
=
[
a
L
,
a
U
]
=
{
x
∣
a
L
≤
x
≤
a
U
}; then a is an interval value. The F function has the following formula:(6)
f
k
a
L
,
a
U
=
a
U
+
r
a
L
r
+
1
.
We transform the interval value to the value type through the following formula:(7)
UR
k
a
=
f
k
a
L
,
a
U
=
a
U
,
r
⟶
0
,
a
L
+
a
U
2
,
r
⟶
1
,
a
L
,
r
⟶
∞
,where k is the number of user request indexes. UR
k
(
a
) represents the normality request of the kth user. After normalizing every user requirement index, we can get the user expected value set UR.


## 3.3. Trust Degree Model

Definition 3 (trust degree).
The trust degree of composite semantic service can be expressed as follows:(8)
TD
=
TD
F
,
TD
Q
,where TD
F is the trust degree of functional attributes and TDQ is the trust degree of QoS.
Moreover the genic QoS parameters can be classified into two categories. One is recordable type. The execution value of this QoS type can be recorded in execution log at run time, such as response time and successful execution rate. The other one is unrecordable type. The kind of these QoS parameters cannot be recorded in execution log. It is only evaluated by user experience, such as cost and availability:(9)
TD
Q
=
TD
QR
,
TD
QU
,
TD
QR
=
TD
time
,
TD
rate
,
TD
QU
=
TD
cost
,
TD
available
.


## 3.4. User Experience Evaluation Model

User experience represents the subjective feelings of past users. It can be evaluated by different parameters. According to [14], user experience is evaluated by click rate for getting the web service ranking with PageRank algorithm. In [15], they use usage frequency to evaluate user experience. Either click rate or usage frequency can only reflect overall impression of web service. It is ambiguity. Therefore in the paper we established a new user experience evaluation model according to user requirements. The new model consists of the local user ratings and the global user ratings. The global user ratings present the overall impression of web service. And the local user ratings are good complement to the global user ratings, which evaluate web service from several aspects. However the evaluated index of web service is basically provided by service provider or third parties according to their own professional knowledge. In fact the consumer cannot pay attention to all indicators, or the professional degree of consumer is not enough to give an accurate evaluation. So we use fuzzy logic to represent the user ratings. Fuzzy logic is based on fuzzy sets that represent vague data with the help of the so-called membership functions that represent the degree, referred to as membership, at which a certain datum belongs to a fuzzy data set.Definition 4 (user experience evaluation model).
The fuzzy representation is based on the assumption that the user ratings can be expressed as a number in the range[
0,1
]. That means a user experience evaluation of web service can be presented by assigning values in the range [
0,1
]. Thus user experience evaluation of web service is represented as a fuzzy set UE:(10)
UE
=
UE
g
,
UE
l
,
UE
l
=
x
,
μ
k
x
∣
x
∈
QoS
,where UE
g is the global user ratings evaluation of web service. UE
l is the local user ratings evaluation according to QoS attributes. μ
k
(
x
) represents the grade of membership of x evaluation index from consumer k. The membership function is a function of ratings. We define the membership function for x in a fuzzy set defining WS as follows:(11)
μ
k
x
=
0
,
0
≤
x
≤
α
,
1
1
+
β
/
x
-
α
,
α
<
x
≤
100
.


## 4. A Novel Composite Semantic Web Service Selection Approach

In this section, a novel composite semantic web service selection approach is proposed which takes the candidates’ trust degree into consideration. Our selection approach mainly consists of the following five parts. In Part 1, we analyze execution log to get the real value of recordable QoS attributes. Compared to QoS value which is provided by service provider, calculate the trust degree of recordable QoS attributes. In Part 2, we compare the QoS constraint of user request with the recordable QoS attribute value to calculate the pass user satisfaction degree and compare pass user satisfaction degree with user experience evaluation for getting the credibility of pass user evaluation. In Part 3, we use credible local user evaluation to calculate the trust degree of the unrecordable QoS attributes. In Part 4, we use credible global user evaluation to calculate the trust degree of functional property. In Part 5, according to user requirement model, we consider the credible similar degree of IOPE and the credible QoS attribute parameters to select the best composite web service.


### 4.1. Analyze Execution Log

Traditionally, web services are individually deployed on proprietary infrastructure owed by the organization which operates and utilizes these services. With the increasing adoptions of “Platform as a service” paradigm, which provides a centralized runtime execution environment, more and more web services are published on centralized runtime execution environments, such as IBM Web Sphere Process Server, Microsoft Azure Services Platform, and Google App Engine. Adoptions of such a mode facilitate the monitoring of the services execution to obtain the execution logs.Once a composite web service is deployed in a runtime execution environment, the composite web service can be executed in many execution instances of service composition. Each execution instance of service composition is uniquely identified with an identifier (id). In each execution instance, events can be triggered. We record the triggered events in the log using the logging facility provided by the execution environment. An execution log contains different types of events. For example, service error events are triggered when service error occurs. Service invocation events indicate the timeline of a web service execution.We use service invocation events and service error events to evaluate the real value of the successful execution rate. QRrate is defined as the recorded successful execution rate attribute that can be calculated as follows:(12)
QR
rate
=
1
-
N
error
N
invocation
,where N
error is the number of the service error events. N
invocation is the total number of the service invocation events.In particular, an ENTRY event is triggered when a service is invoked. An EXIT event occurs when a service completes the computation and returns results. Each event is recorded with the time of triggering, the name of the service which triggers the event, and the id of the execution instance and the underlying application. So we can get the response time from the ENTRY event to the EXIT event:(13)
QR
time
=
1
K
∑
k
=
1
K
T
exit
-
T
entry
,where K represents the number of execution results and QRtime represents the recorded response time attribute. T
exit represents the triggering time of the EXIT event. T
entry is the triggering time of the ENTRY event.For recordable QoS attributes, the distance between execution results with QoS information describes its trust degree. So the greater distance means the worse credibility. We calculate the distance to use the following formula:(14)
TD
QR
i
=
1
-
QR
i
-
Q
i
Q
i
,
QR
i
<
2
Q
i
,
0
,
QR
i
>
2
Q
i
,where i represent the number of recordable QoS dimensions, QR
i represent the value of Q
i in execution log, and if QR
i
>
2
Q
i, that means the distance between execution results with QoS information is so big that the credibility of the service provider is 0.


### 4.2. User Satisfaction Degree

Then we use the gray correlation analysis method to get the user satisfaction degree. The gray correlation analysis method can obtain the relationship of two groups of sequences through calculating their distance [16]. So we can get the following formula:(15)
d
k
i
=
UR
i
-
Q
i
,
US
k
i
=
r
UR
i
,
Q
i
=
ρ
d
max
⁡
d
k
i
+
ρ
d
max
⁡
,
ρ
∈
0,1
,where US
k
i represents the user satisfaction degree of the ith recordable user requirement index. r
UR
i
,
Q
i represents the correlation value between the user expected value and real value of operation. ρ represents the resolution value. d
max
⁡ represents the max value of the distance of the user expected value and real value of operation.Finally, we compare the user evaluation with user satisfaction degree. The distance of two values is closer; the trust degree of the user evaluation is higher. AssumedTD
k represents the trust degree of the kth user evaluation. We can get the following formula:(16)
TD
k
i
=
1
-
US
k
i
-
μ
k
i
μ
k
i
,
TD
k
=
∑
i
=
1
I
TD
k
i
I
,where I is the total number of the recordable QoS attributes.


### 4.3. Trust Degree of Unrecordable QoS Attribute

In this section we will use the user experience to calculate the credibility of unrecordable QoS dimensions. We use the user requirement to evaluate the bygone score of unrecordable QoS dimensions. If this user gives the superior limit, the bygone score should be computed using the following formula:(17)
BS
k
j
=
UR
k
j
-
Q
j
UR
k
j
-
Q
L
+
0.6
,
UR
k
j
>
Q
j
,
0
,
UR
k
j
≤
Q
j
,
1
≤
j
≤
J
.
Q
L represent the minimum value of the QoS dimension in formula (17). If users give the lower limit, the bygone score of unrecordable QoS dimensions should be computed using the following formula:(18)
BS
k
j
=
Q
j
-
UR
k
j
Q
m
-
UR
k
j
+
0.6
,
UR
k
j
<
Q
j
,
0
,
UR
k
j
≥
Q
j
,
1
≤
j
≤
J
.
Q
m represent the maximum value of the QoS dimension in formula (18). J represents the number of unrecordable QoS dimensions, and k represents the number of users. We can calculate the distance of the bygone score and the credibility user comment to get the credibility of the unrecordable QoS dimension as the following formula:(19)
TD
QU
j
=
1
K
∑
k
=
1
K
1
-
TD
k
j
×
μ
k
j
-
BS
k
j
BS
k
j
,
1
≤
j
≤
J
.


### 4.4. Trust Degree of IOPE

IOPE is the functional property of web service. So the trust degree of IOPE is due to the global user evaluation. The following formula helps us to getT
D
F:(20)
TD
F
=
1
K
∑
k
=
1
K
TD
k
×
UE
g
=
1
K
∑
k
=
1
K
∑
j
=
1
J
TD
k
j
J
×
UE
g
,where K is the number of consumers. J is the number of the unrecordable QoS attributes. UE
g represents the global user experience evaluation.


### 4.5. The Novel Web Service Selection Approach

As mentioned above, we compute the trust degree of the recordable QoS attributes and the unrecordable QoS attributes, respectively. Finally we can use formula (21) to get the evaluation result of the composite semantic web service. Among all the candidate services, the service with the highest score of evaluation is selected:(21)
WS
=
WS
F
+
WS
Q
=
W
F
×
TD
F
×
Sim
F
+
∑
i
=
1
I
W
Q
i
×
TD
QR
i
×
Q
i
+
∑
j
=
1
J
W
Q
j
×
TD
QU
j
×
Q
j
.It is supposed thatI recordable QoS dimensions and J unrecordable QoS dimensions are considered, and each candidate service is executed K times. That means we have K pieces of execution results and user experience evaluations. The credibility of recordable QoS dimensions is computed separately and each piece of execution log is used once, so the time cost is O
(
I
×
K
). During computing the credibility of unrecordable QoS dimensions, the time cost is O
(
N
×
M
). M represents the number of web service composition nodes and N represents the number of candidate web services in every node. The complexity of the proposed algorithm which calculates the evaluation of all candidate services is O
(
N
×
M
×
(
I
×
K
+
J
)
).


## 4.1. Analyze Execution Log

Traditionally, web services are individually deployed on proprietary infrastructure owed by the organization which operates and utilizes these services. With the increasing adoptions of “Platform as a service” paradigm, which provides a centralized runtime execution environment, more and more web services are published on centralized runtime execution environments, such as IBM Web Sphere Process Server, Microsoft Azure Services Platform, and Google App Engine. Adoptions of such a mode facilitate the monitoring of the services execution to obtain the execution logs.Once a composite web service is deployed in a runtime execution environment, the composite web service can be executed in many execution instances of service composition. Each execution instance of service composition is uniquely identified with an identifier (id). In each execution instance, events can be triggered. We record the triggered events in the log using the logging facility provided by the execution environment. An execution log contains different types of events. For example, service error events are triggered when service error occurs. Service invocation events indicate the timeline of a web service execution.We use service invocation events and service error events to evaluate the real value of the successful execution rate. QRrate is defined as the recorded successful execution rate attribute that can be calculated as follows:(12)
QR
rate
=
1
-
N
error
N
invocation
,where N
error is the number of the service error events. N
invocation is the total number of the service invocation events.In particular, an ENTRY event is triggered when a service is invoked. An EXIT event occurs when a service completes the computation and returns results. Each event is recorded with the time of triggering, the name of the service which triggers the event, and the id of the execution instance and the underlying application. So we can get the response time from the ENTRY event to the EXIT event:(13)
QR
time
=
1
K
∑
k
=
1
K
T
exit
-
T
entry
,where K represents the number of execution results and QRtime represents the recorded response time attribute. T
exit represents the triggering time of the EXIT event. T
entry is the triggering time of the ENTRY event.For recordable QoS attributes, the distance between execution results with QoS information describes its trust degree. So the greater distance means the worse credibility. We calculate the distance to use the following formula:(14)
TD
QR
i
=
1
-
QR
i
-
Q
i
Q
i
,
QR
i
<
2
Q
i
,
0
,
QR
i
>
2
Q
i
,where i represent the number of recordable QoS dimensions, QR
i represent the value of Q
i in execution log, and if QR
i
>
2
Q
i, that means the distance between execution results with QoS information is so big that the credibility of the service provider is 0.


## 4.2. User Satisfaction Degree

Then we use the gray correlation analysis method to get the user satisfaction degree. The gray correlation analysis method can obtain the relationship of two groups of sequences through calculating their distance [16]. So we can get the following formula:(15)
d
k
i
=
UR
i
-
Q
i
,
US
k
i
=
r
UR
i
,
Q
i
=
ρ
d
max
⁡
d
k
i
+
ρ
d
max
⁡
,
ρ
∈
0,1
,where US
k
i represents the user satisfaction degree of the ith recordable user requirement index. r
UR
i
,
Q
i represents the correlation value between the user expected value and real value of operation. ρ represents the resolution value. d
max
⁡ represents the max value of the distance of the user expected value and real value of operation.Finally, we compare the user evaluation with user satisfaction degree. The distance of two values is closer; the trust degree of the user evaluation is higher. AssumedTD
k represents the trust degree of the kth user evaluation. We can get the following formula:(16)
TD
k
i
=
1
-
US
k
i
-
μ
k
i
μ
k
i
,
TD
k
=
∑
i
=
1
I
TD
k
i
I
,where I is the total number of the recordable QoS attributes.


## 4.3. Trust Degree of Unrecordable QoS Attribute

In this section we will use the user experience to calculate the credibility of unrecordable QoS dimensions. We use the user requirement to evaluate the bygone score of unrecordable QoS dimensions. If this user gives the superior limit, the bygone score should be computed using the following formula:(17)
BS
k
j
=
UR
k
j
-
Q
j
UR
k
j
-
Q
L
+
0.6
,
UR
k
j
>
Q
j
,
0
,
UR
k
j
≤
Q
j
,
1
≤
j
≤
J
.
Q
L represent the minimum value of the QoS dimension in formula (17). If users give the lower limit, the bygone score of unrecordable QoS dimensions should be computed using the following formula:(18)
BS
k
j
=
Q
j
-
UR
k
j
Q
m
-
UR
k
j
+
0.6
,
UR
k
j
<
Q
j
,
0
,
UR
k
j
≥
Q
j
,
1
≤
j
≤
J
.
Q
m represent the maximum value of the QoS dimension in formula (18). J represents the number of unrecordable QoS dimensions, and k represents the number of users. We can calculate the distance of the bygone score and the credibility user comment to get the credibility of the unrecordable QoS dimension as the following formula:(19)
TD
QU
j
=
1
K
∑
k
=
1
K
1
-
TD
k
j
×
μ
k
j
-
BS
k
j
BS
k
j
,
1
≤
j
≤
J
.


## 4.4. Trust Degree of IOPE

IOPE is the functional property of web service. So the trust degree of IOPE is due to the global user evaluation. The following formula helps us to getT
D
F:(20)
TD
F
=
1
K
∑
k
=
1
K
TD
k
×
UE
g
=
1
K
∑
k
=
1
K
∑
j
=
1
J
TD
k
j
J
×
UE
g
,where K is the number of consumers. J is the number of the unrecordable QoS attributes. UE
g represents the global user experience evaluation.


## 4.5. The Novel Web Service Selection Approach

As mentioned above, we compute the trust degree of the recordable QoS attributes and the unrecordable QoS attributes, respectively. Finally we can use formula (21) to get the evaluation result of the composite semantic web service. Among all the candidate services, the service with the highest score of evaluation is selected:(21)
WS
=
WS
F
+
WS
Q
=
W
F
×
TD
F
×
Sim
F
+
∑
i
=
1
I
W
Q
i
×
TD
QR
i
×
Q
i
+
∑
j
=
1
J
W
Q
j
×
TD
QU
j
×
Q
j
.It is supposed thatI recordable QoS dimensions and J unrecordable QoS dimensions are considered, and each candidate service is executed K times. That means we have K pieces of execution results and user experience evaluations. The credibility of recordable QoS dimensions is computed separately and each piece of execution log is used once, so the time cost is O
(
I
×
K
). During computing the credibility of unrecordable QoS dimensions, the time cost is O
(
N
×
M
). M represents the number of web service composition nodes and N represents the number of candidate web services in every node. The complexity of the proposed algorithm which calculates the evaluation of all candidate services is O
(
N
×
M
×
(
I
×
K
+
J
)
).


## 5. Case Study

In this section we design two experiments to evaluate the performance of the proposed composite web service selection method. The experiments have been performed on a PC powered by an AMD Quad Core A4, 1.5 GHZ processor, equipped with 4 GB RAM, and a 500 GB hard disk, and the software environment of the experiments is Win 8 SP1, Java 1.6. Our objective is to prove the availability of our proposed composite service selection method. For this purpose, we adopt the traditional web service selection based on QoS and IOPE evaluation to compare with our approach. It does not consider trust degree of QoS and IOPE information in traditional composite web service selection method. According to QoS value and IOPE similar degree, it uses formula (22) to sort the candidate web service. Consider(22)
WS
=
WS
F
+
WS
Q
=
W
F
×
Sim
F
+
∑
i
=
1
I
W
Q
i
×
Q
i
.The test case is a web service composition that implements a travel planning process. It looks for tourist destination, books flight ticket and hotel reservation in parallel, and finally invokes a car rental operation. Per each of the tasks in the process, there are 10 candidate services, distributed among the servers that fulfill the required functionality and offer different QoS. Firstly we give their requirement indexes which are presented in Table1.Table 1
User requirement indexes.
Indexes
Cost
Response time
Successful execution rate
Availability
Type
Unrecordable
Recordable
Recordable
Unrecordable
Constraint (weight)
8 (0.2)
0.3 s (0.2)
>80 (0.3)
>95 (0.3)Two experiments are designed to illustrate the availability of the novel proposed approach. Every method will execute 50 times. For the first experiment, the traditional algorithm and the proposed algorithm run under four different cases to monitor the influence of two methods as the number of the unauthentic considered services increases. Table2 shows the different proportion of unauthentic candidate web services. The first experiment results are given in Table 3. For the second experiment, the traditional algorithm and the proposed algorithm run with four different groups of exaggerated degree of QoS and IOPE under Case 2. The second experiment results are given in Table 5.Table 2
The percentage of unauthentic candidate web service.
Tasks
Case1
Case2
Case3
Case4
Looking destination
20%
40%
60%
80%
Booking ticket
30%
50%
70%
80%
Hotel reservation
20%
40%
60%
80%
Car rental operation
10%
30%
50%
80%Table 3
The first experiment result.
Case1
Case2
Case3
Case4
The selected probability
Traditional
0.14
0.35
0.52
0.76
Proposed
0.10
0.18
0.24
0.48
The fitness value
Traditional
0.91
0.78
0.65
0.40
Proposed
1
1
1
0.8Table3 shows the selected probability of unauthentic candidate web services and the fitness value. The selected probability of unauthentic candidate web services can be calculated by the following formula:(23)
P
=
N
S
4
×
50
,where N
S is the number of selected unauthentic web services. It can be seen from Table 3 that the selected probability of proposed approach is less than the traditional approach under all the four cases, which illustrates that the proposed approach can filter unauthentic web service effectively. It can also be seen that the selected probability of proposed approach did not rise as the number of the unauthentic considered services increases, which illustrates that the proposed approach is not influenced by the number of unauthentic web services. Furthermore, Table 3 also shows that the fitness values of proposed approach under all the four cases are equal to one, which means that the selected services set of proposed approach can satisfy user’s constraint condition under each case. But the traditional approach cannot fully satisfy the user’s needs under the influence of unauthentic candidate web services.In the next step we assume that the probability of unauthentic web service is fixed under Case2. We increase the exaggerated degree of QoS and IOPE information to monitor the influence of two methods. As mentioned above in QoS model, the QoS values are four-dimensional: cost, response time, successful execution rate, and availability. There services have been registered into service database. They executed several times. The database establishes the execution logs to record historical data and collect the user ratings to evaluate the user experience. Table 4 shows the exaggerated degree.Table 4
The exaggerated degree of QoS and IOPE.
Indexes
Cost
Response time
Successful execution rate
Availability
IOPE
Group 1
0.1
0.2
0.15
0.2
0.2
Group 2
0.3
0.4
0.5
0.5
0.5
Group 3
0.6
0.7
0.7
0.6
0.6
Group 4
0.8
0.8
0.8
0.8
0.8Table 5
The second experiment result.
Group 1
Group 2
Group 3
Group 4
The selected probability
Traditional
0.55
0.68
0.80
0.85
Proposed
0.18
0.14
0.06
0.03
The fitness value
Traditional
0.78
0.64
0.42
0.20
Proposed
1
1
1
1Table5 shows the second experiment results. It can be seen from Table 5 that the exaggerated degree of QoS and IOPE is higher, the selected probability of proposed approach is lower, but the selected probability of traditional approach is higher, which illustrates that the proposed approach cannot influence by the exaggerated degree of QoS and IOPE. It can also be seen that the fitness values of proposed approach under different exaggerated degree are equal to one, which means that the selected services set of proposed approach can satisfy user’s constraint condition under different exaggerated degree. But the fitness value of traditional approach is lower when the exaggerated degrees increase, which illustrates that the traditional approach seems to opt for more unauthentic candidate web services.


## 6. Conclusion

In this paper, the content of the research is to propose a novel trust-aware composite semantic web service selection approach. In order to filter exaggerated QoS and IOPE information, this paper established a trust degree model. According to the execution log and user experience, we calculate the credibility of QoS information and IOPE similar degree. Then we get the best candidate web service based on trustworthy QoS and IOPE. Finally, through two experiments we proved that the new method can effectively avoid the influence of web services which include exaggerated and unauthentic service profile.



---

*Source: 928193-2015-09-16.xml*