BPEL 2.0 MUNKAFOLYAMATOK FORMÁLIS VERIFIKÁCIÓJA 1

Hasonló dokumentumok
BPEL nyelvű üzleti folyamatok modellezése és formális ellenőrzése

A KUTATÁS EREDMÉNYEI ZÁRÓJELENTÉS

Automatikus tesztgenerálás modell ellenőrző segítségével

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Rendszermodellezés. Modellellenőrzés. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Modell alapú tesztelés mobil környezetben

Valószínűségi modellellenőrzés Markov döntési folyamatokkal

BPEL 2.0 ALAPÚ MUNKAFOLYAMATOK KOOPERÁCIÓJÁNAK FORMÁLIS VERIFIKÁCIÓJA. Bende Tibor V. évf. Műszaki informatika

Alapszintű formalizmusok

Részletes szoftver tervek ellenőrzése

Szoftver-modellellenőrzés absztrakciós módszerekkel

Folyamatmodellezés és eszközei. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Intervenciós röntgen berendezés teljesítményszabályozójának automatizált tesztelése

Transzformációk integrált alkalmazása a modellvezérelt szoftverfejlesztésben. Ráth István

Folyamattervezéstıl a megvalósításig

Irányítástechnika Elıadás. PLC-k programozása

Webszolgáltatás alapokon BPEL

Korlátos modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

Webszolgáltatás alapokon BPEL

V. Félév Információs rendszerek tervezése Komplex információs rendszerek tervezése dr. Illyés László - adjunktus

ICT ÉS BP RENDSZEREK HATÉKONY TELJESÍTMÉNY SZIMULÁCIÓJA DR. MUKA LÁSZLÓ

Hardver leíró nyelvek (HDL)

Járműinformatika A járműinformatikai fejlesztés

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Modellellenőrzés a vasút automatikai rendszerek fejlesztésében. XIX. Közlekedésfejlesztési és beruházási konferencia Bükfürdő

KÉPZÉS NEVE: Informatikai statisztikus és gazdasági tervezı TANTÁRGY CÍME: Projektmenedzsment. Készítette: Dr. Sediviné Balassa Ildikó

Szoftver-technológia II. Szoftver újrafelhasználás. (Software reuse) Irodalom

A modellellenőrzés érdekes alkalmazása: Tesztgenerálás modellellenőrzővel

Miskolci Egyetem Gépészmérnöki és Informatikai Kar Alkalmazott Informatikai Tanszék. Dr. Kulcsár Gyula egyetemi docens

Ráth István. DECOS Nemzeti Nap október 15. Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék

Beszédfelismerés alapú megoldások. AITIA International Zrt. Fegyó Tibor

Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék. Folyamatmodellezés

1. elıadás. Információelmélet Információ technológia Információ menedzsment

SOA modell: Ez az interfész definiálja az elérhető adatokat, és megadja, hogy hogyan lehet azokhoz hozzáférni.

TÁVOKTATÁSI TANANYAGOK FEJLESZTÉSÉNEK MÓDSZERTANI KÉRDÉSEI

Petri-hálók és produkciós hálók közötti kapcsolat

Elérhetőségi analízis Petri hálók dinamikus tulajdonságai

Nagy bonyolultságú rendszerek fejlesztőeszközei

Ráth István. A fejlesztés evolúciója

Bevezetés az SAP világába. 5. Kommunikációs és integrációs technológiák

6. A szervezet. Az egyik legfontosabb vezetıi feladat. A szervezetek kialakítása, irányítása, mőködésük ellenırzése, hatékonyságuk növelése,

OpenCL alapú eszközök verifikációja és validációja a gyakorlatban

Folyamatmodellezés implementáció

Hely- és kontextusfüggő alkalmazások fejlesztését támogató keretrendszer mobil környezetben

UML (Unified Modelling Language)

Steps Towards an Ontology Based Learning Environment. Anita Pintér Corvinno Technologia Transzfer Kft

Elosztott adatbázis-kezelő formális elemzése

Szolgáltatásintegráció (VIMIM234) tárgy bevezető

Mai program. Web Technológiák. Webalkalmazások. Webalkalmazás, mint UI

