Prezentace se nahrává, počkejte prosím

Prezentace se nahrává, počkejte prosím

Tomáš Skopal Tomas.Skopal@vsb.cz GIS řízený toky dat Tomáš Skopal Tomas.Skopal@vsb.cz.

Podobné prezentace


Prezentace na téma: "Tomáš Skopal Tomas.Skopal@vsb.cz GIS řízený toky dat Tomáš Skopal Tomas.Skopal@vsb.cz."— Transkript prezentace:

1 Tomáš Skopal Tomas.Skopal@vsb.cz
GIS řízený toky dat Tomáš Skopal

2 Toky dat zdůraznění toků dat v IS koncept DFD (data flow diagrams)
dekompozice systému: orientovaný graf elementy (uzly) a toky (hrany) monolitický systém

3 Příklad – internetový obchod
Informační systém – internetové knihkupectví subIS3 – systém skladu subIS1 – objednávkový systém subIS2 – účtovací systém element 1 element 2 element 4 element 6 element 3 element 5 uživatel výstup do nekompatibilních IS

4 Pipe – definice Pipe: trojice (I, O, S)
Formalizace elementu a souvisejících toků dat jako jeden objekt Pipe. Pipe: trojice (I, O, S) posloupnost vstupů I (vstupní toky dat) posloupnost výstupů O (výstupní toky dat) posloupnost sémantických funkcí S (pro každý výstup jedna funkce – transformace dat ze vstupů na výstup) Pipe black-box vstup #1 vstup #2 vstup #3 výstup #1 výstup #2

5 Elementární příklady – Pipe
S1: O2  I1 – I2 5 3 2

6 Elementární příklady – Pipe
S1: O1  slova “a*” S2: O2  slova “*b*” automat, bota, abonent automat, abonent bota,

7 Konfigurace sítě Pipes
Konfiguruje klientská aplikace: a) vytvoření instancí Pipes (lokálně, vzdáleně) b) vytvoření topologie (propojení Pipes do sítě) c) nastavení lokálních stavů Pipes

8 Prostředky konfigurace
Rozhraní pro konfiguraci (lokální nastavení) Komunikační protokol (sdílené rozhraní) a) prostředky k propojení Pipes b) prostředky k analýze (dotazy na stav) ISharedProtocol pipe B ICfg2 pipe A ICfg1

9 Příklad – konfig. sítě Pipes
Instance Pipes Propojení Lokální nastavení automat, bota, abonent bota, abonent Filter pipe File pipe Print pipe Soubor „slova.txt“ Tiskárna „HP LaserJet“ slova: „a*“, „*b*“

10 Dotazy na obsah Pipe a) klient položí Pipe (resp. jejímu výstupu) v síti požadavek na vrácení stavu b) Pipe zpracuje data na svých vstupech a výsledek poskytne na výstup c) pokud nejsou data na vstupech připravena, dotaz se vyvolá na vstupující Pipes (směrem ke kořenům sítě) A C B D E 1 3 4 5 2 6

11 Události změny obsahu Pipe
v Pipe proběhne z nějakého důvodu změna stavu (vnější změna, změna vyvolaná po vstupech) Pipe vyhodnotí vliv změny na obsah svých výstupů a v případě změny vyšle událost změny (sérii událostí) po dotčených výstupech níže do závislých Pipes C B D E 1 2 5 6 3 4

12 Propagace modifikací do Pipe se pošle požadavek na vložení/modifikaci dat Pipe vyhodnotí relevanci tohoto požadavku a přepošle požadavek do příslušných vstupujících Pipes kořenové Pipes aktualizují (změní) svůj obsah a následně vyšlou sérii událostí změny obsahu A C B D E 2 3 1

13 Aplikace pro GIS (PG.NET)
Specifikace PG.NET – (Piped GIS) a implementace katalogu Pipes pro GIS, na platformě MS .NET Mezi Pipes „tečou“ geografické entity (features) Feature: atributy (alespoň ID) a geometrie Např.: silnice, potrubí, parcela, strom Class=1 ID=2 Class=7 ID=1 Class=3 ID=1

14 Katalog Pipes (PG.NET) Prvky z ADO databáze „Brána“ do sítě Pipes
ADOStorePipe ADO databáze Prvky z ADO databáze „Brána“ do sítě Pipes UnionPipe Skládá více „toků“ do jediného Slučuje zdroje dat

15 Katalog Pipes (PG.NET) AttributeFilterPipe class=1 class=2 class=3 Filtruje vstupní tok podle atributů na více výstupů Separuje „toky“ podle atributových kritérií IntersectFilterPipe Propouští ty prvky, které se dotýkají jiných

