Vurdering af BPMN - IT- og Telestyrelsen
Vurdering af BPMN - IT- og Telestyrelsen
Vurdering af BPMN - IT- og Telestyrelsen
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Vurdering</strong> <strong>af</strong> <strong>BPMN</strong><br />
I forhold til de parametre der kræves for optagelse i<br />
OIO-katal<strong>og</strong>et<br />
16. september 2005<br />
Connecting Business & Technol<strong>og</strong>y
© Devoteam Fischer & Lorenz A/S 2005<br />
Dette dokument er udarbejdet for <strong>IT</strong> <strong>og</strong> <strong>Telestyrelsen</strong> <strong>af</strong> Devoteam Fischer & Lorenz A/S.<br />
<strong>IT</strong> <strong>og</strong> <strong>Telestyrelsen</strong> har ret til at kopiere <strong>og</strong> distribuere dette dokument.<br />
Enhver anden kopiering <strong>og</strong> distribution må kun finde sted efter <strong>af</strong>tale parterne imellem.<br />
Enhver kopi skal være forsynet med rapportens titel, dato <strong>og</strong> denne notits.
Indholdsfortegnelse<br />
1. Indledning .................................................................................................... 2<br />
1.1. Baggrund ........................................................................................................ 2<br />
1.2. Formål med dokumentet................................................................................. 2<br />
1.3. Læsevejledning............................................................................................... 2<br />
2. Introduktion:................................................................................................ 3<br />
2.1. Standardens navn <strong>og</strong> akronymer. ................................................................... 3<br />
2.2. Standardens ejer <strong>og</strong>/eller ansvarligt standardiseringsorgan............................ 3<br />
2.3. Beskrivelse <strong>af</strong> standarden -............................................................................. 3<br />
2.3.1. Brugen <strong>af</strong> <strong>BPMN</strong>........................................................................................................ 7<br />
2.4. Beskrivelse <strong>af</strong> standardens kontekst............................................................... 8<br />
2.5. Beskrivelse <strong>af</strong> standardens tekniske aspekter................................................. 9<br />
2.6. Forgængere..................................................................................................... 9<br />
3. Nytteværdi: ................................................................................................ 10<br />
3.1. Udbredelse - Omfanget <strong>af</strong> standardens anvendelse <strong>og</strong> mængden <strong>af</strong><br />
erfaringer. ..................................................................................................... 10<br />
3.2. Standardens modenhed................................................................................. 10<br />
3.3. Egnethed - Forhold der gør standarden mere eller mindre oplagt inden for<br />
forvaltning i Danmark. ................................................................................. 10<br />
3.4. Potentiale – ................................................................................................... 10<br />
3.5. Problemer eller potentielle problemer - Problemer eller eventuelle fremtidige<br />
problemer forbundet med standarden. Fx manglende interoperabilitet mellem<br />
versioner. ...................................................................................................... 11<br />
3.6. Alternative standarder - ................................................................................ 11<br />
4. Åbenhed: .................................................................................................... 12<br />
4.1. Anvendelsesvilkår -...................................................................................... 12<br />
4.2. Fremtidige anvendelsesvilkår –.................................................................... 12<br />
4.3. Dokumentation – .......................................................................................... 12<br />
5. Status: ......................................................................................................... 13<br />
5.1. Foreslået status - Anbefalet, godkendt, de facto, kommende, opretholdt eller<br />
forlad. ........................................................................................................... 13<br />
5.2. Redegørelse for status - Begrundelse for den foreslåede status. .................. 13
1. Indledning<br />
1.1. Baggrund<br />
I FESD-kontrakten mellem de offentlige parter <strong>og</strong> FESD-leverandørerne fremgår<br />
det, at der skal udarbejdes en standard for et workflow-modul. Modulet skal baseres<br />
på en standard til beskrivelse <strong>af</strong> arbejdsgange fra WFMC (Workflow Management<br />
Coalition) eller lignende.<br />
Standardiseringsarbejdet på området har imidlertid udviklet sig væsentligt siden<br />
kontraktens underskrift. Det er således nødvendigt at vurdere, om andre standarder<br />
kan komme i betragtning i stedet.<br />
<strong>IT</strong> <strong>og</strong> <strong>Telestyrelsen</strong> har derfor bedt Devoteam Fischer & Lorenz om en vurdering<br />
<strong>af</strong> standarderne<br />
WS-BPEL 2.0<br />
<strong>BPMN</strong> 1.0<br />
XPDL 1.0<br />
WS-Transaction specifikationens rammeværk WS-Coordination 1.0 samt<br />
de specifikke koordineringstyper WS-Business Activity 1.0 <strong>og</strong> WS-<br />
Atomic Transaction 1.0<br />
Standarderne vurderes i forhold til de parametre, der kræves for optagelse i OIOkatal<strong>og</strong>et.<br />
1.2. Formål med dokumentet<br />
Dette dokument indeholder vurderingen <strong>af</strong> WS-BPEL<br />
1.3. Læsevejledning<br />
Det anbefales, at dokumenterne læses i følgende rækkefølge<br />
WS-BPEL<br />
<strong>BPMN</strong><br />
XPDL<br />
WS-Transaction<br />
Standarderne er på forskelligt modenheds- <strong>og</strong> anvendelses-niveau, hvorfor der vil<br />
være forskel i, hvor deltaljeret de enkelte standarder er beskrevet.
2. Introduktion:<br />
2.1. Standardens navn <strong>og</strong> akronymer.<br />
Business Process Modeling Notation – <strong>BPMN</strong><br />
2.2. Standardens ejer <strong>og</strong>/eller ansvarligt standardiseringsorgan.<br />
<strong>BPMN</strong> 1.0 specifikationen var frigivet i maj 2004 <strong>af</strong> The Business Process Management<br />
Initiative (BPMI.org).<br />
<strong>BPMN</strong> er en <strong>af</strong> tre specifikationer, som BPMI har udviklet. De andre to er Business<br />
Process Modelling Language (BPML) <strong>og</strong> Business Process Query Language<br />
(BPQL)<br />
The Business Process Management Initiative (BPMI.org) <strong>og</strong> the Object Management<br />
Group (OMG) annoncerede i juni 2005 at de vil fusionerer deres arbejde<br />
indenfor Business Process Management (BPM). Det indebærer blandt andet,<br />
at <strong>BPMN</strong> vil udgøre basis for forretningsmodellering ved at <strong>BPMN</strong> <strong>og</strong> UML<br />
Activity Diagram konsolideres.<br />
2.3. Beskrivelse <strong>af</strong> standarden -<br />
(Beskrivelse <strong>af</strong> standarden, dens funktion <strong>og</strong> anvendelse samt væsentlige karakteristika.)<br />
Formålet med <strong>BPMN</strong> er at specificere gr<strong>af</strong>iske forretningsproces-modeller <strong>og</strong> -<br />
diagrammer for ethvert spr<strong>og</strong> til håndtering <strong>af</strong> forretningsprocesser (Business Process<br />
Management – BPM).<br />
Forretningsfolk er komfortable med at visualiserer forretningsprocesser i flowchart-format.<br />
Der er tusinder <strong>af</strong> forretningsanalytikere, der undersøger hvordan<br />
virksomheder arbejder <strong>og</strong> definerer forretningsprocesserne som simple flowcharts.<br />
Det giver et teknisk spænd mellem formatet for det initiale design <strong>af</strong> forretningsprocessen<br />
<strong>og</strong> formatet for spr<strong>og</strong>et f.eks. WS-BPEL, som skal eksekvere<br />
disse forretningsprocesser. Formålet med <strong>BPMN</strong> er at bygge bro over dette spænd<br />
ved at levere en formel mekanisme, som forbinder en acceptabel visualisering <strong>af</strong><br />
forretningsprocessen (en notation) til det tilhørende eksekveringsformat (f.eks.<br />
WS-BPEL) for denne forretningsproces.<br />
<strong>BPMN</strong> tilbyder et Business Process Diagram (BPD), som er et diagram designet<br />
til at blive brugt <strong>af</strong> personer, som håndterer forretningsprocesser. Fra forretningsanalytikeren<br />
der udarbejder det første udkast <strong>af</strong> processer, til de tekniske udviklere<br />
der er ansvarlig for implementeringen <strong>af</strong> teknol<strong>og</strong>ien, der vil udføre disse processer,<br />
samt efterfølgende for forretningsfolk der vil styre <strong>og</strong> overvåge disse processer.<br />
BPD er baseret på flowcharting-teknikker tilpasset til udarbejdelse <strong>af</strong> gra-
fiske modeller for forretningsproces-operationer. En forretningsproces-model er et<br />
netværk <strong>af</strong> gr<strong>af</strong>iske objekter, som er aktiviteter <strong>og</strong> flow-kontroller, som definerer<br />
rækkefølgen <strong>af</strong> deres udførsel.<br />
<strong>BPMN</strong> tilbyder <strong>og</strong>så en formel sammenkobling til et eksekveringsspr<strong>og</strong> (f.eks.<br />
WS-BPEL), der er d<strong>og</strong> n<strong>og</strong>en usikkerhed om en forretningsproces beskrevet i<br />
WS-BPEL, altid vil kunne repræsenteres i <strong>BPMN</strong>.<br />
Samlet tilbyder <strong>BPMN</strong> en standardiseret visualiseringsmekanisme, for hvad der<br />
sker i forretningsprocesser defineret i forretningsproces-eksekveringsspr<strong>og</strong>.<br />
Et BPD er opbygget <strong>af</strong> et antal gr<strong>af</strong>iske elementer. Disse elementer muliggør udvikling<br />
<strong>af</strong> simple diagrammer, der virker bekendte for de fleste forretningsanalytikere<br />
(f.eks. et flowchart-diagram). Elementerne var valgt, for at de kan kendes fra<br />
hinanden <strong>og</strong> for at bruge former som var bekendte.<br />
Et <strong>af</strong> formålene med <strong>BPMN</strong> var både at gøre det muligt at tilbyde en simpel mekanisme<br />
for at bygge forretningsproces-modeller <strong>og</strong> på samme tid gøre det muligt<br />
at håndtere kompleksiteten indlejret i forretningsprocesser. Tilgangen til at håndtere<br />
disse to modsatrettede krav var at organisere det gr<strong>af</strong>iske aspekt <strong>af</strong> notationen<br />
i specifikke kategorier. Det giver en mindre mængde <strong>af</strong> notationskategorier, så<br />
læseren <strong>af</strong> en BPD let kan genkende de basale typer <strong>af</strong> elementer <strong>og</strong> forstå diagrammet<br />
(Figur 1). Indenfor de basale kategorier <strong>af</strong> elementer kan yderligere variation<br />
<strong>og</strong> information tilføjes for at understøtte kravet om kompleksitet uden dramatisk<br />
at ændre det basale udtryk <strong>af</strong> diagrammet (Figur 2). De fire basale kategorier<br />
<strong>af</strong> elementer er:<br />
Flow objekter (Event, Activity <strong>og</strong> Gateway)<br />
Forbindelsesobjekter (Sequence Flow, Message flow <strong>og</strong> association)<br />
Svømmebaner (Pool, Lane)<br />
Artefakter (Data object, Group, Text Annotation)
Figur 1 Oversigt over de basale elementer (kilde <strong>BPMN</strong> specifikationen)
Figur 2 Eksempel på et basalt element der er udvidet (kilde <strong>BPMN</strong> specifikationen)<br />
2.3.1. Brugen <strong>af</strong> <strong>BPMN</strong><br />
Indenfor <strong>BPMN</strong> er det to basale typer <strong>af</strong> modeller<br />
En ekstern (offentlig) samarbejdsproces<br />
En intern (privat) forretningsproces<br />
En samarbejdsproces beskriver interaktionen mellem to eller flere forretningsenheder.<br />
Diagrammerne for denne type er typisk set ud fra et overordnet synspunkt.<br />
Det vil sige, de repræsenterer ikke en specifik deltagers synspunkt, men<br />
viser interaktionen mellem deltagerne. Interaktionen er beskrevet som en sekvens<br />
<strong>af</strong> aktiviteter <strong>og</strong> beskedudvekslings-mønstrer mellem deltagerne. Aktiviteterne<br />
mellem de samarbejdende aktører kan blive betragtet som berøringspunkterne
mellem deltagerne. Dvs. at processen definerer interaktioner, der er synlige for<br />
omverdenen for hver deltager.<br />
En intern proces vil typisk fokusere på synspunktet fra en enkelt forretningsorganisation.<br />
Selv om interne processer ofte viser interaktioner med eksterne deltager,<br />
definerer de aktiviteter, som generelt ikke er synlige for offentligheden <strong>og</strong> er<br />
derfor private aktiviteter, der typisk er mere detaljerede end samarbejdsprocesser.<br />
Modellering <strong>af</strong> forretningsprocesser starter ofte med beskrivelsen <strong>af</strong> aktiviteter på<br />
et overordnet niveau for derefter at uddybe de lavere niveauer i separate diagrammer.<br />
<strong>BPMN</strong> sætter d<strong>og</strong> ikke krav om n<strong>og</strong>en specifik procesmodelleringsmetode<br />
2.4. Beskrivelse <strong>af</strong> standardens kontekst<br />
(Hvilke andre standarder berører standarden.)<br />
For at udrydde det tekniske spænd var et væsentligt område for <strong>BPMN</strong>, at danne<br />
bro mellem den forretningsorienterede procesmodellerings-notation til det itorienterede<br />
eksekveringsspr<strong>og</strong> som vil implementere processen i et system. De<br />
gr<strong>af</strong>iske objekter <strong>af</strong> <strong>BPMN</strong> er blevet sammenholdt med WS-BPEL så forretningsprocesser<br />
udtrykt i <strong>BPMN</strong> umiddelbart kan konverteres til WS-BPEL.<br />
BPMI har selv beskrevet positioneringen i forhold til andre standarder i Figur 3<br />
Figur 3 BPMIs Standard BPM stack (Kilde BPMI)<br />
Business Process Query Language (BPQL) er et management-interface til en<br />
BPM-infrastruktur. Det giver forretningsanalytikere mulighed for at forespørge<br />
tilstanden <strong>og</strong> kontrollen <strong>af</strong> eksekveringer <strong>af</strong> procesinstanserne. Interfacene beskri-
ves via standard WSDL BPQL vil udgøre fundamentet i fremtidige Business Activity<br />
Monitoring (BAM).<br />
Business Proces Semantic Model (BPSM) er en formel semantisk model for forretningsprocesser,<br />
defineret ved brug <strong>af</strong> OMG’s Meta-Object Facility (MOF)<br />
Business Proces eXtension Layer (BPXL) er en udvidelse <strong>af</strong> WS-BPEL<br />
2.5. Beskrivelse <strong>af</strong> standardens tekniske aspekter<br />
(Beskrivelse <strong>af</strong> de tekniske aspekter <strong>af</strong> standarden, som underliggende format <strong>og</strong><br />
versionering.)<br />
<strong>BPMN</strong> er designet, så det tillader personer <strong>og</strong> modelleringsværktøjer n<strong>og</strong>et fleksibilitet<br />
i at udvide den basale notation <strong>og</strong> tilbyder muligheden for yderligere indhold,<br />
der er relevant for et antal specifikke modelleringssituationer, såsom for et<br />
vertikalt marked (forsikring, banker, offentlig forvaltning, ESDH …). Et vilkårligt<br />
antal artefakter kan tilføjes diagrammet, som det er hensigtsmæssigt, i henhold til<br />
den sammenhæng hvor forretningsprocessen bliver modelleret.<br />
2.6. Forgængere<br />
(Eventuelle standarder som <strong>af</strong>løses eller udbygges <strong>af</strong> den aktuelle standard.)<br />
Den betragtes ikke som <strong>af</strong>løser for eller udbygning <strong>af</strong> en anden standard.
3. Nytteværdi:<br />
3.1. Udbredelse - Omfanget <strong>af</strong> standardens anvendelse<br />
<strong>og</strong> mængden <strong>af</strong> erfaringer.<br />
På http://bpmn.org/<strong>BPMN</strong>_Supporters.htm angives virksomheder <strong>og</strong> leverandører<br />
der har anvendt <strong>BPMN</strong>, listen er meget begrænset men er på den anden side næppe<br />
komplet.<br />
3.2. Standardens modenhed.<br />
I forbindelse med samarbejdet mellem OMG <strong>og</strong> BPMI vil der ske en yderligere<br />
modning <strong>af</strong> <strong>BPMN</strong>. På nuværende tidspunkt må det vurderes, at den er tilstrækkelig<br />
moden til at kunne bruges som grundlag for forretningsprocesbeskrivelser.<br />
3.3. Egnethed - Forhold der gør standarden mere eller<br />
mindre oplagt inden for forvaltning i Danmark.<br />
<strong>BPMN</strong> vil som gr<strong>af</strong>isk notation til f.eks. WS-BPEL passe ind i den serviceorienterede<br />
arkitektur baseret på webservice-standarderne, som er valgt indenfor forvaltning<br />
i Danmark.<br />
3.4. Potentiale –<br />
(Standardens potentiale til at forbedre forvaltning i Danmark. Er den "Need to<br />
have" eller "Nice to have".)<br />
En veldefineret standard modelleringsnotation vil forøge interoperabiliteten mellem<br />
BPM-systemer <strong>og</strong> lette kommunikationen mellem såvel forretningsorienterede<br />
som it-orienterede personer.<br />
Historisk har forretningsproces-modeller udviklet <strong>af</strong> forretningsfolk været separeret<br />
fra den procesrepræsentation, som var påkrævet i systemer, der skulle implementere<br />
<strong>og</strong> eksekvere disse processer. Der var derfor et behov for manuel oversættelse<br />
<strong>af</strong> den originale procesmodel til en eksekveringsmodel. Sådanne oversættelser<br />
medfører risici for fejl <strong>og</strong> der er svært for procesejeren at forstå udviklingen<br />
<strong>og</strong> udførslen <strong>af</strong> processen, de er ansvarlig for. <strong>BPMN</strong> vil bygge bro mellem den<br />
forretningsorienterede procesmodelleringsnotation <strong>og</strong> det it-orienterede eksekveringspr<strong>og</strong>,<br />
der implementerer processen.
3.5. Problemer eller potentielle problemer - Problemer eller<br />
eventuelle fremtidige problemer forbundet med standarden.<br />
Fx manglende interoperabilitet mellem versioner.<br />
Det er usikkert hvor store ændringer fusionen <strong>af</strong> BPMIs <strong>og</strong> OMG aktiviteter medfører,<br />
spørgsmålet venter <strong>af</strong>klaring fra e-mail<br />
3.6. Alternative standarder -<br />
(Eventuelle standarder, der udfylder samme rolle (evt. med overlap til andre funktionaliteter<br />
- f.eks. ATOM ift. RSS))<br />
IDEF (Står for Integrated Definition) er en gruppe <strong>af</strong> modelleringsmetoder som<br />
kan bruges til at beskriv opgaver i en virksomhed. IDEF var udarbejdet <strong>af</strong> United<br />
States Air Force <strong>og</strong> bliver nu udviklet <strong>af</strong> Knowledge Based Systems. Det var oprindeligt<br />
udviklet til produktionsmiljøer, men er blevet tilpasset til et bredere fokus<br />
<strong>og</strong> softwareudvikling generelt<br />
UML Activity Diagram bruges typisk indenfor modellering <strong>af</strong> forretningsprocesser<br />
til modellering <strong>af</strong> l<strong>og</strong>ikken i en enkelt use case <strong>og</strong> brugsscenarium eller til at<br />
modellerer den detaljerede l<strong>og</strong>ik i en forretningsregel. Med fusionen mellem<br />
BPMI <strong>og</strong> OMG forventes det, at der sker en konsolidering <strong>af</strong> <strong>BPMN</strong> <strong>og</strong> UML Activity<br />
Diagram.
4. Åbenhed:<br />
4.1. Anvendelsesvilkår -<br />
(Vilkår for anvendelse <strong>af</strong> standarden, som fx om der skal betales <strong>af</strong>gifter, royalties<br />
eller andet.)<br />
Der er ingen <strong>af</strong>gifter forbundet med brugen <strong>af</strong> standarder<br />
4.2. Fremtidige anvendelsesvilkår –<br />
(Mulighed for at anvendelsesvilkårene for standarden eller fremtidige versioner<br />
<strong>af</strong> standarden ændres.)<br />
Det forventes ikke at fremtidige anvendelsesvilkår ændres.<br />
4.3. Dokumentation –<br />
(I hvilket omfang er standarden dokumenteret <strong>og</strong> i hvilket omfang er dokumentationen<br />
tilgængelig.)<br />
Dokumentationen er frit tilgængelig
5. Status:<br />
5.1. Foreslået status - Anbefalet, godkendt, de facto, kommende,<br />
opretholdt eller forlad.<br />
Godkendt<br />
5.2. Redegørelse for status - Begrundelse for den foreslåede<br />
status.<br />
Efter fusionen med OMG er det den bedste kandidat til en fælles notation indenfor<br />
forretningsprocesmodellering.<br />
5.3. Referencelink<br />
http://www.bpmn.org/
<strong>Vurdering</strong> <strong>af</strong> WS-<br />
BPEL standarden<br />
I forhold til de parametre der kræves for optagelse i<br />
OIO-katal<strong>og</strong>et<br />
16. september 2005<br />
© Devoteam Fischer & Lorenz A/S 2005<br />
Dette dokument er udarbejdet for <strong>IT</strong>- <strong>og</strong> <strong>Telestyrelsen</strong> <strong>af</strong> Devoteam Fischer & Lorenz A/S.<br />
<strong>IT</strong>- <strong>og</strong> <strong>Telestyrelsen</strong> har ret til at kopiere <strong>og</strong> distribuere dette dokument.<br />
Enhver anden kopiering <strong>og</strong> distribution må kun finde sted efter <strong>af</strong>tale parterne imellem.<br />
Enhver kopi skal være forsynet med rapportens titel, dato <strong>og</strong> denne notits.
Indholdsfortegnelse<br />
1. Indledning .................................................................................................... 2<br />
1.1. Baggrund ........................................................................................................ 2<br />
1.2. Formål med dokumentet................................................................................. 2<br />
1.3. Læsevejledning............................................................................................... 2<br />
2. Introduktion:................................................................................................ 3<br />
2.1. Standardens navn <strong>og</strong> akronymer. ................................................................... 3<br />
2.2. Standardens ejer <strong>og</strong>/eller ansvarligt standardiseringsorgan............................ 3<br />
2.3. Beskrivelse <strong>af</strong> standarden -............................................................................. 3<br />
2.4. Beskrivelse <strong>af</strong> standardens kontekst............................................................... 5<br />
2.5. Beskrivelse <strong>af</strong> standardens tekniske aspekter................................................. 5<br />
2.6. Forgængere..................................................................................................... 6<br />
3. Nytteværdi: .................................................................................................. 7<br />
3.1. Udbredelse - Omfanget <strong>af</strong> standardens anvendelse <strong>og</strong> mængden <strong>af</strong><br />
erfaringer. ....................................................................................................... 7<br />
3.2. Standardens modenhed................................................................................... 7<br />
3.3. Egnethed - Forhold der gør standarden mere eller mindre oplagt inden for<br />
forvaltning i Danmark. ................................................................................... 8<br />
3.4. Potentiale – ..................................................................................................... 8<br />
3.5. Problemer eller potentielle problemer – ......................................................... 9<br />
3.6. Alternative standarder - ................................................................................ 10<br />
3.6.1. WS-CDL................................................................................................................... 11<br />
3.6.2. ebXML’s BPSS ........................................................................................................ 11<br />
3.6.3. BPML....................................................................................................................... 11<br />
3.6.4. XPDL ....................................................................................................................... 11<br />
4. Åbenhed: .................................................................................................... 12<br />
4.1. Anvendelsesvilkår -...................................................................................... 12<br />
4.2. Fremtidige anvendelsesvilkår –.................................................................... 12<br />
4.3. Dokumentation – .......................................................................................... 12<br />
5. Status: ......................................................................................................... 13<br />
5.1. Foreslået status - Anbefalet, godkendt, de facto, opretholdt eller forlad...... 13<br />
5.2. Redegørelse for status - Begrundelse for den foreslåede status. .................. 13
6. Indledning<br />
6.1. Baggrund<br />
I FESD-kontrakten mellem de offentlige parter <strong>og</strong> FESD-leverandørerne fremgår<br />
det, at der skal udarbejdes en standard for et workflow-modul. Modulet skal baseres<br />
på en standard til beskrivelse <strong>af</strong> arbejdsgange fra WFMC (Workflow Management<br />
Coalition) eller lignende.<br />
Standardiseringsarbejdet på området har imidlertid udviklet sig væsentligt siden<br />
kontraktens underskrift. Det er således nødvendigt at vurdere, om andre standarder<br />
kan komme i betragtning i stedet.<br />
<strong>IT</strong> <strong>og</strong> <strong>Telestyrelsen</strong> har derfor bedt Devoteam Fischer & Lorenz om en vurdering<br />
<strong>af</strong> standarderne<br />
WS-BPEL 2.0<br />
<strong>BPMN</strong> 1.0<br />
XPDL 1.0<br />
WS-Transaction specifikationens rammeværk WS-Coordination 1.0 samt<br />
de specifikke koordineringstyper WS-Business Activity 1.0 <strong>og</strong> WS-<br />
Atomic Transaction 1.0<br />
Standarderne vurderes i forhold til de parametre, der kræves for optagelse i OIOkatal<strong>og</strong>et.<br />
6.2. Formål med dokumentet<br />
Dette dokument indeholder vurderingen <strong>af</strong> WS-BPEL<br />
6.3. Læsevejledning<br />
Det anbefales, at dokumenterne læses i følgende rækkefølge<br />
WS-BPEL<br />
<strong>BPMN</strong><br />
XPDL<br />
WS-Transaction<br />
Standarderne er på forskelligt modenheds- <strong>og</strong> anvendelses-niveau, hvorfor der vil<br />
være forskel i, hvor deltaljeret de enkelte standarder er beskrevet.
7. Introduktion:<br />
7.1. Standardens navn <strong>og</strong> akronymer.<br />
WS-BPEL er videreudviklingen <strong>af</strong> specifikationen fra maj 2003 ”Business Proces<br />
Execution Language For Web Services” version 1.1 (kaldes <strong>og</strong>så for BPEL4WS).<br />
Den var udviklet <strong>af</strong> Microsoft, IBM, BEA, Siebel Systems <strong>og</strong> SAP.<br />
7.2. Standardens ejer <strong>og</strong>/eller ansvarligt standardiseringsorgan.<br />
BPEL4WS version 1.1 specifikationen var sendt til OASIS i april 2003 <strong>og</strong> WS-<br />
BPEL Technical Commitee (TC) var dannet. Siden da har TC’en koncentreret sig<br />
om at få specifikationen gennem OASIS TC-proces. Den seneste working dr<strong>af</strong>t <strong>af</strong><br />
det, der nu kaldes WS-BPEL version 2.0, er fra 20. maj 2005 1 <strong>og</strong> det er forventningen<br />
at specifikationen frigives offentlig i den nærmeste fremtid.<br />
WS-BPEL er derfor endnu ikke en officiel OASIS-standard, men bliver generelt<br />
betragtet som sådan <strong>og</strong> denne analyse tager derfor som udgangspunkt, at det er en<br />
OASIS-standard.<br />
7.3. Beskrivelse <strong>af</strong> standarden -<br />
(Beskrivelse <strong>af</strong> standarden, dens funktion <strong>og</strong> anvendelse samt væsentlige karakteristika.)<br />
BPEL-modellen er l<strong>og</strong>isk opbygget i to forskellige komponenter. Den første er et<br />
procesbeskrivelsesspr<strong>og</strong>, den anden er et infrastrukturlag hvor protokoller for forretningsinteraktion<br />
beskrives. Da WSDL (Web Service Description Language) er<br />
det naturlige spr<strong>og</strong> for at beskrive webservices, har BPEL designerne valgt at lade<br />
infrastrukturlaget være en udvidelse <strong>af</strong> WSDL.<br />
Den underliggende filosofi bag BPEL-specifikationen er, at forretningsprocesser<br />
sammensættes <strong>af</strong> et antal interagerende webservices. Hver aktivitet i en BPELproces<br />
er derfor implementeret ved en webservice, der er defineret ved dets porttype,<br />
operation <strong>og</strong> message. Selve processen er <strong>og</strong>så selv en webservice, som igen<br />
kan indgå i mere komplekse processer.<br />
BPEL bygger på et begreb kaldet ”orkestrering” en form for procesintegration<br />
hvor webservice-baserede processer interagerer i henhold til en veldefineret procesmodel,<br />
som er kontrolleret (orkestreret) <strong>af</strong> en enkelt agent eller forretningspart<br />
(dirigenten). Procesenheden kommunikerer med dets partnere ved udveksling <strong>af</strong><br />
beskeder. Procesenheden <strong>og</strong> partnerne sender beskeder på tværs <strong>af</strong> en kommuni-<br />
1 http://www.oasis-open.org/committees/download.php/12791/wsbpel-<br />
specification-dr<strong>af</strong>t-May-20-2005.html
kationskanal kaldet en ”service link”. (F.eks. vil service link være en bilateral <strong>af</strong>tale<br />
mellem et rejsebureaus proces <strong>og</strong> et flyselskabs proces, der definerer de services,<br />
hver <strong>af</strong> dem tilbyder den anden.)<br />
BPEL bruges til at modellerer opførslen <strong>af</strong> både abstrakte <strong>og</strong> eksekverbare processer.<br />
Den abstrakte model beskriver, hvorledes information flyder mellem organisationer.<br />
<strong>og</strong> overlader de private aspekter til specifikke implementeringer <strong>af</strong> eksekverbare<br />
processer internt i organisationen, der beskriver den komplette informationsgang<br />
såvel inden for som gennem organisationens firewall.<br />
BPEL muliggør modellering <strong>af</strong> både kortlivede processer, hvor system ressourcer<br />
såsom databasetabeller kan blive låst (dvs. de kan eksekveres indenfor få sekunder),<br />
såvel som længerevarende processer hvor tiden kan måles i timer, dage <strong>og</strong><br />
uger <strong>og</strong> hvor systemressourcer ikke kan låses (f.eks. <strong>af</strong>bestilling <strong>af</strong> en indkøbsordre<br />
flere dage efter den er <strong>af</strong>sendt)<br />
Procesbeskrivelsesspr<strong>og</strong>et specificerer de sædvanlige byggeblokke til processer:<br />
activities, flows, links, data containers, <strong>og</strong> assignment operationer. Disse er defineret<br />
i henhold til deres XML-struktur, men uden en gr<strong>af</strong>isk model for at repræsentere<br />
dem.<br />
BPEL adresserer <strong>og</strong>så tekniske konstruktioner, der er nødvendige for korrekt<br />
håndtering <strong>af</strong> forretningsprocesser. Det inkluderer korrelation (sammenhæng),<br />
fejlhåndtering <strong>og</strong> kompensation.<br />
Korrelation er teknikken brugt til at danne sammenhæng mellem procesinstanser<br />
ved at bruge dat<strong>af</strong>elter som identifikation. For eksempel kan feltet ”ordrenummer”<br />
måske bruges til at forbinde en indkøbsordre med en indkøbsordre-bekræftelse.<br />
Fejlhåndtering <strong>og</strong> kompensation specificerer proceduren, der skal følges, når<br />
der sker en fejl i processen. For længerevarende processer, hvor man ikke bare<br />
kan stille alt tilbage, som det var ved starttidspunktet, er det et spørgsmål om,<br />
hvordan man omgør effekten <strong>af</strong> de aktiviteter, der allerede er blevet <strong>af</strong>sluttet,<br />
f.eks. <strong>af</strong>bestille en tidligere <strong>af</strong>sluttet flyreservation i en rejsereservationsproces,<br />
efter at betalingen er blevet autoriseret. Her må der være en kompenserende aktivitet<br />
for at annullere betalingen <strong>og</strong> gøre sædet tilgængeligt for andre. Designeren<br />
<strong>af</strong> processen definerer de kompenserende aktiviteter, der skal udføres, hvis der<br />
sker fejl i eksekveringen <strong>af</strong> den primære proces.<br />
Notationen omkring længerevarende processer er rent lokalt <strong>og</strong> sker kun indenfor<br />
en enkelt forretningsprocesinstans. Der er ikke n<strong>og</strong>en distribueret koordination <strong>og</strong><br />
fælles <strong>af</strong>talt resultat mellem multiple deltagende services. Opnåelse <strong>af</strong> distribuerede<br />
<strong>af</strong>taler er udenfor BPELs <strong>af</strong>græsninger <strong>og</strong> håndteres <strong>af</strong> protokollerne beskrevet<br />
i WS-transaction specifikationen.
7.4. Beskrivelse <strong>af</strong> standardens kontekst<br />
(Hvilke andre standarder berører standarden.)<br />
WS-BPEL placeres på toppen <strong>af</strong> flere XML-specifikationer: WSDL 1.1, XML<br />
Schema 1.0 <strong>og</strong> XPATH1.0. WSDL messages <strong>og</strong> XML Schema type definitioner<br />
leverer data modellen brugt <strong>af</strong> WS-BPEL-processer. XPATH leverer understøttelse<br />
for data-manipulation. Alle eksterne ressourcer <strong>og</strong> partnere er repræsenteret<br />
som WSDL-services. WS-BPEL tilbyder udvidelsesmuligheder til at indeholde<br />
fremtidige versioner <strong>af</strong> disse standarder.<br />
IBM <strong>og</strong> Microsofts placering <strong>af</strong> WS-BPEL / BPEL4WS i i webservice-stakkken<br />
ses i Figur 4<br />
Figur 4 Placeringen <strong>af</strong> webservice-standarderne (kilde Microsoft <strong>og</strong> IBM)<br />
7.5. Beskrivelse <strong>af</strong> standardens tekniske aspekter<br />
(Beskrivelse <strong>af</strong> de tekniske aspekter <strong>af</strong> standarden, som underliggende format <strong>og</strong><br />
versionering.)<br />
Specifikationen er ligesom andre webservice/specifikationer opbygget efter ”composability”-princippet,<br />
hver specifikation der udvikles, løser et specifikt behov <strong>og</strong><br />
er værdifuld i sig selv.<br />
Specifikationen er baseret på XML
7.6. Forgængere<br />
(Eventuelle standarder som <strong>af</strong>løses eller udbygges <strong>af</strong> den aktuelle standard.)<br />
BPEL4WS var oprindeligt resultatet <strong>af</strong> en kombination <strong>af</strong> IBMs WSFL <strong>og</strong> Microsofts<br />
XLang spr<strong>og</strong>.
8. Nytteværdi:<br />
8.1. Udbredelse - Omfanget <strong>af</strong> standardens anvendelse<br />
<strong>og</strong> mængden <strong>af</strong> erfaringer.<br />
Der eksisterer et større antal implementeringer <strong>af</strong> BPEL4WS version 1.1 specifikationen<br />
i leverandørernes produkter. Det er forventeligt, at mange <strong>af</strong> disse implementeringer<br />
vil opgraderer til WS-BPEL specifikationen indenfor relativ kort<br />
tid. Eksempler på nuværende BPEL4WS version 1.1 implementeringer er fra<br />
IBM, Microsoft, BEA, Cape Clear, PolarLake, <strong>og</strong> Oracle. Der er mange open<br />
source BPEL4WS Version 1.1 initiativer, såsom fra Active Endpoints, Inc. <strong>og</strong><br />
OpenBPEL.org.<br />
8.2. Standardens modenhed.<br />
Håndtering <strong>af</strong> forretningsprocesser (Business Process Management – BPM) er en<br />
gammel disciplin, der muliggør modellering <strong>af</strong> den organisatoriske struktur, definere<br />
forretningsprocesser <strong>og</strong> vise interaktionen mellem dem. Over det sidste årti<br />
har virksomheder <strong>og</strong> offentlige forvaltninger givet mere <strong>og</strong> mere fokus på forretningsprocesser,<br />
beskrivelsen, automatisering <strong>og</strong> styring. Denne interesse skyldes<br />
behovet for at strømline forretningen, konsoliderer organisationer <strong>og</strong> reducere<br />
omkostninger <strong>og</strong> <strong>af</strong>spejler det faktum, at processen er den basale enhed <strong>af</strong> forretningsværdi<br />
i en organisation.<br />
Den øgede fokus på effektiv håndtering <strong>af</strong> forretningsprocesser har medført en<br />
øget brug <strong>af</strong> it-teknol<strong>og</strong>i til at understøtte analyser <strong>og</strong> automatisering <strong>af</strong> forretningsprocesser<br />
<strong>og</strong> selv om flere virksomheder har opnået gode <strong>af</strong>kast på sådanne<br />
løsninger, er komponenterne til en komplet BPM-løsning stadigvæk under udvikling.<br />
Det betyder, at erfaringen med at udvikle it-løsninger til understøttelse <strong>af</strong> forretningsprocesser<br />
er begrænset. Det må derfor forventes, at efterhånden som WS-<br />
BPEL vinder indpas i faktiske implementeringer i stor skala, vil der være behov<br />
for ændringer <strong>og</strong> tilpasninger. F.eks. er et kritikpunkt <strong>af</strong> WS-BPEL den manglende<br />
mulighed for at modellere manuelle processer. Det må derfor forventes, at WS-<br />
BPEL vil komme i flere nye versioner.<br />
WS-BPEL kan derfor ikke betegnes som en moden vel<strong>af</strong>prøvet standard, men er<br />
på den anden side bredt accepteret blandt alle væsentlige leverandører <strong>og</strong> vil sandsynligvis<br />
modnes til at være omdrejningspunktet for standardiseringer indenfor<br />
forretningsprocesser.
8.3. Egnethed - Forhold der gør standarden mere eller<br />
mindre oplagt inden for forvaltning i Danmark.<br />
WS-BPEL bygger videre på de basale webservice standarder (XML, SOAP <strong>og</strong><br />
WSDL) <strong>og</strong> passer derfor naturligt ind i den offentliges strategi om brug <strong>af</strong> SOA<br />
baseret på webservice-standarderne.<br />
8.4. Potentiale –<br />
(Standardens potentiale til at forbedre forvaltning i Danmark. Er den "Need to<br />
have" eller "Nice to have".)<br />
Der har gennem historien været flere initiativer for at opbygge standarder til<br />
BPM. De fleste er fejlet på grund <strong>af</strong> manglende opbakning <strong>af</strong> leverandører <strong>og</strong> en<br />
mangel på interesse fra de ”rigtige” standardorganer. BPEL adresserer begge udfordringer:<br />
alle førende leverandører deltager i standardiseringen, har annonceret<br />
BPEL-produkter <strong>og</strong> har offentligt annonceret at BPEL er vigtig i deres<br />
strategi.<br />
Selve standardiseringen foregår hos OASIS, som er det rigtige standardorgan<br />
til at adressere WS-BPEL.<br />
Ved at opbygge standarder for BPM opnås<br />
Letter forståelse <strong>af</strong> BPM – Standarder fremmer brugen <strong>af</strong> standard terminol<strong>og</strong>i<br />
<strong>og</strong> definitioner. Det accelerer forståelsen <strong>og</strong> adoptionen <strong>af</strong> nye<br />
teknol<strong>og</strong>ier såsom BPM ved at reducere forvirringen <strong>og</strong> gøre det lettere for<br />
kunder at sammenligne konkurrerende produkter<br />
Gør det lettere at udarbejde forretningsprocesser – På det tekniske niveau<br />
vil BPEL gøre det lettere at udarbejde forretningsprocesser, fordi teknikkerne<br />
kun skal kende et forretningsproces-modelleringsspr<strong>og</strong>. Men da<br />
ønsket omkring BPM er, at forretningspersoner selv kan modellere forretningsprocesser<br />
i brugervenlige brugergrænseflader, kan de enkelte leverandører<br />
selv lave deres egne unikke grænseflader på toppen, så vidensgenbrug<br />
på det niveau vil være mere begrænset. Vidensgenbruget på det<br />
niveau kan d<strong>og</strong> øges, hvis der bygges notation-standarder på toppen <strong>af</strong><br />
WS-BPEL (se <strong>BPMN</strong>-vurderingen)<br />
Understøtter interaktion mellem BPM-systemer fra forskellige leverandører<br />
– Virksomheder kan bruge forskellige BPM-systemer til forskellige<br />
typer <strong>af</strong> processer. I mange situationer er det vigtigt, at forretningsprocesser<br />
placeret i forskellige BPM-systemer skal kunne interagere<br />
med hinanden. En proces placeret i et system kan kalde en underproces<br />
placeret i et andet system. Hvis begge systemer bruger det samme under-
liggende spr<strong>og</strong> til at definere processer, vil det være lettere at understøtte<br />
disse interaktioner. F.eks. vil samarbejdet mellem forskellige organisationers<br />
ESDH-løsninger lettes, hvis alle processer beskrives ensartet.<br />
Lette migrering <strong>og</strong> overførsel <strong>af</strong> BPM-processer – Standarder letter arbejdet<br />
med at migrere processer fra et BPM-system til et andet. Kunderne<br />
er ikke mere bundet til en leverandør. Med BPEL er det kun procesbeskrivelsen<br />
der standardiseres. I en BPM–løsning er der mange andre aspekter<br />
såsom håndtering <strong>af</strong> data, brugerinterface, målinger osv. Det er udenfor<br />
BPELs <strong>af</strong>grænsninger, så bare fordi at en BPM-løsning baseres på BPEL<br />
til at beskrive forretningsprocesserne, gør det ikke til en let proces at skifte<br />
leverandør <strong>af</strong> BPM-løsninger. Der er endnu ikke blevet demonstreret en<br />
overførsel <strong>af</strong> komplekse BPEL-løsninger fra en leverandørs løsning til en<br />
anden.<br />
Reducerer omkostningerne ved at forøge konkurrencen - Standarderne<br />
vil betyde, at leverandørernes løsninger kan bruges flere steder, hvorved<br />
udviklingsomkostningerne kan deles på et større antal virksomheder.<br />
Konkurrencen vil <strong>og</strong>så øges, da leverandørens produkter kan bruges i flere<br />
segmenter, hvilket medfører faldende priser.<br />
8.5. Problemer eller potentielle problemer –<br />
(Problemer eller eventuelle fremtidige problemer forbundet med standarden. Fx<br />
manglende interoperabilitet mellem versioner.)<br />
De væsentligste kritikpunkter <strong>af</strong> BPEL kan opdeles i fire grupper<br />
Det er ikke en komplet BPM-standard: Som tidligere beskrevet er BPEL ikke<br />
komplet <strong>og</strong> det er heller ikke ambitionen, at BPEL skal være en komplet BPMstandard.<br />
Det er et gennemgående træk indenfor webservice-standardisering, at hver standard<br />
løser opgaven indenfor sit <strong>af</strong>grænsede område <strong>og</strong> når der bliver identificeret<br />
behov for standardisering udenfor dette område, opbygges nye standarder, der<br />
bygger videre på de eksisterende. F.eks. udvider BPEL WSDL-standarden. BPEL<br />
vil derfor ikke udvikles til en komplet BPM-standard, men kommende BPMstandarder<br />
vil bygge videre på BPEL. Det betyder, at det eneste der standardiseres<br />
med BPEL, er spr<strong>og</strong>et til repræsentation <strong>af</strong> orkestrerede forretningsprocesser samt<br />
interfacebeskrivelsen.<br />
Vil BPEL udvikle sig til en fælles standard. Forventningerne er under forudsætning<br />
<strong>af</strong>, at BPEL består prøvelserne, når de første større BPM-løsninger begynder<br />
at implementeres. Hvis den ikke er tilstrækkelig omfattende til at imødegå<br />
kundernes behov, vil leverandørerne begynde at lave egne udvidelser til den <strong>og</strong><br />
fordelene ved standardiseringen vil forsvinde
BPELs troværdighed vil derved forsvinde <strong>og</strong> den vil ikke opnå status som global<br />
standard.<br />
Der er mangler i den nuværende BPEL standard Der er begrænset erfaring<br />
med praktisk anvendelse <strong>af</strong> BPEL, hvorfor standarden har mangler f.eks. indenfor:<br />
Beskrivelse <strong>af</strong> aktiviteter udført <strong>af</strong> en bruger<br />
BPEL kan kun beskrive multiparts samarbejde, der har en central kontrol.<br />
Det betyder at f.eks. kore<strong>og</strong>r<strong>af</strong>eret B2B samarbejde uden central kontrol,<br />
ikke kan repræsenteres i BPEL.<br />
BPEL er designet, så den faktiske partnerservice kan bestemmes dynamisk<br />
indeni processen, men der mangler fortsat erfaringer <strong>og</strong> standarder<br />
til denne form for dynamisk kald (standarder som UDDI <strong>og</strong> OWL-S bruges<br />
til dette).<br />
Indenfor B2B kan BPEL ikke tilstrækkeligt effektivt repræsentere kore<strong>og</strong>r<strong>af</strong>ien.<br />
Kore<strong>og</strong>r<strong>af</strong>i er samarbejdet mellem u<strong>af</strong>hængige parter, hvor der ikke er en<br />
enkelt partner, der har kontrollen (er dirigenten), men hvor der er nedskrevet en<br />
overordnet beskrivelse <strong>af</strong> hvordan beskeder skal udveksles for at udføre en proces.<br />
Formålet med kore<strong>og</strong>r<strong>af</strong>i er at opnå interoperabilitet mellem et antal ligestillede<br />
services (WS-CDL standardiserer koregr<strong>af</strong>ien). Orkestrering drejer sig om;<br />
hvordan opbygges en webservice ved sammensætning <strong>af</strong> andre webservices? Resultatet<br />
<strong>af</strong> en orkestrering er en eksekverbar webservices, resultatet <strong>af</strong> en kore<strong>og</strong>r<strong>af</strong>i<br />
er et dokument, der beskriver opførslen <strong>af</strong> de deltagende parter.<br />
I en dans ser man ikke n<strong>og</strong>en på scenen, der fortæller danserne, hvad de skal gøre.<br />
Danserne har en kore<strong>og</strong>r<strong>af</strong>eret beskrivelse, de lærer deres dans <strong>og</strong> de lærer de ”berøringspunkter”,<br />
hvor de skal interagere med andre.<br />
En kore<strong>og</strong>r<strong>af</strong>eret løsning vil typisk kalde flere orkestrerede processer i forløbet.<br />
Der er altså en risiko for, at BPELs forsøg på både at kunne beskrive konkrete <strong>og</strong><br />
abstrakte modeller fejler.<br />
8.6. Alternative standarder -<br />
(Eventuelle standarder, der udfylder samme rolle)<br />
Generelt kan det siges, at industriens konsensus omkring webservice protokollerne<br />
har været væsentlig. Der eksisterer d<strong>og</strong> fortsat alternative forslag i forskellige<br />
områder, men opbygningen <strong>af</strong> tilhørende ”working groups” hos enten W3C eller<br />
OASIS har typisk efterfølgende medført en konsensus hos alle interesserede parter.<br />
Der er i øjeblikket et antal områder hvor der er forskellige forslag: Bl.a. Reliable<br />
Messaging <strong>og</strong> Transaktions-koordinering. Disse alternativer er typisk et
IBM/Microsoft ledet initiativ på den ene side <strong>og</strong> et SUN/Oracle ledet initiativ på<br />
den anden side.<br />
I begyndelsen <strong>af</strong> året <strong>af</strong>gjorde Microsoft <strong>og</strong> SUN et antal antitrust <strong>og</strong> andre udestående<br />
problemer <strong>og</strong> annoncerede et større samarbejde indenfor Web Services<br />
hvilket siden hen er sket indenfor f.eks. WS-adressing, WS-Eventing <strong>og</strong> WS-<br />
MetadataExchange. Det sandsynliggør et øget samarbejde indenfor f.eks. transaktionskoordinering<br />
<strong>og</strong> kore<strong>og</strong>r<strong>af</strong>i, hvilket vil lette standardiseringen <strong>af</strong> Web Service<br />
protokollerne.<br />
Der er <strong>og</strong>så et overlap mellem webservice <strong>og</strong> ebXML-initiativet, men <strong>og</strong>så her må<br />
der forventes en større ensrettethed. En del <strong>af</strong> arbejdet hos OASIS ebSOA TC er<br />
at udvikle ebXML-arkitekturen <strong>og</strong> håndtere overgangen til adoption <strong>af</strong> flere web<br />
service-protokoller.<br />
8.6.1. WS-CDL<br />
Standard til kore<strong>og</strong>r<strong>af</strong>i <strong>af</strong> forretningsprocesser, udarbejdes i W3C regi.<br />
8.6.2. ebXML’s BPSS<br />
ebXMLs specifikation for en kore<strong>og</strong>r<strong>af</strong>i-specifikation<br />
8.6.3. BPML<br />
Standard der opfylder tilsvarende formål som BPEL. Det er den generelle opfattelse<br />
i markedet, at BPEL er den vindende standard.<br />
8.6.4. XPDL<br />
XML Process Definition Language (XPDL) er et spr<strong>og</strong> foreslået <strong>af</strong> Workflow<br />
Management Coalition (WfMC) for at kunne udveksle proces-definitioner mellem<br />
forskellige workflow-produkter.
9. Åbenhed:<br />
9.1. Anvendelsesvilkår -<br />
(Vilkår for anvendelse <strong>af</strong> standarden, som fx om der skal betales <strong>af</strong>gifter, royalties<br />
eller andet.)<br />
Standarden er ikke forbundet med <strong>af</strong>gifter, royalties eller andet<br />
9.2. Fremtidige anvendelsesvilkår –<br />
(Mulighed for at anvendelsesvilkårene for standarden eller fremtidige versioner<br />
<strong>af</strong> standarden ændres.)<br />
Der forventes ingen ændringer i anvendelsesvilkårene<br />
9.3. Dokumentation –<br />
(I hvilket omfang er standarden dokumenteret <strong>og</strong> i hvilket omfang er dokumentationen<br />
tilgængelig.)<br />
Dokumentationen er åben <strong>og</strong> tilgængelig
10. Status:<br />
10.1. Foreslået status - Anbefalet, godkendt, de facto, opretholdt<br />
eller forlad.<br />
Godkendt<br />
10.2. Redegørelse for status - Begrundelse for den foreslåede<br />
status.<br />
Standarden er endnu ikke bredt implementeret blandt virksomheder, men de førende<br />
leverandører har alle annonceret produkter med understøttelse <strong>af</strong> WS-BPEL<br />
<strong>og</strong> der er bred støtte bag initiativet.<br />
Har en organisation derfor behov for at opbygge forretningsprocesser i dag, bør<br />
eksekveringsspr<strong>og</strong>et baseres på WS-BPEL.<br />
Et BPM-system har ofte behov for at kalde processer, der er håndteret i andre<br />
BPM-systemer, det er derfor nødvendigt med en standardmetode til at kalde processer<br />
i andre BPM-systemer. Et webservice-interface er den bedste tilgang, da en<br />
forretningsproces essentielt er en sammensætning <strong>af</strong> flere services.<br />
10.3. Referencelink<br />
http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel
<strong>Vurdering</strong> <strong>af</strong> XPDL<br />
I forhold til de parametre der kræves for optagelse i<br />
OIO-katal<strong>og</strong>et<br />
6. september 2005
© Devoteam Fischer & Lorenz A/S 2005<br />
Dette dokument er udarbejdet for <strong>IT</strong> <strong>og</strong> <strong>Telestyrelsen</strong> <strong>af</strong> Devoteam Fischer & Lorenz A/S.<br />
<strong>IT</strong> <strong>og</strong> <strong>Telestyrelsen</strong> har ret til at kopiere <strong>og</strong> distribuere dette dokument.<br />
Enhver anden kopiering <strong>og</strong> distribution må kun finde sted efter <strong>af</strong>tale parterne imellem.<br />
Enhver kopi skal være forsynet med rapportens titel, dato <strong>og</strong> denne notits.
Indholdsfortegnelse<br />
1. Indledning .................................................................................................... 2<br />
1.1. Baggrund ........................................................................................................ 2<br />
1.2. Formål med dokumentet................................................................................. 2<br />
1.3. Læsevejledning............................................................................................... 2<br />
2. Introduktion:................................................................................................ 3<br />
2.1. Standardens navn <strong>og</strong> akronymer. ................................................................... 3<br />
2.2. Standardens ejer <strong>og</strong>/eller ansvarligt standardiseringsorgan............................ 3<br />
2.3. Beskrivelse <strong>af</strong> standarden -............................................................................. 4<br />
2.4. Beskrivelse <strong>af</strong> standardens kontekst............................................................... 5<br />
2.5. Beskrivelse <strong>af</strong> standardens tekniske aspekter................................................. 6<br />
2.6. Forgængere..................................................................................................... 6<br />
3. Nytteværdi: .................................................................................................. 7<br />
3.1. Udbredelse - Omfanget <strong>af</strong> standardens anvendelse <strong>og</strong> mængden <strong>af</strong><br />
erfaringer. ....................................................................................................... 7<br />
3.2. Standardens modenhed................................................................................... 7<br />
3.3. Egnethed - Forhold der gør standarden mere eller mindre oplagt inden for<br />
forvaltning i Danmark. ................................................................................... 7<br />
3.4. Potentiale – ..................................................................................................... 7<br />
3.5. Problemer eller potentielle problemer - Problemer eller eventuelle fremtidige<br />
problemer forbundet med standarden. Fx manglende interoperabilitet mellem<br />
versioner. ........................................................................................................ 8<br />
3.6. Alternative standarder - .................................................................................. 8<br />
4. Åbenhed: .................................................................................................... 10<br />
4.1. Anvendelsesvilkår -...................................................................................... 10<br />
4.2. Fremtidige anvendelsesvilkår –.................................................................... 10<br />
4.3. Dokumentation – .......................................................................................... 10<br />
5. Status: ......................................................................................................... 11<br />
5.1. Foreslået status - Anbefalet, godkendt, de facto, Kommende, opretholdt eller<br />
forlad. ........................................................................................................... 11<br />
5.2. Redegørelse for status - Begrundelse for den foreslåede status. .................. 11
11. Indledning<br />
11.1. Baggrund<br />
I FESD-kontrakten mellem de offentlige parter <strong>og</strong> FESD-leverandørerne fremgår<br />
det, at der skal udarbejdes en standard for et workflow-modul. Modulet skal baseres<br />
på en standard til beskrivelse <strong>af</strong> arbejdsgange fra WFMC (Workflow Management<br />
Coalition) eller lignende.<br />
Standardiseringsarbejdet på området har imidlertid udviklet sig væsentligt siden<br />
kontraktens underskrift. Det er således nødvendigt at vurdere, om andre standarder<br />
kan komme i betragtning i stedet.<br />
<strong>IT</strong> <strong>og</strong> <strong>Telestyrelsen</strong> har derfor bedt Devoteam Fischer & Lorenz om en vurdering<br />
<strong>af</strong> standarderne<br />
WS-BPEL 2.0<br />
<strong>BPMN</strong> 1.0<br />
XPDL 1.0<br />
WS-Transaction specifikationens rammeværk WS-Coordination 1.0 samt<br />
de specifikke koordineringstyper WS-Business Activity 1.0 <strong>og</strong> WS-<br />
Atomic Transaction 1.0<br />
Standarderne vurderes i forhold til de parametre, der kræves for optagelse i OIOkatal<strong>og</strong>et.<br />
11.2. Formål med dokumentet<br />
Dette dokument indeholder vurderingen <strong>af</strong> WS-BPEL<br />
11.3. Læsevejledning<br />
Det anbefales, at dokumenterne læses i følgende rækkefølge<br />
WS-BPEL<br />
<strong>BPMN</strong><br />
XPDL<br />
WS-Transaction<br />
Standarderne er på forskelligt modenheds- <strong>og</strong> anvendelses-niveau, hvorfor der vil<br />
være forskel i, hvor deltaljeret de enkelte standarder er beskrevet.
12. Introduktion:<br />
12.1. Standardens navn <strong>og</strong> akronymer.<br />
XML Process Definition Language (XPDL) version 2.0<br />
12.2. Standardens ejer <strong>og</strong>/eller ansvarligt standardiseringsorgan.<br />
XML Process Definition Language (XPDL) er et spr<strong>og</strong> foreslået <strong>af</strong> Workflow<br />
Management Coalition (WfMC) for at kunne udveksle proces-definitioner mellem<br />
forskellige workflow-produkter.<br />
WfMC er en international organisation <strong>af</strong> workflow-leverandører, brugere, analytikere<br />
<strong>og</strong> universitets-/forsknings-grupper, der promoverer workflow interoperabilitets<br />
standarder. WfMCs mission er at promovere brug <strong>af</strong> workflow-produkter<br />
ved at etablere standarder for software terminol<strong>og</strong>i, interoperabilitet <strong>og</strong> forbindelse<br />
mellem workflow-produkter.<br />
Figur 5 WfMCs workflow reference model<br />
WfMC har blandt andet udviklet Workflow Reference Model (Figur 5), som har<br />
været anvendt i workflowindustrien <strong>og</strong> blandt leverandører.<br />
Modellen opbygger et fælles vokabular til at beskrive forretningsprocesser<br />
<strong>og</strong> de understøttende teknol<strong>og</strong>ier, der skal sikre procesautomatisering.<br />
Den tilbyder arkitektoniske retningslinier til workflow-løsninger gennem<br />
en funktionel nedbrydning <strong>af</strong> de nødvendige softwarekomponenter i et<br />
workflow management system <strong>og</strong> beskriver, hvordan de interagerer.
Den understøtter standardiseret interoperabilitet mellem disse komponenter<br />
ved at definere interfaces mellem komponenterne <strong>og</strong> muliggør udveksling<br />
<strong>af</strong> information på tværs <strong>af</strong> produkter fra forskellige leverandører.<br />
Et workflow management system, der baseres på Workflow Reference Modellen<br />
(Figur 5), indeholder:<br />
En central workflow enhed (workflow enactment service)<br />
Denne service eksekverer procesdefinitioner (Interface 1) udviklet i et<br />
GUI værktøj.<br />
GUI-værktøjet er tilgået <strong>af</strong> brugere via workflow klient applikationer (interface<br />
2)<br />
Disse klient-applikationer kalder back-end applikationer efter behov<br />
Disse applikationer interagerer med andre workflow enactment service<br />
(interface 4) efter behov<br />
Servicene er overvåget gennem administrations- <strong>og</strong> overvågningsværktøjer<br />
(Interface 5)<br />
En oversigt over leverandører <strong>og</strong> deres overholdelse <strong>af</strong> Workflow Reference Modellen<br />
er placeret på WfMCs hjemmeside<br />
http://www.wfmc.org/standards/conformance.htm. Der er ved at blive opbygget et<br />
conformance test center, men pt. er udtalelserne om overholdelse baseret på leverandørernes<br />
egne udtalelser.<br />
12.3. Beskrivelse <strong>af</strong> standarden -<br />
(Beskrivelse <strong>af</strong> standarden, dens funktion <strong>og</strong> anvendelse samt væsentlige karakteristika.)<br />
XPDL-specifikationen er en del <strong>af</strong> dokumentationen relateret til Interface 1, den<br />
understøtter import <strong>og</strong> eksport. Interfacet inkluderer en fælles meta-model til beskrivelse<br />
<strong>af</strong> procesdefintioner <strong>og</strong> tilhørende XML-schema for udveksling <strong>af</strong> procesdefinitioner.<br />
Formålet med XPDL er, at det skal bruges som fil-format for <strong>BPMN</strong>. XPDL <strong>og</strong><br />
<strong>BPMN</strong> specifikationerne adresserer de samme modelleringsproblemer fra forskellige<br />
perspektiver. XPDL leverer et XML-dokument, som kan bruges til at udveksle<br />
procesmodeller mellem værktøjer. <strong>BPMN</strong> tilbyder en gr<strong>af</strong>isk notation <strong>af</strong> komplekse<br />
forretningsprocesser, som understøtter menneskelig kommunikation mellem<br />
forretningsbrugere <strong>og</strong> tekniske bruger.<br />
XPDL er altså et fælles udvekslingsformat <strong>af</strong> procesdefinitioner <strong>og</strong> det forventes<br />
ikke, at XPDL vil bruges som et produkts interne repræsentationsspr<strong>og</strong> for forretningsprocesser,<br />
der eksisterer d<strong>og</strong> enkelte open source løsninger.<br />
XPDL bruger en XML-syntaks baseret på et XML-schema. XML bruges for udveksling<br />
<strong>af</strong> procesdefinitioner <strong>og</strong> gør det muligt for produkter fortsat at understøt-
te interne repræsentationer <strong>af</strong> procesdefinitioner <strong>og</strong> via en import/eksportfunktion<br />
at konvertere til/fra standarden ved produktets grænse.<br />
Principperne for procesdefinitions udveksling er illustreret i Figur 6<br />
Figur 6 Konceptet for udveksling <strong>af</strong> procesdefinitioner (Kilde WfMC)<br />
XPDL fokuserer på opgaver, der er relevant, når arbejde skal distribueres.<br />
Et <strong>af</strong> nøgleområderne indenfor XPDL er, at det kan udvides til at håndtere information<br />
brugt i et antal forskellige værktøjer.<br />
XPDL vil sandsynligvis aldrig være i stand til at understøtte alle informationskrav<br />
i alle værktøjer, så XPDL er en basal standard, hvorpå mere avancerede spr<strong>og</strong> kan<br />
opbygges.<br />
12.4. Beskrivelse <strong>af</strong> standardens kontekst<br />
(Hvilke andre standarder berører standarden.)<br />
XPDL har primært berøring med andre standarder i workflow reference modellen.<br />
Nedenfor gennemgås kort de væsentligste<br />
Wf-XML er en webservice-protokol, som kan bruges <strong>af</strong> en proces-enhed til at<br />
modtage <strong>og</strong> sende procesdefinitioner. Proces-definitioner beskrevet <strong>af</strong> f.eks.<br />
XPDL <strong>og</strong> BPEL forventes at kunne installeres i en proces-enhed <strong>og</strong> derefter ekse-
kveres. Procesdefinitions-spr<strong>og</strong>ene definerer ikke hvordan definitionerne installeres<br />
i enheden. Det er formålet med Wf-XML, den bruges som basis for konkrete<br />
implementeringer <strong>af</strong> funktionalitet til understøttelse <strong>af</strong> WfMCs Interface 4 (Interoperability<br />
abstact) defineret i Workflow Reference Model (Figur 5).<br />
Der har været n<strong>og</strong>en debat, om alle områder i potentiel ekstern runtime interaktion<br />
kan blive prædefineret i en kore<strong>og</strong>r<strong>af</strong>i. En skole forudsætter, at alle potentielle<br />
procesinteraktions områder kan indeholdes <strong>og</strong> derved kan standard WSDL/SOAPbaseret<br />
beskedudveksling være tilstrækkelig for web baseret interoperabilitet.<br />
En anden skole ser ikke denne tilgang som mulig, når det drejer sig om et stort<br />
antal <strong>af</strong> organisationer <strong>og</strong> individer, der dynamisk interagere via internettet. Derfor<br />
kræves en generisk procesinteroperabilitets-protokol såsom Wf-XML som<br />
fundament. På samme måde som at HTML er blevet en fundamental generisk protokol<br />
for at transportere hypertekst (se <strong>og</strong>så Figur 7).<br />
Interface 2 i Workflow Reference Model (Figur 5) er specificeret i et antal workflow<br />
API (WAPI). Disse APIer understøtter klientapplikationers integration med<br />
forskellige workflowsystemer. Specielt til understøttelse <strong>af</strong> princippet om (klient)<br />
applikationsportabilitet <strong>og</strong> genbrug indenfor forskellige workflow management<br />
systemer.<br />
XPDL er designet til at være repræsentationen <strong>af</strong> <strong>BPMN</strong> diagrammet<br />
12.5. Beskrivelse <strong>af</strong> standardens tekniske aspekter<br />
(Beskrivelse <strong>af</strong> de tekniske aspekter <strong>af</strong> standarden, som underliggende format <strong>og</strong><br />
versionering.)<br />
Standarderne er opbygget efter principper om udvidelsesbar, hvilket betyder, at<br />
virksomheder kan udvide <strong>og</strong> tilrette rammeværket til at imødegå ændrede forretningskrav.<br />
Det tillader, at værktøjerne kan udvikles i samklang med udviklingen i<br />
forretningskravene, hvorved længerevarende udviklingsomkostninger spares, efterhånden<br />
som ens behov ændres.<br />
12.6. Forgængere<br />
Den <strong>af</strong>løser ikke andre standarder
13. Nytteværdi:<br />
13.1. Udbredelse - Omfanget <strong>af</strong> standardens anvendelse<br />
<strong>og</strong> mængden <strong>af</strong> erfaringer.<br />
På http://www.wfmc.org/standards/conformance.htm angives et antal leverandørers<br />
overholdelse <strong>af</strong> XPDL. Det er d<strong>og</strong> tvivlsomt om denne liste er opdateret, da<br />
oprettelse dato går helt tilbage til 1997 <strong>og</strong> der er kun få, der er oprettet indenfor<br />
2004 <strong>og</strong> 2005. Enkelte link til virksomheder fungerer da heller ikke mere.<br />
Der er planlagt oprettelse <strong>af</strong> et Conformance Test center som vil udfylde en lignende<br />
rolle, som WS-I har indenfor Web Service standarderne.<br />
Der er et par dusin produkter, der bruger XPDL i dag.<br />
13.2. Standardens modenhed.<br />
Standarden må betragtes som værende moden, d<strong>og</strong> må det forventes at med den<br />
begrænsede praktiske anvendelse har den endnu ikke bevist sin eksistensberettigelse<br />
eller i hvor høj grad den opfylder anvendernes behov.<br />
13.3. Egnethed - Forhold der gør standarden mere eller<br />
mindre oplagt inden for forvaltning i Danmark.<br />
XPDL er ikke baseret på webservice standarderne <strong>og</strong> vil derfor ikke naturligt være<br />
en del <strong>af</strong> den serviceorienterede arkitektur baseret på webservice-standarderne,<br />
som er valgt indenfor offentlig forvaltning i Danmark.<br />
Derimod vil den være velegnet som generelt udvekslingsformat mellem ikke webservice-baserede<br />
workflow løsninger.<br />
13.4. Potentiale –<br />
(Standardens potentiale til at forbedre forvaltning i Danmark. Er den "Need to<br />
have" eller "Nice to have".)<br />
Hvor stort behov der er for at kunne importere <strong>og</strong> eksportere forretningsprocesbeskrivelser<br />
mellem BPM-produkter er stadig uvist <strong>og</strong> det er derfor usikkert, om en<br />
sådan standard vil forbedre forvaltningen i Danmark i væsentlig grad.
13.5. Problemer eller potentielle problemer - Problemer eller<br />
eventuelle fremtidige problemer forbundet med standarden.<br />
Fx manglende interoperabilitet mellem versioner.<br />
XPDL er ikke designet som en webservice standard men primært som en workflow<br />
standard. Det betyder, at den ikke vil passe så naturligt ind i webservice standarderne<br />
som f.eks. WS-BPEL.<br />
13.6. Alternative standarder -<br />
(Eventuelle standarder, der udfylder samme rolle (evt. med overlap til andre funktionaliteter<br />
- f.eks. ATOM ift. RSS))<br />
Både BPEL <strong>og</strong> XPDL er proceseksekverings-spr<strong>og</strong> <strong>og</strong> en væsentlig forskel er<br />
BPELs mulighed for at understøtte abstrakte processer, der inkluderer multiple<br />
BPEL processer, denne mulighed tilbyder XPDL ikke. BPEL er primært funderet<br />
omkring webservices, hvorimod fundamentet for XPDL er baseret omkring en<br />
fællesmængde <strong>af</strong> funktioner for procesdistributioner fundet i de fleste workflowprodukter.<br />
Positionering <strong>af</strong> BPEL <strong>og</strong> XPDL ses i (Figur 7)<br />
Figur 7 Standard stack (Kilde WfMC techinal committee)<br />
Det er vurderingen hos WfMC at BPEL <strong>og</strong> XPDL til slut vil eksisterer sammen,<br />
hvor XPDL vil være det format som får procesdiagrammer fra et procesdesignværktøj<br />
til et anden eller til en engine, mens BPEL vil forblive et eksekverbart<br />
format, der kan kører på mere end en engine <strong>og</strong> understøtter maskin til maskin-
kommunikation. Denne vurdering deles d<strong>og</strong> ikke <strong>af</strong> alle, f.eks. forventer Microsoft<br />
ikke at indbygge understøttelse for XPDL i deres produkter.
14. Åbenhed:<br />
14.1. Anvendelsesvilkår -<br />
(Vilkår for anvendelse <strong>af</strong> standarden, som fx om der skal betales <strong>af</strong>gifter, royalties<br />
eller andet.)<br />
Der skal ikke betales <strong>af</strong>gifter eller andet<br />
14.2. Fremtidige anvendelsesvilkår –<br />
(Mulighed for at anvendelsesvilkårene for standarden eller fremtidige versioner<br />
<strong>af</strong> standarden ændres.)<br />
Der forventes ingen ændring i anvendelsesvilkårene<br />
14.3. Dokumentation –<br />
(I hvilket omfang er standarden dokumenteret <strong>og</strong> i hvilket omfang er dokumentationen<br />
tilgængelig.)<br />
XPDL er veldokumenteret <strong>og</strong> dokumentationen er tilgængelig
15. Status:<br />
15.1. Foreslået status - Anbefalet, godkendt, de facto,<br />
Kommende, opretholdt eller forlad.<br />
Kommende<br />
15.2. Redegørelse for status - Begrundelse for den foreslåede<br />
status.<br />
Til import/eksport mellem forretningsproces-systemer er den sandsynligvis velegnet,<br />
men der er fortsat begrænset erfaring med anvendelsen.<br />
Det virker d<strong>og</strong> mere oplagt, at hvis der er behov for at distribuere forretningsprocesbeskrivelser,<br />
så gøres det i <strong>BPMN</strong>.<br />
15.3. Referencelink<br />
http://www.wfmc.org/standards/XPDL.htm
<strong>Vurdering</strong> <strong>af</strong> WS-<br />
Transaction rammeværket<br />
I forhold til de parametre der kræves for optagelse i<br />
OIO-katal<strong>og</strong>et<br />
16. september 2005
© Devoteam Fischer & Lorenz A/S 2005<br />
Dette dokument er udarbejdet for <strong>IT</strong> <strong>og</strong> <strong>Telestyrelsen</strong> <strong>af</strong> Devoteam Fischer & Lorenz A/S.<br />
<strong>IT</strong> <strong>og</strong> <strong>Telestyrelsen</strong> har ret til at kopiere <strong>og</strong> distribuere dette dokument.<br />
Enhver anden kopiering <strong>og</strong> distribution må kun finde sted efter <strong>af</strong>tale parterne imellem.<br />
Enhver kopi skal være forsynet med rapportens titel, dato <strong>og</strong> denne notits.
Indholdsfortegnelse<br />
1. Indledning .................................................................................................... 2<br />
1.1. Baggrund ........................................................................................................ 2<br />
1.2. Formål med dokumentet................................................................................. 2<br />
1.3. Læsevejledning............................................................................................... 2<br />
2. Introduktion:................................................................................................ 3<br />
2.1. Standardens navn <strong>og</strong> akronymer. ................................................................... 3<br />
2.2. Standardens ejer <strong>og</strong>/eller ansvarligt standardiseringsorgan............................ 3<br />
2.3. Beskrivelse <strong>af</strong> standarden -............................................................................. 3<br />
2.3.1. Formålet med WS-Transaction rammeværket ............................................................ 4<br />
2.4. Beskrivelse <strong>af</strong> standardens kontekst............................................................... 5<br />
2.5. Beskrivelse <strong>af</strong> standardens tekniske aspekter................................................. 6<br />
2.5.1. WS-Coordination........................................................................................................ 7<br />
2.6. Forgængere................................................................................................... 11<br />
3. Nytteværdi: ................................................................................................ 12<br />
3.1. Udbredelse - Omfanget <strong>af</strong> standardens anvendelse <strong>og</strong> mængden <strong>af</strong><br />
erfaringer. ..................................................................................................... 12<br />
3.2. Standardens modenhed................................................................................. 12<br />
3.3. Egnethed - Forhold der gør standarden mere eller mindre oplagt inden for<br />
forvaltning i Danmark. ................................................................................. 12<br />
3.4. Potentiale – ................................................................................................... 12<br />
3.5. Problemer eller potentielle problemer – ....................................................... 13<br />
3.6. Alternative standarder - ................................................................................ 13<br />
4. Åbenhed: .................................................................................................... 14<br />
4.1. Anvendelsesvilkår -...................................................................................... 14<br />
4.2. Fremtidige anvendelsesvilkår –.................................................................... 14<br />
4.3. Dokumentation – .......................................................................................... 14<br />
5. Status: ......................................................................................................... 15<br />
5.1. Foreslået status - Anbefalet, godkendt, de facto, kommende, opretholdt eller<br />
forlad. ........................................................................................................... 15<br />
5.2. Redegørelse for status - Begrundelse for den foreslåede status. .................. 15
16. Indledning<br />
16.1. Baggrund<br />
I FESD-kontrakten mellem de offentlige parter <strong>og</strong> FESD-leverandørerne fremgår<br />
det, at der skal udarbejdes en standard for et workflow-modul. Modulet skal baseres<br />
på en standard til beskrivelse <strong>af</strong> arbejdsgange fra WFMC (Workflow Management<br />
Coalition) eller lignende.<br />
Standardiseringsarbejdet på området har imidlertid udviklet sig væsentligt siden<br />
kontraktens underskrift. Det er således nødvendigt at vurdere, om andre standarder<br />
kan komme i betragtning i stedet.<br />
<strong>IT</strong> <strong>og</strong> <strong>Telestyrelsen</strong> har derfor bedt Devoteam Fischer & Lorenz om en vurdering<br />
<strong>af</strong> standarderne<br />
WS-BPEL 2.0<br />
<strong>BPMN</strong> 1.0<br />
XPDL 1.0<br />
WS-Transaction specifikationens rammeværk WS-Coordination 1.0 samt<br />
de specifikke koordineringstyper WS-Business Activity 1.0 <strong>og</strong> WS-<br />
Atomic Transaction 1.0<br />
Standarderne vurderes i forhold til de parametre, der kræves for optagelse i OIOkatal<strong>og</strong>et.<br />
16.2. Formål med dokumentet<br />
Dette dokument indeholder vurderingen <strong>af</strong> WS-BPEL<br />
16.3. Læsevejledning<br />
Det anbefales, at dokumenterne læses i følgende rækkefølge<br />
WS-BPEL<br />
<strong>BPMN</strong><br />
XPDL<br />
WS-Transaction<br />
Standarderne er på forskelligt modenheds- <strong>og</strong> anvendelses-niveau, hvorfor der vil<br />
være forskel i, hvor deltaljeret de enkelte standarder er beskrevet.
17. Introduktion:<br />
17.1. Standardens navn <strong>og</strong> akronymer.<br />
Web Service Transaction Framework (WSTF) <strong>og</strong> dets tre specifikationer:<br />
WS-Coordination<br />
WS-AtomicTransaction (WS-AT)<br />
WS-BusinessActivity (WS-BA)<br />
17.2. Standardens ejer <strong>og</strong>/eller ansvarligt standardiseringsorgan.<br />
I øjeblikket udarbejdes specifikationen <strong>af</strong> IBM, Microsoft <strong>og</strong> BEA i et lukket forum.<br />
Specifikationen har været gennem udvikling, en offentlig feedback workshop<br />
<strong>og</strong> en offentlig interoperabilitets workshop hvor fem virksomheder medbragte<br />
implementeringer <strong>af</strong> alle tre specifikationer <strong>og</strong> demonstrerede, at de fungerede<br />
sammen.<br />
I løbet <strong>af</strong> september måned 2005 vil specifikationen sendes til OASIS<br />
17.3. Beskrivelse <strong>af</strong> standarden -<br />
(Beskrivelse <strong>af</strong> standarden, dens funktion <strong>og</strong> anvendelse samt væsentlige karakteristika.)<br />
En forretningsproces beskriver opgaverne, der skal udføres, deres rækkefølge, typen<br />
<strong>af</strong> data der deles <strong>og</strong> hvordan andre partnere er involveret. Når forretningsprocessen<br />
<strong>og</strong> forbindelserne med kunder, partnere <strong>og</strong> interne entiteter er defineret<br />
(f.eks. ved brug <strong>af</strong> WS-BPEL), er næste trin, at koordinere de forskellige aktiviteter<br />
der sker i en forretningsproces. WS-Transaction rammeværket komplementerer<br />
WS-BPEL, ved at tilbyde en måde hvormed virksomheder kan koordinere <strong>og</strong><br />
integrere et antal forskellige webservices <strong>og</strong> forretningsprocesser, konsistent <strong>og</strong><br />
troværdigt, på tværs <strong>af</strong> forskellige implementeringsmiljøer for at sikre fælles<br />
enighed om slutresultatet.<br />
Transaktions-understøttelse sikrer, at dette resultat sker konsistent på tværs <strong>af</strong> alle<br />
applikationer, som udgør forretningsaktiviteten. Der er d<strong>og</strong> en udfordring i, at<br />
webservices tilbyder en serviceorienteret, løst koblet <strong>og</strong> potentiel asynkron måde<br />
at udveksle information mellem parterne, mens de underliggende services bruger<br />
traditionel transaktionsbehandlings-infrastruktur. Udfordringen øges ved at transaktioner<br />
i disse bagvedliggende systemer ofte er konstrueret som ACIDtransaktioner<br />
(Figur 8), hvilket kan medføre, problemer når forretningsaktiviteter<br />
sammensættes fra disse services/ressourcer, da det kan medføre, at deltagerne låser<br />
ressourcer <strong>og</strong> forhindre transaktionen i at fortsætte.
Transaktioner er et fundamentalt koncept inden for opbygning <strong>af</strong> troværdige distribuerede<br />
applikationer. En transaktion er en mekanisme til at sikre, at alle deltagere<br />
i en applikation opnår et resultat, de alle er enige om. Traditionelt indeholder<br />
en transaktion følgende egenskaber, som <strong>og</strong>så benævnes ACID:<br />
Atomicity: Transaktionen foregår atomisk, enten udføres hele transaktionen eller<br />
<strong>og</strong>så udføres intet.<br />
Consitency: En transaktion ændrer stadiet fra én konsistent tilstand til en anden<br />
konsistent tilstand.<br />
Isolation: Transaktioner er isolerede fra hinanden. Dvs. en transaktions ændringer<br />
er skjulte for andre samtidige transaktioner, indtil transaktionen er gennemført.<br />
Durability: Når en transaktion er gennemført, overlever dens opdateringer, selv<br />
hvis systemet senere går ned.<br />
Figur 8 Hvad forstås ved ACID-transaktioner<br />
Behovet for ACID-transaktioner kan illustreres, når man ønsker at overføre penge<br />
fra en konto til en anden via sin netbank. Disse konti kan være i den samme finansielle<br />
institution eller i forskellige. Det vigtige er, at pengene aldrig må forsvinde.<br />
Pengene er repræsenteret som data i to databaser, som samarbejder for at sikre at<br />
de data de indeholder, altid er i en kendt <strong>og</strong> konsistens tilstand. Det betyder, at en<br />
enkelt transaktion kan manipulere med data i begge databaser <strong>og</strong> at n<strong>og</strong>et vil garantere,<br />
at kun en ud <strong>af</strong> to mulige resultater vil ske: enten er alle ændringer sket<br />
succesfuldt eller <strong>og</strong>så er der ingen ændringer foretaget. Dette skal <strong>og</strong>så kunne ske<br />
i et distribueret webservice-miljø med forskellige transaktionssystemer hos de enkelte<br />
deltagere.<br />
17.3.1. Formålet med WS-Transaction rammeværket<br />
Formålet med WS-Transaction rammeværket er at fungere som basis, hvorpå der<br />
kan bygges interoperable, distribuerede applikationer, der har behov for at koordinere<br />
deres fælles arbejde.<br />
WS-Transaction rammeværket indeholder specifikationen WS-Coordination, der<br />
tilbyder et rammeværk til at udarbejde protokoller, som kan koordinere aktiviteter<br />
blandt distribuerede applikationer. Rammeværket defineret i WS-Coordination<br />
giver mulighed for, at en applikationsservice kan danne det indhold, som er nødvendigt<br />
for at udbrede en aktivitet til andre services <strong>og</strong> til at registrerer koordinationsprotokoller.<br />
Rammeværket tillader eksisterende workflow til behandling <strong>af</strong><br />
transaktioner, workflow <strong>og</strong> andre koordinationssystemer at skjule deres proprietære<br />
protokol <strong>og</strong> operere i et heter<strong>og</strong>ent miljø. Specifikationerne WS-<br />
AtomicTransaction <strong>og</strong> WS-BusinessActivity er protokolspecifikationer udarbejdet<br />
på grundlag <strong>af</strong> WS-Coordination rammeværket.
WS-AtomicTransaction 2 bruges, når man bygger applikationer, der kræver en<br />
konsistent forståelse <strong>af</strong> resultatet ved korterevarende distribuerede aktiviteter <strong>af</strong><br />
typen ”alt eller intet”. Det vil sige, at de handlinger, der tages før bekræftelsen,<br />
kun er foreløbige, altså ikke endelige <strong>og</strong> ikke synlige for andre aktiviteter. Når en<br />
applikation <strong>af</strong>sluttes, anmoder den koordinatoren om at bestemme resultatet <strong>af</strong><br />
transaktionen. Koordinatoren undersøger, om der har været n<strong>og</strong>le fejl i behandlingen<br />
ved at spørge deltagerne. Hvis alle deltagerne siger, at de eksekverede korrekt,<br />
vil koordinatoren bekræfte alle handlinger, <strong>og</strong> de vil være synlige for andre<br />
transaktioner. Hvis en deltager siger, at han ikke eksekverede korrekt, vil koordinatoren<br />
<strong>af</strong>bryde alle handlinger, <strong>og</strong> de vil blive stillet tilbage, som om handlingen<br />
aldrig var udført.<br />
WS-BusinessActivity 3 , som bruges, når man bygger applikationer, der kræver en<br />
konsistent forståelse <strong>af</strong> koordineringen <strong>af</strong> en længerevarende distribueret aktivitet,<br />
f.eks. hvor der kræves menneskelig godkendelse, produktion eller leverance <strong>af</strong><br />
en vare, før et svar kan sendes tilbage. Ressourcer kan derfor ikke låses (eller det<br />
er ikke praktisk at gøre det) <strong>og</strong> de handlinger, der udføres, kan ikke skjules for<br />
andre aktiviteter, men er øjeblikkeligt tilgængelige. I tilfælde <strong>af</strong> fejl er det derfor<br />
nødvendigt at udføre kompensationsaktiviteter, da man ikke kan returnere til det<br />
oprindelige stadie. En WS-BusinessActivity-service vil typisk koordinere flere<br />
WS-AtomicTransactions. Selvom komplet ACID ikke opnås ved en BA, kan konsistens<br />
stadig opnås gennem kompensation. Opgaven med at skrive korrekte kompensationsaktiviteter<br />
(<strong>og</strong> derved den samlede systemkonsistens) er delegeret til<br />
udviklerne <strong>af</strong> de services, der kontrolleres <strong>af</strong> BA-koordinatoren. Sådanne kompensationer<br />
kan foretage tilbagestillinger, men vil typisk involverer fremadrettede<br />
kompensationsaktiviteter.<br />
17.4. Beskrivelse <strong>af</strong> standardens kontekst<br />
(Hvilke andre standarder berører standarden.)<br />
WS-Coordination bruges til at koordinere WS-BPEL forretningsprocesser<br />
Den anvender WS-policy familien <strong>af</strong> specifikationer til at tilbyde deltagere <strong>og</strong> koordinatorer<br />
at beskrive <strong>og</strong> annoncerer deres muligheder <strong>og</strong>/eller krav.<br />
I Figur 4 angiver hvordan Microsoft <strong>og</strong> IBM ser placeringen <strong>af</strong> transaktioner i<br />
webservice-protokolarkitekturen<br />
2 http://www-106.ibm.com/developerworks/library/ws-atomtran/<br />
3 http://www-106.ibm.com/developerworks/library/ws-busact/index.html
Figur 9 Placeringen <strong>af</strong> webservice-standarderne (kilde Microsoft <strong>og</strong> IBM)<br />
17.5. Beskrivelse <strong>af</strong> standardens tekniske aspekter<br />
(Beskrivelse <strong>af</strong> de tekniske aspekter <strong>af</strong> standarden, som underliggende format <strong>og</strong><br />
versionering.)<br />
Specifikationen er baseret på XML <strong>og</strong> er ligesom andre webservice/specifikationer<br />
opbygget efter ”composability”-princippet, hver specifikation<br />
der udvikles, løser et specifikt behov <strong>og</strong> er værdifuld i sig selv.<br />
Standarderne er opbygget efter principper om udvidelsesbar, hvilket betyder, at<br />
virksomheder kan udvide <strong>og</strong> tilrette rammeværket til at imødegå ændrede forretningskrav.<br />
Det tillader, at værktøjerne kan udvikles i samklang med udviklingen i<br />
forretningskravene, hvorved længerevarende udviklingsomkostninger spares, efterhånden<br />
som ens behov ændres.<br />
WS-Transcation rammeværket indeholder ikke selv en overordnet specifikation,<br />
men indeholder pt. kun WS-Coordination rammeværket, der udover en generel<br />
specifikation <strong>af</strong> hovedelementer til brug ved koordineringer, indeholder koordinationsprotokollerne<br />
WS-BusinessActivity <strong>og</strong> WS-AtomicTransaction. Denne opbygning<br />
kan give lidt forvirring <strong>og</strong> det må forventes, at når den har været gennem<br />
OASIS-standardiseringen, vil det være meget tydeligt.
17.5.1. WS-Coordination<br />
WS-Coordination rammeværket definerer tre hovedelementer som sædvanligvis<br />
bruges i forskellige koordinationsmodeller.<br />
En Activation Service, en service der bruges <strong>af</strong> klienterne til at danne et<br />
koordineret indhold (en aktivitet). Det er den, der begynder en ny aktivitet<br />
ved at returnere en CoordinationContext, der indeholder information som:<br />
o Et unikt navn til at identificere hver CoordinationContext<br />
o Hvornår aktiviteten udløber (timeout værdi)<br />
o En koordinationstype der beskriver hvilken koordinations protokol<br />
der skal bruges (f.eks. AtomicTransaction)<br />
o Adressen for registreringsservicen<br />
o Implementeringsspecifikke udvidelser<br />
En Registration service, en service brugt <strong>af</strong> deltagerne til at registrerer<br />
ressourcer, der skal inkluderes i en specifik koordinationsprotokol.<br />
En Coordination service, for behandling i forbindelse med aktivitetens <strong>af</strong>slutning<br />
Når en koordinationsprotokol er brugt, er der flere enslydende krav, der kan bruges<br />
<strong>af</strong> enhver samling <strong>af</strong> webservices, der ønsker at udføre en koordineret aktivitet<br />
Instantiering (eller aktivering) <strong>af</strong> en ny koordinator for den specifikke koordinationsprotokol<br />
for en specifik applikationsinstans. Her bliver deltagerne<br />
forbundet.<br />
Registrering <strong>af</strong> deltagerne hos koordinatoren, sådan at de vil modtage koordinatorens<br />
protokolbesked gennem applikationens livstid.<br />
Udsendelse <strong>af</strong> kontekst-information mellem webservices der udgør applikationen<br />
En entitet der udfører koordinationsprotokollen, indtil den er <strong>af</strong>sluttet<br />
Figur 10 illustrerer de ovenfor nævnte typer <strong>af</strong> services.
Figur 10 Illustration <strong>af</strong> typer <strong>af</strong> services involveret i en koordinering (kilde Microsoft)<br />
1. Ved at sende en CreateCoordinationContext besked til Activation servicen<br />
instantieres en aktivitet<br />
2. CoordinationContext er udsendt fra A til B som en SOAP header i en applikationsbesked.<br />
Det fungerer som en invitation til B om at deltage i aktiviteten<br />
ved brug <strong>af</strong> en <strong>af</strong> koordinationsprotokollerne for denne koordinationstype.<br />
B kan enten vælge at registre eller lade være.<br />
3. Service B registrerer sig hos A ved brug <strong>af</strong> indholdet i CoordinationContext<br />
4. Koordinationsprotokollen kan derefter begynde mellem deltagerne<br />
WS-AtomicTransaction<br />
WS-AtomicTransaction protokollen bruges i eksisterende miljøer, hvor behandlingen<br />
er baseret på den kendte atomic-transaktionsmodel. Det muliggør bevarelse<br />
<strong>af</strong> eksisterende softwareinvesteringer når virksomheden anvender et webservicemiljø.<br />
Den beskriver tre koordinationsprotokoller (opsplittet i Figur 11)<br />
Completion: En applikation fortæller koordinatoren at den enten skal forsøge at<br />
bekræfte eller <strong>af</strong>lyse en atomic-transaktion (Completion Participant Service)<br />
Volatile2PC: Efter koordinatoren modtager en commit besked, begynder den forbered<br />
(prepare) fasen hos alle deltagere registreret til Volatile2PC protokollen.<br />
Alle deltagere skal svare før end en Prepare besked er sendt til deltagere registre-
et for Durable2PC protokollen (Volatile2PC bruges til at håndtere flygtige ressourcer<br />
såsom en cache) (Volatile2PC participant service)<br />
Durable2PC: Når prepare-fasen for Volatile2PC deltagere er <strong>af</strong>sluttet, kan koordinatoren<br />
påbegynde prepare-fasen for Durable2PC deltagere. Alle delagere registreret<br />
til denne protokol må svare enten Prepared eller ReadOnly før en commmit<br />
notifikation er sendt til deltagere registreret for alle protokoller. Denne protokol<br />
garanterer, at beskeden med det endelige resultat bliver <strong>af</strong>leveret til hver enkelt<br />
deltager. (varige ressourcer såsom databaser, filsystemer eller en varig køservice<br />
bør bruge denne two-phase-commit (2PC) protokol) (Durable2PC participant<br />
service)<br />
Figur 11 Beskedsekvens ved en Atomic Transaction commit (kilde Microsoft)<br />
1. Når alt arbejdet er <strong>af</strong>sluttet, vil applikationen starte commit processen ved<br />
at sende en Commit-besked til koordinatoren. Koordinatoren starter Preparefasen<br />
hos Volatile2PC deltagerne ved at sende en Prepare-besked. Hver Volatile2PC<br />
deltager signaler, at den har <strong>af</strong>sluttet succesfuldt ved at sende en Prepared-besked.<br />
2. Koordinatoren starter Prepare-fasen hos Volatile2PC-deltagerne ved at<br />
sende en Prepare-besked. Hver Volatile2PC-deltager signalerer, at det succesfuldt<br />
har <strong>af</strong>sluttet forberedelsen ved at sende en Prepared-besked<br />
3. Når alle Prepared-beskeder er modtaget, vil koordinatoren påbegynde Prepare-fasen<br />
hos Durable2PC deltagerne ved at sende en Prepare-besked. Hver<br />
Volatile2PC-deltager signalerer, at det succesfuldt har <strong>af</strong>sluttet forberedelsen<br />
ved at sende en Prepared-besked<br />
4. Når alle Prepared-beskeder er modtaget, vil koordinatoren beslutte at bekræfte<br />
ved at sende en Comitted-besked til applikationen <strong>og</strong> en Commit-
esked til både Volatil2PC <strong>og</strong> Durable2PC deltagerne. Der er ingen specifik<br />
rækkefølge.<br />
WS-BusinessActivity<br />
En Business Activity service forventes at bruge flere atomic transactions for at<br />
flytte en applikation fra et konsistent stadie til et andet. Protokollerne tilbyder en<br />
standardiseret måde, hvormed services kan opnå en samlet enighed, samtidighed<br />
med at deres autonomi bibeholdes.<br />
Figur 12 Business Activity eksempel (kilde Microsoft)<br />
1. Køberens service sender hver sælger en Indkøbsordre-besked med en<br />
CoordinationContext header.<br />
2. Alle tre sælgere registrerer sig<br />
3. Herefter har hver <strong>af</strong> de tre sælgere forskelligt forløb<br />
a. Sælger A kan ikke <strong>af</strong>give et tilbud. Det notificerer køberen ved at<br />
bruge protokollens Fault-besked<br />
b. Både sælger B <strong>og</strong> C kan <strong>af</strong>give et tilbud. De informerer køberen<br />
ved brug <strong>af</strong> protokollens Completed-besked, prisinformation vil<br />
være inkluderet i beskeden.<br />
4. Efter at have kigget på tilbuddene fra B <strong>og</strong> C vælger køberen B<br />
a. Den informerer B med protokollens Close-besked<br />
b. Den informerer C med protokollens Compensate-besked.
17.6. Forgængere<br />
(Eventuelle standarder som <strong>af</strong>løses eller udbygges <strong>af</strong> den aktuelle standard.)<br />
Den er ikke <strong>af</strong>løser for andre standarder
18. Nytteværdi:<br />
18.1. Udbredelse - Omfanget <strong>af</strong> standardens anvendelse<br />
<strong>og</strong> mængden <strong>af</strong> erfaringer.<br />
De to drivkræfter bag web service standarder (IBM, Microsoft) står sammen med<br />
enkelte andre organisationer (BEA, IONA <strong>og</strong> Hitachi) bag denne standard. Det er<br />
derfor sandsynligt, at en koordinationsstandard vil basere sig på denne, men standarden<br />
er kun i begrænset omfang implementeret i egentlige produkter <strong>og</strong> derfor<br />
<strong>og</strong>så begrænset anvendt i faktiske implementeringer.<br />
18.2. Standardens modenhed.<br />
Standarderne er endnu ikke sendt til n<strong>og</strong>et standardorgan <strong>og</strong> brugen <strong>af</strong> standarden<br />
er <strong>og</strong>så begrænset.<br />
WS-Transactions rammeværket er ment som en portefølje <strong>af</strong> transaktionsmodeller,<br />
hver tilpasset et specifikt problemdomæne. Efterhånden som der kommer<br />
brugssituationer, der ikke kan understøttes med de eksisterende protokoller, vil<br />
nye protokoller blive tilføjet.<br />
18.3. Egnethed - Forhold der gør standarden mere eller<br />
mindre oplagt inden for forvaltning i Danmark.<br />
Standarden er baseret omkring webservice-standarderne <strong>og</strong> vil derfor indgå som<br />
en naturlig del <strong>af</strong> andre standarder indenfor forvaltning i Danmark.<br />
18.4. Potentiale –<br />
(Standardens potentiale til at forbedre forvaltning i Danmark. Er den "Need to<br />
have" eller "Nice to have".)<br />
Interoperabilitet mellem eksisterende transaktions-systemer er en vigtig del <strong>af</strong><br />
webservices-transaktioner. Sådanne systemer udgør allerede rygraden i mange<br />
virksomheders systemer <strong>og</strong> vil fortsætte med at gøre det med webservices. B2B<br />
aktiviteter vil involvere back-end transaktions-systemer enten direkte eller indirekte<br />
<strong>og</strong> muligheden for at binde disse miljøet sammen, vil være <strong>af</strong>gørende for<br />
succesfuld anvendelse <strong>af</strong> webservices-transaktioner<br />
WS-BusinessActivity giver mulighed for, at udviklere <strong>af</strong> services kan definere<br />
deres egne kompensationsmekanismer, som passer bedst til deres forhold, samtidig<br />
med, at der tilbydes en simpel model for brugere <strong>af</strong> disse services.<br />
WS-Transaction protokollerne udvider derved muligheden for ACIDtransaktioner<br />
til et løst koblet miljø <strong>og</strong> samtidig bibeholdes det bagvedliggende<br />
typisk tæt koblede interne miljø i virksomheden.
18.5. Problemer eller potentielle problemer –<br />
(Problemer eller eventuelle fremtidige problemer forbundet med standarden. Fx<br />
manglende interoperabilitet mellem versioner.)<br />
Standarden er endnu ikke sendt til n<strong>og</strong>en standardiseringsorgan <strong>og</strong> det må forventes<br />
at der vil ske n<strong>og</strong>le ændringer. De grundlæggende funktioner vil d<strong>og</strong> ligge fast.<br />
18.6. Alternative standarder -<br />
(Eventuelle standarder, der udfylder samme rolle (evt. med overlap til andre funktionaliteter<br />
- f.eks. ATOM ift. RSS))<br />
Der er lavet flere initiativer for opbygning <strong>af</strong> transaktionsprotokoller. Det førsteforsøg<br />
var OASIS Business Transaction Protocol fra 2001; det var efterfulgt <strong>af</strong><br />
Web Services Atomic Transaction <strong>og</strong> Web Services Business Activity specfikationen<br />
fra IBM, Microsoft <strong>og</strong> BEA i august 2002 <strong>og</strong> opdateret november 2004 <strong>og</strong><br />
senest Web Services Transaction Management specifikationen fra Sun, Oracle <strong>og</strong><br />
andre i august 2003.
19. Åbenhed:<br />
19.1. Anvendelsesvilkår -<br />
(Vilkår for anvendelse <strong>af</strong> standarden, som fx om der skal betales <strong>af</strong>gifter, royalties<br />
eller andet.)<br />
Den OASIS Technical Committee (TC) der nedsættes for at standardisere specifikationen<br />
vil operere under "RF (Royalty Free) on RAND Terms" IPR mode, som<br />
defineret i OASIS Intellectual Property Rights (IPR) Policy<br />
19.2. Fremtidige anvendelsesvilkår –<br />
(Mulighed for at anvendelsesvilkårene for standarden eller fremtidige versioner<br />
<strong>af</strong> standarden ændres.)<br />
Der forventes ingen ændringer i anvendelsesvilkårene<br />
19.3. Dokumentation –<br />
(I hvilket omfang er standarden dokumenteret <strong>og</strong> i hvilket omfang er dokumentationen<br />
tilgængelig.)<br />
Specifikationen er veldokumenteret <strong>og</strong> er tilgængelig for alle.
20. Status:<br />
20.1. Foreslået status - Anbefalet, godkendt, de facto, kommende,<br />
opretholdt eller forlad.<br />
Kommende<br />
20.2. Redegørelse for status - Begrundelse for den foreslåede<br />
status.<br />
Der er fortsat megen usikkerhed om hvor godt standarden er designet. Forholdet<br />
til den konkurrerende standard Web Services Transaction Management er <strong>og</strong>så<br />
u<strong>af</strong>klaret, ligesom at den praktiske anvendelse er meget begrænset. Det er mulighed<br />
for at Web Service Transaction Management protokollen bliver bygget som<br />
en del <strong>af</strong> WS-Coordination, men der er endnu ingen endelig <strong>af</strong>klaring.<br />
Hvis der er behov for en koordinationsprotokol på dette stadie anbefales det at<br />
anvende WS-Coordination protokollerne. D<strong>og</strong> skal man være opmærksom på at<br />
koordinationsprotokoller <strong>af</strong> disse typer er typisk n<strong>og</strong>et der er dybt implementeret i<br />
produkterne <strong>og</strong> ikke et spr<strong>og</strong> man vælger såsom WS-BPEL. F.ek.s. vil WS-<br />
AtomicTransaction & WS-Coordination blive implementeret som del <strong>af</strong> Windows<br />
Communication Foundation (WCF). WS-AT er den måde WCF håndterer transactions-flow<br />
mellem services.<br />
20.3. Referencelink<br />
http://www-128.ibm.com/developerworks/library/specification/ws-tx/<br />
Forvent d<strong>og</strong>, at det vil ændre sig når den bliver overgivet til OASIS