Légi irányítás Esettanulmány

39
Légi irányítás Légi irányítás Esettanulmány Esettanulmány Készítette: Szilágyi Jenő Készítette: Szilágyi Jenő E-mail: E-mail: [email protected] [email protected] Forrás: Forrás:

description

Légi irányítás Esettanulmány. Készítette: Szilágyi Jenő E-mail: [email protected] Forrás:. Alapprobléma. Az FAA a 90-es években le akarta cserélni a nemzeti légi irányítási rendszert. - PowerPoint PPT Presentation

Transcript of Légi irányítás Esettanulmány

Page 1: Légi irányítás Esettanulmány

Légi irányításLégi irányításEsettanulmányEsettanulmány

Készítette: Szilágyi JenőKészítette: Szilágyi Jenő

E-mail: E-mail: [email protected]@inf.elte.hu

Forrás:Forrás:

Page 2: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 22

AlapproblémaAlapprobléma

Az FAA a 90-es években le akarta cserélni Az FAA a 90-es években le akarta cserélni a nemzeti légi irányítási rendszert.a nemzeti légi irányítási rendszert.

Ennek során minden akkori informatikai Ennek során minden akkori informatikai problémával szembesültek (több millió problémával szembesültek (több millió soros program, elosztva több száz gépen, soros program, elosztva több száz gépen, beágyazva a legmodernebb hardverekbe)beágyazva a legmodernebb hardverekbe)

A biztonság nagyon fontos (emberélet)A biztonság nagyon fontos (emberélet)

Page 3: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 33

Légi irányítás (Air Traffic Légi irányítás (Air Traffic Control)Control) Hard real time (valósidejű eredmények)Hard real time (valósidejű eredmények) A biztonság kritikus szempont (emberélet)A biztonság kritikus szempont (emberélet) Elosztott (sok irányító együttműködése)Elosztott (sok irányító együttműködése)

A rendszert végül nem vezették be, de A rendszert végül nem vezették be, de implementálták és bebizonyosodott, hogy implementálták és bebizonyosodott, hogy megfelel a minőségi követelményeknekmegfelel a minőségi követelményeknek

Page 4: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 44

IrányításIrányítás

Földi irányításFöldi irányítás (ground control): (ground control): repülőtéren való földi mozgás repülőtéren való földi mozgás koordinálásakoordinálása

TornyokTornyok (tower): repülőtér légterében (tower): repülőtér légterében való irányítás, henger alakú térrészvaló irányítás, henger alakú térrész

Útközi irányító központokÚtközi irányító központok (en route (en route center): az ország légterét 22 center): az ország légterét 22 területre osztottákterületre osztották

Page 5: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 55

Példa (Key West → Washington Példa (Key West → Washington DC)DC)

Földi irányítás: Key West ground Földi irányítás: Key West ground contorlcontorl

Torony: Key West towerTorony: Key West tower Útközi irányítás: Miami Center, Útközi irányítás: Miami Center,

Jacksonville Center, Atlanta Center, Jacksonville Center, Atlanta Center, Washington CenterWashington Center

Torony: Dulles towerTorony: Dulles tower Földi irányítás: Dulles ground controlFöldi irányítás: Dulles ground control

Page 6: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 66

ProjectProject

Initial Sector Suite SystemInitial Sector Suite System (ISSS): a 22 útközi (ISSS): a 22 útközi irányítóközpontra kiterjedő új hardver- és irányítóközpontra kiterjedő új hardver- és szoftverrendszer.szoftverrendszer.

Az ISSS megszerezte mindhárom terület (útközi Az ISSS megszerezte mindhárom terület (útközi irányítóközpontok, irányítótornyok, földi irányítás) irányítóközpontok, irányítótornyok, földi irányítás) fejlesztésének jogát, így sok komponenst fejlesztésének jogát, így sok komponenst megoszthattak (pl.: rádió rendszer interfésze, megoszthattak (pl.: rádió rendszer interfésze, repülő adatbázis interfész, …)repülő adatbázis interfész, …)

