Folyamatmodellezés (BPMN), adatfolyamhálók

Hasonló dokumentumok
Folyamatmodellezés (BPMN) és alkalmazásai

Folyamatmodellezés (BPMN), adatfolyamhálók

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

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

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

Adatfolyam hálók Dr. Bartha Tamás, Dr. Pataricza András fóliái

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

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

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

Alapszintű formalizmusok

Viczián István IP Systems JUM XIX szeptember 18.

Folyamatmodellezés. Budapesti Műszaki és Gazdaságtudományi Egyetem. Hibatűrő Rendszerek Kutatócsoport. Budapesti Műszaki és Gazdaságtudományi Egyetem

Integrált keretrendszer

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

Nagy bonyolultságú rendszerek fejlesztőeszközei

Részletes szoftver tervek ellenőrzése

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

Modell alapú tesztelés mobil környezetben

Hogyan lehet megakadályozni az üzleti modellezés és az IT implementáció szétválását? Oracle BPM Suite

UML (Unified Modelling Language)

Nyílt hozzáférésű informatikai rendszerek BME VIMM 5294

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

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

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

Autóipari beágyazott rendszerek. Komponens és rendszer integráció

Miért is transzformáljunk modelleket? Varró Dániel

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

Szoftvertechnológia ellenőrző kérdések 2005

Webszolgáltatás alapokon BPEL

JAVA webes alkalmazások

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

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

Modellek ellenőrzése és tesztelése

Internet of Things az új mobil forradalom

Az UPPAAL egyes modellezési lehetőségeinek összefoglalása. Majzik István BME Méréstechnika és Információs Rendszerek Tanszék

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

Folyamatmodellezés. Rendszermodellezés Budapesti Műszaki és Gazdaságtudományi Egyetem. Hibatűrő Rendszerek Kutatócsoport

Modellezési alapismeretek

Modellezés Petri hálókkal. dr. Bartha Tamás dr. Majzik István dr. Pataricza András BME Méréstechnika és Információs Rendszerek Tanszék

Témakörök. Structured Analysis (SA) Előnyök (SA) (SA/SD) Jackson Structured Programming (JSP) Szoftvertechnológia

IBM Business Process Manager változat 8 alváltozat 5. Az IBM Business Process Manager áttekintése

Enterprise extended Output Management. exom - Greendoc Systems Kft. 1

- Adat, információ, tudás definíciói, összefüggéseik reprezentációtípusok Részletesebben a téma az AI alapjai című tárgyban

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

Folyamatmodellezés. Budapesti Műszaki és Gazdaságtudományi Egyetem. Hibatűrő Rendszerek Kutatócsoport. Budapesti Műszaki és Gazdaságtudományi Egyetem

Petri hálók: Alapelemek és kiterjesztések

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

Feltörekvő technológiák: seam, drools, richfaces és társai a JBossban

Történet John Little (1970) (Management Science cikk)

Informatikai technológiák szakirány Rendszertervezés ágazat

Modellezési alapismeretek

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

Modellek fejlesztése

Üzleti folyamatok rugalmasabb IT támogatása. Nick Gábor András szeptember 10.

Szoftverminőségbiztosítás

Rendszertervezés ágazat

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

Szabálykezelés a gyakorlatban

Modellező eszközök, kódgenerálás

Bevezetés az informatikába

Pentaho 4: Mindennapi BI egyszerűen. Fekszi Csaba Ügyvezető október 6.

Diszkrét állapotú rendszerek modellezése. Petri-hálók

Modellek végrehajtása, kódgenerálás

SABLONOZÓ KERETRENDSZER

Kommunikációs rendszerek teljesítőképesség-vizsgálata

Modellek fejlesztése

Erőforrás gazdálkodás a bevetésirányításban

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

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

Metamodellezés. Simon Balázs BME IIT, 2011.

Java Business Integration szolgáltatásalapú architektúra JavaEE környezetben. Simon Géza Zsemlye Tamás

Méréselmélet MI BSc 1

ALKALMAZÁS KERETRENDSZER

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

Szoftver-mérés. Szoftver metrikák. Szoftver mérés

Petri hálók: Alapelemek és kiterjesztések

Parametrikus tervezés

Vállalati információs rendszerek I, MIN5B6IN, 5 kredit, K. 4. A meghirdetés ideje (mintatanterv szerint vagy keresztfélében):

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

Közösség, projektek, IDE

Webszolgáltatás alapokon BPEL

Számítógéppel segített folyamatmodellezés p. 1/20