A BIZTONSÁGINTEGRITÁS ÉS A BIZTONSÁGORIENTÁLT ALKALMAZÁSI FELTÉTELEK TELJESÍTÉSE A VASÚTI BIZTOSÍTÓBERENDEZÉSEK TERVEZÉSE ÉS LÉTREHOZÁSA SORÁN

Modell alapú tesztelés: célok és lehetőségek

Információs rendszerek Információsrendszer-fejlesztés

Az alkalmazás minőségbiztosítás folyamata Fókuszban a teszt-automatizálás

Az üzleti igények átültetése a gyakorlatba eszköz és módszertan: - ARIS és WebSphere megoldások együttes használata a folyamatmendzsmentben -

Vezetői információs rendszerek

Objektumorientált programozás Pál László. Sapientia EMTE, Csíkszereda, 2014/2015

Pacemaker készülékek szoftverének verifikációja. Hesz Gábor

Oracle adatkezelési megoldások helye az EA világában. Előadó: Tar Zoltán

III. Alapfogalmak és tervezési módszertan SystemC-ben

Modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Hatékony technikák modellellenőrzéshez: Korlátos modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

EGYÜTTMŰKÖDŐ ÉS VERSENGŐ ERŐFORRÁSOK SZERVEZÉSÉT TÁMOGATÓ ÁGENS RENDSZER KIDOLGOZÁSA

A szoftver-folyamat. Szoftver életciklus modellek. Szoftver-technológia I. Irodalom

Temporális logikák és modell ellenırzés

Szaniszló Gábor, ABB Kft MEE szakmai nap elıadás, Az IEC61850-es szabvány gyakorlati alkalmazása. ABB Group June 1, 2010 Slide 1

Komponens alapú fejlesztés. Szoftvertechnológia elıadás

Modellezési alapismeretek

Kódverifikáció gépi tanulással

Debreceni Egyetem Informatikai Kar. Szolgáltatás-orientált programozás az Oracle-ben

A Magyar Aktuárius Társaság szakmai ajánlása Nem-élet termékterv díjkalkulációjával szembeni aktuáriusi elvárások

Szoftver újrafelhasználás

webalkalmazások fejlesztése elosztott alapon

Modellellenőrzés. dr. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

Verifikáció és validáció Általános bevezető

A TANTÁRGY ADATLAPJA

Modellinformációk szabványos cseréje. Papp Ágnes, Debreceni Egyetem EFK

Copyright 2012, Oracle and/or its affiliates. All rights reserved.

OOP. Alapelvek Elek Tibor

Software Engineering Babeş-Bolyai Tudományegyetem Kolozsvár

SAS szoftverek felhasználási lehetőségei a felsőoktatásban

Elérhetőségi probléma egyszerűsítése: Állapottér és struktúra redukció Petri-háló alosztályok

folyamatrendszerek modellezése

Összeállította Horváth László egyetemi tanár

Üzleti modellen alapuló webes tudásprezentáció

Köztesréteg adatbiztonsági protokollok megvalósítására

Szoftverminőségbiztosítás

Varró Dániel MTA doktori értekezésének bírálata. Precíz modell transzformációk tervezése és analízise a modellvezérelt fejlesztésben

SOA. Szolgáltatás Orientált Architektúra. Jelen és jövı. Várkonyi László IT Architect, IBM SWG. Software. SOA on your terms and our expertise

Szigma Integrisk integrált kockázatmenedzsment rendszer

Folyamatmodellezés (BPMN) és alkalmazásai

The nontrivial extraction of implicit, previously unknown, and potentially useful information from data.

Funkcionális menedzsment Általános (naturális) filozófiai értelmezés

A gyártástervezés feladata. CAM tankönyv. Technológiai terv elemei. Alapfogalmak, definíciók. A gyártástervezés területei. Alapfogalmak, definíciók

Publikációs lista. Gódor Győző július 14. Cikk szerkesztett könyvben Külföldön megjelent idegen nyelvű folyóiratcikk...

rendszerszemlélető, adatközpontú funkcionális

stratégiai kutatási terve

Témakörök. Struktúrált fejlesztés. Elınyök (SA) Structured Analysis (SA) Hátrányok (SA) Alapfogalmak (SA)

Üzleti architektúra menedzsment, a digitális integrált irányítási rendszer

Az alkoholtartalom-növelésre, az édesítésre, a savtartalom-növelésre és a savtompításra vonatkozó új Európai Uniós elıírások

Átírás:

BPEL 2.0 MUNKAFOLYAMATOK FORMÁLIS VERIFIKÁCIÓJA 1 Hegedüs Ábel Budapesti Müszaki és Gazdaságtudományi Egyetem Méréstechnikai és Információs Rendszerek Tanszék Absztrakt. A cikkben BPEL 2.0 munkafolyamatok modellellenırzésen alapuló formális verifikációjára dolgoztam ki egy módszert. A folyamatokból tervezési idıben, automatikus modelltranszformációk segítségével precíz leírás készül tranzíciós rendszerek formájában, amelyen kiterjedt vizsgálatok végezhetık az állapottér szisztematikus és kimerítı bejárását végzı modellellenırzı eszközökkel. Bevezetés Napjainkban a szolgáltatás orientált architektúra (SOA) elképzelés központi szerepet tölt be a komplex, nagyvállalati elosztott rendszerek tervezésében. Ezen rendszerek olyan autonóm szolgáltatásokból épülnek fel, amelyek precíz interfészekkel rendelkeznek. Az egyedi szolgáltatásokra épülı komplex üzleti folyamatok modellezésére szabványos munkafolyamat-leíró nyelvek léteznek, például a Business Process Execution Language for Web Services (BPEL) [1]. Motiváció. A BPEL segítségével létrehozott üzleti folyamatokat gyakran használják üzleti partnerek közötti automatikus adatcserében (Business-to-Business) és vállalati alkalmazásintegrációban (Enterprise Application Integration). Mivel ezek a folyamatok valósítják meg az együttmőködést a szereplık között, minıségük kritikus fontosságú, hiszen bármilyen rendellenes mőködésnek jelentıs, negatív pénzügyi hatása lehet. A hibák elıfordulási esélyeinek minimalizálásához a tervezıknek és elemzıknek olyan eszközökre van szükségük, amelyek garantálják az üzleti folyamatok megfelelı viselkedését. Célkitőzés. Kiterjedt múltbeli kutatások bizonyították a modellellenırzés és más formális módszerek használhatóságát az üzleti folyamatok minıségének javításában. A létezı módszerek azonban csak a munkafolyamatok elemkészletének egy részhalmazát képesek vizsgálni. Ezért szükség van olyan módszerekre, amelyek a kiforrottabb BPEL 2.0 szabvány alapján készített munkafolyamatokat lehetıleg minden nyelvi elemében támogatják, kiterjesztve így a [2] ban a BPEL szabvány 1.1-es változatára korábban elvégzett vizsgálatokat többek között a párhuzamos részfeladatok közötti részleges sorrendezés mőködésének modellezésével. Megközelítés. A javasolt módszer alkalmas BPEL 2.0 munkafolyamatok mőködésének formális modellezésére és helyességellenırzésére. A vizsgált folyamatból egy modelltranszformációs keretrendszer tranzíciós rendszer leírást hoz létre. Ezen a matematikailag precíz struktúrán automatikusan végezhetı el a temporális logikai kifejezések alakjában megadott kritériumok szisztematikus, kimerítı állapottérbejáráson alapuló ellenırzése. A modellellenırzı keretrendszer által szolgáltatott ellenpélda visszavetíthetı az eredeti BPEL munkafolyamatra, így megadva a kiemelt lefutást. 1 Ezt a munkát részben a SENSORIA Európai Uniós kutatási projekt (IST-3-016004) és a ResilTech támogatta.

Esettanulmány A dolgozatban módszerünk bemutatásához egy esettanulmányt fogok felhasználni. A mintapélda a SENSORIA projekt elosztott tanulmányi és kurzus menedzsment rendszert leíró esettanulmányának (elearning Case Study [3]) egy részfeladatát használja fel. A SENSORIA projekt célja a modellalapú fejlesztésre, ellenırzésre használható módszerek kifejlesztése. 1. ábra: Az esettanulmány fıfolyamata Egy tanulmányi rendszer egyik fontos feladata a hallgatók kurzusjelentkezéseinek kezelése, amely összetett feladatot öt együttmőködı komponens végez el. Abban az esetben, ha egy hallgató egy kurzust nem a saját egyetemén kíván teljesíteni, akkor a két egyetem tanulmányi rendszereinek kooperációjára van szükség, melynek során a kurzus áthallgatási kérelmet elbírálják és tárolják. A folyamat a kérelem fogadása után ellenırzi az adatokat, majd párhuzamosan kapcsolatba lép a tanulmányi és adminisztrációs rendszerekkel. Az adminisztrációs rendszer válaszának függvényében állítja össze a válaszüzenetet, továbbá e rendszer hibája esetén biztosítja az elvégzett mőveletek visszagörgetését kompenzáció segítségével. A folyamat mőködése a végrehajtáshoz szükséges részleteket elfedı illusztráción látható az 1. ábrán.

