Extras din referat
Arhitectura SOA
- Un standard pentru expunerea si accesarea aplicatiilor sub forma de servicii
- servicii web
- Infrastructur a pentru comunicare si gestiunea serviciilor
- ESB (Enterprise Service Bus)
- Limbaj specializat pentru compunerea functionalitatilor simple în unele complexe care sa modeleze procese economice
- BPEL
Programarea în ansamblu
- Programarea în ansamblu (programming in the large) Stil de programare care descrie la un nivel înalt logica tranzitiilor starilor unui sistem. Aspectele surprinse se refera la: trimiterea/primirea de mesaje, compensarea tranzactiilor esuate, etc.
- Programarea în detaliu (programming in the small) Stilul clasic de programare care se ocupa cu descrierea explicita a comportamentului sistemului.
Ce este BPEL ?
- limbaj de programare bazat pe XML, în curs de standardizare (2003) la OASIS
- permite definirea de procese abstracte sau executabule
- permite compunerea serviciilor web
- se bazeaza pe aceleasi protocoale ca si serviciile web (WSDL, SOAP, etc.)
- sustinere puternica din partea industriei (Oracle, IBM, Microsoft, BEA, etc.)
- designere BPEL (dezvoltare)
- servere BPEL (executie)
Compunerea serviciilor
- Orchestrare: exista un proces central cu rol de coordonare explicita a serviciilor; acestea nu sunt consiente ca sunt implicate într-un serviciu compus.
- Coreografie: nu exista un coordonator central; fiecare serviciu web stie când sa se execute si cu cine interactioneaza - efort colaborativ bazat pe sincronizare si schimbarea de mesaje.
BPEL este conceput pe paradigma orchestrarii.
Proces economic
Proces economic (bussiness process) = colectie de invocari coordonate ale unor servicii si activitati adiacente responsabile cu crearea unui raspuns, definite pentru una sau mai multe organizatii.
Exemplu: procesul de desf a¸surare a delegatiilor membrilor unei companii:
- extragerea datelor despre angajat
- determinarea unei rute pâna la destinatie
- apelarea serviciilor transportatorilor pentru determinarea pretului optim
Tipuri de procese
Abstracte: permit specificarea mesajelor publice care pot fi schimbate între servicii; nu includ detail interne legate de fluxul procesului ¸si nu pot fi executate.
Executabile: permit specificarea tuturor detaliilor procesului si pot fi executate de un server BPEL (orchestration engine); conceptual, exista doua abordari:
- structuri de control (Microsoft - XLANG)
- grafuri orientate (IBM - WSFL)
Executia unui process
1. Procesul primeste o cerere de la un client.
2. Procesul efectueaza o serie de invocari ale serviciilor implicate. Un proces BPEL este format din mai multe activitati.
- primitive
- structurate
Executia activitatilor se face:
- secvential
- paralel
3. Procesul raspunde clientului.
Preview document
Conținut arhivă zip
- BPEL - Business Process Execution Language.doc