Computable.nl
  • Thema’s
    • Carrière
    • Innovatie & Transformatie
    • Cloud & Infrastructuur
    • Data & AI
    • Governance & Privacy
    • Security & Awareness
    • Software & Development
    • Werkplek & Beheer
  • Sectoren
    • Channel
    • Financiële dienstverlening
    • Logistiek
    • Onderwijs
    • Overheid
    • Zorg
  • Computable Awards
    • Overzicht
    • Nieuws
    • Winnaars
    • Partner worden
  • Vacatures
    • Vacatures bekijken
    • Vacatures plaatsen
  • Bedrijven
    • Profielen
    • Producten & Diensten
  • Kennisbank
  • Nieuwsbrief

BPEL of state transitions?

03 november 2005 - 23:004 minuten leestijdOpinieGovernance & Privacy
Rick van der Lans
Rick van der Lans

Door de komst van de service oriented architecture is de interesse voor business process modellering fors toegenomen. Zeker nu we met talen als BPEL (Business Process Execution Language) deze business processen formeel kunnen uitschrijven en er tools zijn waarmee we ze kunnen verwerken, de zogenaamde BPEL-engines. Maar is BPEL wel voor elke situatie ideaal? 

De bouwstenen van BPEL (en ook van BPEL-achtige talen) zijn gebaseerd op de bouwstenen van klassieke, procedurele programmeertalen. We kunnen met BPEL bijvoorbeeld condities en lussen programmeren en we kunnen aan variabelen een waarde toekennen. Het effect is dat een BPEL-proces een serieel karakter heeft. In feite is het een stappenplan. Voer eerst stap één uit, dan stap twee, als de conditie waar is dan stap drie en anders stap vier. Uiteraard kunnen er zaken parallel uitgevoerd worden, maar het blijft een serieel stappenplan.
 
Een stappenplan zal voor vele business processen meer dan geschikt zijn, maar niet voor alle! Wat gebeurt er bijvoorbeeld als ineens van dat seriële stappenplan wordt afgeweken? Wat als er ineens op dit proces wordt ingebroken? Als daar in het BPEL-model niet op geanticipeerd wordt, dan hebben we een probleem.
 
Er zijn situaties die zo event-driven van aard zijn dat het werken met seriële stappenplannen geen zin heeft. BPEL is dan niet de geschikte taal. Neem bijvoorbeeld het begrip vlucht van een fictieve vliegtuigmaatschappij genaamd HappyAir. Veronderstel dat HappyAir een vlucht inplant voor de komende zomer van Amsterdam naar San Francisco. Eerst zal een vliegtuigmodel, bijvoorbeeld een Boeing 777, aan de vlucht toegekend moeten worden. Dit is het eerste event dat op deze specifieke vlucht uitgevoerd wordt en daarmee de status van die vlucht verandert. Vervolgens kan het zijn dat er enkele piloten worden toegewezen en daarna een crew bestaande uit stewards en stewardessen. Dan worden er door klanten reserveringen voor de stoelen en voor vracht gemaakt. Dit zijn allemaal events die in een willekeurige volgorde aangeleverd worden en door HappyAir uitgevoerd moeten worden. Veronderstel dat om bepaalde redenen besloten wordt een ander vliegtuigmodel in te zetten. Alles verandert hierdoor. Bijvoorbeeld, andere piloten en een andere crew moet gekozen worden en passagiers zullen verplaatst moeten worden.
 
We kunnen hier wel een BPEL-model voor maken, maar een State Transition Diagram (STD) zal veel eenvoudiger en veel geschikter zijn. Het modelleren van deze event-driven omgeving voor een vlucht zal met een STD passender zijn. De mogelijke events die de status van een vlucht kunnen veranderen, worden dan geïnventariseerd en gedefinieerd. Deze events mogen dan op elk moment afgevuurd worden. Geen seriële, maar een event-driven status-georienteerde definitie.
 
