• Save
Business Process Execution Language (BPEL)
Upcoming SlideShare
Loading in...5
×
 

Business Process Execution Language (BPEL)

on

  • 2,764 views

Voor Avans Hogeschool

Voor Avans Hogeschool
28 februari 2008

Statistics

Views

Total Views
2,764
Views on SlideShare
2,758
Embed Views
6

Actions

Likes
1
Downloads
0
Comments
0

2 Embeds 6

http://www.slideshare.net 5
http://www.linkedin.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

Business Process Execution Language (BPEL) Business Process Execution Language (BPEL) Presentation Transcript

  • Business Process Execution Language (BPEL) Voor Avans Hogeschool 28 februari 2008 Spreker : Ing. Richard Claassens MIM Bedrijf : SNS Bank Afdeling : SNS IT - Architectuur Functie : Informatie Architect
  • Agenda
    • BPEL
      • Positionering
      • Wat is het ?
      • Waarom ?
    • BPEL
      • Waar is het uit opgebouwd ?
    • BPEL in een groter geheel
    • BPEL en de SNS Bank
  • Positionering van BPEL
    • Een standaard die voorbouwt op Web Services (WS) standaarden en daarop een aanvulling biedt
    *) Deze verzameling van standaarden is nog volop in ontwikkeling BPEL (4WS) WSDL, WS-policy, UDDI, WS-Inspection Security Reliable Transactions Soap, logical messaging XML , encoding Other protocols Other services Composition Description Quality Of Service *) Interaction
  • Relevante WS-standaarden
    • Extensible Markup Language (XML)
      • Is een flexibel tekstformaat voor de opslag van data
      • Is een meta opmaak (markup) taal voor de beschrijving van gestructureerde data (gegevens)
    • Simple Object Access Protocol (SOAP)
      • Netwerk-, transport- en programmeertaal-onafhankelijk protocol
      • Biedt een service aanvrager de mogelijkheid om een aanroep te doen naar een service aanbieder
      • Het berichtformaat is XML
    • Web Service Description Language (WSDL)
      • Een grammatica voor het beschrijven van services over
        • Wat deze doet , waar deze te vinden is , hoe deze kan worden aangeroepen
        • Het berichtformaat is XML
    • Universal Discovery Description and Integration (UDDI)
      • Infrastructuur om services te publiceren
  • Positionering van Web Services en BPEL SGML EDI XML DCE RPC OMG Corba SOAP + WS Native workflow BPEL A) Gevestigd B) Ontwrichtend Goedkoper, gemakkelijker in gebruik,.. Performance Gevestigde technologie Ontwrichtende technologie A B C bovengrens D ondergrens Tijd Efficiënter, betere performance, complexer,..
  • BPEL en Business Process Management Mid-late 1980s 2002-05 2006+ Mid-late 1990s Total BPM Two different kinds of Business Process Management Systems (BPMS):
    • Integration Centric
    • Human Centric
    Workflow
    • BPEL is ontwikkeld vanuit een “integration centric”- invalshoek
    • Human Centric uitbreiding zijn voorgesteld in BPEL4People en WS-HumanTask
    Business Process Management Separate market Expanded into BPM Enterprise Application Integration Business Process Integration Business Process Management Document Imaging
    • Een technische standaard
      • om interactie tussen applicaties en componenten te beschrijven en die tot een bedrijfsproces samen te voegen (composition)
    • Wanneer een proces in BPEL beschreven is, kan het worden ontkoppeld van de machine waar het proces uiteindelijk wordt uitgevoerd
      • Ontkoppeling van
        • Hulpmiddelen om te beschrijven
        • Run-time gebruik om het proces te executeren ( execution language )
    Wat is BPEL ?
  • Waarom BPEL ? Een antwoord op de choreografie uitdaging Bedrijfsproces Service 1 Service 2 Service 5 Service 4 Service 6 Service 3 Service 1 Service 3 Service 2 Service 4 VAN: NAAR:
    • Beter te monitoren en te beheren
    • Aanpassingen zijn eenvoudiger een sneller door te voeren
    • Services blijven eenvoudiger en zijn daardoor eerder te hergebruiken
  • Agenda
    • BPEL
      • Positionering
      • Wat is het ?
      • Waarom ?
    • BPEL
      • Waar is het uit opgebouwd ?
    • BPEL in een groter geheel
    • BPEL en de SNS Bank
  • Bedrijfsproces Receive Assign Invoke Assign Invoke Assign Reply Vluchtreservering Hotelreservering < invoke partnerLink=“Vluchtreservering” portType=“VluchtreserveringPT” operation=“VerzoekVluchtReservering inputVariable=“VluchtreserveringVerzoek” outputVariable=Reserveringsinformatie”> BPEL code
    • Leesbaar en executeerbaar door machine
    • “ Leesbaar” door BPEL-expert
    BPEL bouwstenen
    • Begrijpelijk voor Businessanalisten
    Voorbeeld: Reserveren van een reis Gebaseerd op : BPEL4WS 1.1
  • BPEL kenmerken
    • Ondersteuning van
      • Parallelle uitvoering van activiteiten
      • Langlopende transacties
        • Seconde…….maanden
    • Geen (directe) ondersteuning van
      • Gedistribueerde ACID-transacties
      • “ Human”-workflow
  • Receive Assign Invoke Throw Reply een wachttoestand waarbij wordt gewacht op een passend bericht Verzending van een bericht als een reactie op een bericht dat eerder door middel van een receive ontvangen is Roep een eenrichtings- of een vraag/antwoord-operatie aan op een poorttype, die door een partner wordt aangeboden Muteer de waarden van variabelen of partnerlinks met nieuwe data Genereer een fout vanuit het business proces Terminate Stop onmiddellijk de uitvoering van een business proces Wait Wacht een gegeven periode of totdat een bepaald tijdstip verstreken is BPEL bouwstenen Gebaseerd op : BPEL4WS 1.1
  • Empty While Switch Pick Sequence Voegt een “doe-niets” instructie toe in het business proces Een verzameling activiteiten de sequentieel uitgevoerd moeten worden Selecteer een tak van activiteiten uit een keuzeverzameling Wijst op een activiteit die herhaaldelijk moet worden uitgevoerd totdat aan een vooraf bepaald criterium is voldaan Een wachttoestand waarin op een passend bericht wordt gewacht of op verstrijken van een time-out Flow Wijst op een of meer activiteiten die parallel uitvoerbaar zijn Scope Definieert een groep van activiteiten met hun eigen variabelen, fout afhandelaar en compensatie afhandelaar BPEL bouwstenen Gebaseerd op : BPEL4WS 1.1
  • BPEL globale structuur Partner Links Variables CorrelationSets FaultHandlers EventHandlers CompensationHandlers Receive Reply Activity Process Partijen die met het bedrijfsproces interacteren Variabelen gebruikt in de processen Verzamelingen van kenmerken die door alle berichten in een correlatiegroep worden gebruikt Activiteiten die uitgevoerd moeten worden als reactie op een fout Parallelle aanroepen wanneer een passende gebeurtenis optreedt Groepering van compenserende acties Gebaseerd op : BPEL4WS 1.1
  • Compensatie-acties A’ B’ C’ Invoke Invoke Invoke A B C C’ B’ A’ Bij elke actie kan een ongedaan-maken-actie (compensatie) worden gedefinieerd De compensatie-acties worden automatisch uitgevoerd wanneer het proces mislukt CompensationHandlers Gebaseerd op : BPEL4WS 1.1
  • Agenda
    • BPEL
      • Positionering
      • Wat is het ?
      • Waarom ?
    • BPEL
      • Waar is het uit opgebouwd ?
    • BPEL in een groter geheel
    • BPEL en de SNS Bank
    • Twee mogelijke invalhoeken
      • Event Oriented
        • Pi-Calculus (of Event Calculus)
          • Voor het beschrijven en modelleren van parallel communicerende systemen
        • BPEL, WS-CDL
      • Activity Oriented
        • Petri nets
          • Voor het beschrijven en modelleren van eindige toestandsmachines
        • WfMC
    Bedrijfsproces modellering
  • Choreografie versus Orkestratie
    • Choreografie
      • Richt zich op het totaal van 2-zijde dialogen tussen verschillende participanten in een samenwerkingsverband waarbij meer partijen betrokken zijn
      • Is onafhankelijk van een platform of programmeermodel
      • Binnen en buiten vertrouwelijke domeinen
      • Heeft geen centrale coördinator (het is wel te monitoren)
      • Meest belovende standaard : Web Services Choreography Description Language (WS-CDL)
    • Orkestratie
      • Richt zich op het gedrag van een enkele participant in een hub/spoke-model
      • Bevindt zich op een centrale coördinator in een gedistribueerd systeem
      • Dwingt lokaal de voortgang van processen af volgens een bepaald schema
      • Meest belovende Standaard: Business Process Execution Language (BPEL)
  • Voorbeeld order Order verzoek Order acceptatie Order bevestiging Bedrijf “ A ” Bedrijf “ B ” Choreografie Choreografie Een eenvoudig voorbeeld : 2 participanten
  • Bedrijf B Proces Analyse Tool Bedrijf A Zend Order Ontvang Order Acceptatie Zend Order Bevestiging Vertaal Bedrijf A BPEL-workflow Genereer BPEL Template Genereer BPEL Template Ontvang Order Zend Order Acceptatie Ontvang Order Bevestiging Vertaal Vertaal Bedrijf B BPEL-workflow Twee BPEL workflow templates reflecteren een raamovereenkomst Order verzoek Order acceptatie Order bevestiging Choreografie Orkestratie Orkestratie Choreografie versus Orkestratie Vertaal Back office systemen Back office systemen
  • Agenda
    • BPEL
      • Positionering
      • Wat is het ?
      • Waarom ?
    • BPEL
      • Waar is het uit opgebouwd ?
    • BPEL in een groter geheel
    • BPEL en de SNS Bank
  • Marketing Verkoop en Bediening GEA Call center kantoor Web winkel Web IVR Advies Traditioneel dominant Verkoopkanaal Nieuwe dominante Marketing, verkoop en bedieningskanalen Van : Bestaande situatie Naar: Nieuwe strategie Persoonlijk advies Persoonlijke bediening Contact center GEA IVR Zelfdoen afspraak Zelfdoen Outbound marketing Inbound marketing Geholpen Zelfdoen Persoonlijke bediening CRM systeem CRM systeem Outbound marketing Email IPTV messenger Email
    • Bepaalde verkoop- en bedieningskanalen nemen in belang af, terwijl andere kanalen verder worden uitgebouwd en in belang toenemen.
    • Outbound marketing wordt aangevuld met inbound marketing
    • De scheidslijnen tussen marketing, verkoop en bediening vervagen
    Business Proces Redesign (BPR)
  • Website Consumenten Business Process Manager Bankkantoor CRM Bankproducten administratie Verzekeringsproducten administratie Data Warehouse {ASAP} {ASAP} {ASAP} {ASAP} {EOD} {ASAP} {EOD} {EOD} {EOD} {ASAP} Klantcontact ontkoppelpunt Proces ontkoppelpunt Desktop Contact Center {RT} {RT} RT ASAP {RT} {RT} systemen Intern/extern Systemen Intern/extern Systemen Intern/extern {EOD} {ASAP} {EOD} EOD «bestaand» ODS Klantbeeld RT
    • =Real-Time services
    • Raadplegen
    • Leveren van gegevens
    ASAP
    • =As-Soon-As-Posible services
    • Leveren van gegevens
    EOD
    • =End-Of-Day services
    • Leveren van gegevens
    Uitval Applicatie {ASAP} Proces- trigger «bestaand» «bestaand» «bestaand» «in ontwikkeling» «in ontwikkeling» «in ontwikkeling» «in ontwikkeling» «nieuw» Decision Manager «in ontwikkeling» Webservices geregistreerd in een UDDI Business Process Manager = Cruciaal onderdeel van de technische oplossing
  • Business Process Management
    • Open Source Software (OSS)
    • Java centrische oplossing
    • Bevat grafische modelleringstool, gebaseerd op JPDL-taal ≠ BPEL
    • Beperkte BPEL- uitwisselingsmogelijkheden worden geboden
    • Wordt gebruikt voor
        • Straight-through-processing
        • Systeemintegratie in combinatie met Web Services
    1) Afdeling SNS-IT : Jboss JBPM 2) Afdeling Verander- en procesmanagement : BWise
    • Gesloten oplossing
    • Administratieve Organisatie (AO)-centrische oplossing
    • Ondersteunt nauwelijks uitwisselingsstandaarden zoals BPEL
    • Wordt gebruikt voor
      • Procesmodellering procesanalyse
      • Geïntegreerde vastlegging en beheer van de Administratieve Organisatie
      • Communicatie richting eindgebruikers van zowel proces- en organisatie informatie als werkinstructies
    Business Process Management hulpmiddelen bij de SNS Bank
        • De medewerkers richten zich op verschillende aandachtsgebieden en spreken verschillende “talen”
        • De gebruikte hulpmiddelen richten zich op verschillende aandachtsgebieden en ondersteunen niet dezelfde uitwisselingsstandaarden
        • Veel inspanning benodigd voor afstemmingen en “vertalingen”
  • BPEL en de SNS Bank
    • Web Services
      • Is de nieuwe standaard en worden steeds meer toegepast
    • BPEL
      • Wordt (nog) niet direct toegepast
      • Wel indirect:
        • Communicatiepatronen worden toegepast, die in BPEL geïmplementeerd kunnen worden
        • Meer informatie hierover
    http://www.infoq.com/presentations/hohpe-soa-conversations