Servisní choreografie - Service choreography
Tento článek má několik problémů. Prosím pomozte vylepši to nebo diskutovat o těchto otázkách na internetu diskusní stránka. (Zjistěte, jak a kdy tyto zprávy ze šablony odebrat) (Zjistěte, jak a kdy odstranit tuto zprávu šablony)
|
Servisní choreografie je forma složení služby[je zapotřebí objasnění ] ve kterém interakční protokol mezi několika partnerskými službami[je zapotřebí objasnění ] je definován z globálního hlediska.[1]Myšlenku, která je základem pojmu servisní choreografie, lze shrnout takto:
„Tanečníci tancují podle globálního scénáře bez jediného bodu kontroly“
To znamená, že v době běhu každý účastník servisní choreografie provádí svou část podle chování ostatních účastníků.[2] Role choreografie určuje očekávané chování účastníků při zasílání zpráv, které je bude hrát, pokud jde o řazení a načasování zpráv, které mohou konzumovat a produkovat.[3]
Choreografie popisuje sekvenci a podmínky, za kterých jsou data vyměňována mezi dvěma nebo více účastníky za účelem splnění nějakého užitečného účelu.[4]
Choreografie služeb a orchestrace služeb
Choreografie služeb je lépe pochopitelná porovnáním s jiným paradigmatem složení služeb: orchestrace služby. Na jedné straně v provozních choreografiích je logika interakcí založených na zprávách mezi účastníky specifikována z globálního hlediska. Na druhé straně v orchestraci služeb je logika určena z místního hlediska jednoho účastníka, který se nazývá orchestrátor. V jazyce orchestrace služby BPEL například specifikace orchestrace služby (např. soubor procesu BPEL) je pracovní tok, který lze nasadit na infrastrukturu služby (například spouštěcí stroj BPEL jako Apache ODE ). Nasazení specifikace orchestrace služby transformuje pracovní postup na složenou službu.[5]
V jistém smyslu jsou choreografie služeb a orchestrace dva tahy stejnou mincí. Na jedné straně lze role choreografie služby extrahovat jako orchestrace služeb prostřednictvím procesu s názvem projekce.[6] Prostřednictvím projekce je možné realizovat kostry, tj. neúplné orchestrace služeb, které lze použít jako základní linie k realizaci webových služeb, které se účastní choreografie služby. Na druhou stranu již existující orchestrace služeb mohou být složeny v servisních choreografiích.
Uzavření servisních choreografií
Servisní choreografie se neprovádějí: jsou uzákoněno. Servisní choreografie je přijata, když její účastníci vykonávají své role.[7] To znamená, že na rozdíl od orchestrace služeb nejsou servisní choreografie spuštěny některým modulem na infrastruktuře služeb, ale „nastanou“ při provádění jejich rolí. Je to proto, že logika servisní choreografie je specifikována z globálního hlediska a proto není realizována jedinou službou jako v orchestraci služby.
Klíčovou otázkou, na kterou se velká část výzkumu choreografie snaží odpovědět, je tato: Předpokládejme, že je vytvořena globální choreografie, která popisuje možné interakce mezi účastníky spolupráce. Jaké podmínky musí choreografie dodržovat, aby byla zaručena spolupráce uspěje? Tady, uspěje znamená, že vznikající chování, které je výsledkem spolupráce, kdy každý účastník jedná nezávisle podle svého kostra, přesně navazuje na choreografii, ze které byly kostry původně promítnuty. V takovém případě se choreografie říká realizovatelné.[8] Obecně je stanovení realizovatelnosti choreografie netriviální otázkou, zejména pokud spolupráce využívá asynchronní zasílání zpráv a je možné, aby různé účastníci posílali zprávy současně.
Servisní choreografické jazyky
V rozsahu specifikací týkajících se webové služby, následující specifikace se zaměřily na definování jazyků pro modelování choreografií služeb:
- Jazyk popisu webové služby Choreografie (WS-CDL) je specifikace založená na XML z W3C pro modelování choreografií pomocí konstruktů inspirovaných Pi počet
- Web Service Choreography Interface (WSCI) je specifikace založená na XML, která byla předložena W3C podle Intalio, Sun Microsystems, Systémy BEA a SAP AG, a to sloužilo jako vstup do Jazyk popisu webové služby Choreografie (WS-CDL)
Navíc pro Boha Specifikace BPMN verze 2.0 zahrnuje diagramy pro modelování servisních choreografií.[9]
Mezi akademické návrhy jazyků služebních choreografií patří:
Kromě toho byla navržena řada formalizmů služebních choreografií na základě:
- Petriho sítě, například Interaction Petri Nets[14] a otevřené sítě pracovních postupů[15]
- Konečné státní stroje[16]
- Hlídané automaty[17]
- Časované automaty[18]
- Pi počet[19][20][21]
- Zpracovat kalkul[22][23]
Choreografie webových služeb
Choreografie webových služeb (WS-choreografie) je specifikace podle W3C definování XML -na základě modelování podnikových procesů jazyk, který popisuje protokoly o spolupráci Webová služba účastníci, u nichž služby fungují jako kolegové, a interakce mohou být dlouhodobé a stavové. (Orchestrace je další termín s velmi podobným, ale přesto odlišný význam.)
Hlavní úsilí o získání choreografie, pracovní skupina pro choreografii webových služeb W3C, bylo uzavřeno dne 10. července 2009[24] opuštění WS-CDL jako doporučení kandidáta.
„Mnoho prezentací na workshopu W3C o webových službách ve dnech 11. – 12. Dubna 2001 poukázalo na potřebu společného rozhraní a kompozičního jazyka, který by pomohl řešit choreografii. Pracovní koncept požadavků na architekturu webových služeb vytvořený pracovní skupinou pro architekturu webových služeb také uvádí představa možností choreografie webových služeb jako Kritický faktor úspěchu, na podporu několika různých cílů nejvyšší úrovně pro rodící se architekturu webových služeb “[1].
Během této doby byl problém choreografie pro průmysl velmi zajímavý; snahy jako WSCL (Web Service Conversation Language) a WSCI (Web Service Choreography Interface) byly předloženy W3C a byly publikovány jako Technické poznámky. Kromě toho bylo zahájeno doplňkové úsilí:[25]
„V červnu 2002 Intalio Společnosti Sun, BEA a SAP vydaly společnou specifikaci nazvanou Web Services Choreography Interface (WSCI). Tato specifikace byla také předložena W3C jako poznámka v srpnu 2002. W3C od té doby vytvořila novou Pracovní skupinu nazvanou Pracovní skupina pro choreografii webových služeb v rámci Činnosti webových služeb. Specifikace WSCI je jedním z primárních vstupů do Pracovní skupina pro choreografii webových služeb který zveřejnil a Doporučení kandidáta na WS-CDL verze 1.0 9. listopadu 2005 “[3]. „XLang, WSFL a WSCI již nejsou podporovány žádnou standardní organizací ani společnostmi. Společnost BPEL nahradila Xlang a WSFL WSCI byl nahrazen WS-CDL "[4].
Nadcházející Notace modelování podnikových procesů verze 2.0 představí diagramy pro specifikaci choreografií služeb.[9]
Akademický obor předložil další jazyky služebních choreografií, například Let's Dance,[10] BPEL4Chor[11] a MAP.[19]
Paradigmata služebních choreografií
Choreografie služeb specifikují interakce mezi účastníky na základě zpráv z globálního hlediska. Stejným způsobem jako programovací jazyky lze seskupit do paradigmata programování, jazyky servisní choreografie lze seskupit styly:[26]
- Interakční modelování: logika choreografie je specifikována jako pracovní tok, ve kterém aktivity představují výměny zpráv mezi účastníky [27] (například Jazyk popisu choreografie webové služby (WS-CDL) a Pojďme tančit[10])
- Modelování propojených rozhraní: logika choreografie je rozdělena mezi její účastníky prostřednictvím rolí, které hrají (tj. Jejich očekávané chování při zasílání zpráv). Role jsou propojeny pomocí toků zpráv, kanálů nebo ekvivalentních konstrukcí[28] (to je například případ BPEL4Chor[11])
Výzkumné projekty choreografií
Existuje několik aktivních výzkumných projektů na téma servisní choreografie.
- CHOReVOLUTION: Automatizovaná syntéza dynamických a zabezpečených choreografií pro budoucí internet
- CRC: Choreografie pro spolehlivý a efektivní komunikační software
- SwarmESB - lehký, otevřený zdroj, ESB nebo centrum zpráv pro node.js
- PrivateSKY - experimentální vývoj v partnerství veřejného a soukromého sektoru pro místní cloudové platformy s pokročilými funkcemi ochrany dat
Reference
- ^ Znalostní model S-Cube: Servisní choreografie
- ^ Chris Peltz: Orchestrace a choreografie webových služeb. Počítač IEEE (POČÍTAČ) 36 (10): 46-52 (2003)
- ^ Jianwen Su, Tevfik Bultan, Xiang Fu, Xiangpeng Zhao: Směrem k teorii choreografií webových služeb. WS-FM 2007: 1-16
- ^ "WS Choreography Model Overview". 24. března 2004. Citováno 16. února 2019.
- ^ Arellanes, Damian; Lau, Kung-Kiu (2017). „Exogenní konektory pro hierarchické složení služeb“. 10. konference IEEE 2017 o výpočetní technice a aplikacích orientovaných na služby (SOCA). Kanazawa: IEEE: 125–132. doi:10.1109 / SOCA.2017.25. ISBN 9781538613269.
- ^ Hongli Yang, Xiangpeng Zhao, Chao Cai, Zongyan Qiu: „Zkoumání spojení choreografie a orchestrace s řešením výjimek a finalizací / kompenzací“. SILNÁ STRÁNKA 2007:81-96
- ^ Howard Foster, Sebastián Uchitel, Jeff Magee, Jeff Kramer: Modelová analýza závazků v choreografii webových služeb. AICT / ICIW 2006: 149
- ^ Ashley McNeile: Protokolární smlouvy s aplikací na choreografické pluralitní spolupráce. Service Oriented Computing and Applications Volume 4, Number 2, 109-136 (2010)
- ^ A b Jack Vaughan: BPMN 2.0 přidává notaci ke zpracování choreografie BPM. SearchSOA.com, 22. října 2009
- ^ A b C Johannes Maria Zaha, Alistair P. Barros, Marlon Dumas, Arthur H. M. ter Hofstede: Pojďme tančit: Jazyk pro modelování chování služeb. Konference OTM 2006: 145-162
- ^ A b C Gero Decker, Oliver Kopp, Frank Leymann, Mathias Weske: BPEL4Chor: Rozšíření BPEL pro modelování choreografií. ICWS 2007: 296-303
- ^ "Chor Programovací jazyk".
- ^ Carbone, Marco; Montesi, Fabrizio (2013). Bloková svoboda podle návrhu: Multiparty Asynchronous Global Programming. doi:10.1145/2429069.2429101.
- ^ Gero Decker, Mathias Weske: Místní vymahatelnost v interakčních Petriho sítích. BPM 2007: 305-319
- ^ Karsten Schmidt: Říditelnost otevřených sítí pracovních toků. EMISA 2005: 236-249
- ^ Nadia Busi, Roberto Gorrieri, Claudio Guidi, Roberto Lucchi, Gianluigi Zavattaro: Shoda choreografie a orchestrace pro návrh systému. KOORDINACE 2006: 63-81
- ^ Tevfik Bultan, Jianwen Su, Xiang Fu: Analýza konverzací webových služeb. IEEE Internet Computing (INTERNET) 10 (1): 18-25 (2006)
- ^ Michele Mancioppi, Manuel Carro, Willem-Jan van den Heuvel, Mike P. Papazoglou: Zvukové vícestranné obchodní protokoly pro servisní sítě. ICSOC 2008: 302-316
- ^ A b Adam Barker, Christopher D. Walton, David Robertson: Choreografování webových služeb. Transakce IEEE na Services Computing, svazek 2, číslo 2, strany 152-166, IEEE Computer Society, duben – červen 2009
- ^ ShuiGuang Deng, Zhaohui Wu, Mengchu Zhou, Ying Li, Jian Wu: Kompatibilita modelování služeb s Pi-kalkulem pro choreografii. ER 2006: 26-39
- ^ Paolo Besana, Adam Barker: Spustitelný počet pro servisní choreografii. Konference OTM 2009: 373-380
- ^ Raman Kazhamiakin, Marco Pistore: Analýza podmínek realizovatelnosti pro choreografie webových služeb. FORTE 2006: 61-76
- ^ Zongyan Qiu, Xiangpeng Zhao, Chao Cai, Hongli Yang: Směrem k teoretickému základu choreografie. WWW 2007: 973-982
- ^ Pracovní skupina pro choreografii webových služeb na W3
- ^ Charta
- ^ Gero Decker, Oliver Kopp, Alistair P. Barros: Úvod do servisních choreografií (Servicechoreographien - eine Einführung). it - Informační technologie (IT) 50 (2): 122-127 (2008)
- ^ Znalostní model S-Cube: Interakční choreografický model
- ^ Znalostní model S-Cube: Choreografický model propojeného rozhraní
externí odkazy
- Choreografie webové služby Popis Jazyk - W3C specifikace pro WS-choreografii
- Choreografie webové služby Popis Jazyk: Primer -
- Choreografické rozhraní webových služeb (WSCI) 1.0 - specifikace od Intalio, Sun, BEA a SAP; vstup do WS-choreografie
- Velké choreografie pro budoucí internet - Výzkumný projekt Evropské komise v rámci 7. RP
- Choreografie webových služeb v praxi - Motivace a popis WSCI
- Servisní choreografie - Stránka propagující koncept servisní choreografie jako základu pro návrh systémů zaměřených na služby. Stránka také popisuje jazyk pro modelování choreografií na vrcholu WSCI, jmenovitě Let's Dance.
- Choreografie webových služeb Popis Jazyk Verze 1.0
- Pracovní skupina pro choreografii webových služeb W3C
- Formální modelování webových služeb
- Teoretické základy souběžného programování zaměřeného na komunikaci
- Směrem k teoretickému základu choreografie
- Zkoumání podstaty choreografie
Viz také
- BPEL - Business Process Execution Language, standard OASIS
- Choreografie webové služby Popis Jazyk - Jazyk pro popis choreografií vyvinutých v rámci W3C