Szoftverminőségbiztosítás

Autóipari beágyazott rendszerek. A kommunikáció alapjai

Folyamatmodellezés implementáció

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

Laborgyakorlat 3 A modul ellenőrzése szimulációval. Dr. Oniga István

Adattárház kialakítása a Szövetkezet Integrációban, UML eszközökkel. Németh Rajmund Vezető BI Szakértő március 28.

Szoftver karbantartás

Stream processing ősz, 10. alkalom Kocsis Imre,

alkalmazásfejlesztő környezete

Networkshop Kaposvár Balaskó Á., Kozlovszky M., Karóczkai K., Márton I., Kacsuk P. MTA SZTAKI

Informatikai rendszertervezés

TSIMMIS egy lekérdezés centrikus megközelítés. TSIMMIS célok, technikák, megoldások TSIMMIS korlátai További lehetségek

Automatikus infrastruktúra menedzsment és alkalmazástelepítés

10-es Kurzus. OMT modellek és diagramok OMT metodológia. OMT (Object Modelling Technique)

MEGA ÜZLETI FOLYAMATMENEDZSMENT ÉS VÁLLALATI ARCHITEKTÚRA MEGOLDÁSOK. Kóczé Zoltán Tanácsadó

Modellek dokumentálása

Alapszintű formalizmusok

A J2EE fejlesztési si platform (application. model) 1.4 platform. Ficsor Lajos Általános Informatikai Tanszék Miskolci Egyetem

Átírás:

Folyamatmodellezés (BPMN), adatfolyamhálók Rendszermodellezés 2016. Budapesti Műszaki és Gazdaságtudományi Egyetem Hibatűrő Rendszerek Kutatócsoport Budapesti Műszaki és Gazdaságtudományi Egyetem Méréstechnika és Információs Rendszerek Tanszék 1

ÜZLETI FOLYAMAT MODELLEK A GYAKORLATBAN 2

UML Activity Diagram Szabványosított jelölés, kiterjesztésekkel o Részletesen ld. SzoftTech, 3. félév 3

Business Process Modeling Notation (BPMN) Business Process Management Initiative (BPMI) 2004. május: BPMN 1.0 specifikáció 2011: végleges BPMN 2.0 Célok Közérthetőség Felhasználó Üzleti elemző kezdeti folyamatterv Műszaki fejlesztő Implementáció Belső modell automatikus generálás céljára BPEL4WS Üzleti végfelhasználó (monitorozás, menedzsment) 4

Példa BPMN 5

Adatfolyam Esemény Állapotváltozás Ok-hatás Eseménytípusok: Start, Intermediate, End Tevékenység Atomi/összetett Taszk/alfolyamat Átjáró Szekvencia konvergencia/divergencia AND, OR, XOR, 6

Összeköttetés Szekvencia Tevékenységek sorrendje a folyamatban Üzenet Asszociáció Két független folyamat részvevő közötti információcsere Adat, szöveg stb. hozzárendelés 7

Tagolás Pool Résztvevő jelölése Sáv Tevékenységek csoportosítása 8

Artifact Adat objektum Szimbolikus token Csoport Annotáció Tevékenységek csoportosítása Kiegészítő szöveges információ (komment) 9

Példa 10

Hierarchikus modellezés 11

Részekre bontás 12

Adatok, csoportosítás 13

Együttműködő (rész)folyamatok 14

BPMN metamodell (egyszerűsített) Source: http://www.wsper.org// 15

Nyelvi elemek Source: http://www.bpmb.de 16

Elemi tevékenység finomított állapotgépe Valójában mi történik? (BPMN szabvány) 17

Elemi tevékenység finomított állapotgépe Tevékenység megszakítható, visszavonható, hibázhat Futtatókörnyezet felelőssége kezelni Szabvány írja le az állapotokat/átmeneteket Nem ugyanaz, mint a lépést végrehajtó erőforrás/alkalmazás állapota! Tervezési feladat: pl. mit jelent egy email esetén a visszavonás 18

A statistics Source: Process Modelling. What Really Matters Keynote of Michael Rosemann @ UNISCON2009 conference 19

Kihívások Szakterületi tudás megfogalmazása o Könyvtárak, template fogalma o Web2.0 megjelenítés o Hatékony modellezés (szöveges?) Modellek konzisztenciája o Statikus analízis: ~200 kérdés (BPEL2 szabvány) o Folyamatmodellek és más modellek kapcsolata Állapotgépek Telepítés, erőforráskonfiguráció,. 20