A cikkben részletezett módszer felhasználásával verifikálom a mintapélda folyamatát. Egyrészt az adatok tárolására használt változók helyes használatát vizsgálom, másrészt ellenırzöm, hogy a folyamatok minden esetben véget érnek-e. BPEL 2.0 munkafolyamatok modellezése A munkafolyamatokat gyakran ábrázolják olyan véges automata formalizmus használatával, amelyet modellellenırzı rendszerek bemeneti nyelvére lehet fordítani, majd az állapottér bejárásával bizonyíthatók a folyamatra megadott tulajdonságok. A következıkben a [2] által bevezetett módszer BPEL 2.0 munkafolyamatokra történı kiterjesztése és az összeköttetések támogatásának bevezetése kerül részletezésre, melynek technikai részleteit [4] tartalmazza. A BPEL 2.0 szabványban bevezetésre került a változó inicializáció, és az integrált adatmanipuláció lehetısége. Lehetıség van a változók definiálásakor egy kezdıérték megadására, ezzel csökkenthetı a változóolvasáskor elıforduló hibák száma. Az esettanulmányban például a tanulmányi rendszer szolgáltatásának meghívásakor (Invoke Education Service) az üzenet egyes részei már a folyamat kezdetekor megadhatók. Szintén újdonság, hogy a változók közötti adatmásoláshoz nem szükséges külön Assign típusú tevékenység használata (ilyen például a Positive Reply tevékenység), hanem lehetıség van az adatmanipuláció elvégzésére az adatot használó tevékenységeken belül is (például Check Data bemeneti paramétereinek és eredményének elérése). Ezen lehetıségek modellezéséhez az eredeti módszer [2] adatmanipulációjának kiterjesztésére volt szükség. Újdonság a BPEL 2.0 szabványban a hibaterjesztés lehetısége, és az explicit megszakításkezelı megjelenése. Az elıbbi használható olyan esetekben, ha egy lekezelt hibát változtatás nélkül a felsıbb szintő vezérlési folyamat alapegység (Scope) felé tovább kell terjeszteni, ennek modellezése egy egyszerő tevékenységhez hasonló, kiegészítve a hiba paramétereinek továbbadásával. Az utóbbi alkalmazható Scope-ok futásának szabályozott leállítására, olyan esetekben, amikor explicit megszakításra van szükség. A megszakításkezelıt, a hiba- és eseménykezelıkhöz hasonlóan, egy strukturált tevékenységként modellezzem, amelynek lefutása a Scope egy adott állapota esetén lehetséges. Flow linkek modellezése A BPEL lehetıséget ad arra, hogy a párhuzamos végrehajtású ágak tevékenységei között sorrendi összeköttetéseket adhassunk meg. Az 1. ábrán szaggatott nyilak jelölik az esettanulmányban definiált linkeket. Minden linkhez megadható egy átviteli feltétel és minden cél tevékenységhez egy kapcsolódási feltétel. Ennek következtében a linkek a sorrendi összeköttetésen túl engedélyezési információt is hordozhatnak. Ezért a linkek alkalmazása esetén elıfordulhat, hogy egy tevékenység nem hajtódik végre. Ennek a mőködésnek a modellezéséhez szükség van a tevékenységekhez tartozó állapotváltozók értékkészletének kibıvítésére. Felveszem a kihagyott (Skipped) állapotot, amely azt jelzi, hogy az adott tevékenység nem hajtódott végre. A 2. ábrán látható a kibıvített állapottér egy példa tevékenység esetén.

