lördag, maj 06, 2006

BPEL vs WF

Om vi tar med oss jämförelsen från förra bloggen om Aktiviteter och tjänster, alltså att:

"Man kan alltså säga att processer består av aktiviteter som i sin tur kan, men behöver inte, nyttja andras resurser och tjänster."

Utifrån det så kan man se skillnaderna mellan Workflow Foundation och BPEL4WS mycket mer tydligt.

WF stämmer mycket väl in på beskrivningen ovan efter som man har ett val att i implementationen av ett workflow/process välja om man vill nyttja andra tjänster för arbetet som krävs i en aktivitet eller utföra arbetet själv. Möjligheten ligger i förmågan hos WF att nyttja XAML som är flexibelt på så sätt att det går att bygga ut som språk. Man kan alltså skapa aktiviteter som kan utföra vilket arbete som helst med dina egna resurser.

BPEL4WS o andra sidan stämmer delvis in i beskrivningen ovan. BPEL måste nyttja tjänster och kan inte själv klara av det arbete som en aktivitet kräver (med undantag av mycket enkla sådana). BPEL är inte som XAML utbyggbart utan förlitar sin flexibilitet till tjänsteutnyttjande.

Aktiviteter och tjänster

I workflow-sammanhang så nämns ofta ordet aktivitet, exempelvis i Workflow Foundation från Microsoft. Ordet tjänst och andra sidan känner vi från då man exempelvis pratar om Web Services, men även i vanligare sammanhang som att utföra ett jobb åt någon annan. Men, vad har de med varandra att göra?

För att förklara det så måste vi se till ordet process som är nära besläktat med workflows. En sökning i wikipedia på ordet process ger följande:

”De aktiviteter som genomförs för att åstadkomma en förändring av ett objekt över tiden.”

Söker man på susning.nu efter ordet aktivitet ger det:

”Aktivitet är en händelse i tid, som involverar en eller flera resurser”

Som vi väl känner till så kan ordet arbete även representera det som händelsen resulterar i.

Kommer vi då även till ordet tjänst så säger susning.nu:

”En tjänst är ett visst arbete som utförs till nytta för någon annan.”

Man kan alltså säga att processer består av aktiviteter som i sin tur kan, men behöver inte, nyttja andras resurser och tjänster.