BPMN eszközök jbpm Designer Eclipse BPMN Tibco Business Studio IBM Websphere Business Modeler Intalio Designer BPMN Composer BPMN Designer Bonita Open Solution Adonis Activiti Obeo Designer + általános modellező eszközök 21

Háttér http://www.sdn.sap.com/irj/scn/index?rid=/librar y/uuid/609cb540-3ca6-2a10-60a7-dc470a9b7adf http://community.intalio.com/tutorials/exceptionhandling.html http://www.conradbock.org/bock-bpmn-2- business-process-semantics-web.pdf Stephen A. White (IBM): Introduction to BPMN 22

Futtatás: workflow engine Folyamatok életciklusának kezelése o Folyamat sablonok kezelése o Példányosítás, adatok kezelése Verziókezelés, online frissítése API beágyazható/csatolható elemeknek o REST, WS, EJB Üzleti szabályok (döntések) kezelése Emberi lépések (human task) o Böngészőben megjeleníthető o Jogosultságok kezelése 23

Folyamatmenedzsment Követelmények Folyamatmodell Szolgáltalás Meglévő komponensek Integráció Folyamatmenedzsment komponens(ek) Optimalizálás Monitorozás Analízis 24

Folyamatmenedzsment Követelmények Folyamatmodell Szolgáltalás Meglévő komponensek Integráció Folyamatmenedzsment komponens(ek) Optimalizálás Optimalizálás, erőforrásfelhasználás, stb: Monitorozás Analízis Teljesítménymodellezés és Szimuláció előadások 25

DEMÓ Futtatható üzleti folyamat (Bonita): alkalmazásbolt https://inf.mit.bme.hu/edu/courses/materials/szolg%c3%a1ltat%c3%a1sintegr%c3%a1ci%c3%b3/2014-tavasz/1-gyakorlat-bpmn-bonita 26

DÖNTÉSEK ÜZLETI FOLYAMATOKBAN 27

Flowchart http://xkcd.com/518/ 28

Flowchart Flowchart / döntési diagram o Döntéshozatali gondolatmenetet ír le o Konklúzióhoz vezet o Nem fejez ki időbeli szekvenciát Speciális eset: döntési fa Valós feladatnál a döntési pontok és sorrendjük meghatározása nehéz (pl. adatok alapján? Ld. Később: adatelemzés) 29

Példa: rossz döntési struktúra Inkonzisztens döntési pontok Egymást nem kizáró alternatívák Döntési ágak nem fedik le az összes lehetőséget.. (Gyalog galopp, ábra: graphjam.com) 30

Döntések vs tevékenységek? Bár érthető, de nem precíz Mi a döntés, mi az egyéb tevékenység? Mi az állapot, mi az akció/esemény? Hiányos modell http://www.cardboardrepublic.com/cr_reviews/munchkin 31

Döntések folyamatokban? Elemi lépés belseje (ld. később: üzleti szabályok) Pl. Decision Model Notation (omg.org) 32

ADATFOLYAMHÁLÓK Data Flow Network, DFN 33

Adatfolyamhálók célja Csomópontok és kommunikáció modellezése o Pl. BPMN folyamatok leképzése (speciális eset) Csomópont is lehet egy modell o Nem emlékezet/állapotmentes o Állapotgép o Folyamatmodell? o Maga is egy adatfolyamháló Későbbi előadásban o Hierarchia modellezése o Finomítási lépések 34

Komponensek kommunikációja Lazán csatolás nem azonnali lépés Csatorna o FIFO vagy random access (mi alapján olvasunk belőle?) o Kapacitással rendelkeznek (mennyi token lehet rajta?) o Adatmodell rendelhető hozzá (pl. tokenhalmaz) Mögöttes technológia o Pl. üzenetsor alapú megoldások o MQ, JMS, MQTT,.. 35

Adatfolyam modellezés Nem determinisztikus DFN formalizmus o [Jonsson, Cannata] Struktúra o Adatfolyam gráf (DFG) csomópontok irányított élek (FIFO csatornák) Viselkedés o Tüzelési szabályok: <s0; in=c0; s1; out=2; > Adatok o Tokenek 36

Adatfolyam modellezés Nem determinisztikus DFN formalizmus o [Jonsson, Cannata] Struktúra o Adatfolyam gráf (DFG) csomópontok irányított élek (FIFO csatornák) Viselkedés o Tüzelési szabályok: <s0; in=c0; s1; out=c2; > Adatok o Tokenek 37