Advanced Automation SystemAdvanced Automation System (AAS): a rendszer (AAS): a rendszer újításainak összességeújításainak összessége

Végül visszavonták a megbízást, és egy olcsóbb Végül visszavonták a megbízást, és egy olcsóbb terv vette át a helyét, de tanulságai miatt terv vette át a helyét, de tanulságai miatt érdemes elemezniérdemes elemezni

Page 7: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 77

Architecture Business Cycle Architecture Business Cycle (ABC)(ABC)MegrendelőFAAVégfelhasználólégiirányítók

Fejlesztők

Technikai környezetAda prg. NyelvElosztott programozás

Fejlesztői tapasztalatokHibatűrésÜzenetalapú rendszer

Követelmények(minőség)

Tervező Architektúra

RendszerISSS

Tervezőt befolyásoló tényezők

Page 8: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 88

Követelmények és minőségKövetelmények és minőség

Szinte állandó rendelkezésre állásSzinte állandó rendelkezésre állás: egy : egy év alatt a rendszer összesen max. 5 év alatt a rendszer összesen max. 5 percig lehet elérhetetlen.percig lehet elérhetetlen.

Magas teljesítményMagas teljesítmény: sok repülőgépet : sok repülőgépet kell kezelnie (2440), anélkül, hogy kell kezelnie (2440), anélkül, hogy bármelyiket elveszítené. A hálózat bármelyiket elveszítené. A hálózat kommunikációs csatornáinak gyorsnak kommunikációs csatornáinak gyorsnak és kiszámíthatónak kell lenniük.és kiszámíthatónak kell lenniük.

Page 9: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 99

Követelmények és minőségKövetelmények és minőség

NyitottságNyitottság: képes befogadni a külső : képes befogadni a külső szoftverkomponenseketszoftverkomponenseket

A részfeladatok különálló A részfeladatok különálló kezelhetősége (dekompozíció)kezelhetősége (dekompozíció)

A hardver és szoftver könnyű A hardver és szoftver könnyű lecserélhetősége, módosíthatóságalecserélhetősége, módosíthatósága

Külső rendszerekhez való Külső rendszerekhez való kapcsolódás lehetőségekapcsolódás lehetősége

Page 10: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 1010

Követelmények és minőségKövetelmények és minőség

Minden szektorból 1-4 irányító Minden szektorból 1-4 irányító központ érhető elközpont érhető el

Minden központban legalább két Minden központban legalább két ember van (radar figyelő, adat ember van (radar figyelő, adat figyelő)figyelő)

Page 11: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 1111

Rendszer kapacitásaiRendszer kapacitásai

210 konzol / útközi irányító központ210 konzol / útközi irányító központ 400-2440 repülőgép párhuzamos 400-2440 repülőgép párhuzamos

kezelésekezelése 16-40 radar kezelése16-40 radar kezelése 1 millió soros Ada kód1 millió soros Ada kód

Page 12: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 1212

ISSS feladataiISSS feladatai

Radar célpont jelentés megszerzése a Host Radar célpont jelentés megszerzése a Host Computer System-től (HCS: a repülési Computer System-től (HCS: a repülési adatok feldolgozásáért felelős)adatok feldolgozásáért felelős)

Szétszórja a jelentéseket a konzolok között Szétszórja a jelentéseket a konzolok között és a konzolok kiválasztják, mely jelentést és a konzolok kiválasztják, mely jelentést kell megjeleníteniükkell megjeleníteniük

Konfliktus helyzetek figyeléseKonfliktus helyzetek figyelése Interfész a Host feléInterfész a Host felé Adatok folyamatos figyelése (network Adatok folyamatos figyelése (network

management)management)

Page 13: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 1313

ISSS feladataiISSS feladatai