16 Katalog Pipes (PG.NET) Vytváří nové prvky z geometrií vstupních prvků
BufferZonePipe Vytváří nové prvky z geometrií vstupních prvků Obálky geometrií Koncová Pipe (klient) zároveň GUI kontrol n vstupů = n vrstev v mapě

17 Příklad – marketing kabel. TV
O1  cond: class=„kabely“ O2  cond: class=„budovy“ AttributeFilterPipe BufferZonePipe IntersectFilterPipe „report client“ kabely budovy dotčené budovy obálky okolí = 10 metrů (nemá lokální stav) Ad1) soubor „results.txt“ Ad2) ConnectionString do DB Ad3) mapa v okně

18 Příklad – marketing VB klient
Dim mAttrPipe As New AttributeFilterPipe Dim mBufferPipe As New BufferZonePipe Dim mIntersectPipe As New IntersectFilterPipe Dim mReportPipe As New <custom pipe class>

19 Příklad – marketing VB klient
Dim mAttrPipe As New AttributeFilterPipe Dim mBufferPipe As New BufferZonePipe Dim mIntersectPipe As New IntersectFilterPipe Dim mReportPipe As New <custom pipe class> Set mAttrPipe.Input = <any source pipe output> mAttrPipe.AddCondition(“class=‘kabely’”): mAttrPipe.AddCondition(“class=‘budovy’”)

20 Příklad – marketing VB klient
Dim mAttrPipe As New AttributeFilterPipe Dim mBufferPipe As New BufferZonePipe Dim mIntersectPipe As New IntersectFilterPipe Dim mReportPipe As New <custom pipe class> Set mAttrPipe.Input = <any source pipe output> mAttrPipe.AddCondition(“class=‘kabely’”): mAttrPipe.AddCondition(“class=‘budovy’”) Set mBufferPipe.Input = mAttrPipe.Output(1): mBufferPipe.Tolerance = 10

21 Příklad – marketing VB klient
Dim mAttrPipe As New AttributeFilterPipe Dim mBufferPipe As New BufferZonePipe Dim mIntersectPipe As New IntersectFilterPipe Dim mReportPipe As New <custom pipe class> Set mAttrPipe.Input = <any source pipe output> mAttrPipe.AddCondition(“class=‘kabely’”): mAttrPipe.AddCondition(“class=‘budovy’”) Set mBufferPipe.Input = mAttrPipe.Output(1): mBufferPipe.Tolerance = 10 Set mIntersectPipe.Input(1) = mBufferPipe.Output Set mIntersectPipe.Input(2) = mAttrPipe.Output(2)

22 Příklad – marketing VB klient
Dim mAttrPipe As New AttributeFilterPipe Dim mBufferPipe As New BufferZonePipe Dim mIntersectPipe As New IntersectFilterPipe Dim mReportPipe As New <custom pipe class> Set mAttrPipe.Input = <any source pipe output> mAttrPipe.AddCondition(“class=‘kabely’”): mAttrPipe.AddCondition(“class=‘budovy’”) Set mBufferPipe.Input = mAttrPipe.Output(1): mBufferPipe.Tolerance = 10 Set mIntersectPipe.Input(1) = mBufferPipe.Output Set mIntersectPipe.Input(2) = mAttrPipe.Output(2) Set mReportPipe.Input = mIntersectPipe.Output mReportPipe.<cfg method call>

23 Příklad – marketing VB klient
Dim mAttrPipe As New AttributeFilterPipe Dim mBufferPipe As New BufferZonePipe Dim mIntersectPipe As New IntersectFilterPipe Dim mReportPipe As New <custom pipe class> Set mAttrPipe.Input = <any source pipe output> mAttrPipe.AddCondition(“class=‘kabely’”): mAttrPipe.AddCondition(“class=‘budovy’”) Set mBufferPipe.Input = mAttrPipe.Output(1): mBufferPipe.Tolerance = 10 Set mIntersectPipe.Input(1) = mBufferPipe.Output Set mIntersectPipe.Input(2) = mAttrPipe.Output(2) Set mReportPipe.Input = mIntersectPipe.Output mReportPipe.<cfg method call> mReportPipe.GetData

24 Odkazy Katedra mat. informatiky, UP Olomouc http://www.inf.upol.cz
Katedra informatiky, VŠB-TU Ostrava


Stáhnout ppt "Tomáš Skopal Tomas.Skopal@vsb.cz GIS řízený toky dat Tomáš Skopal Tomas.Skopal@vsb.cz."

Podobné prezentace


Reklamy Google