Adatfolyam modellezés Nem determinisztikus DFN formalizmus o [Jonsson, Cannata] Struktúra o Adatfolyam gráf (DFG) csomópontok Kiinduló irányított állapot élek (FIFO csatornák) Viselkedés o Tüzelési szabályok: <s0; in=c0; s1; out=c2; > Adatok o Tokenek 38

Adatfolyam modellezés Nem determinisztikus DFN formalizmus o [Jonsson, Cannata] Struktúra o Adatfolyam gráf (DFG) csomópontok Kiinduló irányított állapot élek (FIFO csatornák) Viselkedés o Tüzelési szabályok: <s0; in=c0; s1; out=c2; > Adatok o Tokenek Bemeneti csatorna 39

Adatfolyam modellezés Nem determinisztikus DFN formalizmus o [Jonsson, Cannata] Struktúra o Adatfolyam gráf (DFG) Bemeneti csomópontok Kiinduló csatornáról irányított állapot élek (FIFOelvett csatornák) token Viselkedés o Tüzelési szabályok: <s0; in=c0; s1; out=c2; > Adatok o Tokenek Bemeneti csatorna 40

Adatfolyam modellezés Nem determinisztikus DFN formalizmus o [Jonsson, Cannata] Struktúra o Adatfolyam gráf (DFG) Bemeneti csomópontok Kiinduló csatornáról irányított állapot élek (FIFOelvett csatornák) token Viselkedés o Tüzelési szabályok: <s0; in=c0; s1; out=c2; > Adatok o Tokenek Bemeneti csatorna Célállapot 41

Adatfolyam modellezés Nem determinisztikus DFN formalizmus o [Jonsson, Cannata] Struktúra o Adatfolyam gráf (DFG) Bemeneti csomópontok Kiinduló csatornáról irányított állapot élek (FIFOelvett csatornák) token Viselkedés o Tüzelési szabályok: <s0; in=c0; s1; out=c2; > Adatok o Tokenek Bemeneti csatorna Célállapot Kimeneti csatorna 42

Adatfolyam modellezés Nem determinisztikus DFN formalizmus o [Jonsson, Cannata] Struktúra o Adatfolyam gráf (DFG) Bemeneti csomópontok Kiinduló csatornáról irányított állapot élek (FIFOelvett csatornák) token Viselkedés o Tüzelési szabályok: <s0; in=c0; s1; out=c2; > Adatok o Tokenek Bemeneti csatorna Célállapot 43 Kimeneti csatorna Kimeneti csatornára kitett token

Adatfolyam modellezés Nem determinisztikus DFN formalizmus o [Jonsson, Cannata] Struktúra o Adatfolyam gráf (DFG) Bemeneti csomópontok Kiinduló csatornáról irányított állapot élek (FIFOelvett csatornák) token Viselkedés o Tüzelési szabályok: <s0; in=c0; s1; out=c2; > Adatok o Tokenek Bemeneti csatorna Célállapot 44 Kimeneti csatorna Prioritás Kimeneti csatornára kitett token

Nem determinisztikus adatfolyam A rendszer determinisztikus: o Egy adott állapotban bekövetkező feltételek szerint hajt végre akciókat. A rendszer nem determinisztikus: o Példa1: Az eddigi feltételek helyett az akciók végrehajtásának valószínűsége adott (randomizált modell). o Példa2: nem tudjuk/nem modellezük a döntések belsejét (ld később: predikátum absztrakció, példa: x<8 helyett A ) o A randomizált modell nem feltétlenül,,ekvivalens a determinisztikus modellel. o Egymást kizáró alternatívák is lehetségesek A kapott eredményt értelmezni kell 45

A módszer előnyei Tulajdonság Grafikus, moduláris, kompakt, hierarchikus Fekete és átlátszó doboz modell Finomítási szabályok Információáramlás direkt leírása Elosztott modell mind finom, mind durva pontossággal Adatvezérelt működés Hívási átlátszóság, atomi tulajdonság, információrejtés Matematikai formalizmus Transzformáció: TTPN, PA Alkalmas Egyszerűen áttekinthető modell Modellezés korai fázisban Többszintű modellezés Hibaterjedés modellezése Aszinkron, konkurens események Eseményvezérelt real-time rendszerek Hibatűrő alkalmazások Formális módszerek Validáció, időbeli analízis 46

