Behavior of Services

465 views

Published on

Kolloquium in Hamburg

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
465
On SlideShare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Behavior of Services

  1. 1. read more: www.service-technology.org Behavior of Services Karsten Wolf m3 techniques for n∞ problems UNIVERSITÄT ROSTOCK
  2. 2. read more: www.service-technology.org Service? • Encapsulated functionality • heterogenous platforms • Self-explaining • UDDI, ... • Well defined interface • WSDL • Loosely coupled • asynchronous communication • binding via standardized protocols •Main activity: composition € C T B
  3. 3. read more: www.service-technology.org Behavior? Semantics: what does it mean? 13m? $13? 1313 Nonfunctional: how to transmit -policies -QoS 1313 Behavior: when to transmit 1313 Syntax: how to encode <13> </13> 1313 Service
  4. 4. read more: www.service-technology.org This presentation: • Part I: m3 techniques 0: modeling behavior 1: analysing behavior 2: synthesizing behavior 3: characterizing behavior • Part II: n∞ problems compatibility, controllability, substitutability, transformation, public view generation, instance migration, uncontrollability diagnosis, choreography repair, adaptation, test case generation, discovery, composition, validation, realizability
  5. 5. read more: www.service-technology.org Modeling Behavior Service real world: WS-BPEL, BPMN, UML-ACT, ... Model formal semantics Petri nets, automata, ... Why? precise meaning independency of language evolution abstraction from irrelevant details find ambiguities/ inconsistencies ?€ ?C ?T !B !B[BPM 05,WS-FM 07,LNCS ToPNoC II]
  6. 6. read more: www.service-technology.org Modeling Behavior Service real world: WS-BPEL, BPMN, UML-ACT, ... Model formal semantics Petri nets, automata, ... Fact We use feature complete semantics: -links -fault handling -compensation -events ?€ ?C ?T !B !B[BPM 05,WS-FM 07,LNCS ToPNoC II] implemented: BPEL2oWFN
  7. 7. read more: www.service-technology.org 1 Analying Behavior = Compatibility Service Service ? implemented: LoLA several compatibility notions: -deadlock freedom -weak termination (always possible) -strong termination (eventually will) -coverage of activities -other constraints How? state space verification [BPM 06,WS-FM 07]
  8. 8. read more: www.service-technology.org 1 Analying Behavior = Compatibility Service Service ? LoLA can do the job: •soundness of 868 real business processes: av. 4ms per process •BPEL4Chor choreographies with >1000 service instances Why? concurrency  partial order reduction replicated instances symmetry method acyclic behavior  sweep-line method [BPM 06,WS-FM 07]
  9. 9. read more: www.service-technology.org 2 Partner synthesis Service ? implemented: (Fiona), Wendy several controllability notions: -centralized -decentralized -autonomous [EMISA 05, LNCS ToPNoC II, IPL 08]
  10. 10. read more: www.service-technology.org 2 Partner synthesis Service ? ?€ ?C ?T !B !B 1 2 3 4 5 (1,- ) !€ !C !T (1,C ) (1,€), (2,-) (1,T ) !T !€ (1,CT ) (1,C€),(2,C),(3,-), (5,B) !€ ?B !T !C !T !C !€ ?B !C (1,T€),(2,T),(4,-), (5,B) (5,-) (1,C€T),(2,CT),(3,T),(4,C), (5,T) deadlock
  11. 11. read more: www.service-technology.org 2 Partner synthesis Service ? ?€ ?C ?T !B !B 1 2 3 4 5 (1,- ) !€ !C !T (1,C ) (1,€), (2,-) (1,T ) !€ (1,CT ) (1,C€),(2,C),(3,-), (5,B) ?B !C !T !T !C !€ ?B (1,T€),(2,T),(4,-), (5,B) (5,-) !€ !T !C (1,C€T),(2,CT),(3,T),(4,C), (5,T) deadlock
  12. 12. read more: www.service-technology.org 2 Partner synthesis Service ? ?€ ?C ?T !B !B 1 2 3 4 5 !€ !C !T !€ ?B !C !T !€ ?B Petrify: Petri net oWFN2BPEL: Abstract BPEL Fact: this partner is most permissive
  13. 13. read more: www.service-technology.org 3 Partner characterization Service ? implemented: FIONA (OG) ? ? Why? -discovery -substitutability -test cases -.... [Petri Nets 07, LNCS ToPNoC II,BPM 08, ACSD 09,IJBPIM 07]
  14. 14. read more: www.service-technology.org 3 Partner characterization Service ?? ?Provided Service Service Requester € C T Public View •coin falls •activate buttons •evaluate pressed •heat water •fill cup
  15. 15. read more: www.service-technology.org 3 Partner characterization Service ?? ?Provided Service Service Requester € C T Operating Guidelines •enter coin •press button •take cup
  16. 16. read more: www.service-technology.org 3 Partner characterization Service ?? ? ?€ ?C ?T !B !B !€ !C ?B !€ !T ?B !T !€ ?B !C !€ ?B !€ !C ?B !T ?B .... !€ !€ !€ !T !T !C !C ?B ?B
  17. 17. read more: www.service-technology.org 3 Partner characterization Service ?? ? ?€ ?C ?T !B !B !€ !C ?B !€ !T ?B !T !€ ?B !C !€ ?B !€ !C ?B !T ?B .... !€ !€ !€ !T !T !C !C ?B ?B most permissive
  18. 18. read more: www.service-technology.org 3 Partner characterization Service ?? ? .... !€!€ !€ !T !T !C !C ?B ?B !T∨!€∨!C !T∨!C
  19. 19. read more: www.service-technology.org 3 Partner characterization Service ?? ? .... !€!€ !€ !T !T !C !C ?B ?B !T∨!€∨!C !T∨!C !€ !C ?B !T ?B
  20. 20. read more: www.service-technology.org 3 Partner characterization Service ?? ?Größe Bedienungsanleitungen 1 10 100 1000 10000 100000 1000000 0 50 100 150 200 250 300 350 400 Knoten PN KantenOG Kanten OG
  21. 21. read more: www.service-technology.org 3 Partner characterization Service ?? ?Berechnungszeit OG 1 10 100 1000 0 50 100 150 200 250 300 350 400 Knoten PN Zeit(sec) Zeit
  22. 22. Part II
  23. 23. read more: www.service-technology.org Substitutability Service implemented: FIONA (deadl. fr.)How? compare operating guidelines Why? -contracts Service ? [DKE 09, CompJ08]
  24. 24. read more: www.service-technology.org Transformation Service How? transformation rules Why? -contracts ? [CompJ 08,WWW 08]
  25. 25. read more: www.service-technology.org Public View Service implemented: FIONA (deadl. fr.) How? re-engineer operating guideline Why? -hide trade secrets ?
  26. 26. read more: www.service-technology.org Instance Migration implemented: yesWhy? -long running services Service How? use operating guidelines Service [ICSOC 09]
  27. 27. read more: www.service-technology.org Diagnosis Service implemented: yesHow? inspect garbage in partner synthesis [WS-FM 08]
  28. 28. read more: www.service-technology.org Repair Service implemented: RACHELHow? graph based edit distance Why? -suggest (!) correction Service [BPM 08]
  29. 29. read more: www.service-technology.org Mediation (Adaptation) Service implemented: MarleneHow? partner synthesis specification of semantical constraints Service Service create: ack: + password: - copy: e-mail: + book: - transform: mtrsfeet:+ mtrs€:- ... [submitted]
  30. 30. read more: www.service-technology.org partner Test case generation implemented: as hackHow? select cases from operating guidelines of spec Service Spec Service Impl partner partner Why? testing without a partner misses subtle errors [WESOA 08, ZEUS 09]
  31. 31. read more: www.service-technology.org Realizability ?? Choreography implemented: noHow? decentralized controllability [WS-FM 09]
  32. 32. read more: www.service-technology.org implicitly covered: • service discovery – characterization, matching, public view • service composition – compatibility, mediation, partner synthesis, repair • validation – controllability, characterization, diagnosis • n  ∞
  33. 33. read more: www.service-technology.org Current Work • Behavioral Querying – represent a query by an annotated automaton, organise registry accordingly • Other Correctness Criteria – from deadlock freedom to weak termination • Split Workflows into Services • More Problems to Cover
  34. 34. read more: www.service-technology.org Problem dimensions shape of partner acyclic centralized decentralized autonomus compatibility notion deadlock freedom weak termination strong termination covering constraints messaging asynchronous synchronous queued semantical constraints other requirements behavioral constraints transactions, policies, ...
  35. 35. read more: www.service-technology.org Our technology stack state space exploration ... model checking partner synthesis ... interaction graph partner characterization ... operating guideline inspect / compare / manipulate operating guideline
  36. 36. read more: www.service-technology.org Conclusion • 17+... problems in various settings • 3+ε powerful technologies state space, partner synthesis, operating guidelines • Hype independent through formal modeling • (8+ Jou, 30+ Conf) publications, (8+ PhD, 30+ Stud/Dipl) theses, ... since about 2004 • 9+ Cooperations HU Berlin, TU Eindhoven, Uni Stuttgart, IBM Böblingen+Zürich+Hawthorne Heights, SAP Brisbane+Walldorf (+Karlsruhe), HPI Potsdam, (Queensland UT), (Uni Tartu) • 6+ tools LoLA, Fiona, BPEL2OWFN, OWFN2BPEL, RACHEL, SEDA, ...

×