Adatok mentésének támogatása Adatok mentésének támogatása (később visszajátszás)(később visszajátszás)

Ablakozó rendszer a konzolon Ablakozó rendszer a konzolon (figyelni az eltakart adatokra)(figyelni az eltakart adatokra)

Csökkentett mód futtatása Csökkentett mód futtatása meghibásodás eseténmeghibásodás esetén

Page 14: Légi irányítás Esettanulmány

1414

ArchitektúraArchitektúra

Page 15: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 1515

Fizikai nézetFizikai nézet

Host Computer SystemHost Computer System (HCS): (HCS): Pozíció információk (konzolon jelenik meg)Pozíció információk (konzolon jelenik meg) Repülési adatok (nyomtatószalagra, néhány a konzolra Repülési adatok (nyomtatószalagra, néhány a konzolra

is)is) Biztonsági okokból kettő van belőleBiztonsági okokból kettő van belőle

Közös konzolKözös konzol: pozíció, kapcsolódó adatok, : pozíció, kapcsolódó adatok, repülési terv, …repülési terv, …

Local Communications NetworkLocal Communications Network (LCN): az ISSS (LCN): az ISSS elsődleges hálózata (4db bridzsekkel összekötött elsődleges hálózata (4db bridzsekkel összekötött „token ring”-ből áll)„token ring”-ből áll)

LCN interface unitsLCN interface units (LIU-H): a HCS-t és az LCN-t (LIU-H): a HCS-t és az LCN-t összekötő interfészösszekötő interfész

Page 16: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 1616

Fizikai nézetFizikai nézet

Kiemelt Közvetlen Elérésű Radar CsatornaKiemelt Közvetlen Elérésű Radar Csatorna (Enhanced Direct Access Radar Chanel): (Enhanced Direct Access Radar Chanel): ha elvesznek a Host-tól származó adatok, ha elvesznek a Host-tól származó adatok, közvetlen nyers adatokat szerez a radartólközvetlen nyers adatokat szerez a radartól

Backup Communications NetworkBackup Communications Network (BCN): (BCN): TCP/IP protokollt használó Ethernet hálózatTCP/IP protokollt használó Ethernet hálózat

Monitor & Control konzolMonitor & Control konzol: a hálózatokhoz : a hálózatokhoz rendelt ellenőrző konzol, mely speciális rendelt ellenőrző konzol, mely speciális szoftvereket tartalmazszoftvereket tartalmaz

Page 17: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 1717

Fizikai nézetFizikai nézet

Tesztelő és szimulációs alrendszerekTesztelő és szimulációs alrendszerek: : új hardverek tesztelésére, új új hardverek tesztelésére, új szoftverek szimulációjára (betanítás)szoftverek szimulációjára (betanítás)

Központi processzorokKözponti processzorok: adatok : adatok mentésére és visszajátszásáramentésére és visszajátszására

Page 18: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 1818

ISSS fizikai nézete ISSS fizikai nézete

HCS A

HCS B

EDARC

LIU-H

M&CConsoles

Bridge

CentralProcessor

Test andTraining

Subsystem

Bridge BridgeBridge

M&CConsoles

CommonConsolesCommonConsolesCommonConsolesCommonConsoles

ESI LIU-C

LIU-H

<<BCN>>

<<BCN>><<LCN>>

<<LCN>>

<<LCN>>

Page 19: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 1919

Modul dekompozíciós nézetModul dekompozíciós nézet

Computer Software Configuration ItemsComputer Software Configuration Items (CSCI): (CSCI): az ISSS szoftver moduljainak összességeaz ISSS szoftver moduljainak összessége

CSCI elemei:CSCI elemei:1.1. Display ManagementDisplay Management: konzolokon való : konzolokon való

megjelenítésmegjelenítés2.2. Common System ServicesCommon System Services (CSS): hasznos közös (CSS): hasznos közös

