Service discoveryusing communication fingerprintsKarsten WolfOlivia OaneaJan Sürmeli
Service discoveryR2given: requester service Rtask: find compatibleservice Pservice model
Service discoverygiven: requester service Rtask: find compatibleservice PrepositoryRPpick 3
Service discoverygiven: requester service Rtask: find compatibleservice PverifyP+RRP4✓pick ✗
Service discoverygiven: requester service Rtask: find compatibleservice PverifyP+RRweak terminationP✓pick 5✗
Service discoverygiven: requester service Rtask: find compatibleservice PverifyP+RRP6✓pick ✗
Lossless preselection7initial situation: many services to verifyto verify
Lossless preselection8initial situation: many services to verifyidea: preselect a subset to verifyto verify
Lossless preselection9initial situation: many services to verifyidea: preselect a subset to verifyrequirement: no loss of compatible services✓to verify
Service discoverywith communication fingerprintsPverifyP+RR10✓pick ✗
Service discoverywith communication fingerprintscommunicationfingerprintPverifyP+P+RRpick 11✓✗
Service discoverywith communication fingerprintsPverifyP+P+RRRR12✓pick ✗
Service discoverywith communication fingerprintsmatchPverifyPPR+P+RRRR✓pick 13✗
Service discoverywith communication fingerprintsmatchPverifyPPR+P+RRRR14✓?pick ✗✗
Service discoverywith communication fingerprintsmatchPverifyPPR+P+RRRR15✓?pick ✗✗
Service discoverywith communication fingerprintscommunication fingerprintsmatchPverifyPPR+P+RR1RR16✓?pick ✗✗
Service discoverywith communication fingerprintscommunication fingerprintsmatchingmatchPverifyPPR+P+RR2RR17✓?pick ✗✗
Service discoverywith communication fingerprintscommunication fingerprintsmatchingcomputationmatchPverifyPPR+P+RR3RR18✓?pick ✗✗
Service discoverywith communication fingerprintscommunication fingerprintsmatchingcomputationcase studymatchPverifyPPR+P+RR4RR19✓?pick ✗✗
	Communication fingerprintsPabstraction1P20
	Communication fingerprints211
	Communication fingerprints22abstraction steps: 1
acadabacabadababacababadabababacabababadababababacababababad…	Communication fingerprints23abstraction steps: 1 terminatingbehavior1
	Communication fingerprints24abstraction steps: 1 terminatingbehavior2 interactionbehavior?document !reject?document !accept?document !feedback ?document !reject?document !feedback ?document !accept…1
	Communication fingerprints25abstraction steps: 1 terminatingbehavior3 countingvectors2 interactionbehaviordocument = 1, reject = 1document = 1, accept = 1document = 2, feedback = 1, reject = 1document = 3, feedback = 2, reject = 1…1
	Communication fingerprints26abstraction steps: 1 terminatingbehavior3 countingvectors2 interactionbehavior4 booleanformula1(reject = 1) ∨ (accept = 1) ∧(document – feedback = 1)
	Fingerprint matchingsemi-decide compatibility272PabstractionPRmatching✗?Rabstraction
	Fingerprint matching2PR28
	Fingerprint matching(reject = 1) ∨ (accept = 1) ∧(document – feedback = 1)2PR29
	Fingerprint matchingPR30(reject = 1) ∨ (accept = 1) ∧(document – feedback = 1)2(reject + accept = 1) ∧(document – feedback = 0)
	Fingerprint matching2PRcompositefingerprint31
	Fingerprint matching(reject = 1) ∨ (accept = 1) ∧(document – feedback = 1)∧(reject + accept = 1) ∧(document – feedback = 0)2PRcompositefingerprint32
	Fingerprint matching2PRdecodersystemsoflin. inequalitiescompositefingerprint33
	Fingerprint matchingreject = 1document – feedback = 1reject + accept = 1document – feedback = 02PRdecodersystemsoflin. inequalitiescompositefingerprint34accept = 1document – feedback = 1reject + accept = 1document – feedback = 0
	Fingerprint matching2✗PRdecoderFeasabilitychecker?systemsoflin. inequalitiescompositefingerprint35
	Fingerprint matchingreject = 1document – feedback = 1reject + accept = 1document – feedback = 0✗2✗PRdecoderFeasabilitychecker?systemsoflin. inequalitiescompositefingerprint36accept = 1document – feedback = 1reject + accept = 1document – feedback = 0✗
	Fingerprint matching✗2✗PRdecoderFeasabilitychecker?systemsoflin. inequalitiescompositefingerprint37
service-technology.org/toolsYasmina	Fingerprint matching2✗PRdecoderFeasabilitychecker?systemsoflin. inequalitiescompositefingerprint38
Linda	Fingerprint computation (sketch)service-technology.org/toolspetrinetstructuretheory(integer) linearprogramming3PP39
	Case studyhowwecameupwithservices:4industrial bP models40
	Case studyhowwecameupwithservices:compile4petri net modelsindustrial bP models41
	Case studyhowwecameupwithservices:compiledecompose4petri net modelsopen net modelsindustrial bP models42
	Case studyhowwecameupwithservices:cases: (FEASIBLE)composites of servicescompiledecompose4petri net modelsopen net modelsindustrial bP models43
	Case study1st run: statespaceverificationonly2nd run: applying communication fingerprints444
	Case study1st run: statespaceverificationonly2nd run: applying communication fingerprints454
	Case study1st run: statespaceverificationonly2nd run: applying communication fingerprints464
	Case studyincompatibility detectionin the 2nd run474
Conclusionfingerprint matching semi-decides compatibility➟ lossless partner preselection48
Conclusionfingerprint matching semi-decides compatibility➟ lossless partner preselection49fingerprint Computationonce per service➟ minimal overhead
Conclusionfingerprint matching semi-decides compatibility➟ lossless partner preselection50case studytime reduction 40 – 98%➟ significant speed gainfingerprint Computationonce per service➟ minimal overhead
Conclusionfingerprint matching semi-decides compatibility➟ lossless partner preselection51case studytime reduction 40 – 98%➟ significant speed gaintool supportservice-technology.org/toolsservice-technology.org/livefingerprint Computationonce per service➟ minimal overhead
Conclusionfingerprint matching semi-decides compatibility➟ lossless partner preselection52case studytime reduction 40 – 98%➟ significant speed gaintool supportservice-technology.org/toolsservice-technology.org/livefingerprint Computationonce per service➟ minimal overheadThankyou!

Service discovery with communication fingerprints