Adatfolyam hálózat formális leírása Adatfolyam hálózat: egy hármas (N, C, S ) o N : csomópontok halmaza o C : csatornák halmaza I: bemenő csatornák kapcsolat a külvilággal O: kimenő csatornák IN: belső (csomópontok közötti) csatornák o S : állapotok halmaza Adatfolyam csatorna: o végtelen kapacitású FIFO csatorna, o egy bemeneti és egy kimeneti csomóponthoz kötve o állapota: S c = M c tokenszekvencia 47

Adatfolyam csomópont formális leírása Adatfolyam csomópont: n = (I n,o n,s n,s n0,r n,m n ), ahol I n bemenő csatornák halmaza O n kimenő csatornák halmaza S n csomópont állapotok halmaza s 0 n csomópont kezdőállapota, s 0 n S n M n tokenek halmaza R n tüzelések halmaza, r n R n egy ötös (s n, X in, s n, X out, ) s n X in tüzelés előtti és utáni állapotok, s n S bemenő leképzés, X in : I n M n X out kimenő leképzés, X out : O n M n tüzelés prioritása, N 48

in n Egy példa out Egy token kapacitású csatornák Hálózat: o DFN = ({n}, {in, out}, {(s,0,0), (s,ok,0), (s,0,ok), (s,ok,ok)}) Csomópontok: o n = ({in}, {out}, {s}, s, {ok,0}, {r1}) Tüzelések: o r1=<s; in=ok; s; out=ok; 0> 49

Egy példa in Egy token kapacitású csatornák Hálózat: o DFN = ({n}, {in, out}, {(s,0,0), (s,ok,0), (s,0,ok), (s,ok,ok)}) Csomópontok: o n = ({in}, {out}, {s}, s, {ok,0}, {r1}) Tüzelések: n Csomópontok halmaza out o r1=<s; in=ok; s; out=ok; 0> 50

Egy példa in Egy token kapacitású csatornák Hálózat: o DFN = ({n}, {in, out}, {(s,0,0), (s,ok,0), (s,0,ok), (s,ok,ok)}) Csomópontok: o n = ({in}, {out}, {s}, s, {ok,0}, {r1}) Tüzelések: n Csomópontok halmaza out o r1=<s; in=ok; s; out=ok; 0> Csatornák halmaza 51

Egy példa in Egy token kapacitású csatornák Hálózat: o DFN = ({n}, {in, out}, {(s,0,0), (s,ok,0), (s,0,ok), (s,ok,ok)}) Csomópontok: o n = ({in}, {out}, {s}, s, {ok,0}, {r1}) Állapotok halmaza Tüzelések: n Csomópontok halmaza out o r1=<s; in=ok; s; out=ok; 0> Csatornák halmaza 52

Egy példa in n out Egy token kapacitású csatornák Bemenő csatornák o DFN halmaza = ({n}, {in, out}, {(s,0,0), (s,ok,0), (s,0,ok), (s,ok,ok)}) Hálózat: Csomópontok: o n = ({in}, {out}, {s}, s, {ok,0}, {r1}) Tüzelések: o r1=<s; in=ok; s; out=ok; 0> 53

Egy példa in n out Egy token kapacitású csatornák Bemenő Kimenő csatornák csatornák o DFN halmaza halmaza = ({n}, {in, out}, {(s,0,0), (s,ok,0), (s,0,ok), (s,ok,ok)}) Hálózat: Csomópontok: o n = ({in}, {out}, {s}, s, {ok,0}, {r1}) Tüzelések: o r1=<s; in=ok; s; out=ok; 0> 54

Egy példa in n out Egy token kapacitású csatornák Bemenő Kimenő csatornák csatornák o DFN halmaza halmaza = ({n}, {in, out}, {(s,0,0), (s,ok,0), (s,0,ok), (s,ok,ok)}) Hálózat: Csomópontok: o n = ({in}, {out}, {s}, s, {ok,0}, {r1}) Tüzelések: o r1=<s; in=ok; s; out=ok; 0> Csomópont állapotok halmaza 55

Egy példa in n out Egy token kapacitású csatornák Bemenő Kimenő csatornák csatornák o DFN halmaza halmaza = ({n}, {in, out}, {(s,0,0), (s,ok,0), (s,0,ok), (s,ok,ok)}) Hálózat: Csomópontok: o n = ({in}, {out}, {s}, s, {ok,0}, {r1}) Tüzelések: Tokenek o r1=<s; in=ok; s; out=ok; 0> halmaza Csomópont állapotok halmaza 56