szolgáltatások az ATC szoftverekbenszolgáltatások az ATC szoftverekben3.3. Mentést, Elemzést, VisszajátszástMentést, Elemzést, Visszajátszást támogató támogató

modulmodul4.4. National Airspace System ModificationNational Airspace System Modification: a Host-: a Host-

ban helyezkedik elban helyezkedik el5.5. IBM AIX operációs rendszerIBM AIX operációs rendszer

Page 20: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 2020

Modul dekompozíciós nézetModul dekompozíciós nézet

Az egyes modulok sugallnak bizonyos Az egyes modulok sugallnak bizonyos optimalizálási taktikákat:optimalizálási taktikákat:

„„Szemantikus koherencia” (jól definiált, nem Szemantikus koherencia” (jól definiált, nem túlterhelt elemek szétosztása a CSCI-nek)túlterhelt elemek szétosztása a CSCI-nek)

„„Absztrakt közös szolgáltatások”: CSS-nélAbsztrakt közös szolgáltatások”: CSS-nél „„Record/Playback”: tesztelhetőséget segítiRecord/Playback”: tesztelhetőséget segíti „„előre látható változások”, „modulok előre látható változások”, „modulok

generalizálása”, „interfész stabilitásának generalizálása”, „interfész stabilitásának fenntartása”: minden CSCI-nél alkalmazandófenntartása”: minden CSCI-nél alkalmazandó

Page 21: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 2121

Folyamat nézetFolyamat nézet

Alkalmazás ~ folyamatAlkalmazás ~ folyamat Kommunikáció az alkalmazások között: Kommunikáció az alkalmazások között:

üzenetküldésüzenetküldés A biztonság érdekében egy alkalmazás A biztonság érdekében egy alkalmazás

több másolatát ún. processor-group-okban több másolatát ún. processor-group-okban többszörösen tároljuk (többszörösen tároljuk (operational unitoperational unit = = primari address space (PAS) + standby primari address space (PAS) + standby address space (SAS)).address space (SAS)).

Ezzel nem rendelkező alkalmazások Ezzel nem rendelkező alkalmazások alkotják a alkotják a funcional group-okatfuncional group-okat

Page 22: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 2222

Folyamat nézetFolyamat nézet Kliens-szerver modellKliens-szerver modell: kliens (kérés) → : kliens (kérés) →

szerver (válasz)szerver (válasz) Operational unitOperational unit: a PAS-nak értesítenie kell : a PAS-nak értesítenie kell

a SAS-okat az állapotváltozásróla SAS-okat az állapotváltozásról Functional groupFunctional group: csak a saját állapotát : csak a saját állapotát

tartja karbantartja karban PAS meghibásodása esetén:PAS meghibásodása esetén:

1.1. Az egyik SAS előlép PAS-sáAz egyik SAS előlép PAS-sá2.2. Az új PAS helyreállítja a kapcsolatot a Az új PAS helyreállítja a kapcsolatot a

klienssel (rákérdez, történt-e kérés a klienssel (rákérdez, történt-e kérés a meghibásodáskor)meghibásodáskor)

3.3. A PAS helyére új SAS töltődikA PAS helyére új SAS töltődik4.4. Az új SAS feltöltése friss információkkalAz új SAS feltöltése friss információkkal

Page 23: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 2323

Folyamat nézetFolyamat nézet Új operational unit létrehozása:Új operational unit létrehozása:

1.1. Input-források azonosításaInput-források azonosítása2.2. Mely operational unit-ok igényelnek output-otMely operational unit-ok igényelnek output-ot3.3. Az erőforrás igénylési gráfban való elhelyezés Az erőforrás igénylési gráfban való elhelyezés

és körmentesség ellenőrzése (dead lock és körmentesség ellenőrzése (dead lock elkerülése)elkerülése)