Linkek állapottere Az összeköttetések modellezésekor figyelembe kell venni azokat az állapotokat és állapotátmeneteket, amelyek a végrehajtás során elıfordulhatnak. A link állapota a munkafolyamat futásának kezdetén letiltott (disabled). A linket definiáló flow tevékenység elindulásakor az állapot határozatlan (unset) lesz. A link kezdıpontját képzı tevékenység lefutása után (például az adminisztrációs rendszer válaszüzenete megérkezésekor, Invoke Administration Service) a link igaz (true) vagy hamis (false) értéket vesz fel. A flow tevékenység befejezıdésekor a definiált linkek állapota ismét letiltottra vált. A 2. ábra illusztrálja a link állapotterét. 2. ábra: Tevékenységek és összeköttetések állapottere Holt utak eltávolításának modellezése A folyamatokban elıfordulhatnak olyan tevékenységek, amelyek bizonyos lefutások esetén nem kerülnek végrehajtásra. A kihagyott tevékenységek kimenı linkjei holtpontot okozhatnak a folyamatban, mert nem kapnak határozott értéket. Ennek elkerülésére definiálja a szabvány a holt utak eltávolítása algoritmust, melynek mőködése két fázisra osztható: az egyik a nem végrehajtható tevékenységek megtalálása, a másik a kimenı linkek kezelése. A következı helyzetekben lehetséges, hogy egy tevékenység nem kerül végrehajtásra, ezeket az eseteket kezelı tranzíciókat kell modellezni: (1) kapcsolódási feltétel hamis értékő és a hiba elnyomásra kerül, (2) feltételes elágazás nem végrehajtott ágaiban helyezkedik el, (3) pick tevékenység nem végrehajtott ágaiban helyezkedik el, (4) scope tevékenységen belül egy hiba keletkezési helye után vannak, (5) nem végrehajtott hibakezelık és megszakításkezelı tartalmazza. A felsorolt esetekben a kihagyott tevékenységek kimenı linkjei hamis értéket kapnak, így megakadályozva a holtpont kialakulását.

BPEL 2.0 munkafolyamatok analízise A bemutatott modellezési módszer használata lehetıséget nyújt önálló folyamatok modellellenırzésére. Az ellenırzés segítségével mind általános, mind folyamat-specifikus kritériumok teljesülése vizsgálható egy adott munkafolyamat esetén. A modellellenırzéshez a vizsgált folyamat mőködését modellezı tranzíciós rendszer leírást kiegészítjük a követelmények formális definíciójával. Ezek a definíciók lineáris temporális logikai (LTL) kifejezések, amelyek igazságtartalmát bizonyítja a modellellenırzı keretrendszer. Az általam használt rendszer a Symbolic Analysis Laboratory (SAL) [5], amely tranzíciós rendszer leírással megadott modellek ellenırzésére használható. A SAL szimbolikus modellellenırzı eszköze a definiált LTL kifejezéseket kísérli meg bizonyítani. Ha a kifejezés hamis, akkor egy, az illegális állapotba vezetı (kifejezést sértı) tranzíciósorozatot is szolgáltat az ellenırzı (ezt nevezzük ellenpéldának). Az ellenpélda a folyamat egy konkrét lefutását adja meg, így a meghibásodást elıidézı körülmények visszavezethetık az eredeti folyamatleírásra. Az önálló folyamatokra megadott néhány általános kritérium a következı: - Nincs inicializálatlan változó olvasás. G(var reply read) A vizsgált munkafolyamat végrehajtásakor nem következhet be olyan helyzet, amikor egy változó tartalmát felhasználja, mielıtt a változót írta volna (például a Send Reply végrehajtásakor). A folyamat teljesíti ezt a kritériumot, tehát a read változót soha nem olvassa a folyamat elıbb, mint írná. - Nincs soha nem olvasott változó. (F(var check = writtenandread)) Teljesítése esetén kimondható, hogy nincs felesleges változó a rendszerben (ebben az esetben a Check Data eredményét tároló változót vizsgálom). Ez azt jelenti, hogy minden változót módosít a folyamat és a változó tartalma felhasználásra kerül. Az a munkafolyamat, amelyben a tulajdonság nem teljesül, tartalmaz felesleges változót, amely eltávolítható. A kritérium a konkrét folyamaton igaz. - A folyamat futása mindig befejezıdik. G(P = startable F(P = finished)) Kritérium fennállása biztosítja, hogy a folyamat minden esetben véget ér. Azt az állapotot, ahonnan egy folyamat nem képes továbblépni, holtpontnak (deadlock) nevezzük. Az ellenırzés a holtpont létezésének ténye mellett a folyamat holtpontra jutását okozó lefutást is megadja. Az esettanulmány teljesíti ezt a kritériumot. Kapcsolódó munkák Van der Aalst és Verbeek megoldása [6] le tudja képezni a lehetséges tevékenységek nagy részét, így a Linket is, de nincs Scope és hibakezelés. A BPEL szemantikát szinte teljes egészében lefedi [7]. Egy másik figyelemreméltó megközelítés [8], amely a folyamatokat hierarchikus, színezett Petri-hálókra képezi le. A Petri-hálókkal történı modellezésre kialakított eszköz [9] jelenleg mindössze háromfajta, meglehetısen korlátozott ellenırzést támogat. Az eddig ismertetett munkák mindegyike a BPEL 1.1-es szabványának megfelelı BPEL folyamatok modellezését tőzte ki célul. A közelmúltban megjelent 2.0-ás szabványban található újdonságokat is lefedı megoldást nyújt [10]. Ez a módszer [7] egyfajta kiegészítésének tekinthetı, így a modellezési eljárás azonos.

