SlideShare a Scribd company logo
Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL
George Baryannis and Dimitris Plexousakis
Computer Science Department, University of Crete

Institute of Computer Science, Foundation for
Research & Technology - Hellas

SWESE 2013

December 2nd 2013, Berlin, Germany
Outline
Introduction
• Service Specifications in the Semantic Web
• Web Service Specification Language
• Motivating Scenario

Composition and Verification of WSSL services
• WSSL for Composition
• Planning with WSSL
• Verification capabilities

Experimental Evaluation
• Implementation with FLUX
• Evaluation

Conclusions & Future Work
2
Service Specifications in the Semantic Web (1)
• Service behavior can be formally modeled using
semantic specifications
– in the form of Inputs, Outputs, Preconditions and
Effects (IOPEs)
– using concepts defined in ontologies

• Such specifications drive the complete service
lifecycle
– Automated and effective composition based on
accurately defined service behavior
– Verification of (composite) service properties against
such specifications
Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

3
Service Specifications in the Semantic Web (2)
• Specifications including pre/postconditions are
prone to three well-known problems in AI
literature
1. Frame Problem: how to effectively express what
doesn’t change, apart from what’s changed,
based on a specification
– e.g., how to answer definitively whether a money
withdrawal service doesn’t affect other accounts

2. Ramification Problem: how to represent knockon and indirect effects (ramifications)
– e.g., invalidate a credit card after the latest
transaction causes a daily limit to be reached
Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

4
Service Specifications in the Semantic Web (3)
3. Qualification Problem: how to deal with
qualifications that are outside our knowledge
and result in inconsistent behavior
– e.g., all preconditions hold for a money withdrawal
service but no effects occur after executing it

• We addressed all three problems by defining the
Web Service Specification Language (WSSL), a
formal semantic language based on the fluent
calculus
Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

5
WSSL Overview (1)

Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

6
WSSL Overview (2)

Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

7
WSSL Overview (3)

Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

8
WSSL Placement
USDL

Higherlevel

SoaML
WSSL
OWL-S

WSMO

SAWSDL

Semantics/
Behavior

WSDL

Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

Ground
George Baryannis and Dimitris Plexousakis

9
Motivating Scenario (1)
• Service-based process of assisting vehicle drivers
– Users contact road assistance via call or SMS
– Driver’s location and vehicle status are retrieved and a search
for the most suitable mechanic is conducted
– After resolving the issue a payment process follows and a
report is sent to the driver by post or e-mail

• Given a set of service specifications, we want to
automatically create a composite process that realizes the
scenario
– Taking into account ramifications of services
– Determining execution results even under unforeseen
circumstances
– Verify the composability and correctness of a candidate
composite process
Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

10
Motivating Scenario (2)

Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

11
Outline
Introduction
• Service Specifications in the Semantic Web
• Web Service Specification Language
• Motivating Scenario

Composition and Verification of WSSL services
• WSSL for Composition
• Planning with WSSL
• Verification capabilities

Experimental Evaluation
• Implementation with FLUX
• Evaluation

Conclusions & Future Work
12
WSSL for Composition (1)

Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

13
Planning with WSSL (1)

Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

14
Planning with WSSL (2)
• Introduce heuristics to
– produce more than sequential-only plans
– address issues of termination and computation
complexity

• Heuristic encoding of a WSSL planning problem:
a FLUX program describing how to reach the goal
state from the initial state
• As the heuristics grow more and more restrictive,
the complexity of the planner decreases (and
termination probability increases)
Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

15
Planning with WSSL (3)
• The most restrictive example encoding for the motivating scenario:
assist_plan(Z,[A|P],Z_PR) :- A1=receivesms(_,_),
A2=receivecall(_,_), A=xor(A1,A2), poss_xor(A1,A2,Z),
state_update_xor(Z,A1,A2, Z_1), assist_plan1(Z_1,P,Z_PR).
assist_plan1(Z,[A|P],Z_PR) :- A1=retrievelocation(_,_,_),
A2=retrievediagnostics(_,_,_), A=and(A1, A2), poss_and(A1,A2,Z),
state_update_and(Z,A1,A2,Z_1),assist_plan2(Z_1,P,Z_PR).
assist_plan2(Z,[A|P],Z_PR) :- A=findmech(_,_,_), poss(A,Z),
state_update(Z,A,Z_1), assist_plan3(Z_1,P,Z_PR).
assist_plan3(Z,[A|P],Z_PR) :- A=receivepay(_, _), poss(A,Z),
state_update(Z,A,Z_1), assist_plan4(Z_1,P,Z_PR).
assist_plan4(Z,A,Z_PR) :- F=req_deliv(REPORT),
A1=ereport(_,_),A2=mreport(_,_), A=if(F,A1,A2),
poss_if(F,A1,A2,Z), state_update_if(Z,F,A1,A2,Z_PR).