4.4. Üzenetek megtervezése az adatforgalomhozÜzenetek megtervezése az adatforgalomhoz5.5. Állapot adatok azonosítása (PAS → SAS)Állapot adatok azonosítása (PAS → SAS)6.6. Állapot adatok felosztása → háózatraÁllapot adatok felosztása → háózatra7.7. Üzenettípus definiálásaÜzenettípus definiálása8.8. Teendők megtervezése hiba esetéreTeendők megtervezése hiba esetére9.9. Adatok konzisztenciájának fenntartásaAdatok konzisztenciájának fenntartása10.10. Elemi lépések gyors végrehajtásának Elemi lépések gyors végrehajtásának

biztosításabiztosítása11.11. Adatmegosztás és –lock-olás megtervezéseAdatmegosztás és –lock-olás megtervezése

Page 24: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 2424

Folyamat nézetFolyamat nézet

Sugallt optimalizálási taktikák:Sugallt optimalizálási taktikák: „„állapot újraszinkronizálás”állapot újraszinkronizálás” „„shadowing”shadowing” „„aktív redundancia”aktív redundancia” „„removal from service”removal from service”

Page 25: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 2525

Kliens-szerver nézetKliens-szerver nézet

Módosíthatósági taktikák:Módosíthatósági taktikák:1.1. „„interfész stabilitásának fenntartása”interfész stabilitásának fenntartása”

2.2. „„component replacement”component replacement”

3.3. „„definiált protokollokhoz való definiált protokollokhoz való ragaszkodás”ragaszkodás”

Page 26: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 2626

Kód nézetKód nézet

Programozási nyelv: AdaProgramozási nyelv: Ada Dekompozíció: package, moduláris Dekompozíció: package, moduláris

programozás (több fájlba való programozás (több fájlba való csoportosítás)csoportosítás)

Konkurencia kezelés: taskKonkurencia kezelés: task Absztrakció, adatelrejtés, Absztrakció, adatelrejtés,

újrahasznosítás: packageújrahasznosítás: package

Page 27: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 2727

Szoftver-réteg nézetSzoftver-réteg nézetOsztott memória

ASS alkalmazás•Címtér modulok•Alkalmazás szubrutinok•Csomagok

Osztott memória

CAS AIX Kernel-kiterjesztés•AAS szolgáltatások•Automatic Broadcast Manager•Device Driver-ek•TCP/IP

AIX Kernel1.

2.

3.

4.

5.

Page 28: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 2828

Szoftver-réteg nézetSzoftver-réteg nézet

Az alsó rétegek (2.):Az alsó rétegek (2.): Kis méretű (biztonsági szempontok Kis méretű (biztonsági szempontok

miatt),miatt), C-ben íródott szoftverek (a Kernel-lel C-ben íródott szoftverek (a Kernel-lel

való kompatibilitás miatt).való kompatibilitás miatt). A Kernel címterében futnak,A Kernel címterében futnak, az esetleges hibákat a Kernel-en belül az esetleges hibákat a Kernel-en belül

kell kezelni.kell kezelni.

Page 29: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 2929

Szoftver-réteg nézetSzoftver-réteg nézet

Felsőbb rétegek (3.):Felsőbb rétegek (3.): Az operációs rendszer kiterjesztései.Az operációs rendszer kiterjesztései. Ada-ban íródott,Ada-ban íródott, nagyobb méretű programok.nagyobb méretű programok. A hibákat a Kernel-en kívül kell A hibákat a Kernel-en kívül kell

lekezelni.lekezelni.

Page 30: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 3030

Szoftver-réteg nézetSzoftver-réteg nézet

Legfelső réteg (4.):Legfelső réteg (4.): Applikációs szint: itt helyezkednek el az Applikációs szint: itt helyezkednek el az

alkalmazásokalkalmazások Local Availability ManagerLocal Availability Manager: irányítja az : irányítja az

alkalmazások inicializációját, leállítását, alkalmazások inicializációját, leállítását, rendelkezésre állását. Kapcsolattartás rendelkezésre állását. Kapcsolattartás más processzorok menedzsereivel, más processzorok menedzsereivel, valamint a globális menedzserrel.valamint a globális menedzserrel.

