2006 05 12 composition and evaluation of trustworthy web services
TRANSCRIPT
Thesis Report:Thesis Report:Composition and Composition and
Evaluation ofEvaluation ofTrustworthyTrustworthy
Web ServicesWeb Services
Thesis Report:Thesis Report:Composition and Composition and
Evaluation ofEvaluation ofTrustworthyTrustworthy
Web ServicesWeb Services
James S.F. Hsieh, [email protected] Team, KS Lib,
Graduate Institute of Network Learning Technology, National Central University, Taiwan
Outline Introduction Motivation Our Proposed Architecture
Part 1: Single Service Trustworthy Evaluation– Specifications of Trustworthy Experience– Trustworthy Requirement Matching– Requirement Hypothesis and Confidence
Part 2: Composite Service Trustworthy Evaluation– Composition Confidence– Trustworthy Web Service Evaluation Petri Net– Composition Confidence Evaluation– Evaluation Algorithm
Conclusion References
IntroductionSOA could
– seamlessly integrate existing services to fulfill dynamic requests in distributed platforms and
– promise that service providers will offer the functionality to service requesters without exposing details of provided services.
The web service exists a big problem: trustworthiness problem.
The trustworthiness solution was separated into following:1. Infrastructure
For example: XML Signature, XML Encryption, and P3P projects…(W3C)
2. Understanding– Abstract Behavior Model– Past Experiences Analysis
For example: Rating Service, Reputation Mechanism, and Referral Network…
3. Policy
Motivation (1/2)What is our motivation: (specify, evolve and use trust)
Important problems are
1. how do we utilize past experiences to evaluate a service and
2. how to utilize past experiences to compose a composite web service from a lot of sub-services. (dynamic composite)
We will solve the following problems:
How do we evaluate trust of a signal web service (atomic service or simple service)? The evaluation should be a formal method.
How do we consider structure of a composite web service while we evaluate trust of it? We need a formal model to specify the structure.
Motivation (2/2)Define: I defined trust between requester and provider is that anything of suitable trustworthy requirement which be defined formally and specifically by service requester and be measured objectively and quantitatively by agreed suitable third-party is performed completely by service provider.
1. Expectation-phase2. Contract-phase
Step 1. Propose a requirement
Step 2. Analyze requirement and compose a composition
web service
Step 3. Perform services
Step 4.Composition service
is consumed by requester
Step 5. Feedback
Step 6. Experience is published
Trustworthy Experience
Trustworthy Requirement
Service Instances
Expectation-phase
Contract-phase
Our Proposed Architecture (1/2)
Based on CMU Framework
Evaluate trust of a signal web service.
Evaluate trust of a composite web service.
Our Proposed Architecture (2/2)
Ontologies of Trust General
Aspects
Ontologies of Trust Domain
Aspects
Trustworthy Experience
Trustworthy Requirement
Requester
Service InstancesMapping
Step 4. Composition service is consumed by requester
Step 5. Feedback Step 6. Experience is published
Schedules
Sub-Service Confidences
Composite Confidences
Communication
Objective Task Plans
Reputation or Social Network
UDDI
Result
Service Provider
Composition Flow
Composition Data Flow
Trustworthy Evaluation Data Flow
Service Composition Module
Trustworthy Evaluation Module
Scheduler
Evaluation
Execution
Choice
Planner
InquiryStep 1. Propose a
requirement
Step 3. Perform services
Step 2. Analyze requirement and
compose a composition web service
Trust Management Cycle
Part 1: Single Part 1: Single Service Trustworthy Service Trustworthy
EvaluationEvaluation
Part 1: Single Part 1: Single Service Trustworthy Service Trustworthy
EvaluationEvaluation
Specifications of Trustworthy Experience
Trustworthy Requirement Matching Requirement Hypothesis and
Confidence
Specifications of Trustworthy Experience (1/3)
Description of trustworthy experience of bookstore services
General aspect
Functional 1.Does requester’s goal regarding this service request has been fulfilled?
Non-Functional
Network performance
1.What is the response time of service in this service?2.What is the turnaround time of service in this service?3.What is the packet miss rate of service in this service?
Security 1.Does the service use RSA technology?2.Does the service use DES technology?
Domain aspect
Selling
Bookstore 1.How long will it take to deliver the requested book in this service?2.Does the book have been damaged during delivery in this service?3.What is the list price of the requested book in this service?
Specifications of Trustworthy Experience (2/3)
-Response time-Throughput-Turnaround time-Packet miss rate-......
Network performance -Book delivery time-Book price-Book damage-......
Bookstore
-Service provider-Service requester-Time stamp-.....
Trustworthy Experience
General aspect Domain aspect1*
1 *
-Reach-.....
Functional
-.....
Security
Non-Functional
-Behind schedule-Fare price-Accident-No seat-......
Airways
Selling Domain XBooking
……
-.....
Aspect X
……
An example of the trustworthy aspect ontology
Specifications of Trustworthy Experience (2/3)
Description of an experience instance for bookstore service
AspectProperty Value
Functional Reach True
Network performance
Response timeTurnaround timePacket miss rate
510 ms2100 ms1.5 %
Security RSA technologyDES technology
TrueTrue
Bookstore Book delivery timeDamagePrice
2 Days 3 HoursFalse$ 53.5
tr
Step 1. Propose a requirement
Step 2. Analyze requirement and compose a composition
web service
Step 3. Perform services
Step 4.Composition service
is consumed by requester
Step 5. Feedback
Step 6. Experience is published
Trustworthy Experience
Trustworthy Requirement
Service Instances
Trustworthy Requirement Matching
Tr
SE \1s2s3s4s5s256s 1tr2tr10tr
Trustworthy requirements are kind of rule based policies that I can utilize to determine whether described trustworthy experiences are acceptable and meet service requester’s trustworthy requirement. Trustworthy requirements are similar to sentences appeared in propositional logic.
2% rate, miss e.Packetperformanc Networkr Smalle
DamageBookstore. technology SASecurity.R.ReachFunctionalAccept :S
$50 Price,Bookstore. SmallerDays 2 time,delivery BookBookstore.r Smalle
700ms time, e.Responseperformanc NetworkSmaller.ReachFunctionalAccept :S
2
1
tr KB,ASK
SKB,TELL , SKB,TELL 21
Step 1. Propose a requirement
Step 2. Analyze requirement and compose a composition
web service
Step 3. Perform services
Step 4.Composition service
is consumed by requester
Step 5. Feedback
Step 6. Experience is published
Trustworthy Experience
Trustworthy Requirement
Service Instances0
Requirement Hypothesis and Confidence Requirement Hypothesis - We can utilize the ontology instance to
specify a trust requirement of a requester.
Confidence - We utilize “Large-Sample of Hypothesis for a Binomial Proportion” to evaluate the simple error and true error of
the hypothesis.
Tr
SE \1s2s3s4s5s256s 1tr2tr10tr
otherwise0
Accept tr KB,ASK1trAccpet
S∈s
sRatingAccpetn
=p )(1
ˆ
n
ppSD
ˆ1ˆ
961z95 .%
0 ,ˆmax %95 SDzpConfidence
,
,
Part 2: Composite Part 2: Composite Service Trustworthy Service Trustworthy
EvaluationEvaluation
Part 2: Composite Part 2: Composite Service Trustworthy Service Trustworthy
EvaluationEvaluation Composition Confidence Trustworthy Web Service
Evaluation Petri Net Composition Confidence
Evaluation Evaluation Algorithm
In the OWL-S description language, the schedule of a service has control structures which similar to the following structures . We can compose separate Confidence to a Composition Confidence.
Composition Confidence
Composition Confidence
Tr
SE \1s2s3s4s5s256s 1tr2tr10tr
Sub-service 1 Sub-service 2
confidence1 confidence2
Sequence Pattern
Concurrent Pattern
confidence of the composite service = confidence1 × confidence1
Sub-service 1
Sub-service 2
confidence1
confidence2
Switch and IF-Then-Else Pattern
Sub-service 1
Sub-service 2
confidence1
confidence2
confidence of the composite service =min{ confidence1 , confidence1 }
Trustworthy Web ServiceEvaluation Petri Net (1/3)We proposed the Trustworthy Web Service Evaluation Petri Net to specify structure of a OWL-S in following.
is a finite set of places, each place represents a control-structure.
is a finite set of transitions, each transition represents a sub-service.
is a finite set of transitions, each transition represents a schedule-control.
is a set of arcs, each arc represent the control flow between sub-service.
is a set of all sub-services.
is a mapping function, it maps the transitions of the Petri nets to the sub-services of a composite web service.
is a mapping function, it maps the sub-services to these confidences, and we can use the Requirement Hypothesis to compute the of sub-services
Trustworthy Web ServiceEvaluation Petri Net (2/3)
Sequence
Split
Start(Split)
Split-Join
Start(Split-Join) Finish(Split-Join)
IF-Then-Else
Repeat-Until
Start(Repeat-Until) Finish(Repeat-Until)
Iterate(Repeat-Until)
A control flow of a general composite service can be organized by the following control patterns.
Trustworthy Web ServiceEvaluation Petri Net (3/3)<process:CompositeProcess rdf:ID="CompositionService">
<process:composedOf>
<process:If-Then-Else>
<process:ifCondition>…</process:ifCondition>
<process:then>…
<process:AtomicProcess rdf:about="#Ser1"/>
</process:then>
<process:else>…
<process:SplitJoin>…
<process:AtomicProcess rdf:about="#Ser2"/>
<process:Repeat-Until>
<process:untilCondition>…</process:untilCondition>
<process:untilProcess>…
<process:AtomicProcess rdf:about="# Ser3"/>
</process:untilProcess>
</process:Repeat-Until>
</process:SplitJoin>
</process:else>
</process:If-Then-Else>
</process:composedOf>
</process:CompositeProcess>
For Example: OWL-S
[1,0,0,0,0,0,0,0]
[0,1,0,1,0,0,0,0]
[0,0,1,1,0,0,0,0]
1t̂
4t
[0,0,1,0,1,0,0,0]5t̂
[0,0,1,0,0,1,0,0]7t
[0,0,1,0,0,0,1,0]
8t̂
[0,0,0,0,0,0,0,1]
2t̂
6t̂
[0,1,0,0,1,0,0,0]5t̂
[0,1,0,0,0,1,0,0]
7t4t
4t
6t̂
3t
Minitial
Mfinal
M1
M2
M3
M4
M5
M6
M7Each edge has a Confidence value ina Coverability Graph.
The Coverability Graph is a special case of the Markov Process.
Composition ConfidenceEvaluation (1/2) As we evaluate the Composite Confidence of a TWSEPN we must
find out the minimum confidence product of the firing sequences between the Minitial and Mfinal the in the Coverability Graph.
Case 1: If coverability graph is a directed acyclic graph,
we propose a algorithm which is based on the AOE and the BFS to calculate the Composite Confidence.
Case 2: Otherwise,we find the Strongly Connected Components out, and we compress that into two vertexes and one edge so the directed graph can be converted to a DAG (Case 1).
Composition ConfidenceEvaluation (2/2)For Example: The following is a directed graph which exists cycle.
[1,0,0,0,0,0,0,0]
[0,1,0,1,0,0,0,0]
[0,0,1,1,0,0,0,0]
1t̂
4t
[0,0,1,0,1,0,0,0]
5t̂
[0,0,1,0,0,1,0,0]
7t
[0,0,1,0,0,0,1,0]
8t̂
[0,0,0,0,0,0,0,1]
2t̂
6t̂
[0,1,0,0,1,0,0,0]5t̂
[0,1,0,0,0,1,0,0]
7t4t
4t
6t̂
3t
Minitial
Mfinal
M1
M2
M3
M4
M5
M6
M7
Compress the cycle into case 1.Case 2
Case 1
SCC
Evaluation Algorithm
Case 1
[Minitial, M1, M2, M34, M34’, M5, M67, M67’, Mfinal ]
Step 1 [1, 1, 1, 1, 1, 1, 1, 1, a]1Step 2 [1, 1, 1, 1, 1, 1, 1, 1, a]
2
3Step 3 [1, 1, b, 1, 1, 1, 1, 1, a]
4Step 4 [1, 1, b, b, 1, 1, 1, 1, a]
5Step 5 [1, 1, b, b, 1, 1, cδ, 1, a]
6Step 6 [1, 1, b, b, b×cδ, 1, cδ, 1, a]
7Step 7 [1, 1, b, b, b×cδ, 1, b×cδ, 1, a]
8
Step 8 [1, 1, b, b, b×cδ, 1, b×cδ, 1, a]
9
Step 9 [1, 1, b, b, b×cδ, 1, b×cδ, 1,
min{a, b×cδ}]
Composition Confidence = min{a, b × cδ}
Conclusion
Trust is one of the most important issues of SOA. The composite web service composes individual sub-services to reach requester‘s objective. Our proposition bases on the understanding which is nature of trust, to analyze the past experience.
– The Inquiry module use statistics to evaluate the Confidence of the individual sub-service according to the trust requirement.
– The Evaluate module use TWSEPN to model the schedule of the Composite Web Service, and it analyzes Coverability Graph which is deduced from TWSEPN to evaluate the Composite Confidence.
– In the last, the Choice module import policies to decide the best plan and the best schedule of the composite web service and perform that.
The EndThe EndThanksThanks
The EndThe EndThanksThanks
James S.F. Hsieh, [email protected] Team, KS Lib,
Graduate Institute of Network Learning Technology, National Central University, Taiwan