Összefoglalás és kitekintés A munkafolyamatok ebben az esetben a BPEL 2.0 szabványnak megfelelı munkafolyamatok leírása nem alkalmas formális verifikáció elvégzésére. Az általam kidolgozott módszer a munkafolyamatok formális verifikációját teszi lehetıvé, a BPEL legújabb 2.0-s szabványban felhasználható elemek jelentıs részét képes modellezni. Kiemelt jelentıségő az összeköttetések és a holt utak eltávolítása algoritmus támogatása. A dolgozatban használt esettanulmány folyamatain ellenırzéseket végeztem és a módszer a SENSORIA project Sensoria Development Environmentbe történı integráltam. A megközelítés kiterjesztésére többféle lehetıség van. A részletezett módszert felhasználva lehetıség nyílik kooperáló üzleti folyamatok ellenırzésére is. Az ellenırzés során ellenpélda-vezérelt iteratív modellfinomítást alkalmaztunk. Ennek használhatóságát és jó hatásfokát bizonyítottuk a [4,11] publikációkban. Terveim között szerepel egy grafikus felület létrehozása a követelményspecifikációk megadására és az eredmények megjelenítésére. Továbbá doménspecifikus hibamodellek használata is növelné a módszer használhatóságát. Irodalomjegyzék [1] Alves, A. és mások: Web services business process execution language version 2.0 (OASIS standard). WS-BPEL TC OASIS, 2007. [2] Kovács, M., Varró, D. és Gönczy, L.: Formal Analysis of BPEL Workflows with Compensation by Model Checking. International Journal of Computer Systems Science and Engineering, 2008 [3] Hölzl, M.: SENSORIA Deliverable D8.4.a: University management and e- learning case study: Requirements modelling and analysis of selected scenarios. Tech. rep., 2007. [4] Bende, T. és Hegedüs, Á.: BPEL 2.0 alapú Munkafolyamatok Kooperációjának Formális Verifikációja, Budapest, TDK dolgozat, 2008. [5] Shankar, N.: Symbolic Analysis of Transition Systems. Monte Verità, Computer Science, Springer-Verlag, 2000. 287 302. [6] Verbeek, H. M. W. és Aalst, W.: Analyzing BPEL processes using petri nets, Miami, Florida International University, 2005. 59 78. [7] Stahl, C.: A Petri Net Semantics for BPEL. Berlin, Informatik-Berichte 188, Humboldt-Universität zu Berlin, 2005. [8] Yang, Y. és mások: Verifying web services composition: A transformationbased approach. PDCAT, IEEE Computer Society, 2005. 546 548. [9] Ouyang, C. és mások: WofBPEL: A Tool for Automated Analysis of BPEL Processes. ICSOC, 2005. 484 489. [10] Lohmann, N.: A feature-complete Petri net semantics for WS-BPEL 2.0 and its compiler BPEL2oWFN. Berlin, Informatik-Berichte 212, Humboldt-Universität zu Berlin, 2007. [11] Bende, T., Hegedüs, Á., Kovács, M., Varró, D. és Gönczy, L.: Verification of BPEL Process Cooperations by Iteratively Refined Abstraction. Business Process Management Conference, 2009. (bírálat alatt)