Internal Time SyncronisationInternal Time Syncronisation: az ISSS : az ISSS processzorainak óráit szinkronizáljaprocesszorainak óráit szinkronizálja

Page 31: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 3131

Hibakezelés nézetHibakezelés nézet

Ez a nézet azt mutatja, hogy a hibák hogyan Ez a nézet azt mutatja, hogy a hibák hogyan detektálhatókdetektálhatók, , izolálhatókizolálhatók, és a rendszer , és a rendszer miként miként állítható helyreállítható helyre..

A detektálás és helyreállítás fokozatai a A detektálás és helyreállítás fokozatai a hibakezlési hierarchiában:hibakezlési hierarchiában: Hiba detektálása a keletkezés helyén, vagy Hiba detektálása a keletkezés helyén, vagy

alsóbb szintenalsóbb szinten Alsóbb szinten keletkezett kivétel kezeléseAlsóbb szinten keletkezett kivétel kezelése Diagnózis, helyreállítás, jelentés, vagy kivétel Diagnózis, helyreállítás, jelentés, vagy kivétel

dobásdobás

Page 32: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 3232

Hibakezelés nézetHibakezelés nézet

A hiba kezelésének szintjei:A hiba kezelésének szintjei: Fizikai (hálózat, processzor, I/O)Fizikai (hálózat, processzor, I/O) Operációs rendszerOperációs rendszer Valósidejű környezetValósidejű környezet AlkalmazásokAlkalmazások Local Availability Management szintjeLocal Availability Management szintje Group Availability Management szintjeGroup Availability Management szintje Global Availability Management szintjeGlobal Availability Management szintje System monitor and controlSystem monitor and control

Page 33: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 3333

Hibakezelés nézetHibakezelés nézet

Hibadetektálás: a hierarchia minden szintjénHibadetektálás: a hierarchia minden szintjén Helyreállítás: a szoftverhierarchia minden Helyreállítás: a szoftverhierarchia minden

szintjén.szintjén. Availability Manager-ekAvailability Manager-ek: táblázat alapján: táblázat alapján PASPAS: működési státusz alapján 4 helyreállítási típus: működési státusz alapján 4 helyreállítási típus A helyreállításban segítséget nyújt a A helyreállításban segítséget nyújt a redundanciaredundancia::

Hálózati hardver szinten (LCN, BCN, bridge)Hálózati hardver szinten (LCN, BCN, bridge) Processzor hardver szinten (processor group)Processzor hardver szinten (processor group) Szoftver szinten (operational unit többszörös tárolása)Szoftver szinten (operational unit többszörös tárolása)

Page 34: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 3434

A nézetek egymáshoz való A nézetek egymáshoz való viszonyaviszonya A különböző nézetekben megjelennek más A különböző nézetekben megjelennek más

nézetek elemei. Ezek teremtenek nézetek elemei. Ezek teremtenek összefüggést közöttük. Feltérképezve a összefüggést közöttük. Feltérképezve a kapcsolatokat, lesz teljes rálátásunk az kapcsolatokat, lesz teljes rálátásunk az architektúrára.architektúrára.

Példák összefonódásokra:Példák összefonódásokra: Modul dekompozíciós nézet elemei: CSCIModul dekompozíciós nézet elemei: CSCI A CSCI alkalmazásokból épül felA CSCI alkalmazásokból épül fel Az alkalmazások elemei a folyamat és a kliens-Az alkalmazások elemei a folyamat és a kliens-

szerver nézetnekszerver nézetnek Az alkalmazásokat Ada-ban implementálták Az alkalmazásokat Ada-ban implementálták

(programok, package-k), ami a kód nézetben (programok, package-k), ami a kód nézetben jelenik megjelenik meg

Page 35: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 3535