• Any answer to the FLUX query
assist_plan([callcenterup, gpsactive(user1),
systemactive(vehicle1), req_deliv(report1)], P, Z_PR).

yields a plan that realizes the goals of the scenario
Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

16
Verification Capabilities
• Focus mainly on answering questions about the
behavior of produced compositions
– Liveness properties: e.g., to prove that the produced plan
realizes the goals, we prove that either
holds(emailed(report,z) or
holds(delivered(report, z) in the final state z.
– Safety properties: e.g., make sure that payment is
performed for the correct payment form by proving
holds(hasinput(payform, z_in),
holds(paycompleted(payform, z)
– Explanations for unexpected behavior, thanks to WSSL’s
accident modeling, e.g., no report delivery after executing
the composition plan means accident failure(deliv)
has occurred
Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

17
Outline
Introduction
• Service Specifications in the Semantic Web
• Web Service Specification Language
• Motivating Scenario

Composition and Verification of WSSL services
• WSSL for Composition
• Planning with WSSL
• Verification capabilities

Experimental Evaluation
• Implementation with FLUX
• Evaluation

Conclusions & Future Work
18
Implementation with FLUX
• Composition (and verification) goals and
candidate service specifications expressed in
WSSL are translated into FLUX
– JAVA used for the translation mechanism
– the ECLiPSe CLP system to execute FLUX queries

Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

19
Evaluation (1)
• To investigate scalability of the composition
process we varied planning problem complexity
– by increasing service repository size (at the same time
increasing the difficulty of achieving the goal)
– by allowing for more elaborate plans

• Experiments relied on synthetically generated
specifications containing an IOPE quad (plus a
causal rule for the final experiment)
• Composition plans examined contained
sequential, parallel and alternating combination
of sequential and parallel constructs
Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

20
Evaluation (2)

• Runtime stays at reasonable levels for up to 500 services and peaks
to 4sec for 1000 services and sequence/parallel combinations
• The inclusion of ramifications (a 50% increase in the size of
specifications) leads to a significant increase in runtime)
– In real-world problems only some postconditions are expected to be
linked to a ramification

21
Outline
Introduction
• Service Specifications in the Semantic Web
• Web Service Specification Language
• Motivating Scenario

Composition and Verification of WSSL services
• WSSL for Composition
• Planning with WSSL
• Verification capabilities

Experimental Evaluation
• Implementation with FLUX
• Evaluation

Conclusions & Future Work
22
Conclusions
• We proposed a service composition and verification
framework using WSSL, a novel specification language
for Web services based on the fluent calculus
– satisfying significant requirements such as automation,
dynamicity, and non-determinism
– supporting rich, semantic behavioral descriptions of
services and compositions
– exploiting WSSL’s solutions to the frame, ramification and
qualification problems

• The framework is an effective demonstration of
– the benefits of semantic specifications in the context of
service science
– the way to exploit such specifications for the purposes of
service composition and verification

Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

23
Future Work

Extending WSSL
to support
quality aspects so
as to achieve
QoS-aware
service
composition and
verification

Future

Next

Currently

Improve efficiency
by investigating
complexity for
different
heuristics, limiting
search space
before planning,
exploring graphbased rule
optimization

Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

Support knowledge
states and
comprehensive
modeling of
partially observable
behavior,
asynchronous
service execution,
and derivation of
executable
business processes

George Baryannis and Dimitris Plexousakis

24
Questions

http://www.csd.uoc.gr/~gmparg/research.html
Fluent Calculus-based Semantic Web Service
Composition and Verification using WSSL

George Baryannis and Dimitris Plexousakis

25

More Related Content

Similar to Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL

Towards Realizing Dynamic QoS-aware Web Service Composition
Towards Realizing  Dynamic QoS-aware Web Service CompositionTowards Realizing  Dynamic QoS-aware Web Service Composition
Towards Realizing Dynamic QoS-aware Web Service Composition
George Baryannis
 
Continuous Integration and Continuous Delivery to Facilitate Web Service Testing
Continuous Integration and Continuous Delivery to Facilitate Web Service TestingContinuous Integration and Continuous Delivery to Facilitate Web Service Testing
Continuous Integration and Continuous Delivery to Facilitate Web Service Testing
Cognizant
 
Introduction to WorksLink
Introduction to WorksLinkIntroduction to WorksLink
Introduction to WorksLinkAndrew McGrath
 
8+ years of experience in Java/J2EE technologies
8+ years of experience in Java/J2EE technologies8+ years of experience in Java/J2EE technologies
8+ years of experience in Java/J2EE technologies
sukanyanarra
 
JeffWalkerResume2016
JeffWalkerResume2016JeffWalkerResume2016
JeffWalkerResume2016Jeff Walker
 
A Novel Specification and Composition Language for Services
A Novel Specification and Composition Language for ServicesA Novel Specification and Composition Language for Services
A Novel Specification and Composition Language for Services
George Baryannis
 
Web Services Foundation Technologies
Web Services Foundation TechnologiesWeb Services Foundation Technologies
Web Services Foundation Technologies
Pankaj Saharan
 
David Behre Resume
David Behre ResumeDavid Behre Resume
David Behre ResumeDave Behre
 
Majid_Jalili_SRC_2014
Majid_Jalili_SRC_2014Majid_Jalili_SRC_2014
Majid_Jalili_SRC_2014Majid Jalili
 
Yang Kong's Resume for QA
Yang Kong's Resume for QAYang Kong's Resume for QA
Yang Kong's Resume for QAYang Kong
 
Enterprise Software Architecture
Enterprise Software ArchitectureEnterprise Software Architecture
Enterprise Software Architecturerahmed_sct
 
Impact 2014 Best practices for_cics_soa_co
Impact 2014 Best practices for_cics_soa_coImpact 2014 Best practices for_cics_soa_co
Impact 2014 Best practices for_cics_soa_co
nick_garrod
 
170215 msa intro
170215 msa intro170215 msa intro
170215 msa intro
Sonic leigh
 
Bharath Kesana Selinium Automation Tester
Bharath Kesana Selinium Automation TesterBharath Kesana Selinium Automation Tester
Bharath Kesana Selinium Automation TesterBharath Kesana
 

Similar to Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL (20)

Towards Realizing Dynamic QoS-aware Web Service Composition
Towards Realizing  Dynamic QoS-aware Web Service CompositionTowards Realizing  Dynamic QoS-aware Web Service Composition
Towards Realizing Dynamic QoS-aware Web Service Composition
 
Continuous Integration and Continuous Delivery to Facilitate Web Service Testing
Continuous Integration and Continuous Delivery to Facilitate Web Service TestingContinuous Integration and Continuous Delivery to Facilitate Web Service Testing
Continuous Integration and Continuous Delivery to Facilitate Web Service Testing
 
Introduction to WorksLink
Introduction to WorksLinkIntroduction to WorksLink
Introduction to WorksLink
 
8+ years of experience in Java/J2EE technologies
8+ years of experience in Java/J2EE technologies8+ years of experience in Java/J2EE technologies
8+ years of experience in Java/J2EE technologies
 
JeffWalkerResume2016
JeffWalkerResume2016JeffWalkerResume2016
JeffWalkerResume2016
 
A Novel Specification and Composition Language for Services
A Novel Specification and Composition Language for ServicesA Novel Specification and Composition Language for Services
A Novel Specification and Composition Language for Services
 
CV_PraveenKumar
CV_PraveenKumarCV_PraveenKumar
CV_PraveenKumar
 
Web Services Foundation Technologies
Web Services Foundation TechnologiesWeb Services Foundation Technologies
Web Services Foundation Technologies
 
David Behre Resume
David Behre ResumeDavid Behre Resume
David Behre Resume
 
Majid_Jalili_SRC_2014
Majid_Jalili_SRC_2014Majid_Jalili_SRC_2014
Majid_Jalili_SRC_2014
 
Shivanad
ShivanadShivanad
Shivanad
 
Yang Kong's Resume for QA
Yang Kong's Resume for QAYang Kong's Resume for QA
Yang Kong's Resume for QA
 
CV RCD- Eng
CV RCD- EngCV RCD- Eng
CV RCD- Eng
 
Tralukya Hazarika
Tralukya HazarikaTralukya Hazarika
Tralukya Hazarika
 
Tralukya Hazarika
Tralukya HazarikaTralukya Hazarika
Tralukya Hazarika
 
Enterprise Software Architecture
Enterprise Software ArchitectureEnterprise Software Architecture
Enterprise Software Architecture
 
Impact 2014 Best practices for_cics_soa_co
Impact 2014 Best practices for_cics_soa_coImpact 2014 Best practices for_cics_soa_co
Impact 2014 Best practices for_cics_soa_co
 
Harish Srivastava -Resume
Harish Srivastava -ResumeHarish Srivastava -Resume
Harish Srivastava -Resume
 
170215 msa intro
170215 msa intro170215 msa intro
170215 msa intro
 
Bharath Kesana Selinium Automation Tester
Bharath Kesana Selinium Automation TesterBharath Kesana Selinium Automation Tester
Bharath Kesana Selinium Automation Tester
 

Recently uploaded

Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
OnBoard
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
DianaGray10
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
Frank van Harmelen
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
RTTS
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
Cheryl Hung
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
Product School
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
g2nightmarescribd
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
Alison B. Lowndes
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
Product School
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Product School
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
Safe Software
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
DianaGray10
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
Sri Ambati
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Product School
 

Recently uploaded (20)

Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
Leading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdfLeading Change strategies and insights for effective change management pdf 1.pdf
Leading Change strategies and insights for effective change management pdf 1.pdf
 
Connector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a buttonConnector Corner: Automate dynamic content and events by pushing a button
Connector Corner: Automate dynamic content and events by pushing a button
 
Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*Neuro-symbolic is not enough, we need neuro-*semantic*
Neuro-symbolic is not enough, we need neuro-*semantic*
 
JMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and GrafanaJMeter webinar - integration with InfluxDB and Grafana
JMeter webinar - integration with InfluxDB and Grafana
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
Key Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdfKey Trends Shaping the Future of Infrastructure.pdf
Key Trends Shaping the Future of Infrastructure.pdf
 
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
From Siloed Products to Connected Ecosystem: Building a Sustainable and Scala...
 
Generating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using SmithyGenerating a custom Ruby SDK for your web service or Rails API using Smithy
Generating a custom Ruby SDK for your web service or Rails API using Smithy
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........Bits & Pixels using AI for Good.........
Bits & Pixels using AI for Good.........
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
From Daily Decisions to Bottom Line: Connecting Product Work to Revenue by VP...
 
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
Unsubscribed: Combat Subscription Fatigue With a Membership Mentality by Head...
 
Essentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with ParametersEssentials of Automations: Optimizing FME Workflows with Parameters
Essentials of Automations: Optimizing FME Workflows with Parameters
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
Assuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyesAssuring Contact Center Experiences for Your Customers With ThousandEyes
Assuring Contact Center Experiences for Your Customers With ThousandEyes
 
UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3UiPath Test Automation using UiPath Test Suite series, part 3
UiPath Test Automation using UiPath Test Suite series, part 3
 
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
GenAISummit 2024 May 28 Sri Ambati Keynote: AGI Belongs to The Community in O...
 
Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...Designing Great Products: The Power of Design and Leadership by Chief Designe...
Designing Great Products: The Power of Design and Leadership by Chief Designe...
 

Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL

  • 1. Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis Computer Science Department, University of Crete Institute of Computer Science, Foundation for Research & Technology - Hellas SWESE 2013 December 2nd 2013, Berlin, Germany
  • 2. Outline Introduction • Service Specifications in the Semantic Web • Web Service Specification Language • Motivating Scenario Composition and Verification of WSSL services • WSSL for Composition • Planning with WSSL • Verification capabilities Experimental Evaluation • Implementation with FLUX • Evaluation Conclusions & Future Work 2
  • 3. Service Specifications in the Semantic Web (1) • Service behavior can be formally modeled using semantic specifications – in the form of Inputs, Outputs, Preconditions and Effects (IOPEs) – using concepts defined in ontologies • Such specifications drive the complete service lifecycle – Automated and effective composition based on accurately defined service behavior – Verification of (composite) service properties against such specifications Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 3
  • 4. Service Specifications in the Semantic Web (2) • Specifications including pre/postconditions are prone to three well-known problems in AI literature 1. Frame Problem: how to effectively express what doesn’t change, apart from what’s changed, based on a specification – e.g., how to answer definitively whether a money withdrawal service doesn’t affect other accounts 2. Ramification Problem: how to represent knockon and indirect effects (ramifications) – e.g., invalidate a credit card after the latest transaction causes a daily limit to be reached Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 4
  • 5. Service Specifications in the Semantic Web (3) 3. Qualification Problem: how to deal with qualifications that are outside our knowledge and result in inconsistent behavior – e.g., all preconditions hold for a money withdrawal service but no effects occur after executing it • We addressed all three problems by defining the Web Service Specification Language (WSSL), a formal semantic language based on the fluent calculus Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 5
  • 6. WSSL Overview (1) Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 6
  • 7. WSSL Overview (2) Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 7
  • 8. WSSL Overview (3) Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 8
  • 9. WSSL Placement USDL Higherlevel SoaML WSSL OWL-S WSMO SAWSDL Semantics/ Behavior WSDL Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL Ground George Baryannis and Dimitris Plexousakis 9
  • 10. Motivating Scenario (1) • Service-based process of assisting vehicle drivers – Users contact road assistance via call or SMS – Driver’s location and vehicle status are retrieved and a search for the most suitable mechanic is conducted – After resolving the issue a payment process follows and a report is sent to the driver by post or e-mail • Given a set of service specifications, we want to automatically create a composite process that realizes the scenario – Taking into account ramifications of services – Determining execution results even under unforeseen circumstances – Verify the composability and correctness of a candidate composite process Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 10
  • 11. Motivating Scenario (2) Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 11
  • 12. Outline Introduction • Service Specifications in the Semantic Web • Web Service Specification Language • Motivating Scenario Composition and Verification of WSSL services • WSSL for Composition • Planning with WSSL • Verification capabilities Experimental Evaluation • Implementation with FLUX • Evaluation Conclusions & Future Work 12
  • 13. WSSL for Composition (1) Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 13
  • 14. Planning with WSSL (1) Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 14
  • 15. Planning with WSSL (2) • Introduce heuristics to – produce more than sequential-only plans – address issues of termination and computation complexity • Heuristic encoding of a WSSL planning problem: a FLUX program describing how to reach the goal state from the initial state • As the heuristics grow more and more restrictive, the complexity of the planner decreases (and termination probability increases) Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 15
  • 16. Planning with WSSL (3) • The most restrictive example encoding for the motivating scenario: assist_plan(Z,[A|P],Z_PR) :- A1=receivesms(_,_), A2=receivecall(_,_), A=xor(A1,A2), poss_xor(A1,A2,Z), state_update_xor(Z,A1,A2, Z_1), assist_plan1(Z_1,P,Z_PR). assist_plan1(Z,[A|P],Z_PR) :- A1=retrievelocation(_,_,_), A2=retrievediagnostics(_,_,_), A=and(A1, A2), poss_and(A1,A2,Z), state_update_and(Z,A1,A2,Z_1),assist_plan2(Z_1,P,Z_PR). assist_plan2(Z,[A|P],Z_PR) :- A=findmech(_,_,_), poss(A,Z), state_update(Z,A,Z_1), assist_plan3(Z_1,P,Z_PR). assist_plan3(Z,[A|P],Z_PR) :- A=receivepay(_, _), poss(A,Z), state_update(Z,A,Z_1), assist_plan4(Z_1,P,Z_PR). assist_plan4(Z,A,Z_PR) :- F=req_deliv(REPORT), A1=ereport(_,_),A2=mreport(_,_), A=if(F,A1,A2), poss_if(F,A1,A2,Z), state_update_if(Z,F,A1,A2,Z_PR). • Any answer to the FLUX query assist_plan([callcenterup, gpsactive(user1), systemactive(vehicle1), req_deliv(report1)], P, Z_PR). yields a plan that realizes the goals of the scenario Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 16
  • 17. Verification Capabilities • Focus mainly on answering questions about the behavior of produced compositions – Liveness properties: e.g., to prove that the produced plan realizes the goals, we prove that either holds(emailed(report,z) or holds(delivered(report, z) in the final state z. – Safety properties: e.g., make sure that payment is performed for the correct payment form by proving holds(hasinput(payform, z_in), holds(paycompleted(payform, z) – Explanations for unexpected behavior, thanks to WSSL’s accident modeling, e.g., no report delivery after executing the composition plan means accident failure(deliv) has occurred Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 17
  • 18. Outline Introduction • Service Specifications in the Semantic Web • Web Service Specification Language • Motivating Scenario Composition and Verification of WSSL services • WSSL for Composition • Planning with WSSL • Verification capabilities Experimental Evaluation • Implementation with FLUX • Evaluation Conclusions & Future Work 18
  • 19. Implementation with FLUX • Composition (and verification) goals and candidate service specifications expressed in WSSL are translated into FLUX – JAVA used for the translation mechanism – the ECLiPSe CLP system to execute FLUX queries Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 19
  • 20. Evaluation (1) • To investigate scalability of the composition process we varied planning problem complexity – by increasing service repository size (at the same time increasing the difficulty of achieving the goal) – by allowing for more elaborate plans • Experiments relied on synthetically generated specifications containing an IOPE quad (plus a causal rule for the final experiment) • Composition plans examined contained sequential, parallel and alternating combination of sequential and parallel constructs Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 20
  • 21. Evaluation (2) • Runtime stays at reasonable levels for up to 500 services and peaks to 4sec for 1000 services and sequence/parallel combinations • The inclusion of ramifications (a 50% increase in the size of specifications) leads to a significant increase in runtime) – In real-world problems only some postconditions are expected to be linked to a ramification 21
  • 22. Outline Introduction • Service Specifications in the Semantic Web • Web Service Specification Language • Motivating Scenario Composition and Verification of WSSL services • WSSL for Composition • Planning with WSSL • Verification capabilities Experimental Evaluation • Implementation with FLUX • Evaluation Conclusions & Future Work 22
  • 23. Conclusions • We proposed a service composition and verification framework using WSSL, a novel specification language for Web services based on the fluent calculus – satisfying significant requirements such as automation, dynamicity, and non-determinism – supporting rich, semantic behavioral descriptions of services and compositions – exploiting WSSL’s solutions to the frame, ramification and qualification problems • The framework is an effective demonstration of – the benefits of semantic specifications in the context of service science – the way to exploit such specifications for the purposes of service composition and verification Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 23
  • 24. Future Work Extending WSSL to support quality aspects so as to achieve QoS-aware service composition and verification Future Next Currently Improve efficiency by investigating complexity for different heuristics, limiting search space before planning, exploring graphbased rule optimization Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL Support knowledge states and comprehensive modeling of partially observable behavior, asynchronous service execution, and derivation of executable business processes George Baryannis and Dimitris Plexousakis 24
  • 25. Questions http://www.csd.uoc.gr/~gmparg/research.html Fluent Calculus-based Semantic Web Service Composition and Verification using WSSL George Baryannis and Dimitris Plexousakis 25

Editor's Notes

  1. i.e. provided that A is possible at s, executing A results at a successor state which results from the previous one if we add fluents that have been made true (𝜃+) and we subtract fluents that have been made false (𝜃−)i.e. provided that A is possible at s, executing A results at a successor state which results from the previous one if we add fluents that have been made true (𝜃^+) and we subtract fluents that have been made false (𝜃^−)
  2. Under conditions Γ, in situation s, the occurred positive and negative effects p and n possibly cause an automatic update from state to state z’, with positive and negative effects p’ and n’predicate 𝐴𝑐𝑐𝐶, 𝑠 means that accident C occurs in situation s.Under conditions Γ, in situation s, the occurred positive and negative effects p and n possibly cause an automatic update from state to state z’, with positive and negative effects p’ and n’predicate 𝐴𝑐𝑐(𝐶, 𝑠) means that accident C occurs in situation s.