Egy példa in n out Egy token kapacitású csatornák Bemenő Kimenő csatornák csatornák o DFN halmaza halmaza = ({n}, {in, out}, {(s,0,0), (s,ok,0), (s,0,ok), (s,ok,ok)}) Hálózat: Csomópontok: o n = ({in}, {out}, {s}, s, {ok,0}, {r1}) Tüzelések: Tokenek o r1=<s; in=ok; s; out=ok; 0> halmaza Csomópont állapotok halmaza Tüzelések halmaza 57

Példa - Számláló Készítsük el egy adatfolyam Számláló csomópontját, amely számláló bemenetén és tokeneket kap, majd a kimenetén a w00t token jelenik meg, amennyiben egymás után 3 db jelet olvas a bementről. 58

Példa - Bíró Készítsük el egy adatfolyam Bíró csomópontját. A csomópont két bemenetéről egyszerre olvassa be egy érme feldobásának eredményét és a játékos tippjét. Ha a dobás és a tipp megegyezik a kimeneten a jelet, egyébként a jelet adja ki. 59

Adatfolyam modellek kiértékelése + Interaktív szimuláció Validáció, helyességbizonyítás (direkt/indirekt) Dinamikus tulajdonságok: elérhetőség, holtpontmentesség + Időbeli analízis (indirekt) Tüzelési szabályokban végrehajtási idő, mint valószínűségi változó + Hibaszimuláció (direkt, diszkrét esemény szimuláció) Működési modell kiegészítése hibamodellel, hibahatások elemzése + Teszttervezés (indirekt) Tesztgenerálás, tesztelhetőségi analízis, tesztkészlet optimalizálás Hibahatás analízis (direkt) FMEA: hibamód és hatás analízis, hibafa és eseményfa generálás (Megbízhatósági analízis) (indirekt) Klasszikus mértékek: megbízhatóság, rendelkezésre állás, MTBF, 60

ESETTANULMÁNY: STORM Adatfeldolgozás Apache Storm használatával (Nádudvari Tamás: Nagyméretű adathalmazok elemzésének stream processing alapú támogatása) 61

Alkalmazás adatfolyam A lementett hálózati adatokat tartalmazó rekordokat fájlból kiolvassuk Egy rekordban szerepel a forrás és cél IP cím, időpont forgalmazott csomagszám adatmennység 62

Alkalmazás adatfolyam A hálózati rekordokat egy adatbázisba küldjük 63

Alkalmazás adatfolyam A Storm alkalmazás első komponense kiolvassa a beküldött rekordokat 64

Alkalmazás adatfolyam Az alkalmazás szempontjából lényegtelen adatokat levágja a rekordokból 65

Alkalmazás adatfolyam Csak az időpontot és a cél IP címet tartalmazó értékpárok lesznek továbbküldve 66

Alkalmazás adatfolyam Egy külső web szolgáltatás segítségével az IP címekhez megkeresi a hozzátartozó országot 67

Alkalmazás adatfolyam (időpont, ország) értékpárok 68

Alkalmazás adatfolyam Az adatokat idő alapján aggregálja 3 perces blokkokba Országok szerint összegez Adatbázisba ment 69

Alkalmazás adatfolyam A csúszó ablakból kieső adatok törlésért felel 70

Alkalmazás adatfolyam Nem a beérkező rekordok hatására ( percenként) 71

Alkalmazás adatfolyam Ország név és gyakoriság értékpárok Megjelenítés: egyszerű webszolgáltatás és weblap 72

Alkalmazás adatfolyam 73

Szöveges folyamat (topológia) TopologyBuilder builder = new TopologyBuilder(); builder.setspout("redis_spout", new RedisSpout(), 1); builder.setbolt("gatherer", new Gatherer(), 5).shuffleGrouping("redis_spout"); builder.setbolt("locator", new GeoTagger(), 10).shuffleGrouping("gatherer"); builder.setbolt("aggregator", new Aggregator(), 10).fieldsGrouping("locator", new Fields("date")); builder.setspout("timer_spout", new TimerSpout(), 1); builder.setbolt("sweeper", new Sweeper(), 5).shuffleGrouping("timer_spout"); 74

Kimenet 75

Miért/hogyan folyamat? Adatáramlás explicit megjelenik o Először szűr, aztán összesít Implicit függőségek (DB) Folyamat sablon ~ topológia o Saját definíció, nem szabvány Nem általános célú o Kifejezetten adatfeldolgozás o (Eredetileg: állapotfrissítések) 76