Adaptációs adatokAdaptációs adatok

Konfigurációs fájlKonfigurációs fájl Ezen keresztül paraméterezhető a programEzen keresztül paraméterezhető a program Helyi sajátosságok, változások gyors, Helyi sajátosságok, változások gyors,

egyszerű kezeléséreegyszerű kezelésére Generikus programozás Generikus programozás

(paraméterezhetőség, template)(paraméterezhetőség, template) Hátrányok:Hátrányok:

Új parancs felvétele → interpreterÚj parancs felvétele → interpreter Inkonzisztencia kezelése nem automatizálhatóInkonzisztencia kezelése nem automatizálható Állapottér növekedése → nehezebb Állapottér növekedése → nehezebb

tesztelhetőségtesztelhetőség

Page 36: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 3636

Absztrakt közös Absztrakt közös szolgáltatásokszolgáltatások Template-ek alkalmazása (Ada)Template-ek alkalmazása (Ada) Példa (PAS, SAS):Példa (PAS, SAS):

Ugyanazzal a template task-kal megvalósítva, ami egy Ugyanazzal a template task-kal megvalósítva, ami egy végtelen ciklust tartalmaz, melyben a lehetséges végtelen ciklust tartalmaz, melyben a lehetséges eseményeket kezeli le a lehetséges állapotok eseményeket kezeli le a lehetséges állapotok függvényébenfüggvényében

A korábban leírt funkciókat látja elA korábban leírt funkciókat látja el A programozónak nem kell tudnia:A programozónak nem kell tudnia:

az üzenetkezelésrőlaz üzenetkezelésről hogy az alkalmazás hibatűrő-ehogy az alkalmazás hibatűrő-eEzek felsőbb tervezési szinteken kerülnek előEzek felsőbb tervezési szinteken kerülnek elő

Támogatja a módosíthatóságotTámogatja a módosíthatóságot „„megelőzni az előre látható változásokat” taktikamegelőzni az előre látható változásokat” taktika

Page 37: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 3737

Absztrakt közös Absztrakt közös szolgáltatásokszolgáltatások „„szemantikus koherencia”: absztrakt szemantikus koherencia”: absztrakt

szinten mindegyik alkalmazás ugyanazt szinten mindegyik alkalmazás ugyanazt csináljacsinálja

„„modulok generalizálása”modulok generalizálása” Ha az interfészeket és protokollokat a Ha az interfészeket és protokollokat a

template részévé tesszük akkor template részévé tesszük akkor megvalósulnak a következő taktikák is:megvalósulnak a következő taktikák is: „„interfész stabilitás”interfész stabilitás” „„ragaszkodjunk a definiált protokollokhoz”ragaszkodjunk a definiált protokollokhoz”

Page 38: Légi irányítás Esettanulmány

Air Traffic ControlAir Traffic Control 3838

Hogyan feleljünk meg az ATC Hogyan feleljünk meg az ATC rendszer minőségi rendszer minőségi követelményeinek?követelményeinek?

CélCél MegvalósításMegvalósítás TaktikaTaktika

Magas rendelkezésre Magas rendelkezésre állásállás

Hardver- és szoftver Hardver- és szoftver redundanciaredundancia

Állapot Állapot reszinkronizáció, aktív reszinkronizáció, aktív redundancia, …redundancia, …

Magas teljesítményMagas teljesítmény Elosztott Elosztott multiprocesszorokmultiprocesszorok

Introduce Introduce concurrencyconcurrency

NyitottságNyitottság Interfészek, rétegekInterfészek, rétegek Absztrakt közös Absztrakt közös szolgáltatásokszolgáltatások

MódosíthatóságMódosíthatóság TemplateTemplate Absztrakt közös Absztrakt közös szolgáltatásokszolgáltatások

Page 39: Légi irányítás Esettanulmány

3939

Itt a vége, fuss el Itt a vége, fuss el véle!véle!