Folyamat alapú integráció alapjai
Service Oriented Architecture (SOA) Portal and B2B Gateway JSR-168, CDL, WS-Security Process Orchestration BPEL, XSLT, XML Query Üzleti szolgáltatások XML, XML Schema, SOAP, WSDL, WSIF, JCA Meglév rendszerek
Folyamatirányítás módszere: fentrl lefelé Üzleti elemzk aktivitás aktivitás aktivitás Dokumentációs réteg BPMN or UML Integrációs fejlesztk assign invoke receive assign Végrehajtási réteg XML, XQuery, BPEL, Rules Szolgáltatás fejlesztk Üzleti szolgáltatások Adapterek, Java, Struts, JSF Meglév rendszerek adatbázis Csomagolt alkalmazások
BPMI (Business Process Management Initiative) szabványrendszer
BPMN (Business Process Modeling Notation) szabvány A BPMN egy olyan szabványos leíró formátum amivel a szervezetek leírhatják üzleti folyamataikat szabványos módon. A szabvány grafikai elemeket jelzésrendszereket ír le. A szabvány olyan módon van definiálva, hogy abból könnyedén lehet már végrehajtható XML alapú leírást BPEL-t készíteni, amit egy folyamat végrehajtó motor, mint a mi BPEL motorunk végre tud hajtani.
BPEL szabvány Business Process Execution Language Üzleti folyamatok létrehozására, felügyeletére, és vezérlésére létrehozott nyelv OASIS specifikáción alapuló szabvány Minden nagyobb szállító támogatja Oracle, IBM, SAP, Siebel, Microsoft, BEA (Ami kb a piac 99%-a)
Bevezetés a BPEL nyelvbe!"#"" *% %%((% $ %& '(% %%((% &% &% ) % "+#""(
BPEL koncepció BPEL forráskód <process> is is the top level element <partnerlink>, channel use to to interact with client (and services integrated in in process) <variable>: reference to to an XML message receive or or sent to to the <partnerlink>s. Process flow: sequence of of activities defining the process logic. Initiate a new instance of of the process when a process request is is received Create and assign greeting to to output message. Send synchronous reply to to client passing output variable as response
Túl bonyolult? Azért nem!
Példa: Beszerzési folyamat: Igénytl a kifizetésig Igények Árajánlatkérés Beszerzési Rendelés A Termelési igények kezelése Szállító kiválasztás Árajánlat kérések Elkészítése Beszerzési Megrendelések Elkészítése Az automatikusan és manuálisan készült igények felülvizsgálata teljesség szempontjából Jóváhagyás IP Az egyes igényekhez a megfelel Szállító kiválasztása A Beszerz az Igényekbl Automatikus Ajánlatkérés létrehozása Árajánlatok rögzítése a rendszerben Beérkeztetés és minségellenrzés A Beszerz az Igényekbl rendelést, vagy Lehívást hoz létre a megfelel szállítóhoz Beszerzés PO Készletezés Beszerzési Megrendelések Jóváhagyása Minségellenrzés Elfogadás // Visszautasítás Bevételezés Elhelyezés a Raktárban A Beszerzési Menedzser jóváhagyja a Beszerzési Megrendeléseket a Beszerzési Megrendeléseket kiküldik a Szállítónak (E-mail) A beérkezett áru minségellenrzése és ez alapján elfogadása, vagy visszautasítása A Minségileg elfogadott áru bevételezése a Megrendelésre A Beérkezett anyag elhelyezése a raktárban Szállítói Számlák Szállítói Számlák kezelése A Számlák egyeztetése a bevételezett mennyiséggel és a megrendelési árral Kötelezettségek Fizetés Engedélyezése A Számla kifizetésének engedélyezése A Számla értékének átutalása Kötelezettségek Modul AP Brunswick Beszerz Készlet Modul INV Beszerzési Menedzser Minségi ellenr Raktáros Accounts Payable Clerk Payables Manager
Megrendelés és Keretszerzdés Elfeltételek: Beszállító Cikk (direkt rendelésekhez) 01 Megrendelés létrehozása 02 Megrendelés jóváhagyása 03 Megrendelés kiadása a Beszállítónak 04 Történt változás a megállapodásban? Nem Beszerzési megrendelés létrehozása a megfelel paraméterekkel: Beszállító kiválasztása Rendelés típusának kiválasztása (Normál / keretszerzdés) Szállítási, Fizetési feltételek beállítása Rendelés sorok felvitele Ár / Ártörés meghatározása A megfelel jóváhagyási jogkörrel rendelkez személy jóváhagyja a beszerzési megrendelést 04 Megrendelés Karbantartása A jóváhagyott rendelés eljuttatása a Beszállítónak E-Mailben, faxon, kinyomtatva, vagy más módon. Igen 11 Automatikus rendelés 12 Bevételezés A meglév megrendelés módosítása a megváltozott feltételeknek megfelelen Szerepkörök Beszerz Beszerzési Vezet
BPEL leírás <sequence name="main"> <!-- Receive input from requestor. Note: This maps to operation defined in Megren --> <receive name="receiveinput" partnerlink="client" porttype= <!-- Asynchronous callback to the requester. Note: the callback location and correlation id using WS-addressing. --> <scope name="megrendelés létrehozása"> </scope> <while name="történt változás a megállapodásban?"> <scope name="megrendelés jóváhagyása"> </scope> <scope name="megrendelés kiadása a Beszállítónak"> </scope> <switch name="switch-1"> <case> <scope name="megrendelés Karbantartása"> </scope> </case> <otherwise> </otherwise> </switch> </while> <invoke name="callbackclient" partnerlink="client" porttype </sequence> </process>
BPEL folyamat finomítása <scope name="megrendelés jóváhagyása"> <sequence> <assign name="bemen paraméterek"> </assign> <invoke name="alkalmazás szolgáltatás <assign name="válasz paraméterek"> </assign> </sequence> </scope>
Alkalmazás szolgáltatások Web Szolgáltatás adapter (partnerlink) ws ws Oracle EBS ws ws SAP Natív WS felület Vásárolt adapter (pl. iway) Egyénileg fejlesztett adapter (Pl. JDev.) ws ws Egyedi
Adapterek Web Service-ek vezérlésére szolgáló motor Az alkalmazás szolgáltatásait publikálni kell WSen keresztül (SOA) Számos cég gyárt WS adaptereket Pl. iway Kész adapterek SAP, Peoplesoft, JD Edwards, Mainframe-ek, Unisys, több tucat adatbázis kezelhöz JCA adapterek támogatása Csereszabatos más gyártók adaptereivel Pl. SAP, BizTalk stb. Egyedileg fejleszthet Jdeveloper: WS wizards (PLSQL wizard, java to WS stb)
Oracle BPEL process manager Fbb elemei!" %!!! #$$ 7 38 9 :,-!;! 7 1 &< 9 7 =&&2 > 7 / 7 /01 23 % > 7? @8%? 7 %5(A =>? (=<9 %2 7 >? 7 39 % @? % BC 7, 7 ;3.'.4 @(. * 1.2 %.2D ; 7 @ %> E4 7 %%2 7 38 9 :,-!;! 7 2%;F%? 7 2%;F%? 7 G(?(? 7 =@> 7 >? 7 3 %>? 7 D 9? 7 2/1 %1 7 1 % 7 1 7,-@? 7 %9% % > 7 38 =?%2@% 7 3? 7 - =%,-./0 1 2./3.4 56 6 *
BPEL Tervez Natív BPEL tervez Drag-and-drop folyamat tervez UDDI and WSIL szolgáltatás böngész Vizuális XPATH szerkeszt Grafikus kapcsolatszerkeszt Gyorstelepítési lehetségek
BPEL Konzol Grafikus követés Audit lehetségek BPEL hibakeresés Folyamatos példány adminisztráció Teljesítmény hangolás Particionálás / Domain-ek
Oracle BPEL Process Manager Vállalati szint BPEL üzleti folyamat tervez, futtató és felügyeleti rendszer. (.6&(,-6 % Egyszer és natív BPEL implementáció,- Egyszer modellez eszköz,-- % 4 6,%%,15%% % & 4 & /01 2 /3 J 3,-%%,- 6$ H63 6 6,,-% Méret rugalmas és megbízható végrehajtómotor Rugalmas csatoló keretrendszer Gazdag felügyeleti és folyamatkövet funkciók I((% & B4..,.4 (@ C * Támogatja Oracle AS, WebLogic és WebSphere alkalmazás szervereket 15 perc alatt telepíthet
Méretrugalmas, biztonságos & ((; & 6, & ((; &!"# $! $ $ %"#&' $ ' "( 6@2 % B 6 C & ' ((()*+,+++-.(/ (( $ ( $. ((; &
Java/J2EE kód támogatás In-lining Java a BPEL folyamaton belül EJB, JDBC hívások, nagyobb teljesítmény Pillanatnyilag nem része a BPEL szabványnak WSIF Java binding Java objektumokat úgy hívhatunk BPEL-bl mint a webszolgáltatásokat Csak bizonyos interfésszel ellátott java osztályok esetében igaz Java kód hívása valódi Web szolgáltatásként (SOAP-on keresztül) Bármilyen eszközzel (pl. JDeveloper/OC4J vagy Apache Axis vagy Systinet WASP, stb) A teljesítményre hatással van
BPEL process manager bemutató Hitelképesség vizsgálat (BPEL alapok) Szinkron WS hívása egy BPEL folyamatból Angol-Német Fordító folyamat Publikus webszolgáltatás hívása BPEL folyamatból Kölcsön igénylési demo fejlesztése Összetettebb BPEL elemek használata Kölcsön igénylési demo futtatása BPEL folyamat valós környezetbe helyezése
Kölcsön igénylés demo!" #$ $%&& &,1 % 1 &$ %!" ' ( %& %& & & )*+) ( 4 & % #/. -.4 6.4 % ;3 '(%J 3 &4 & & % %- &
BPEL vs. InterConnect InterConnect Integrációs csomópont tranzakciós alapon Natív adapterek+jca adapter Natív transzformációs felület istudio-ban Oracle Workflow használata a folyamat kezeléshez BPEL process manager Szabványos (BPMI rendszerbe illeszthet) SOA-t feltételez (WS adapterek) Folyamat vezérli a rendszert
BPEL vs Oracle Workflow A BPEL szabványos megoldás Az elemzk szeretik, nem kötött az ügyfél egyetlen szállítóhoz Jobban kapcsolódik a magasabb szint BPR eszközökhöz A BPEL Gyorsabb A BPM-ben nincs natív PLSQL kapcsolat Oracle Workflow többet tud Több strukturális elem BES stb.
BPEL Project módszertan '( ) *++, -(../..0. 1(2 0..0. 3(, ).4+ +.0. 5( ) +.0. 6(,.0. 7(!.4+ KL%( 8(9:+ ;(+ ) <.
Collaxa, Oracle a BPEL piacon Els teljeskör megoldás Ügyfélreferenciák Nagy fejlesztési kapacitás