Uiteraard vereist dit wel dat we engines hebben die in staat zijn deze STD’s te verwerken. Laten we ze state transition diagram engines noemen. Dus wat een BPEL-engine is voor BPEL, dat is een STD-engine voor een STD. Sommige leveranciers, zoals IBM, ondersteunen momenteel naast BPEL een STD-engine. Het is wel interessant om te weten dat achter de schermen dit specifieke product van IBM elke STD omzet naar BPEL. Dus deze wordt uiteindelijk wel door de BPEL-engine verwerkt.
 
Het is niet dat BPEL geen nut heeft. Voor de wat meer seriële situaties is BPEL een prima optie. Maar ik denk dat we realistisch moeten zijn en de beperkingen van BPEL moeten accepteren en het daar moeten inzetten waar het geschikt is: in de niet event-driven omgevingen. In event-driven omgevingen zijn STD’s echter aan te bevelen en vormen een verrijking van de service oriented architecture. Hopelijk zullen vele leveranciers van Enterprise Service Bussen deze niet-seriële toepassing aan hun producten toevoegen.

 
Rick F. van der Lans is onafhankelijk adviseur, een internationaal bekend spreker en auteur van diverse boeken, tevens gespecialiseerd in softwareontwikkeling, datawarehousing en internet.

Meer over

Oracle-middlewareSOA

Deel

    Inschrijven nieuwsbrief Computable

    Door te klikken op inschrijven geef je toestemming aan Jaarbeurs B.V. om je naam en e-mailadres te verwerken voor het verzenden van een of meer mailings namens Computable. Je kunt je toestemming te allen tijde intrekken via de af­meld­func­tie in de nieuwsbrief.
    Wil je weten hoe Jaarbeurs B.V. omgaat met jouw per­soons­ge­ge­vens? Klik dan hier voor ons privacy statement.

    Whitepapers

    Computable.nl

    GenAI: Veiligheidsrisico of wapen tegen dreiging?

    Wat AI betekent voor jouw securityaanpak? Alles over de risico’s en strategieën om GenAI verantwoord in te zetten.

    Computable.nl

    Bouw de AI-organisatie niet op los zand

    Wat is de afweging tussen zelf bouwen of het benutten van cloud?

    Computable.nl

    Beveiliging en IT samen sterk tegen bedreigingen

    Deze paper geeft concrete strategieën en handvatten om IT en Security effectiever te integreren.

    Meer lezen

    AchtergrondCloud & Infrastructuur

    Europese it moet nú regie pakken

    OpinieData & AI

    Van data-marktplaatsen tot dark data: de rol van authenticiteit in ai

    OpinieSecurity & Awareness

    Iot-beveiliging: het vergeten risico in cybersecuritystrategie

    Europese Unie
    AchtergrondCloud & Infrastructuur

    Geen one-fits-all-oplossing voor soevereine EU-cloud

    lui
    OpinieInnovatie & Transformatie

    Waarom ‘leverancier van jouw leverancier’ groot risico kan zijn

    ActueelCloud & Infrastructuur

    Zo krijgt de overheid meer grip op clouddiensten

    Geef een reactie Reactie annuleren

    Je moet ingelogd zijn op om een reactie te plaatsen.

    Populaire berichten

    Meer artikelen

    Uitgelicht

    Partnerartikel
    AdvertorialInnovatie & Transformatie

    Computable Insights

    Een ai-agent die klantvragen afhandelt. Dat is een van de nieuwste troeven van softwareproducent Salesforce, dat daarmee meesurft op de...

    Meer persberichten

    Footer

    Direct naar

    • Carrièretests
    • Kennisbank
    • Planning
    • Computable Awards
    • Magazine
    • Abonneren Magazine
    • Cybersec e-Magazine

    Producten

    • Adverteren en meer…
    • Jouw Producten en Bedrijfsprofiel
    • Whitepapers & Leads
    • Vacatures & Employer Branding
    • Persberichten

    Contact

    • Colofon
    • Computable en de AVG
    • Service & contact
    • Inschrijven nieuwsbrief
    • Inlog

    Social

    • Facebook
    • X
    • LinkedIn
    • YouTube
    • Instagram
    © 2025 Jaarbeurs
    • Disclaimer
    • Gebruikersvoorwaarden
    • Privacy statement
    Computable.nl is een product van Jaarbeurs