Strategiai Kutatási Terv 1.1 támogatja:
Tartalomjegyzék
2
1 1.1
BEVEZETŐ.......................................................................................................6 A JÖVŐKÉP FONTOSABB MEGÁLLAPÍTÁSAI..................................................9
2 2.1 2.2
IT SZOLGÁLTATÁSFEJLESZTÉSI STRATÉGIA................................................15 ALAPELVEK....................................................................................................15 NYITOTT KÉRDÉSEK.....................................................................................16
3 3.1 3.2 3.3 3.4 3.5 3.6 3.7
FŐ KUTATÁSI TERÜLETEK.............................................................................19 FOLYAMATMENEDZSMENT...........................................................................20 INTEROPERABILITÁS....................................................................................23 ARCHITEKTÚRÁK ÉS SOA.............................................................................29 SZOFTVERTECHNOLÓGIA.............................................................................34 IT BIZTONSÁG...............................................................................................38 SZOFTVERMINŐSÉG.....................................................................................44 E-KÖZIGAZGATÁS.........................................................................................50
4 4.1 4.2 4.3
KUTATÁSI PRIORITÁSOK...............................................................................55 RÖVID TÁVÚ KUTATÁSI CÉLOK.....................................................................55 KÖZÉP TÁVÚ KUTATÁSI CÉLOK....................................................................56 HOSSZÚ TÁVÚ KUTATÁSI CÉLOK.................................................................57
5 5.1 5.2
OKTATÁS, KÉPZÉS, EGYÉB FELTÉTELEK......................................................58 ÁLTALÁNOS PROBLÉMÁK.............................................................................58 OKTATÁS ÉS KÉPZÉS....................................................................................60
6
FOGALOMTÁR...............................................................................................61
Stratégiai Kutatási Terv 1.1
Vezetői összefoglaló A NESSI-Hungary Szoftver és Szolgáltatások nemzeti Technológiai Platformot 90 magyar informatikai szervezet (vállalkozás, intézmény) alapította azzal a céllal, hogy egységes szemléletre alapozott stratégiai kutatás-fejlesztési irányokat dolgozzon ki a szoftverek és szolgáltatások területén. A platform elsősorban a szakterület hazai helyzetére koncentrál, emellett anyaszervezetének tekinti az európai NESSI-t (Networked European Software & Services Initiative), és követi a nemzetközi trendek alakulását. Jövőképének alapvetése szerint a szolgáltatások sokaságával, számítógépek, adatgyűjtő pontok millióival rendelkező, nagy elosztott rendszerek fogják alkotni a közeljövő tudásalapú társadalmának és gazdaságának alapvető infrastruktúráját. A platform stratégiai kutatási terve részletesebben kifejti a jövőképben felvázolt vízió megvalósításához szükséges átfogó kutatás-fejlesztési feladatokat. A jövő informatikai rendszereit az egymással összekapcsolódni és együttműködni képes szolgáltató csomópontok, és a szolgáltatásokat felhasználni és integrálni képes, a felhasználók igényeihez, szokásaihoz, feladataihoz a legmesszebbmenőkig igazodó alkalmazások alkotják. Ezeknek a komplex rendszereknek a meghatározó hányada szoftver. A komplex rendszert alkotó alrendszereket gyakran önálló, független szervezetek működtetik. A rendszerek egyre inkább a mindennapi élet részévé válnak, szolgáltatásaik magas fokú társadalmi hatékonyságot biztosítanak. A vízió egyes elemei már ma is léteznek. Az összekapcsolódás alapvető, világméretű infrastruktúrája, az Internet, működik, egyre több eszköz kapcsolódik rá, egyre több szolgáltatás érhető el rajta. Napirenden van a több, önálló szervezet rendszereit integráló komplex rendszerek kialakítása. Megszülettek ennek architekturális és technológiai alapelvei, a szolgáltatásorientált architektúra (SOA) paradigmája és támogató eszközei. A tapasztalatok pedig megmutatják a továbblépés akadályait és a megoldandó problémákat.
Stratégiai Kutatási Terv 1.1
3
Vezetői összefoglaló
1 Introduction
A NESSI-Hungary munkacsoportjai részint szakmai, részint alkalmazási területek (domének) szerint tagozódnak. Jelenleg hat szakmai és egy alkalmazói munkacsoport működik. A munkacsoportok saját nézőpontjukból elemezték a szakma helyzetét, és határoztak meg kutatási-fejlesztési feladatokat. Ezek a magas szintű szolgáltatási folyamatok kezelése, az autonóm alrendszerek együttműködési, interoperabilitási kérdései, a SOA szerinti fejlesztés és integráció módszerei és architekturális mintái, a SOA világban alkalmazott szoftverek fejlesztési technológiája, a biztonság és védelem a komplex rendszerekben, a szoftverminőség, valamint az e-közigazgatás fejlesztése, kitekintve más alkalmazási területekre is. A munkacsoportok elemzéseit és feladatkitűzéseit összegezve és értékelve a stratégiai kutatási terv meghatározta a rövid- közép- és hosszú távú feladatokat. A szakmai feladatokon túl az elemzések rámutattak a multidiszciplináris megközelítés, a szakmai párbeszéd, a kooperatív attitűd fontosságára is. A stratégiai kutatási terv alapján a NESSI-Hungary megvalósítási tervet állít össze, amelyik a hazai szakmai közösség szempontjai szerint tesz javaslatot elindítandó kutatási programokra.
4
Stratégiai Kutatási Terv 1.1
NESSI-Hungary Szoftver és Szolgáltatások Nemzeti Technológiai Platform tagszervezetei:
Stratégiai Kutatási Terv 1.1
5
1.0
Bevezető
Jelen dokumentum célja a NESSI-Hungary „Jövőkép” dokumentumában felvázolt vízió megvalósításához szükséges átfogó kutatás-fejlesztési feladatok meghatározása, javaslattétel rövid, közép és hosszú távú programok indítására. A dokumentum elsősorban az infokommunikációs (IKT) terület szakmai feladataira koncentrál, de emellett megmutatja, hogy a vízió megvalósítása multidiszciplináris megközelítést, az élet minden területére kiterjedő tudatos építkezést igényel. A jövőkép alapvetése szerint a szolgáltatások sokaságával, számítógépek, adatgyűjtő pontok millióival rendelkező, nagy elosztott rendszerek fogják alkotni a közeljövő tudásalapú társadalmának és gazdaságának alapvető infrastruktúráját. A komplex informatikai szolgáltatások természetes részévé válnak a mindennapi életnek, használatuk minden területen, minden érintett számára magától értetődő, egyszerű, egyben nélkülözhetetlen. Amennyire természetessé vált, hogy tudunk világítani és fűteni, mert az energiaszolgáltató infrastruktúra kiépült és folyamatosan rendelkezésünkre áll, annyira természetes lesz az informatikai infrastruktúra használata a legkülönbözőbb ügyes-bajos dolgaink intézése során, de a gazdaság és az üzleti élet működésében is. Ennek a vizionált, informatikai szolgáltatásokkal átszőtt világnak egyes elemei már ma is működnek. Aki elektronikus levelezést, elektronikus banki szolgáltatásokat használ, vagy éppen alapvető gazdasági elemzések adatait tudja pillanatokon belül elérni munkája során, érzékeli azt a potenciált, amit az IKT a társadalom működésének hatékonysága szempontjából jelent. És persze, egy megszokott szolgáltatás kiesésekor, egy adathalmaz megsemmisülésekor érzékeli a kiszolgáltatottságot is, sőt, gyakorta átéli az átgondolatlan, a munkáját inkább hátráltató, nyakatekert gondolatmenet szerint kezelhető rendszerek használatának nyűgeit. Az IKT szakma egyetért abban, hogy a jövő informatikai infrastruktúráját az Interneten egymással összekapcsolódni és együttműködni képes szolgáltató csomópontok, és a szolgáltatásokat felhasználni és integrálni képes, a felhasználók igényeihez, szokásaihoz, feladataihoz a legmesszebbmenőkig igazodó alkalmazások alkotják. Ennek a komplex rendszernek a meghatározó hányada szoftver. Ahhoz, hogy ez az infrastruktúra valóban a vizionált hatékony, tudásalapú társadalom alapját képezhesse, az általa nyújtott szolgáltatásoknak számos követelményt ki kell elégítenie, amelyek közül néhány meghatározó:
6
Stratégiai Kutatási Terv 1.1
• folyamatos, megbízható rendelkezésre állás, tértől, időtől, eszköztől független elérhetőség; • biztonságos működés, azaz védelem a szándékos, vagy véletlen károkozás, az illetéktelen információelérés ellen; • adekvát, a felhasználók munkáját segítő, szokásaikhoz alkalmazkodó funkcionalitás, áttekinthető, érthető, kiszámítható kezelői felülettel; • a felhasználók számához, a kezelt információmennyiséghez való automatikus igazodás, adaptivitás, skálázhatóság; • a környezet és az igények változásaihoz való gyors alkalmazkodás képessége, azaz az egyszerű, átlátható következményekkel járó és kézben tartható módosíthatóság. Ezeknek a követelményeknek a teljesítése olyan léptékű, olyan komplexitású, olyan dinamikával fejlődő rendszerekben, amelyek egy globális, tudásalapú társadalom és gazdaság részei, komoly kihívást jelent mind az IKT szakma számára, mind az IKT és az IKT-t alkalmazó szakterületek hatékony, multidiszciplináris együttműködése tekintetében. Ezeket a kihívásokat hivatott feltárni, bemutatni a jelen dokumentum. A stratégiai kutatási terv ezen túlmenő feladata még a feltárt problémák megoldására irányuló kutatási programok felvázolása is. A dokumentumot kidolgozó szervezet, a NESSI-Hungary, az IKT, ezen belül a szoftverek és szolgáltatások szakterület szakmai szervezete. Belső tagozódása kétdimenziós, annak megfelelően, hogy az IKT kulcságazat, amelynek egyrészt belső, szakmai logika szerinti részterületei vannak, másrészt foglalkozik a jellegzetes alkalmazási területekhez kötődő speciális problémákkal.
Stratégiai Kutatási Terv 1.1
7
1.0
Bevezető
1 Introduction
A hat szakmai szegmens munkacsoportjai mellett egy alkalmazási területhez (doménhez) kötődő munkacsoport működik, az e-Közigazgatás munkacsoport, de formálódóban vannak további domén-orientált munkacsoportok. Hasonlóan a Jövőkép szerkezetéhez, jelen dokumentum is ennek a tagozódásnak megfelelően tárgyalja az érdemi kutatási feladatokat. Tekintve, hogy a munkacsoportok által lefedett területek között vannak természetes átfedések, egyes problémákra több munkacsoport is utal. A további fejezetekben először összefoglaljuk a Jövőkép fontosabb megállapításait annak érdekében, hogy a Stratégiai kutatási terv önmagában is konzisztens dokumentum legyen. Ezt követően stratégiai alapelveket és kihívást jelentő nyitott kérdéseket fogalmazunk meg. A következő, 3. fejezet tartalmazza a kutatási feladatok munkacsoportok szerinti tagolásban történő kifejtését. A 4. fejezet rövid-, közép- és hosszú távú kutatási prioritásokat fogalmaz meg az előző fejezetek alapján, majd az 5. fejezet a vízió sikeres megvalósításához szükséges egyéb feltételeket, kiemelten az oktatás és képzés területén szükséges teendőket tárgyalja. A Stratégiai kutatási terv támaszkodik az európai anyaszervezet, a NESSI koncepciójára és dokumentumaira. Figyelembe veszi azonban a hazai sajátosságokat, és célközönsége elsősorban a hazai szakmapolitikai véleményformálók, döntéshozók és a szakmai szereplők.
8
Stratégiai Kutatási Terv 1.1
1.1
1 Introduction
A jövőkép fontosabb megállapításai
Az Európai Unió gyakran idézett lisszaboni célkitűzései között szerepel, hogy „Európának 2010-re a világ legdinamikusabb és legversenyképesebb tudásalapú gazdaságává kell válnia”. Ezt egészítette ki a nagyobb gazdasági növekedés, jobb munkalehetőségek, valamint a hatékonyabb társadalmi befogadás követelménye. Az elmúlt években ugyanezek a célok és követelmények jelentek meg mind a hazai, mind más országok kormányzati stratégiáiban is. A világgazdasági válság még inkább ráébresztette a véleményformálókat és döntéshozókat, hogy az infokommunikációs technológiák, és alkalmazásaik széleskörű elterjesztése jelentősen elősegíti a lisszaboni stratégia megvalósulását. Ennek megfelelően az ágazat jövőképe és stratégiája nem szorítkozhat szigorúan a szakmai területekre, szélesebb társadalmi és gazdasági kontextusban kell gondolkodni. Az IKT adta lehetőségek kulcsfontosságú szerepet játszhatnak a gazdaság „újraélesztésében” és hos�szú távú fejlődésének megalapozásában. A gazdaságban önálló iparágként betöltött szerepe mellett, az IKT felhasználása döntő súlyú más iparágak működésében, hatékonyságának javulásában, és ezzel párhuzamosan versenyképességük növelésében is. A társadalmi fejlődés motorja is jórészt a gyorsan fejlődő digitális technológiákban keresendő. Így az IKT használatának növelése a gazdaságban és a társadalomban egyaránt, direkt módon hozzájárul a fejlődéshez a hosszú távú versenyképesség kialakulásán, a közszolgáltatások modernizálásán és a foglalkoztatottság növelésén keresztül.
Stratégiai Kutatási Terv 1.1
9
1.1
A jövőkép fontosabb megállapításai
1 Introduction
1.1.1
Társadalmi szerep
Az IKT ágazat és az IKT infrastruktúrák gazdasági és társadalmi jelentőségét a közelmúltban az innovációról és a gazdasági növekedésről született beszámolók is kiemelik, mint például az i2010 félidős értékeléséről szóló közlemény1, az Aho-csoport jelentése2 és az Európai Unió éves gazdasági jelentései3 . Az OECD a gazdasági teljesítmény és társadalmi jólét növeléséhez, valamint a társadalom azon képességének fokozásához, hogy világszerte javíthassa az emberek életminőségét, az IKT és az internet jelentőségét hangsúlyozta4. Hazai viszonyok között ezek a hatások hatványozottan jelentkezhetnek a társadalomban fellelhető egyenlőtlenségek, a „digitális szakadék” megszüntetése felé vezető úton. Ennek alapvető feltétele azonban a lehetőségek helyes kihasználásában rejlik. Az IKT terület K+F ráfordítások aránya Magyarországon alacsony, az európai átlaghoz mérten is. Ugyanakkor már bizonyos IKT mérőszámok, mint pl. a szélessávú internet-penetráció és főleg annak növekedési üteme jóval kedvezőbb értékeket mutat. Ez a „relatív-elmaradottság” hatásaként jelentkezik, mivel a technológiai lépések kihagyása a legmodernebb technológiák elterjedésének kedvez. Így a lehetőség megvan az IKT technológiák mind teljesebb társadalmi szerepvállalására, azonban ennek feltételeit meg kell teremteni. Folyik az ország iparpolitikai, fejlesztéspolitikai stratégiájának kimunkálása, részstratégiák az egyes felelős intézményekben (tárcáknál) kialakulóban vannak, azonban egyelőre ez nem öltött egységes formát, hiányzik belőle a multiplikatív hatások számbavétele. Márpedig az IKT túlmutat saját ágazatán, hatékonyság- és versenyképesség-javító hatását a társadalom és a gazdaság valamennyi szegmensében hasznosítani kell. A magas szintű, egységes kormányzati stratégia teremti meg azokat a feltételeket, mellyel az IKT hatékonyság és versenyképesség növelő hatása optimális módon tud érvényesülni. A vállalkozások mind a közvetlen értékesítéshez, mind belső folyamataik hatékony lebonyolítására az IKT ágazat által előállított termékeket használják. Az IKT nélkülözhetetlen részét képezi az innovációnak, és a termelékenység növekedésének 40 %-a is az IKT-nak köszönhető5. Mindenütt jelen van a kormányok munkájában és a közigazgatásban: az elektronikus közigazgatás minden szinten tapasztalható elterjedése, valamint az egészségügyben, az energiarendszerekben és a társadalmi-politikai élet területén megjelenő innovációs megoldások és alkalmazások használata következtében az állami szektor működése nagymértékben függ az IKT-tól. Végül, de nem utolsósorban a lakosság is egyre fokozódó mértékben támaszkodik az IKT nyújtotta lehetőségekre a mindennapi életben.
1. COM(2008) 199 final. 2. http://ec.europa.eu/invest-in-research/action/2006_ahogroup_en.htm. 3. yearly report for the year 2007 on the economic state of the EU: http://ec.europa.eu/economy_finance/publications/publication10130_en.pdf. 4. http://www.oecd.org/dataoecd/1/29/40821707.pdf. 5. http://epp.eurostat.ec.europa.eu/ – Tudomány és technológia / Információs társadalom. 6. Az IKT ágazati akcióterv kialakítását megalapozó tanulmány /IVSz-2009.
10
Stratégiai Kutatási Terv 1.1
1.1.2
Gazdasági jelentőség
Az IKT szektor fontos szerepet játszik a magyar gazdaságban6. A szektor foglalkoztatottsága folyamatosan nő, ez ma több mint 55 ezer magasan képzett, jól fizető munkahelyet jelent. A piac keresleti oldalán dolgozó szakemberekkel együtt, több mint 120 ezren dolgoznak ezen a területen. Az IKT szektor meghatározó szerepét mutatja, hogy az elmúlt 8 évben ez az iparág adta a hazai gazdasági növekedés közel 25%-át, és jelentősen hozzájárul a hazai GDP-hez (a GDP kb. 10%-a), foglalkoztatási szempontból is az egyik legdinamikusabban növekvő ágazat. A magyarországi informatikai és távközlési belső piac együttes mérete 2007-ben elérte az 1 476 milliárd Ft-ot, ezen belül az informatikai szegmens növekedése 4,4%. A hazai távközlési költés teljes IKT piaci aránya 60%, amely jóval felülmúlja az EU arányt (44%). Ennek oka egyrészt az arányaiban gyengébb IT piaci költés, másrészt a távközlési szolgáltatások magas árszintje. Az Internet hozzáférési szolgáltatások és a magán adatátviteli szolgáltatások jelentették az elsődleges növekedési forrást a vezetékes szolgáltatók számára. Ennek ellenére, több jel mutat arra, hogy a szélessávú Internet piac korábban tapasztalt meredek növekedése lassulni kezdett. A belföldi informatikai piacot egy közel 849 milliárd Ft-os informatikai export piac egészíti ki, a növekedés elsősorban a nagyobb hozzáadott értéket hordozó, multinacionális és helyi vállalatokat egyaránt felvonultató szoftver és szolgáltatás exportból származott. A teljes IKT piacon belül (azt 100%-nak tekintve) az egyes informatikai részpiacok arányai: IT szolgáltatások: 18%, hardver: 16%, szoftver: 6%. A fenti értékek azt jelzik, hogy az EU hasonló területeihez képest a szoftverek terén van lemaradásunk, az IT szolgáltatások szintje megközelítette az EU szintet (21%). Az IKT szektor a jelenlegi évi mintegy 2500 milliárd forintos bevételével önállóan is jelentős ipari szektornak számít. Mindazonáltal ez a szám nem mutatja be kellőképp a magyar szoftver és szolgáltatási ipar jelentőségét és hozzáadott értékét az egész gazdaság és társadalom számára. A tudásalapú gazdaság olyan innovatív szolgáltatásokon alapszik, melyeket a jövő internete fog összekötni az új generációs informatikai alkalmazások segítségével. Az autonóm - szenzorokból, rádiófrekvenciás azonosítókból, kamerákból, mobil telefonokból felépülő – rendszerek decentralizált környezetben kommunikálnak egymással. Mindez új lehetőségeket nyit valamennyi iparág számára a tekintetben, hogy a már létező és még kifejlesztendő szolgáltatásaikat forradalmian új módon kössék össze, mely megreformálja a szoftverek, szolgáltatások és a belőlük létrehozott rendszerek fejlesztését, telepítését és üzemeltetését. Az Új Magyarország Fejlesztési Terv több ezermilliárd forintot biztosít – elsősorban EU forrásból – a gazdaság versenyképességi operatív programra, az állam működésének korszerűsítésére, az elektronikus közigazgatás kialakítására. E programok realizációja nem képzelhető el informatikai fejlesztések Stratégiai Kutatási Terv 1.1
11
1.1
A jövőkép fontosabb megállapításai
1 Introduction
nélkül. A feladatok megoldása az elkövetkező években az IKT ipari szegmens jelentős közreműködését igényli, ugyanakkor követelményeket támaszt az IKT ipar felé. Ezekre a követelményekre egy kutatásfejlesztési stratégiával lehet válaszolni, melynek következetes megvalósítása a záloga annak, hogy a hazai IKT ipar meg tudjon felelni a vele szemben támasztott elvárásoknak. Ha csak a közigazgatási alkalmazásokra gondolunk, ez önmagában is több szakterülettel szemben támaszt speciális igényeket, hiszen a folyamatmenedzsment technológiáknak, az interoperabilitási megoldásoknak és a biztonságnak mind-mind vannak e-közigazgatási vonzatai. Ezen túlmenően azonban önmagukban is lényeges kutatási területek.
1.1.3
Technológiai színvonal
A technológia rohamos fejlődése komoly kihívások elé állítja az iparágat, ezen belül is a szoftvertechnológia területét. A modern rendszerekkel szembeni követelmények megkívánják a szoftver „gyártósor” jellegű fejlesztését. Hazánkban, más fejlett országokhoz hasonlóan, számos kutatócsoport foglalkozik rendszer- és szoftvermodellezési kérdésekkel, ilyen téren szép eredmények születtek a modellvezérelt szoftverfejlesztési paradigmák területén. Ezeknek az eredményeknek a fő erőssége a modellek olyan formális reprezentációja, mely lehetővé teszi a minőségi kritériumok definiálását. Az eredmények között szerepelnek a szakterület-specifikus nyelvek is, amelyek szakterület-specifikus jelölésrendszer alkalmazását és funkcionalitás bevezetését teszik lehetővé. Ezen a területen látszik egyfajta konvergencia, de ki kell még dolgozni a különböző kutató műhelyek együttműködésének elvi és praktikus alapjait. Életünk sok fontos részét támogatják és felügyelik az IKT rendszerek, amelyekben a szoftver aránya folyamatosan növekedve mára meghatározóvá vált. Ez a tény előtérbe helyezi a szoftverminőség és megbízhatóság kérdését, ami ezért a társadalom egésze számára kiemelt fontosságúvá válik. A rossz szoftvertervezés, vagy szoftverhiba következménye akár katasztrofális kár is lehet, de nem csak értékben, hanem emberéletben is (pl. szoftverhibák repülésirányító rendszerekben, vagy nukleáris létesítményekben). Eszközökre van szükség, melyek képesek a szoftverfejlesztés hatékonyságát növelni, mérni a minőséget és megbecsülni a megbízhatóságot, illetve kezelni képesek a jövőbeli globálisan elosztott rendszereket és szolgáltatásokat. Ez ugyanúgy vonatkozik a szolgáltatások minőségére és megbízhatóságára is. Az IKT rendszereknek (különösen a kritikusak, mint például a közigazgatásban használt szoftverek, közműveket kiszolgáló és pénzügyi rendszerek) jó minőségűeknek kell lenniük, megfelelő minőségi tanúsítványokkal ellátva. A szoftverek minőségi jellemzőit helyzetfüggően, nemzetközi szabványokhoz igazodva kell meghatározni megfelelő szoftvereszközök segítségével. Ésszerű elvárás, hogy a termékek előállításakor alkalmazott fejlesztési, irányítási és támogató folyamatok illeszkedjenek nemzetközileg elismert folyamatfejlesztési szabványokhoz. 12
Stratégiai Kutatási Terv 1.1
1 Introduction A nyílt forráskódú és nyílt szabványokon alapuló szoftverek a jövőben várhatóan kulcsszerepet fognak játszani az európai, és így a magyar IKT infrastruktúrában is. Magyarország esetében különösen fontos a nyílt forrású technológiák elterjedése, hiszen a vállalatok, a költségvetési intézmények finanszírozása sokkal alacsonyabb, mint a fejlettebb európai országokban, ugyanakkor kellő szellemi kapacitás áll rendelkezésre a nyílt forrású megoldások továbbfejlesztésére, bevezetésére. Ugyancsak fontos és mindenképpen figyelembe veendő szempont, hogy a nyílt forrású megoldások használata már rövid távon is komoly piacélénkítő, összességében az ország versenyképességét növelő tényezővé válhat. Ezen szoftverek minőségbiztosítása kiemelten fontos. A társadalom működése egyre nagyobb mértékben függ az infokommunikációs rendszerek és az általuk összekapcsolt, illetve vezérelt létfontosságú, ún. kritikus infrastruktúrák biztonságától. Ezért az IKT biztonságának kutatását és fejlesztését össze kell kapcsolni a kritikus információs infrastruktúrák biztonsági kérdéseivel. A rugalmas alkalmazásintegráció, a változásokhoz gyorsan alkalmazkodni képes szoftverek és szolgáltatások, a több intézményre kiterjedő működés azt igényli, hogy a rendszerek működése, a szolgáltatási folyamatok egységesen és egyértelműen, magas szinten legyenek kezelhetők. A fejlesztés és integráció egyre inkább elfogadott paradigmája a szolgáltatásorientált architektúra (SOA). Erőssége az irányzatnak – és egyben terjedését és elfogadottságát is jelzi – az erős szabványosítási tevékenység, amelynek három legfontosabb centruma az OASIS7, az OMG8 és az OpenGroup9. A rendszer felépítésének és működésének leírását különböző absztrakciós szinteket megragadó SOA referencia architektúra szabványok segítik (pl. OASIS SOA Reference Model, OASIS SOA Reference Architecture, OMG SOA Modelling Language). Komplex informatikai rendszerek fejlesztése során kiemelt fontossággal bír a rendszer által megvalósítandó folyamatok hatékony leírása. Szinte minden alkalmazási terület kiindulási pontja a feladat specifikálása, vagyis a folyamatok egyértelmű, formalizált leírása. A leírással szemben további elvárás, hogy alkalmas legyen az alkalmazási terület szakértői és az IT szakemberek közötti kommunikációra, azaz mindkét oldal számára érthető legyen. Ezért születtek meg olyan nyelvek, mint pl. az OASIS által szabványosított BPEL (Business Process Execution Language)10, vagy az OMG által kidolgozott BPMN (Business Process Modelling Language)11. Ugyanakkor nem csak egy fejlesztési projekt tervezési fázisában, de a projekt és az eredményeként elkészülő rendszer teljes életciklusa alatt szükség van arra, hogy a megváltozott feltételekhez hatékonyan lehessen igazodni. A SOA világban erre szolgál a SOA Governance (SOA irányítás). Célja, hogy egy szervezetnél olyan szervezeti struktúrák, folyamatok, technológiák jöjjenek létre, amelyek biztosítják, hogy a SOA megvalósítások támogatják a vállalati stratégiát, és hozzák a tőlük elvárt üzleti hasznot. Ezen a területen is kialakultak támpontot jelentő szabványok, ajánlások (pl. Open Group: SOA Gover-
7. Organization for the Advancement of Structured Information Standards (http://www.oasis-open.org) 8. Object Management Group (http://www.omg.org/) 9. http://www.opengroup.org/ 10. http://docs.oasis-open.org/wsbpel/2.0/wsbpel-v2.0.pdf 11. http://www.bpmn.org/
Stratégiai Kutatási Terv 1.1
13
1.1
A jövőkép fontosabb megállapításai
1 Introduction
nance Framework, vagy a készülő OMG: SOA Governance Metamodel and Profile). A SOA megoldások értékelésére, érettségére is kialakulnak egységes módszerek (pl. Open Group Service Integration Maturity Model, vagy Sonic: SOA Maturity Model) A területek további sajátossága, hogy a szigetszerűen működő alkalmazások helyét egyre inkább átveszik az önálló, de egymással kapcsolatban lévő IT rendszerek. Különösen igaz ez például az e-közigazgatás, vagy az egészségügy területén, de hasonló fejlődés figyelhető meg a vállalati rendszerek esetében is. Várható, hogy az interoperabilitásra való igény erőteljesen megjelenik az egyes területek között is. A közös fogalomrendszer kialakítása különösen a szakterületek között, de gyakran még szakterülten belül sem egyszerű feladat. Ennek formalizálási keretére is kialakult szabványos megoldás (pl. az OWL (Web Ontology Language) nyelv). Elengedhetetlen, hogy e mellett valamiféle támogató, koordináló tevékenység segítse az interoperabilitás megvalósítását. Jóllehet az említett szabványosító testületek (OASIS, OMG, OpenGroup) különböző szabványokat definiálnak, ezek a szabványok inkább kiegészítik egymást, mintsem egymás versenytársai lennének. A konvergencia jele a három szabványosító testület által közösen megfogalmazott „Navigating the SOA Open Standards Landscape Around Architecture” c. dokumentum, amelyben kiemelik, hogy bár néhány fogalmat eltérő értelemben használnak, a SOA mögötti alapkoncepció közös és egységes. A konszenzus alapján létrejött dokumentum célja kettős. Egyrészt eligazodást nyújt az egyes szabványok egymáshoz való viszonyában, másrészt megalapozza a szabványosító testületek közötti további együttműködést abból a célból, hogy a szabványok közti esetleges konfliktusokat közösen oldják fel. A megoldások egyik fő alkalmazási területe az e-közigazgatás, amelynek sikere azon múlik, hogy az állampolgárok milyen mértékben tudnak és kívánnak élni az elektronikus ügyintézési lehetőséggel, ezért kiemelten fontos, hogy a hagyományos ügyintézés szemléletét meghaladva, az ügyfelek igényeire reagáló ügyfélbarát szolgáltatási kínálat épüljön ki. Ehhez a közszolgáltatások olyan átalakítása szükséges, mellyel a közigazgatás képes a piaci szférában alkalmazott ügyfélközpontúság követelményeinek megfelelően kiépíteni szolgáltatásait, és hatékonnyá tenni a belső működését.
14
Stratégiai Kutatási Terv 1.1
2.0
1 Introduction
IT szolgáltatásfejlesztési stratégia 2.1
Alapelvek
A nemzetközi szakmai trendek szerint a komplex informatikai rendszerek fejlesztésében és integrációjában a szolgáltatásorientált architektúra (SOA) elvei válnak dominánssá. A SOA-t sokan az objektumorientált megközelítés óta a legfontosabb IT paradigmának tekintik. Sok más tudományos fogalomhoz hasonlóan a SOA közmegegyezéses definíciójának kikristályosodásához is idő kell, különböző műhelyek más-más oldalról közelítenek hozzá. Amiben egyetértés mutatkozik: • A SOA az elosztott rendszerek fejlesztésének és integrációjának paradigmája. • A SOA magas absztrakciós szinten ragadja meg a fejlesztés és az integráció problémáját, önálló szervezetek irányítása alatt álló alrendszerekre is alkalmazható. • A SOA az alrendszerek és komponensek együttműködését szolgáltatások nyújtásával és igénybevételével kezeli, ezzel a laza csatolás elvét, az eljárás-interfész fogalmát alkalmazza magas absztrakciós szinten (akár szervezetek együttműködésének szintjén). • A SOA széles körű, nyílt szabványokra épít mind a rendszer komponenseinek együttműködése, mind a nemfunkcionális követelmények előírása (pl. biztonság, minőség) területén. • A SOA szerkezetében a legmagasabb szinten az üzleti folyamatok kezelése jelenik meg, amelyek egyrészt önmagukban is szolgáltatások lehetnek, másrészt alrendszerek szolgáltatásaira támaszkodnak, azaz a szolgáltatások többszintű hierarchiát alkotnak. • A SOA magas szinten alkalmazza a transzparencia és a virtualizáció elvét, a szolgáltatási interfész definíciójának és megvalósításának szétválasztását. • A SOA alapú integráció általában hosszabb távon, több szervezet részvételével megvalósuló feladatokat jelent, ahol a rendszer életciklusának kezelése, a szervezetek együttműködésének biztosítása, az elért eredmények értékelése sajátos menedzsment megoldásokat igényel. A fenti alapelvek alkalmazására és megvalósítására azonban nincsenek általánosan alkalmazható sémák, és számos nyitott kérdés vár megválaszolásra.
Stratégiai Kutatási Terv 1.1
15
2.0
IT szolgáltatásfejlesztési stratégia 2.2
Nyitott kérdések
Ebben a pontban néhány olyan nyitott kérdést fogalmazunk meg általánosabb szinten, amelyeket a következő fejezetben az egyes munkacsoportok részletesebben kibontanak. Elevenítsük fel a tudásalapú társadalom alapját képező IKT infrastruktúra szolgáltatásaival szemben a bevezetőben megfogalmazott alapkövetelményeket: a./ folyamatos, megbízható rendelkezésre állás, tértől, időtől, eszköztől független elérhetőség; b./ biztonságos működés, azaz védelem a szándékos, vagy véletlen károkozás, az illetéktelen információ-elérés ellen; c./ a felhasználók számához, a kezelt információmennyiséghez való automatikus igazodás, adaptivitás, skálázhatóság; d./ adekvát, a felhasználók munkáját segítő, szokásaikhoz alkalmazkodó funkcionalitás, áttekinthető, érthető, kiszámítható kezelői felülettel; e./ a környezet és az igények változásaihoz való gyors alkalmazkodás képessége, azaz az egyszerű, átlátható következményekkel járó módosíthatóság. Azt állítottuk, hogy ezeknek a követelményeknek a teljesítése olyan léptékű, olyan komplexitású, olyan dinamikával fejlődő rendszerekben, amelyek egy globális, tudásalapú társadalom és gazdaság részei, komoly kihívást jelent mind az IKT szakma számára, mind az IKT és az IKT-t alkalmazó szakterületek hatékony, multidiszciplináris együttműködése tekintetében.
16
Stratégiai Kutatási Terv 1.1
Melyek ezek a kihívások? Az a./ követelmény teljesítése részint a rendszerarchitektúra redundáns, hibatűrő kialakítását igényli, részint azt, hogy az infrastruktúrához való kapcsolódás valamilyen formában teljes térbeli lefedettséggel lehetséges legyen. A teljes térbeli lefedettség a vezeték nélküli és vezetékes technológiák transzparenciáját követeli meg. Elmondható, hogy a technológiai fejlődés ebbe az irányba haladt, a követelmények teljesítése inkább mennyiségi, skálázhatósági kérdés. Kihívást az eszköztranszparencia jelent, elsősorban a felhasználói felületek kialakításában, hiszen a kezelő- és kijelző szervek, ennek megfelelően a kezelési filozófiák jelentősen eltérhetnek például egy mobiltelefon vagy egy laptop esetén. A SOA elvei szerint mindezt jól specifikált szolgáltatási interfészek mögé kell elrejteni. A b./ követelmény részben kapcsolódik az előzőhöz. A folyamatos és megbízható működéshez hozzá tartozik a meghibásodásokból származó adatvesztések kiküszöbölése. Az információbiztonság tekintetében kialakultak alapvető titkosítási és jogosultságkezelési módszerek. A problémát az okozza, hogy a rendszerek komplexitásának, térbeli kiterjedésének, felhasználói számának növekedésével a lehetséges támadási pontok száma megnő, a felhasználók azonosítása nehezebbé, a jogosultsági rendszer áttekinthetetlenné válik. Az alkalmazható módszerek szerteágazóak, de erőforrás-igényesek. Ráadásul a védelmek jellemzője, hogy a jogosult felhasználókra is többletterheket ró, kényelmetlenséget okoz. Megfigyelhető, hogy a probléma komplex kezelése, azaz az informatikai megoldások és a működési környezet együttes kezelése, az alkalmazott megoldások és az igények összehangolása látszik előremutatónak. Kutatási feladatok tehát mind résztechnikák (pl. titkosítási algoritmusok, tanúsítványkezelési technikák, biometrikus azonosítási módszerek), mind a rendszerszemléletű kezelés (szabályzatok kialakítása, igényhez igazított optimális védelem) területén jelentkeznek. Az alrendszerek és az absztrakciós rétegek számának növekedésével, az autonóm alrendszerek megjelenésével a biztonsági problémák tekintetében is megjelenik az igény magasabb szintű megközelítésekre, így a végpontok közötti „endto-end” szemlélet helyett az alrendszerek közötti „trust-to-trust” szemléletre, a berendezések helyett a szolgáltatások elérhetőségének kezelésére. A c./ követelmény ismét elsősorban az IKT architektúra-tervezői számára jelent feladatot. Ismertek skálázható, adaptív architektúrák, ezek kialakítási, méretezési elvei, virtualizációs technikák. A kihívást a nagyságrendek esetleges igen tág határok közötti ingadozása, az absztrakt interfészek kialakítása, és a szintek közötti kölcsönhatások kezelése jelentik. A d./ követelmény már multidiszciplináris problémákat is felvet. Az alkalmazási terület problémáinak, a felhasználói attitűdök ismeretének, antropológiai, ergonómiai megfontolásoknak, és az informatikai eszközök és megoldások lehetőségeinek összhangját kell kialakítani. Ez nyitottságot, empátiát, és kooperatív viselkedést igényel több szakma képviselői között. Csak ezen az alapon lehetséges a közös nyelv, közös fogalomrendszer kialakítása, ami a mindenki által értett és elfogadott megoldásokhoz elengedhetetlen. Különösen nehéz a probléma, ha több szakma, több, önálló érdekekkel motivált szervezet képviselőinek együttműködése szükséges. Az országhatárokon átnyúló, globális rendszerek esetén a szakmaközi együttműködések mellett még a felhasználók különböző kulturális hátterét is figyelembe kell venni. A problématér fogalmait használó, az informatikai megoldásoktól független, üzleti folyamat szintű feladat- és működésleírás nagy segítség, azonban a több szakterület, több szervezet, több kulStratégiai Kutatási Terv 1.1
17
2.0
IT szolgáltatásfejlesztési stratégia
1 Introduction
túra kezelését önmagában nem oldja meg. Az adatszótárakra, fogalomtárakra, ontológiákra alapozott tervezés elve elfogadott, azonban nincs kialakult módszertana és egységes technológiai támogatása. Számos szakterület számára idegen a formális modellek használata, a kommunikációs nyelv ezekkel még hosszú ideig a természetes nyelv marad. Jelentős kihívás a természetes nyelvű és a formális reprezentáció közötti automatikus transzformációk megoldása (nyelvi technológiák). Az e./ követelmény részint a fejlesztési módszertanok, részint az életciklus-menedzsment területén vet fel problémákat. Jó-e az architekturális tervezés, jól bontották-e komponensekre a rendszert, ismerjük-e a beépített komponensek viselkedését, megfelelően dokumentáltak-e a fejlesztési részeredmények? Kiterjeszthetőek-e a már csaknem varratmentes modell alapú szoftverfejlesztési technológiák a SOA alapú rendszerekre, van-e egységes modellvilág és modellezési környezet, támogatás modellvizsgálatra, kódgenerálásra, tesztelésre? Következetes-e a változtatási igények kezelése? Kihívást egyrészt ismét a feladatok mérete és komplexitása jelent, másrészt az, hogy a feladat megfogalmazása során mennyire sikerült felmérni a várható változásokat (ld. az alkalmazási terület megismerése, párbeszéd más szakmákkal). Az alapkövetelményekből tehát az IKT szakma számára fontos kutatási feladatok következnek. Emellett szinte minden felmerült követelmény teljesítése egy költség-haszon optimalizálási problémaként is vizsgálandó. Egységes, minőségi szemlélet alkalmazása szükséges, ehhez ki kell alakítani a SOA területén alkalmazható egzakt, minőségi metrikákat. A minőségi és biztonsági tanúsítás rendszere sok tekintetben hasonló, lehetségesnek látszik egy közös tanúsítási rendszer kidolgozása. A SOA hierarchikus szolgáltatás-fogalmának megfelelően a számítási teljesítmény, tárhely, fájlrendszer, alkalmazásszerver, adatbázisszerver szintű rendszerkomponensek is kezelhetők pontos interfész-leírással és számszerű minőségi jellemzőkkel meghatározott szolgáltatásként. Megfelelően precíz szolgáltatási szerződések (SLA) esetén a szolgáltató az implementációt tetszőlegesen kialakíthatja, módosíthatja, hangolhatja. Ezzel megnyílik a „cloud computing” alkalmazásának és a szolgáltatás-üzemeltetés kihelyezésének (hosztolás) lehetősége. Nyitott kérdés, mit kell tartalmaznia a megfelelő garanciákat nyújtó szolgáltatási szerződéseknek, és hogyan kell azokat származtatni. Kiemelt fontosságú a multidiszciplinaritás, a szakmák közötti párbeszéd, a közös nyelv, közös fogalmak kialakítása, aminek sikeréhez elengedhetetlen a szereplők kooperatív attitűdje. Motivációs technikák, szervezési és vezetési módszerek, sőt, társadalmi szintű oktatási, nevelési programok kidolgozása lenne szükséges ennek elősegítésére. Szembe kell nézni azzal a ténnyel is, hogy a fejlesztések egyre nagyobb hányada épül már létező és jól, vagy nagyrészt jól működő megoldásokra, amelyeket be kell építeni, integrálni kell az új rendszerbe. Ennek hatékony végrehajtásához megfelelő migrációs és újratervezési (refaktorizációs) technológiák kidolgozása szükséges.
18
Stratégiai Kutatási Terv1.1
3.0
1 Introduction
Fő kutatási területek
Ez a fejezet az egyes munkacsoportok szemszögéből fejti ki a stratégiai kutatási feladatokat. A munkacsoportok a szolgáltatás alapú komplex információs rendszerek jellegzetes IT-szakmai feladatai, aspektusai, valamint az ilyen rendszerek alkalmazási területei mentén alakultak ki. A szerkezetet részint az európai NESSI felépítése, részint az alapító tagok érdeklődése formálta. A fejezetek sorrendjében, a Folyamatmenedzsment munkacsoport a rendszerek magas absztrakciós szintjével, az üzleti folyamatok definiálásának, leírásának módszereivel foglalkozik. Az Interoperabilitás munkacsoport az alrendszerek együttműködésére koncentrál különböző absztrakciós szinteken kezelve a problémákat. Az Architektúra – SOA munkacsoport tématerülete a legszélesebb, hiszen az alapvető SOA paradigma szerinti fejlesztéssel, a teljes keresztmetszetben alkalmazható modellek kialakításával, szervezetek összekapcsolásának megvalósításával, archikturális mintákkal, perzisztencia-kezeléssel, SOA-specifikus tesztelési, felügyeleti, biztonsági megoldásokkal foglalkozik együttműködve a többi munkacsoporttal. A szoftvertechnológia munkacsoport a SOA alapú integráció során alkalmazható szoftverfejlesztési módszerekre és a kialakult modell alapú fejlesztési technológiák SOA kiterjesztésének lehetőségeire koncentrál. Mind az IT biztonság és kritikus infrastruktúrák védelme, mind a Szoftverminőség munkacsoport a komplex IT rendszerek egy aspektusával foglalkozik átfogóan. A jelenlegi egyetlen, alkalmazás-orientált munkacsoport az e-Közigazgatás, amely terület fejlesztési problémái valóban igénylik a SOA alapú integrációt, és jelentős követelményeket támasztanak az IT megoldásokkal szemben. Tekintve, hogy mindegyik munkacsoport munkájának közös a tárgya – nevezetesen a szolgáltatás alapú komplex információs rendszerek – ugyanazon problémák több nézetben, többféle megvilágításban is felvetődnek.
Stratégiai Kutatási Terv1.1
19
3.0
Fő kutatási területek 3.1
Folyamatmenedzsment
3.1.1 Helyzetkép Az üzleti folyamatmodellek készítése elsősorban a produktivitás és a költséghatékonyság növelését célozza meg, de szerepe van a kockázatok csökkentésében, a minőség és az átláthatóság növelésében is. A folyamatok optimalizálásával, újratervezésével a Business Process Reengineering (BPR) és a Business Process Improvement (BPI) foglalkoznak, melyek a folyamatmenedzsment legfontosabb területei. A folyamatok menedzselése a folyamatok modellezésén és újratervezésén túl kiterjed a folyamatos kontrolljukra és monitorozásukra is. Az informatika dinamikus fejlődése jelentős változást okozott az utóbbi években a szervezetek működésében. Az üzleti folyamatok támogatásában kulcsfontosságú szerep jutott az informatikai folyamatoknak, így mára az informatikai irányítás elválaszthatatlan része lett a vállalati irányításnak. Az üzleti folyamatok modellezésére kifinomult megoldások születtek (pl. Event-driven process chain), és támogatásukhoz robosztus modellező szoftverek készültek. A változások a szoftverfejlesztésre is kihatással voltak. Olyan fejlesztési módszerek jelentek meg, amelyek az informatikai támogatással ellátandó üzleti folyamatokból vezetik le a szoftverkövetelményeket. Olyan folyamatleíró megoldásokra van szükség, amelyek értelmezése és használata könnyű mind az üzleti folyamatok ismerői (szakterületi szakértők), mind a szoftverfejlesztők számára. Ilyen például a széles körben elterjedt Unified Modeling Language (UML), ahol a folyamatok leírására az eset és tevékenység diagramokat használják. Az UML-t támogató eszközök lehetővé teszik a modellek bizonyos fokú ellenőrzését és a szoftverkódok egyes részéinek automatikus generálását is. A fejlődés nem állt meg, az informatika egyre komplexebb üzleti folyamatok kiszolgálását is célul tűzi ki. A folyamatok magasabb szintű támogatása a szolgáltatás orientált architektúra (SOA) alkalmazásával a technológia szintjén is megjelent. Az új szemlélet alapján a szoftverek elemi szolgáltatásokat biztosítanak egymás számára, és ezek összekapcsolásával folyamatok alakíthatók ki. Így a folyamatok technikai szinten is megjelennek a szoftverekben, és lehetővé válik, hogy az üzleti folyamatok változásai könnyen implementálhatók legyenek. Az új technológia olyan modellező nyelvek vagy leíró-rendszerek használatát is lehetővé tesz, mint például a BPEL és BPMN, amelyek nem csak a folyamatok leírására és elemzésre, hanem azok vezérlésére is alkalmasak. Távlati cél, hogy ilyen nyelvek segítségével a szakterületi szakértők, informatikusok bevonása nélkül is, könnyen megváltoztathassák a szoftverek által működtetett folyamatokat. A gazdasági szervezetek produktivitásának növelésében fontos szerepet betöltő folyamatszemlélet a közigazgatás, az egészségügy és más szabályrendszerrel meghatározott alkalmazások esetében is elterjedőben van. Kiemelten fontos a szabályokból származó követelmények és az azokat megvalósító folyamatok modellezése, azonban erre még nincsenek jól bevált megoldások. A szabványos, gyártófüggetlen folyamatleíró nyelvek (pl. UML, BPEL, BPMN) és implementációik a gyakorlatban még nem alkotnak egy kimunkált fejlesztési keretet. Az UML például jól alkalmazható kódgenerálásra, jó az eszköztámogatása, de használata nehézkes a speciális informatikai képzettséggel nem rendelkező, szakterületi szakértők számára. A BPMN használatát könnyű elsajátítani, de folyamatvezérlésre csak korlátozottan használható. A BPEL jól támogatja a folyamatok vezérlését, de használatához szükség van mind szakterületi, mind informatikai ismeretekre.
20
Stratégiai Kutatási Terv 1.1
3.1.2 Strategiai célok Cél, az informatikával támogatott folyamatok különböző (üzleti-vállalkozási, közigazgatási, egészségügyi, stb.) területeken történő hatékony alkalmazásának biztosítása. Ehhez a következő stratégiai célokat tűzzük ki: • A szakterületi szakértők és az informatikusok közötti hatékony és egyértelmű kommunikáció biztosítása. Az üzleti folyamatok leírásának egy olyan formájára van szükség, amely könnyen kezelhető szakterületi szakértők számára, ugyanakkor könnyen és egyértelműen azonosíthatók belőle a szükséges fejlesztési feladatok az informatikai szakemberek számára. • Üzleti, humán és informatikával támogatott folyamatok optimalizálása. Olyan módszerekre, eszközökre van szükség, amelyek lehetővé teszik a meglévő, vagy tervezés alatt álló folyamatok javítandó pontjainak azonosítását, valamint a javítások és módosítások hatásainak elemzését. A módszereknek figyelembe kell venniük a folyamatok monitorozása során gyűjtött adatokat is. • Üzleti, humán és informatikával támogatott folyamatok felügyelete. Olyan módszerekre, eszközökre van szükség, amelyek lehetővé teszik a folyamatok folyamatos megfigyelését, a veszélyek esetén a riasztást, és a javításokhoz szükséges elemzések széleskörű támogatását. • Üzleti, humán és informatikával támogatott folyamatminták azonosítása. Olyan sokak által elfogadott folyamatmintákat kell azonosítani és gyűjteményekbe szervezni, amelyek a folyamatok tervezése során építőelemekként használhatók a tipikus feladatok megoldására. • Az üzleti és az informatikával támogatott folyamatok közötti transzformációk automatizálása. Olyan módszerekre, eszközökre van szükség, amelyek lehetővé teszik, hogy az üzleti folyamatok leírása alapján minimális emberi munkával (modell-transzformátorok és kódgenerátorok felhasználásával) megvalósíthatók legyenek az informatikával támogatott folyamatok. Ugyancsak fontos, hogy segítségükkel az informatikával támogatott folyamatok változásai automatikusan visszavezethetők legyenek az üzleti folyamatok leírásaiba. • Hosszú lefutású folyamatok problémáinak megoldása. Megoldást kell biztosítani a hosszú távon (több hónapon keresztül) végbemenő folyamatok menedzselésére. A problémát az ilyen folyamatok hatékony és megbízható tárolása jelenti. Ugyancsak meg kell oldani, hogy a már elindult, de még le nem zárult folyamatokat új, módosított folyamatleírások alapján is be lehessen fejezni. • Szabályrendszerrel determinált alkalmazások (környezetek) sajátosságainak kezelése. Ilyen alkalmazásoknál – mint például a közigazgatás, ahol jogszabályok, törvények határozzák meg a létrejövő szolgáltatási folyamatokat - biztosítani kell a szabályokból származó követelmények és a folyamatok közötti kétirányú kapcsolatot. Így lehetővé válik a szabályok változásából származó folyamatmódosítási teendők könnyű azonosítása, valamint annak ellenőrzése, hogy egy folyamatmódosítás nem okoz-e szabálysértést.
Stratégiai Kutatási Terv 1.1
21
3.1
Folyamatmenedzsment
1 Introduction
3.1.3 Kutatási célok és feladatok A kutatási célok és a kapcsolódó feladatok az alábbi megoldásokra fókuszálnak: • Szabályrendszerrel megfogalmazott követelmények modellezése. Olyan gyártófüggetlen követelményleíró nyelv felkutatása, vagy kidolgozása és ajánlása, amelyet szakterületi szakértők is könnyen alkalmaznak, amely támogatja a követelmények üzleti folyamatokhoz rendelését, a grafikus megjelenítést, az elemezhetőséget, a mérhetőséget, a tesztelhetőséget, a jogosultságok modellezését és az automatizált feldolgozást. Olyan módszer kidolgozása, amely szisztematikus lépéssort tartalmaz a követelmények megfogalmazására. Olyan szoftverek felkutatása, vagy fejlesztése, amelyekkel támogatható a követelményleíró módszer. • Üzleti, humán és informatikával támogatott folyamatok modellezése. Olyan üzleti, humán és informatikával támogatott folyamatok leírására alkalmas gyártófüggetlen nyelvek felkutatása vagy kidolgozása, amelyek között biztosított az összekapcsolhatóság. Az üzleti folyamatokat leíró nyelvénél fontos szempont, hogy kön�nyen elsajátítható és használható legyen a szakterületi szakértők számára és összerendelhető legyen a szabályrendszer leírt követelményekkel. Az informatikával támogatott folyamatleíró nyelvnek támogatnia kell a folyamatok vezérlését és monitorozását. A humán folyamatok leírására kiválasztott nyelvnek biztosítania kell a felelősségek modellezését, valamint a humán lépések könnyű integrálását az informatikával támogatott folyamatokba. Valamennyi folyamatleíró nyelvnek támogatnia kell a grafikus megjelenítést, az elemezhetőséget, a mérhetőséget, a tesztelhetőséget. Olyan módszereket és szoftvereket kell felkutatni vagy kidolgozni, amelyek hatékonnyá teszik a kiválasztott leírónyelvek használatát. • Folyamatelemző módszerek. Olyan módszerek felkutatása, kidolgozása vagy ajánlása, amelyek alkalmasak az üzleti, humán és informatikával támogatott folyamatok leírására kiválasztott nyelvek elemzésére. A módszereknek fel kell tárniuk a folyamatokban rejlő redundanciákat, inkonzisztenciákat, javítási lehetőségeket, és fel kell tudni használniuk a folyamatok monitorozása során gyűjtött adatokat. • Folyamatkatalógus. Olyan megoldások felkutatása, kidolgozása, amelyek biztosítják az üzleti, humán, informatikával támogatott folyamatok egységes katalogizálását, menedzselését. Olyan módszerek felkutatása, kidolgozása, amelyek szabályozzák a katalógus használatát, meggátolják az inkonzisztens állapotok kialakulását. • Folyamatmonitorozás. Olyan megoldások felkutatása vagy kidolgozása, amelyek biztosítják az üzleti, humán, informatikával támogatott folyamatok monitorozását, a mérési eredmények összefüggéseinek kimutatását. • Folyamatminták. Olyan szakterület-specifikus folyamatminták felkutatása, készítése, amelyek igazoltan legjobb gyakorlatokat jelentenek a folyamatok egyes részeinek megvalósításához. A minták kidolgozásához elkerülhetetlen a szakterület érdekelt feleinek bevonása. • Hosszú lefutású folyamatok menedzselése. Olyan megoldások felkutatása, kidolgozása, amelyek támogatják a már elindult, de még be nem fejeződött folyamatok új, módosított folyamatleírások alapján történő befejezését.
22
Stratégiai Kutatási Terv 1.1
1 Introduction 3.1.4 Hazai és nemzetközi együttműködések Az üzleti folyamatok menedzselésére több nemzetközi, gyártófüggetlen közösség is alakult, amelyek célja a legújabb gyakorlatok összegyűjtése, rendezése, értékelése, a problémák feltárása. Ilyen például a Gartner folyamatmenedzsmenttel foglalkozó közössége12, amely 2000-től készít szakmai elemzéseket. Hasonló az Association of Business Process Management Professionals (ABPMP)13 és a European Association of Business Process Management (EABPM)14 , amelyek saját kiadványaikban összegzik az üzleti folyamatmenedzsment során gyűjtött nemzetközi tapasztalatokat. A Business Modeling & Integration Domain Task Force (BMI)15 ugyancsak témához kapcsolódó ajánlások kidolgozásában vesz részt, valamint az európai NESSI16-n belül is egy külön munkacsoport foglalkozik a tématerülettel. Több konzorcium is alakult, amelyek a folyamatmenedzsment támogatásához egységes, nemzetközileg elfogadott szabványok kidolgozásán fáradoznak. Ilyenek például az Object Management Group (OMG)17, az Organization for the Advancement of Structured Information Standards (OASIS)18, és a Workflow Management Coalition (WfMC)19 konzorciumok. Az OMG nevéhez fűződik az üzleti folyamatok leírására alkalmas Business Process Modeling Notation (BPMN) kiadása, az üzleti és termelési szabályok egyértelmű megfogalmazására alkalmas Semantics of Business Vocabulary and Business Rules (SBVR) és Production Rule Representation (PRR) szabványok kidolgozása, az üzleti folyamatok érettségének felmérésére alkalmas Business Process Maturity Model (BPMM) megalkotása. Az OASIS munkájának köszönhető a Web Services Business Process Execution Language (WS-BPEL), amely nyelv segítségével a webszolgáltatásokból folyamatok építhetők és vezérelhetők. Ugyancsak az OASIS dolgozta ki az üzleti folyamatok leírására alkalmas ebXML Business Process Specification Schema-t, és részt vesz a humán folyamatok leírására alkalmas BPEL4People and WS-HumanTask megoldások szabványosításában. A folyamatmenedzsment problémáinak megoldására a nagy szoftvergyártók (SAP, Oracle, IBM, HP, stb.) is készítenek tanulmányokat és egyedi megoldásokat.
3.2
Interoperabilitás
Az interoperabilitás tématerületének fő célja a technikai és szemantikai együttműködési követelmények meghatározása, és folyamatos karbantartása. Az interoperabilitás lényeges eleme a nyílt szabványok létezése és elfogadása abban a körben, amelyben az interoperabilitást létre kell hozni. A moduláris építkezés, a szállítói piac megnyitása, a fejlesztések felgyorsítása érdekében több szinten és több területen szükséges szabványok kialakítása, valamint a több szervezetet érintő, integrált szolgáltatások esetén az együttműködés több, egymásra épülő szinten vet fel megoldandó feladatokat. 12. http://www.gartner.com/it/products/research/asset_129488_2395.jsp 13. http://www.abpmp.org/ 14. http://www.eabpm.org/ 15. http://bmi.omg.org/ 16. http://www.nessi-europe.eu/Nessi/ 17. http://www.omg.org/technology/documents/br_pm_spec_catalog.htm 18. http://www.oasis-open.org/home/index.php 19. http://www.wfmc.org/
Stratégiai Kutatási Terv 1.1
23
3.2
Interoperabilitás
1 Introduction
3.2.1 Helyzetkép Az interoperabilitás területeinek, szintjeinek leggyakrabban idézett és használt felosztását az EU az IDABC20 (Interoperable Delivery of European eGovernment Services to public Administrations, Businesses and Citizens) programjának „Európai Interoperabilitási Keretrendszer” (EIF21) című anyagában fogalmazta meg: • Jogi interoperabilitás. A megfelelő jogi háttér megteremtése annak érdekében, hogy az együttműködő szervezetek a megfelelő jogi felhatalmazással rendelkezzenek az együttműködésben. • Szervezeti interoperabilitás. A szervezeti célok meghatározásával, szervezeti folyamatok modellezésével foglalkozik abból a célból, hogy a különböző belső felépítésű, és különböző belső folyamatokat használó szervezetek is együtt tudjanak működni egymással. Tárgyalja a felhasználói csoportok különböző igényeit is. • Szemantikai interoperabilitás. Arra törekszik, hogy a különböző alkalmazások pontosan megértsék az egymásnak átadott információk jelentését. Ennek többnyelvű környezetben különösen nagy jelentősége van. • Technikai interoperabilitás. Ez foglalkozik az IKT rendszerek összekapcsolásának műszaki kérdéseivel, mint pl. a nyílt interfészekkel, adatintegrációval, adatok ábrázolásával és cseréjével, biztonsággal, stb. A fő probléma az informatikai és az adott terület együttműködése, egymás szempontjainak és fogalmainak megértése. Ennek megfelelően az interoperabilitás szakterületének legfontosabb feladatai ezeken a szinteken jelentkeznek, és bár a megvalósítás informatikai eszközökkel történik, a feladatok elsősorban nem itt, hanem az adott alkalmazási terület határain, illetve a környezetben jelentkeznek. Amíg nincs egységes fogalomrendszer, amelyhez a felhasználók igazodhatnak, nehéz együttműködésről beszélni, ezért a szemantikai interoperabilitás megteremtésének egyik fő feladata az alkalmazások, információs források által megosztani kívánt fogalmak értelmezésének egységesítése, közösen értelmezhető ontológia fejlesztése. Nem csak az explicit módon meghatározható kifejezések, hanem az abból kikövetkeztethető tudás is része az ontológiának. A különböző forrásokból származó adatok összerendelése során szükséges a meta-adatok szabványainak formalizálása, ahol a meta-adatok célja rendszerezett módon információt szolgáltatni a felhasznált adatokról, valamint azok minőségéről, eredetéről, természetéről és felhasználási módjáról. Egy adott fogalom jelentésén a felhasznált ontológia nyelvétől függetlenül mindig ugyanazt kell érteni. Egy ontológia alapvető jellemzőit, felhasználásának lehetőségeit, hasznosságát azonban jelentősen befolyásolja a formális leírás nyelve. Emellett az ontológiára épülő alkalmazások, rendszerek kifejezőerejét, következtetési képességeit, számítási igényeit is meghatározza a kiválasztott nyelv, így ez az ontológiafejlesztés egy meghatározó lépése. 20. http://ec.europa.eu/idabc/ 21. http://ec.europa.eu/idabc/en/document/3473 22. http://www.w3.org/TR/owl-ref/ 23. http://www.daml.org/
24
Stratégiai Kutatási Terv 1.1
1 Introduction Az intelligens Internet megvalósítására vonatkozó legismertebb törekvés, a szemantikus Web gyors terjedésével párhuzamosan nagyon sok Web alapú nyelv jelent meg. Ilyen például: az RDF és RDF Schema, a KAON, az OWL, a XOL, a SHOE, az RFML vagy a DAML+OIL. A két, leginkább elterjedt nyelv az OWL22 , amely szabványokra és ajánlásokra épül, és a DAML+OIL23 , amely az XML alapú nyelvek közé tartozik. Ontológia fejlesztéséhez (ontológiaépítés, egyesítés, annotáció) megfelelő szerkesztőeszköz szükséges. Az általános szerkesztési és böngészési funkciókon túl, az eszközök általában tartalmaznak ontológiai dokumentációt, exportálási és importálási lehetőségeket a különböző formátumok között, grafikus nézeteket a felépített ontológiáról, ontológiai könyvtárakat stb. is. Ilyen eszközök például a következők: Apollo, Link Factory ®, OILEd, Onto Edit, Ontolingua, OntoSaurus, OpenKnoMe, Protégé, SymOntoX, WebODE, WebOnto. Az ontológia fogalmát más modell-alkotó területekhez is közelítik. A folyamatmodellezés és az ontológiák kombinációjának előnye, hogy a folyamatok hozzáférhetnek a már létező terület-specifikus taxonómiákhoz, glosszáriumokhoz, ontológiákhoz. Emellett az ontológiák használatával konzisztens nyelvezet alakítható ki, amely egy modell létrehozása során felhasználható. Az ontológia-alapú folyamatmodellezés segítségével a folyamatok az eszközök között egymással könnyebben kicserélhetők és újrahasznosíthatók. A szemantikus üzleti folyamatmenedzsment egyesíti a szemantikus web-szolgáltatás keretrendszereket, az ontológiai infrastruktúrákat, valamint az üzleti folyamatmenedzsment módszertanokat és eszközöket. Az alapvető megközelítés a vállalat üzleti és technológiai nézetének együttes reprezentálása ontológiák alkalmazásával, és a két szint közti megfeleltetés támogatása motorokkal. A Gartner kutatóintézet feljövő technológiákról szóló riportja szerint a technológia éppen a Hype görbe „kiábrándulás völgyében” látható (2008). A prioritás-mátrix a technológia várható hasznát magasra becsüli. Azonban mind a Hype görbéről, mind pedig a prioritás-mátrixból azt olvashatjuk ki, hogy a technológia középpontba kerüléséig várhatóan még több, mint 10 évig kell várni. SOA rendszerek kialakításánál a migráció alapvető fontosságú. Migráció több szinten is megjelenhet. Egyrészt, a már működő régi rendszereket úgy kell átalakítani, hogy funkcionalitásuk szolgáltatásként kiajánlható legyen. Másrészt, a már működő SOA rendszerekben is felmerülhetnek migrálási problémák, például a futó folyamatok leírásának megváltozásakor, vagy másik futtatórendszerre való áttéréskor. A régi rendszerek migrálásához olyan tipikus fejlesztési mintákra van szükség, amelyek megkönnyítik ezt az átállást. A modernebb keretrendszerek (.NET, Java) már beépítetten támogatják a szolgáltatásokat, és az egyik legnépszerűbb programnyelvhez, a C++-hoz is létezik web-szolgáltatásokat kezelő keretrendszer (gSOAP). Azonban számos régi programnyelvhez hiányzik ez a támogatás, így az ezekben írt szoftverek migrálásához adaptereket kell készíteni. Sok esetben – többek között a közigazgatási és pénzügyi szférában is – a végrehajtott üzleti folyamatok hosszabb ideig is elhúzódhatnak, így állapotukat tárolni és kezelni kell. A hosszú végrehajtási idő alatt változhatnak a törvényi feltételek és ezáltal a folyamat leírása is, de akár végrehajtó rendszer verziója is módosulhat, vagy akár egy teljesen más végrehajtó rendszerre kell a már futó folyamatokat áttelepíteni. Ezek a problémák komoly kihívást jelentenek a folyamatot kialakító fejlesztők számára, mivel a folyamatot úgy kell megtervezni, hogy ezek a változtatások könnyen elvégezhetők legyenek. Maguk a végrehajtó rendszerek jelenleg nem nyújtanak megoldást ezekre a problémákra.
Stratégiai Kutatási Terv 1.1
25
3.2
Interoperabilitás
1 Introduction
3.2.2 Strategiai célok A már ismertetett interoperabilitási szintek közül a technikai és szemantikai interoperabilitás jól formalizálható, ellenőrizhető és konzisztenssé tehető, amennyiben ehhez megfelelő eszköztámogatás is társul. Különösen fontos kérdés azonban a szervezeti és jogi interoperabilitás, hiszen gyakran még maga a jogi környezet sem konzisztens, illetve interoperábilis önmagával. Az interoperabilitás területén elérendő célok: • Feladat (intézmény) specifikus interoperabilitási keretrendszerek kialakítása, illetve ezek működtetésének támogatása. • Ontológia-támogató rendszerek kidolgozása. • Feladat (intézmény) specifikus ontológiák és repository-k kialakítása és fenntartása. • Interdiszciplináris együttműködések elősegítése, amely elindítója és támogatója az interoperabilitási megoldások kialakításának • Olyan támogató eszközrendszer, illetve módszertan kidolgozása, amely segítséget nyújt interoperabilitási megoldások létrehozásában. • Államhatárokon átnyúló, páneurópai interoperabilitási kérdések kezelése. • A modell-alapú gondolkodás fontosságának és helyének bemutatása és elfogadtatása a menedzsment, a jogi és az igazgatási szinteken.
3.2.3 Kutatási célok és feladatok Interoperábilis rendszerek tervezésekor egy elosztott, SOA szoftver-rendszerben az alkalmazások olyan szoftver komponensekként jelennek meg, amelyeknek minden lehetséges felhasználási módja tervezéskor nem feltétlenül ismert. Egy szolgáltatás felhasználhatja más komponensek szolgáltatásait, azonban elképzelhető, hogy csak a meghívandó szolgáltatásokkal szemben támasztott követelmények adottak, maguk a konkrét szolgáltatások nem. Az egyes szoftverkomponensek meghirdetik szolgáltatásaikat, a szolgáltatást felhasználó komponensek rákereshetnek az általuk támasztott követelményeket kielégítő szolgáltatásokra, majd a leírások és az egyéb forrásokból rendelkezésre álló referenciák alapján kiválaszthatják és felhasználhatják a megfelelő komponenst. Az egyik fő kutatási irány az ontológiára épülő automatikus kérő-kiszolgáló párosítás megoldása. A SOA alkalmazások ilyen módon történő kialakítása olyan szoftvertechnológiát igényel, amelyben a szoftverkomponensek saját maguk alakítják ki kapcsolataikat más szoftverkomponensekkel. Ennek feltétele, hogy a komponensek funkcionalitása, elérhetősége, minőségi jellemzői, az általuk használt adatok, a munkafolyamatokba való beépíthetőségük gépi úton feldolgozható formában is le legyen írva. A komponensek nyilvántartásának és kereshetőségének is automatizáltnak kell lennie, ami egyben azt is jelenti, hogy ebben az infrastruktúrában speciális szabványokat, protokollokat és konvenciókat kell kialakítani és betartani.
24. http://www.sbpm.org/ 25. http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=wsbpel 26. Keller, G., Nüttgens, M., Scheer, A.W.: Semantische Prozessmodellierung auf der Grundlage “Ereignisgesteuerter Prozessketten (EPK)”. Heft 89, Institut für Wirtschaftsinformatik, Saar brücken, Germany (1992)
26
Stratégiai Kutatási Terv 1.1
1 Introduction Informatikai rendszerek egyesítésekor pontosan meg kell adni azok kapcsolatát, valamint a kicserélt adatok pontos értelmezését. Átfogó információrendszerek fejlesztését közös ontológia kidolgozásával, a meglévő ontológiák egyesítésével célszerű kezdeni. Módszertanokat kell kialakítani közös ontológiák tervezésére, az egyes fogalmak feltérképezésére, kapcsolataik kialakítására, valamint az egész tervezési folyamat levezénylésére. Egy adott alkalmazási területen működő közösségnek közös ontológiában kell megegyeznie, hogy azonos módon tudja értelmezni és használni a közösen használt fogalmakat, objektumokat, tulajdonságaikat és relációikat. Problémát jelent azonban az elfogadás szintje: bármennyire is semleges és hiteles egy ilyen módon kidolgozott, számos kifejezés definícióját tartalmazó ontológia, bármennyire is megegyeztek a különböző adatkezelő közösségek, a gyakorlatban nagyarányú ellenérdekeltségre és a követelmények közötti ütközésre kell számítani. Fontos, hogy a felhasználók motiváltak legyenek és megosszák másokkal a saját alkalmazási területükre vonatkozó ontológiájukat. Olyan módszertanokat és ajánlásokat kell kialakítani, amelyek elősegítik az ontológiák megosztását és karbantartását. A szemantikus üzleti folyamatmenedzsment (SBPM 24) kutatások fő iránya a meglévő eszközök és szabványok kompatibilitásának biztosítása. Ez azt jelenti, hogy egy BPEL25 , vagy egy EPC26 modell felhasználható legyen egy SBPM környezetben, ugyanakkor egy SBPM rendszerben létrehozott folyamat legyen exportálható BPEL-be, hogy az szabványos BPEL motorokkal végrehajtható legyen. Régi rendszerek migrációjával kapcsolatban az alábbi kutatási célok fogalmazhatók meg. Fel kell térképezni a főbb régi rendszertípusokat, amelyeket szolgáltatások kialakítására képessé kell tenni. Meg kell vizsgálni, miként migrálhatók ezek különféle adapterekkel modern szolgáltatás oritentált rendszerekbe, valamint milyen tervezési minták alapján lehet a szolgáltatások publikálását elvégezni. Célszerű segédeszközöket is kidolgozni az adapterek előállításához és a tervezési minták betartásához. Az adapterek kialakításánál figyelembe kell venni a nemfunkcionális követelményeket is, amelyeket az adott rendszer megkívánhat. Meg kell vizsgálni, miként biztosíthatók ezek a követelmények az adaptereken keresztül. Folyamat-példányok állapotának automatikus migrációjához az alábbi kutatási feladatok tartoznak. A folyamatleírás megváltozása esetén meg kell vizsgálni, milyen migrációs feladatok azonosíthatók, hogyan valósítható meg az állapotmigráció. Ezen kívül fel kell térképezni az adott alkalmazási területeken, hol szükséges, vagy hol tiltott a folyamatok példányainak migrációja. Azonosítani kell azokat a folyamatmintákat, amelyek elősegítik, vagy éppen nehezítik a migrációt, és olyan ajánlásokat, mintákat kell kidolgozni, amelyek alkalmazásával a migráció minél könnyebben elvégezhető. Ezek alapján olyan követelményrendszert kell megalkotni, melynek betartásával migrálható folyamatokat lehet előállítani. Ezeket a folyamatokat, mintákat, követelményeket formalizálni kell, és matematikai eszközökkel kell ellenőrizni a migrálás helyességét. A formalizmusnak köszönhetően olyan modellellenőrző eszközöket lehet készíteni, amelyek biztosítani tudják a követelmények teljesülését, vagy az azokat sértő folyamatokat automatikusan migrálhatóvá tudják alakítani. A formalizmusnak köszönhetően matematikai módszerekkel is találhatók olyan migrálást elősegítő minták, amelyekre korábban nem sikerült példát találni. 27. http://www.egov-bus.org/ 28. http://ec.europa.eu/idabc/en/document/3473 29. http://www.whitehouse.gov/omb/e-gov/fea/
Stratégiai Kutatási Terv 1.1
27
3.2
Interoperabilitás
1 Introduction
A folyamatok leírásának megváltozásán túl, foglalkozni kell a folyamatleíró nyelv verziójának változásával, valamint a folyamat másik típusú végrehajtó gépre való áttelepítésével. Ezekben az esetekben ugyanazokat a kutatási feladatokat lehet megfogalmazni, mint az egyszerű, folyamatban történt apróbb változás érvényre juttatása esetén.
3.2.4 Hazai és nemzetközi együttműködések Az egyik legismertebb szemantikai interoperabilitást elősegítő, ontológia alapú, dinamikus szolgáltatásfelderítést is támogató kezdeményezés az eGov-Bus27. Az eGov-Bus célja, hogy integrálja és kibővítse a folyamatleírás és tartalomkezelés témakörébe tartozó kutatásokat és szabványokat kormányzati és kormányzatok közötti rendszerekben. Az eGov-Bus biztonságos, letagadhatatlan, nagy rendelkezésre állású, skálázható elosztott rendszerek létrehozását segíti elő. Web-szolgáltatásokra épül, és támogatja a folyamatok és interfészek katalogizálását, emellett magas fokú menedzsment funkciókat is biztosít. Az EIF28 (European Interoperability Framework) ajánlásokat és útmutatókat fogalmaz meg e-közigazgatási típusú szolgáltatások létrehozásához. Ezek figyelembe vételével az ügyintézők, a vállalatok és az állampolgárok együttműködése egyszerűbbé és hatékonyabbá válik a határokon is átívelő pán-európai környezetben. Az EIF emellett kiegészíti azokat a nemzeti interoperabilitási keretrendszereket, amelyeket tisztán nemzeti alapokon nem lehet megvalósítani. A FEA29 (Federal Enterprise Architecture) az amerikai szövetségi kormányzat legutóbbi kísérlete a rengeteg különböző hivatal és ügynökség által nyújtott nagy számú szolgáltatás egy közös, mindenre kiterjedő architektúrában történő egységesítésére. A szokásos ismertetők a FEA-t leegyszerűsítik öt referencia modellre, amelyek a következőkre fókuszálnak: teljesítmény, üzlet, szolgáltatás, komponens és adat. Azonban a FEA ennél sokkal több, mivel tartalmaz mindent, ami szükséges egy EA (Enterprise Architecture) készítéséhez. Így magában foglalja • az EA szegmens modelljét, • az EA előállításának folyamatát, • az EA előtti és utáni paradigmák közötti váltás folyamatát, • az elkészítendő dokumentációknak, anyagoknak egy taxonómiáját, • az üzleti célokra és értékekre alapuló mérési módszert, amellyel az EA sikere megítélhető.
28
Stratégiai Kutatási Terv 1.1
1 Introduction
3.3
Architecturák és SOA
3.3.1 Helyzetkép Az Európai Unióban, de különösen hazánkban kiemelten fontos cél a gazdaság, a vállalkozások versenyképességének növelése és a polgárok életminőségének javítása. A célkitűzés megvalósításának hatékony eszköze az infokommunikáció, az információtechnológia széles körű alkalmazása. Több résztvevő szolgáltatásainak hatékony, biztonságos összekapcsolása és egységes rendszerként való működtetése azonban nemcsak napjainkban, hanem várhatóan a jövőben is az egyik megoldásra váró IKT probléma lesz. A megoldásra jelenleg a szolgáltatásorientált architektúra (SOA) látszik legalkalmasabbnak. Ezen architektúrán már sikerrel oldottak meg vállalaton belüli, különálló rendszerek közötti integrációt. A vállalatokon átívelő, több technológia-szállító termékére építő, hatékonyan integrált rendszerekre azonban egyelőre nincs meggyőző példa. A probléma megoldását jelentő architektúra felépítésének egyik kulcsa a nyílt és elterjedt szabványok alkalmazása. Mára a legfontosabb web-szolgáltatás szabványok és folyamatleíró nyelvek elég éretté váltak a valós felhasználáshoz. Ezek nagy részéhez a technológia-szállítók – néhány hiányosságtól és inkompatibilitási problémától eltekintve – biztosítják az implementációt is. A vonatkozó szabványokat néhány kiemelkedő szervezet alakítja nemzetközi összefogással. Ezek közül leginkább említésre méltóak a következők: a W3C (World Wide Web Consortium), az OASIS (Organization for the Advancement of Structured Information Standards), az OMG (Object Management Group) és a WfMC (Workflow Management Coalition). A meglevő megoldások azonban jelenleg nem alkalmasak arra, hogy nagy, összetett, több gyártó termékét integráló rendszereket hozzunk létre. Komplex, több szereplős, heterogén SOA környezet megteremtéséhez a másik kulcsfontosságú technológia a megfelelő gyártófüggetlen modellezési támogatás, amely által a tervezés, a tesztelés és a felügyelet leegyszerűsödik. Jelenleg nem állnak rendelkezésre azok a metamodellek, amelyek ezt a feladatot el tudnák látni. Az architektúra dinamikus működésével kapcsolatban a humán és automatizált folyamatok kezelése illetve a komplex döntési folyamatok kiemelése kapcsán merülnek fel kutatási és fejlesztési feladatok. A gyakorlati tapasztalatok azt mutatják, hogy a SOA rendszerekben a folyamatok nagy részét ugyan automatizált, szabványos nyelven leírt és végrehajtott folyamavezérlőkre lehet és kell bízni, azonban számos olyan eleme lehet egy üzleti folyamatnak (pl. az emberi közreműködést igénylő folyamatszakaszok), amit nem lehet vagy nem érdemes ezen “klasszikus” folyamatmodellben kezelni. Mivel a humán workflow-k tervezése, definiálása, modellezése és futtatása alapvetően különbözik az automata folyamatoktól, ezért egy SOA architektúrában erre külön módszereket, eszközöket, eljárásokat kell kidolgozni. A másik csoportba azok a sokszor nagyon komplex döntési folyamatok tartoznak, amelyeket ugyan lehetséges automatizálni, azonban sokkal szerencsésebb ezek kiemelése az automatizált üzleti folyamatból. Ezen döntési folyamatok megvalósítására, illetve az üzleti folyamatokba történő beillesztésére ugyancsak külső komponensek, az ún. üzleti szabálymotorok szolgálnak (business rule engine). Ezen üzleti szabálymotorok általában nagy méretű, a döntést támogató adatbázisokkal, időben gyakran válStratégiai Kutatási Terv 1.1
29
3.3
Architecturák és SOA
1 Introduction
tozó (és így például a hosszan tartó folyamatok lefutása szempontjából igen dinamikus) szabályrendszerrel és sokszor igen összetett döntési algoritmusok implementálásával működnek, éppen ezért a bennük megvalósított folyamatok leírására nem alkalmas például a BPEL leírónyelv. Az üzleti szabályok modellezése, leírása tipikusan nem informatikai feladat, így különösen fontos, hogy megfelelő szemantikus leírás és kidolgozott ontológia segítse és jelentős mértékben egyszerűsítse a feladat megvalósítását. A munkacsoport, jellegéből adódóan, egyfajta integráló szerepet is betölt a platformon belül. Emiatt az alábbiakban definiált célok és feladatok megvalósítása során igen szorosan együtt kíván működni a többi munkacsoporttal a hatékony előrehaladás érdekében.
3.3.2 Strategiai célok A SOA technológia alkalmazhatóságának növelése, a SOA-ra alapuló, hatékony, integrált rendszerek széles körű elterjesztése érdekében a következő stratégiai célok elérését tekintjük meghatározónak: • Lehetővé kell tenni, hogy több szereplős, összetett folyamatok és szolgáltatások hatékonyan, rugalmasan és nagy biztonsággal legyenek kialakíthatók. Létre kell jönnie egy olyan magas szintű, szabványos folyamat- és szolgáltatás-leíró modellnek, valamint egy ehhez társuló sín specifikációnak, melyek lehetővé teszik, hogy különböző gyártók már meglevő és később megjelenő SOA termékeit varratmentesen integrálni lehessen. • Technológiai támogatást kell tudni biztosítani ahhoz, hogy a már kifejlesztett és a később kifejlesztésre kerülő szolgáltatások és folyamatok különböző gyártók termékei között, vagy egyazon gyártó különböző termékei között hatékonyan hordozhatók legyenek. • Technológiai támogatást kell tudni biztosítani a több szereplős, összetett folyamatok és szolgáltatások hatékony és megbízható teszteléséhez és menedzseléséhez. • Ki kell dolgozni a human workflow kezeléssel kapcsolatos architekturális kérdésekre adandó válaszokat (mind elméleti, tervezési, mind konkrét megvalósítási szempontból). Ki kell dolgozni a SOA környezetben használandó külső döntési mechanizmus üzleti folyamatba történő illesztésének és külső szabálymotorba helyezésnek szabványos kereteit.
3.3.3 Kutatási célok és feladatok A fenti stratégiai célok eléréséhez az alábbi kutatási célokat és feladatokat definiáltuk: • Egységes, gyártó-független metamodell kidolgozása, amely lehetővé teszi web-szolgáltatások, protokollszabványok és folyamatok együttes leírását A szolgáltatások interfészeinek és a futtató szolgáltatók tulajdonságainak leírására az OMG a SoaML (Service Oriented Architecture Modelling Language) szabványt dolgozta ki, amely jelenleg elfogadásra vár. Alapja az UML (Unified Modeling Language) 2-es verziójának metamodellje, ezt bővíti ki a SOA fogalomkörébe tartozó sztereotípiákkal. A specifikáció azonban nem tér ki arra, hogy hogyan kell együttesen, egy modellben leírni összetartozó web-szolgáltatásokat, protokollszabványokat és folyamatokat. A kutatási feladat olyan általános, gyártó-független metamodell és az ezt támogató fejlesztőeszköz kidolgozása, amely képes arra, hogy egységesen lehessen ábrázolni a szolgáltatásokat, protokollokat és folyamatokat. 30
Stratégiai Kutatási Terv 1.1
1 Introduction • Hosszú lefutású, SOA-alapú folyamatok környezeti változásainak technológiai támogatása Több alkalmazási domén, így például a közigazgatás, jellegéből adódóan számos olyan folyamat létezik, amelyek a szokásos, jelenleg informatikailag támogatott folyamatoktól eltérően igen hosszú (hetekben, hónapokban mérhető) végrehajtási időkkel rendelkeznek. A hosszú idő miatt a futása során módosulhat a folyamat környezete. Ilyen lehet a törvényi előírások vagy a futtatókörnyezet változása. Ezek a változások szükségessé tehetik, hogy a már elindított, de még be nem fejezett folyamatokat az új feltételeknek megfelelő környezetbe kell áthelyezni. Erre a problémára jelenleg nem létezik IKT megoldás, a kutatási háttér sem kidolgozott. A kutatási cél olyan modell felállítása, amelyben a változások hatékonyan leírhatók, és amely alapján a folyamatok migrációja a lehető legnagyobb mértékben automatizáltan végezhető el. Mindezt egy megfelelő informatikai keretrendszer kialakításával is támogatni kell. • Több, független felügyelettel rendelkező alrendszer (szervezet) közös, hosszú lefutású szolgáltatási folyamataiban a perzisztencia megvalósítása Azon folyamatok esetében, amelyek több, független felügyelettel rendelkező szereplő közös, hosszú lefutású szolgáltatását valósítják meg, különös figyelmet kell szentelni az állapotok konzisztenciájának megtartására. Ez a követelmény a rendszer több komponensére is hatással lehet. Egyfelől biztosítani kell, hogy a futtatott folyamat belső állapotát a rendszer elmentse és visszaállítsa akár leállás és újraindítás után is. Erre az adatbázisra épülő futtató környezetek általában képesek. Másfelől vannak olyan rendszerek, amelyek nem képesek arra, hogy folyamatos rendelkezésre állást nyújtsanak. Emiatt olyan, nagy rendelkezésre állású alapinfrastruktúrát kell biztosítani, amely sínként köti össze a lazán csatolt komponenseket, részrendszereket, és az üzenetek perzisztens átvitelével maga biztosítja a folyamatos működését. Ezt a sínt tipikusan valamilyen üzenetközvetítő rendszerre (message-oriented middleware) építve lehetséges megvalósítani. Az üzenetközvetítő rendszerek összekapcsolása jelenleg sok problémát vet fel. Nem minden esetben megoldott például az, hogy az egyes rendszerek között átlépő üzenetek perzisztensek maradjanak. További probléma a hosszú lefolyású folyamatok futása során fellépő folyamat-migráció kezelése. A futtató gép frissítése vagy cseréje esetén is életben kell tudni tartani az éppen futó folyamatokat. A problémák megoldásához nemcsak a kapcsolatok kezelésének alapelveit kell kidolgozni, hanem referencia-megvalósításokat is készíteni kell. • Szolgáltatási sín szabványosítása és létrehozása, amely különböző szereplők (vállalatok, közigazgatási szakrendszerek) SOA-alapú összekapcsolásának alapja lehet A különböző ESB termékeket a szoftvergyártók tipikusan egy adott vállalaton belüli használatra tervezik. Egy szakrendszereket, illetve vállalatokat összekapcsoló megoldással szemben elvárás, hogy megtartsa a kompatibilitást a már piacon lévő termékekkel, ezen túlmenően pedig jól felügyelhető és karbantartható legyen. Az összekapcsolás alapját képező szolgáltatási sínnel szemben támasztott követelmények pontos meghatározása alapvető fontosságú. Ezeknek ki kell térnie a szolgáltatási sín által biztosított funkciókra, valamint a sínre csatlakozó szolgáltatókkal szembeni elvárásokra is. Foglalkozni kell azokkal a követelményekkel is, amelyek a sín használatával kapcsolatos adminisztratív teendőket írják le. A sínen publikálandó szolgáltatások életciklusának meghatározása alapján definiálni Stratégiai Kutatási Terv 1.1
31
3.3
Architecturák és SOA
1 Introduction
kell azokat az eljárásokat és protokollokat, amelyek a sín működését és felügyeletét biztosítani tudják az életciklus minden szakaszában. A jogosultságkezelésre egy többszereplős rendszerben kiemelt figyelmet kell szentelni, így a felügyelet és a szolgáltatások életciklusának kialakítása során ez az aspektus kulcsszerepet játszik. • A több szereplőre kiterjedő SOA-alapú folyamatok és szolgáltatások tesztelésének hatékony támogatása Nagy heterogén rendszerek esetén az egyik kulcskérdés a tesztelhetőség. A szereplők számának dinamikus növekedése, a flexibilis csatlakozás lehetősége, a megvalósított folyamatok gyors változása szükségessé teszi, hogy hatékony és megbízható tesztelési módszerek és technikák álljanak a rendszer fejlesztőinek és üzemeltetőinek rendelkezésére. A nagy számú komponens miatt elkerülhetetlen az, hogy a teszteket automatizálni lehessen, ami mind a tesztek generálását, mind a végrehajtását, mind a dokumentálását és kiértékelését magában foglalja. A tesztek során el kell tudni végezni a közvetítő közeg (a szolgáltatási sín), a szolgáltatások és a folyamatok funkcionális és nemfunkcionális vizsgálatát. Így akár arra is szükség lehet, hogy magukba a folyamatokba lehessen automatikusan olyan kapcsolódási pontokat építeni, amelyek pusztán a tesztelés folyamatát hivatottak támogatni. • Az együttműködés alapjául szolgáló adatszótárak kialakítása Az adatszótárak kérdéskörével kapcsolatos problémakör kutatása a NESSI platformon belül természetes módon az interoperabilitási kutatások körébe tartozik, azonban a problémakörnek számos olyan vonatkozása van, amely a SOA és architektúrák területét is érinti. A helyzetet demonstrálja, hogy számos hazai “SOA” címszóval jellemzett projekt éppen amiatt halad nehézkesen, mert a tervezés illetve az implementáció során nem kellő mértékben fordítanak figyelmet ezen szótárak kialakítására, alkalmazására. Mindenképpen fontosnak tartjuk, hogy az adatszótárak kialakításával kapcsolatos kutatásokat munkacsoportokon átnyúlva, minden érintett és “haszonélvező” bevonásával indított kutatási program(ok) keretében vizsgáljuk. • A szolgáltatási folyamatok szabványos eszközökkel történő leírásának (orchestration) problematikája, az ehhez kapcsolódó lehetőségek vizsgálata Az SOA rendszereket jellemző szolgáltatási folyamatok leírásának (orchestration) és ezen szolgáltatási folyamatok technikai folyamatokkal történő összekapcsolásának kérdésköre ugyancsak egy többszereplős, több munkacsoport kutatási programját is befolyásoló terület. A rendszerek architektúrájának szempontjából igen fontos, hogy a két réteg (az üzleti és technikai) oda-vissza átjárható és automatizálható legyen, ugyanakkor a modellezés egyszerű, mindenki számára érthető és elérhető eszközökkel valósuljon meg. • A szolgáltatási folyamatok modellezésének architekturális kérdései A kutatás során több munkacsoport közös munkájára lesz szükség, a kutatási tevékenységet a business process modelling kutatásával szoros együttműködésben kell elvégezni, hiszen az ott kiválasztott eszközök nagyban befolyásolják az itt használhatókat. 32
Stratégiai Kutatási Terv 1.1
1 Introduction Az OASIS által szabványosított WS-HumanTask specifikáció az implementáció oldaláról közelíti meg a humán workflow kérdését, olyan webszolgáltatásokat, műveleteket és adatszerkezeteket definiál, melyekkel emberi tevékenységek kezdeményezhetők (értesítés, notification), és ezek eredménye kérdezhető le. Meg kell vizsgálni a specifikáció architekturális vonzatait. Fontos megtalálni azokat a tipikus mintákat, workflow patterneket, melyek bonyolult, éles problémák építőkockáiként szolgálhatnak (pl. soros feldolgozás, szinkronizáció, elhalasztott döntés, eszkaláció stb.). Az ajánlások megfogalmazása mellett kiemelt figyelmet kell fordítani arra, hogy a SOA területen végzett kutatásokat pragmatikusan fogjuk fel, és az egyes kutatási területek eredményeihez működő referencia modelleket (proof of concept, PoC) is létrehozzunk, ezzel igazolva, hogy igenis léteznek az adott problémára működőképes megoldások. Ezen referencia modelleket ahol és amennyiben lehetséges nyílt forrású, bárki számára szabadon elérhető technológiákra, szoftver komponensekre építve szükséges létrehozni. Természetes cél ugyanakkor, hogy a referencia modellek által biztosított funkcionalitást a lehető legszélesebb körben reprodukálhatóvá tegyük, így bevonjuk azokat az ipari szereplőket is, akik az adott területen kereskedelmi célú szoftver megoldásokkal rendelkeznek.
3.3.4 Hazai és nemzetközi együttműködések A fenti célok eléréséhez feltétlenül szükséges szabványokat néhány kiemelkedő szervezet alakítja nemzetközi összefogással. Ezek közül leginkább említésre méltóak a következők: a W3C (World Wide Web Consortium), az OASIS (Organization for the Advancement of Structured Information Standards), az OMG (Object Management Group) és a WfMC (Workflow Management Coalition). A hazai együttműködések közül megemlítendő a közelmúltban megvalósult Elektronikus közigazgatási keretrendszer kialakítása (EK3) projekt. Ennek során kidolgozásra került az Elektronikus Közigazgatás Operatív Program (EKOP) keretében indítandó ún. kiemelt EKOP projektek fejlesztései számára az egységességet, interoperabilitást, fejlesztés módszertant biztosító követelményrendszer (http://kovetelmenytar.complex.hu).
Stratégiai Kutatási Terv 1.1
33
3.4
Szoftver technológia
1 Introduction
3.4.1 Helyzetkép A hazai szoftvertechnológiai kutatási irányokat az EU trendekhez célszerű igazítani, ugyanakkor bizonyos területeken – a sajátos hazai viszonyokra, már elért eredményekre, rendelkezésre álló kompetenciákra figyelemmel – helyi prioritásokat kell meghatározni. Az elosztott rendszerek és különösen az enterprise alkalmazások területén folyó nagy projektekben manapság egyre elterjedtebben alkalmazzák a szolgáltatás-orientált architektúrát (SOA). Ezekben a projektekben a kellően megalapozott szoftvertechnológiai módszerek alkalmazása, valamint a megfelelő és hatékony eszköztámogatás a projekt sikerének kulcstényezői. A tapasztalatok arra mutatnak, hogy a hagyományos fejlesztési paradigmák (pl. objektum-orientáltság, komponens-technológiák, adatbázis rendszerek stb.) és tradicionális architekturális megközelítések kezdetben elfogadhatóak és jó kiindulásul szolgálnak, de a projekt kiterjedésével egyre gyengébbnek, végül elégtelennek mutatkoznak. A korlátozások és balsikerek tapasztalatai alapján egy új diszciplína jelent meg: a szolgáltatástechnológia (software service engineering, SSE). Bár a SOA alkalmazások teljes életciklusát átfogó, a hagyományos technológiai elemeken túlmenően a gazdasági és szociológiai környezetet is figyelembe vevő, a bevett ipari gyakorlatra építő, korszerű mérnöki diszciplína kialakítása napjainkban már nagy erőkkel folyik, a szakterület még nem tekinthető elég érettnek, és számtalan kutatási témát nyújt. A modell-alapú szoftverfejlesztés egyre gyakrabban használt módszer a különböző szoftvertermékek előállítására. A modellezés a fejlesztendő rendszer pontos definiálása a megfelelő absztrakciós szinten. A modell-alapú fejlesztés során, a modellek, a rendszer specifikálása mellett, fontos szerepet játszanak magának a végleges rendszernek az előállításában. Modellek használatával a fejlesztés hatékonysága, valamint a végleges rendszer minősége és megbízhatósága nagymértékben növelhető. Ezért a modelleket a szoftverfejlesztés minél több fázisában érdemes alkalmazni. A modellezés és a modell-alapú fejlesztés több különböző területet fog össze, úgymint általános modell-alapú szoftvertervezés (UML), tervezési és refaktorizációs minták alkalmazása, szakterület specifikus modellezés (DSM – Domain Specific Modeling), generatív programozás, illetve modell feldolgozás. Mindezek alapján célunk – a nemzetközi kutatási területek mellett és azokon túl – a következő területek jövőbeni részletes kutatása/fejlesztése: • Szakterület-specifikus modellezés (Domain Specific Modelling) A szoftver és hardver rendszerek modellezésében léteznek olyan alkalmazási területek, melyek leírásához az általános célra tervezett UML nem alkalmas. Az ilyen alkalmazási területekhez speciális nyelvek definiálására van szükség. Ezt a célt szolgálják a szakterület-specifikus nyelvek (Domain-Specific Languages - DSLs). A szakterület-specifikus modellezés szerinti megközelítés nagyban növeli a fejlesztés hatékonyságát azáltal, hogy a rendszer modelljét a programkód fölötti absztrakciós szintre helyezi. A modelleket olyan elemek alkotják, amelyek nem a programkódot írják le, hanem magát az alkalmazási területet, a megoldandó problémát, ellentétben például az UML megközelítéssel. A szakterület-specifikus nyelvek az alkalmazási terület leírását tűzik ki célul és annak a szemantikáját veszik alapul. A szakterület-specifikus nyelvekkel leírt magas-szintű specifikációkból automatikusan generálható a végső termék, úgynevezett
34
Stratégiai Kutatási Terv 1.1
1 Introduction szakterület-specifikus kódgenerátorok segítségével. A szakterület-specifikus modellezés hatékonyabbá és megbízhatóbbá teszi a fejlesztési folyamatot. • Generatív Programozás A generatív programozás során kihasználjuk, hogy a fejlesztés során a cél több hasonló rendszer, egy termékcsalád előállítása (termékvonal fejlesztés). Mivel a fejlesztendő rendszerekben sok a hasonlóság, a rendszer specifikációból kiindulva, a konkrét rendszert több, már megvalósított, újrafelhasználható komponensből generáljuk. A generatív programozás célja, hogy a különálló alkalmazások fejlesztésének minél nagyobb részét automatizáljuk. A további alkalmazáspéldányok automatikus generálása a szoftver fejlesztésének sebességét és költségeit drámaian csökkenti. • Tervezési, architekturális minták (Patterns) A szoftvertervezési minták kulcsszerepet játszanak abban, hogy az elkészült szoftvertermék könnyen karbantartható, bővíthető, kiterjeszthető legyen. Segítik a kód könnyebb megértését, valamint hatékonyabbá teszik a fejlesztést azáltal, hogy jól bevált szoftvertervezési megoldásokat biztosítanak a fejlesztők számára. A tervezési minták alapvetően függetlenek a programozási nyelvektől. Az utóbbi években azonban a korszerű programozási nyelvekben megjelent eszközök, paradigmák (pl. objektumorientált függvénymutatók, a funkcionális programozás elemeinek támogatása objektumorientált környezetben, stb.) lehetővé teszik, hogy a klasszikus tervezési mintákat hatékonyabban, a megszokottól eltérő módon alkalmazzuk. A szoftverfejlesztés általános irányvonala mellett a fejlesztés korábban kevés hangsúlyt kapott aspektusai is előtérbe kerültek, mint például mobilitás, széles körű konfigurálhatóság és paraméterezhetőség, offline működés, elosztottság, bővíthetőség (plugin-ek). • Refaktorizációs módszerek kidolgozása A szoftverekhez fűződő követelmények az idő múlásával megváltoznak. Egy használatban levő szoftvernek folyamatosan fejlődnie kell, különben használhatósága egyre nagyobb mértekben csökken. A szoftver belső struktúráját, teljesítményét és skálázhatóságát folyamatosan fejleszteni kell. Sok esetben (például banki vagy forgalomirányító rendszerek esetén) a folyamatos fejlődés mellett a szoftver kívülről látható viselkedését megváltoztatni nem szabad. Az ilyen viselkedésmegőrző szoftverváltoztatásokat hívjuk szoftver refaktorizációnak. A tervezési mintákhoz hasonlóan léteznek refaktorizációs minták, melyek jól bevált szoftver-refaktorizációs gyakorlatokat foglalnak össze. Fontos különbség, hogy míg a tervezési mintákat a szoftver tervezési folyamata során, a refaktorizációs mintákat a karbantartás fázisában használják. Feladatuk a túlzottan merev, vagy hibás rendszer megjavítása, illetve rugalmassá, további fejlesztésre alkalmassá tétele. • Felhasználói felület tervezési paradigmáinak kidolgozása A szoftver felhasználói felület tervezésének célja, olyan felhasználói felület készítése, mely segítségével a felhasználó a tervezési specifikációit a lehető legegyszerűbben és leghatékonyabban képes megvalósítani. A jó felhasználói felület elősegíti a felhasználó feladatának megoldását úgy, hogy nem vonja
Stratégiai Kutatási Terv 1.1
35
3.4
1 Introduction magára szükségtelenül a figyelmet. A hatékony felhasználói felület megtervezése sokrétű feladat. A követelmény elemzés fázisában szükséges azon funkcionalitások összegyűjtése, melyet a felhasználók használnak a sikeres feladatelvégzés érdekében. Ismerni kell magukat a felhasználókat, számítógéphasználati képességeiket, elképzeléseiket a rendszerről valamint a rendszer helyét a felhasználók napi munkafolyamatában. A megtervezett felhasználói felület különbözik a kliens típusa (mobil vagy asztali) szerint is. • Szolgáltatási szerződések formális leírásainak a gyakorlatban történő alkalmazásával kapcsolatos kutatás A SOA alkalmazásokban megjelenő szolgáltatások igénybevétele a szolgáltató és a kliens közötti szolgáltatási szerződésen alapul. A szolgáltatási szerződés egy metaadat, amely leírja a felek viselkedésével kapcsolatos követelményeket, anélkül, hogy az implementációt is specifikálná. A web-szolgáltatások körében bevezetett WSDL egy speciális szerződésnek tekinthető, amely a szolgáltatáshoz tartozó alapadatokat (az interfész, a típusok, az üzenetek) adja meg, figyelmen kívül hagyva a szolgáltatási szintet, a felhasználó jellemzőit, minőségi elvárásokat és a szemantikát. Bertrand Meyer design-bycontract elvének a szolgáltatásokra történő adaptálásával a szolgáltatási szerződés általánosabb és formálisabb leírása lehetséges. • Szolgáltatás alapú rendszerek kialakításának olyan módszereire vonatkozó kutatás, amely figyelemmel van a szervezeti interoperabilitás érettségére A szolgáltatások létrehozása, működtetése és karbantartása különösen nehézkes lehet, ha a szolgál-
tatás nyújtásában és/vagy igénybevételében érintettek között nincs meg a szükséges együttműködési készség. Az együttműködés gyengesége (hiánya) gyakorta az amúgy egymástól függetlenül működő, széleskörű autonómiával rendelkező – a szolgáltatásban érintett – partnerek szervezeteinek inkompatibilitásával, az érintettek működését meghatározó külső és belső szabályozások közötti jelentős különbségekkel magyarázható. A szolgáltatások megvalósíthatósága érdekében az érdekelt szervezetek között koordinációs mechanizmusokat kell kidolgozni.
3.4.2 Strategiai célok A fentiek alapján a szoftvertechnológiában az alábbi stratégiai célokat fogalmazzuk meg: • A szakterület-specifikus modellezés alkalmazási területeinek feltérképezése, alkalmazási feltételeinek vizsgálata és használata. • A generatív programozásra alkalmas, hasonló funkcionalitású vagy struktúrájú rendszerek feltérképezése, közös rendszermodell létrehozása mely lehetővé teszi a további rendszerpéldányok automatizálását. • Az új programozási paradigmák és nem-funkcionális követelményeknek megfelelő tervezési minták kidolgozása és használatának széles körű propagálása. • Refaktorizációs tervezési minták fejlesztése, formalizálása és viselkedés megőrzésük formális bizonyítási módszereinek feltérképezése, megismerése vagy kifejlesztése. • Hatékony felhasználói felületek tervezési elveinek meghatározása és széles körű alkalmazása.
36
Stratégiai Kutatási Terv 1.1
1 Introduction • A szolgáltatási szerződés formális leírására szolgáló eszközöknek és módszereknek ágazati (elsősorban e-közigazgatási) rendszerekben történő alkalmazása feltételeinek vizsgálata, szerződés minták és idiómák kidolgozása. • A szolgáltatásban érintett autonóm szervezetek közötti koordinációs mechanizmusok (policy-k, szabályok, eljárásrendek, ezeket támogató eszközök) elemeinek, paramétereinek, sikertényezőinek feltárása, szervezeti- és munkaterv kidolgozása.
3.4.3 Kutatási célok és feladatok A stratégiai célok eléréséhez az alábbi kutatási célokat és feladatokat definiáltuk: • Szoftver és hardver rendszerek vagy szervezeti/intézményi szakterületek feltérképezése és megismerése, ahol a szakterület-specifikus modellezés segítségével az adott szakterület modellezhető és a fejlesztési folyamat egyértelműen hatékonyabbá válik. A szakterület-specifikus modellezést lehetővé tevő keresztrendszerek megismerése vagy fejlesztése illetve gyakorlatban történő alkalmazása, amely technikák lehetővé teszik a szakterület-specifikus modellező nyelvek kidolgozását, és a hozzájuk kapcsolódó kódgenerátorok fejlesztését. • A generatív programozás segítségével automatizálható termékcsaládok vagy alkalmazási területek meghatározása, határainak pontos rögzítése, a terület sajátosságainak leírása. A teljes rendszer-család által használt architektúra megtervezése, generátorok és újrafelhasználható komponensek előállítása. • Olyan korszerű nyelvi elemek és paradigmák meghatározása, melyek új tervezési minták kidolgozását teszik lehetővé. Új tervezési minták kidolgozása a korszerű nyelvi elemek és paradigmák segítségével. Meglevő tervezési minták kombinálása vagy új tervezési minták kidolgozása a szoftver mobilitásának, széles körű konfigurálhatóságának, paraméterezhetőségének, elosztottságának, bővíthetőségének fejlesztésére. • Tervezési minták vizsgálata, hogy refaktorizálásra alkalmasak-e, illetve refaktorizálásra alkalmassá tételük. Új refaktorizációs minták kidolgozása és használatuk propagálása. Refaktorizációs minták formalizálási lehetőségeinek illetve viselkedés megőrzésük formális eszközökkel való verifikációjának kutatása. Refaktorizációs minták automatikus alkalmazhatóságának kutatása. A refaktorizációs minták implementálása meglevő szoftverfejlesztő környezetekbe. • Különböző rendszerekben a felhasználói viselkedés vizsgálata, felhasználó felületek tervezési elveinek kidolgozása és tesztelése. Tervezési megoldások differenciálása rendszerek típusai és felhasználói képzettség szerint. Mobil és asztali kliensek kollaborációjának megfigyelése, ezek segítségével a felhasználói munkafolyamatot hatékonyabbá tevő felhasználói-felület elemek tervezése. Tervezési minta fogalmának bevezetése, alkalmazhatóságának vizsgálata adott felhasználói felület szakterületre. • A szolgáltatási szerződések formális leírására szolgáló eszközök és módszerek, valamit az ágazatra jellemző szerződések feltérképezése, megismerése, megértése. A formális leírásokban rögzítettek konkrét implementálásához szükséges fordítóprogramok és generátorok kiválasztása, elkészítése, azoknak a gyakorlatban történő kipróbálása. • A szolgáltatások nyújtására/igénybevételére hatást gyakorló szervezeti/intézményi tényezők gyűjtése, elemzése, szervezeti modellek elemeinek (metamodellek) kidolgozása. A különböző modellek közötti illesztési feladatok általánosítása, és a illesztések végrehajtásához szükséges szervezetek felépítésének és munkarendjének (minták) meghatározása
Stratégiai Kutatási Terv 1.1
37
3.5
IT Biztonság
1 Introduction
3.5
IT Biztonság
3.5.1 Helyzetkép Mára minden ember életét – tudva, avagy rejtetten, országon belül, vagy határokon átnyúlva – befolyásolja az informatika, információtechnológia és alkalmazása. Ez a hatás mindenhol érezhető: az egyéntől a vállalkozásokon át a kritikus infrastruktúrákig, vagy a kormányzatig. A napjainkban legelterjedtebben alkalmazott hálózati technológia (leegyszerűsítve az Internet) kezdeti kifejlesztésekor a biztonságos működés elérése nem volt meghatározó jelentőségű szempont. Ennek eredményeként az elterjedten alkalmazott technika nem is rendelkezett/rendelkezik olyan kötelezően alkalmazandó megoldásokkal, amelyek e célt szolgálnák. Az említett örökölt hiányosság ellenére az internet technológia rendkívül sikeresnek bizonyult, aminek következtében mára a – e technikára alapuló – világháló mérete (úgy a hozzá kapcsolódó eszközök számát, mint a szállított információk mennyiségét tekintve) jelentősen meghaladja azt az értéket, amelyre eredeti fejlesztői valaha is gondoltak. Ennek eredményeként az Internet olyan kritikus infrastruktúrává vált, amelynek esetleges – akár csak rövid idejű – kiesése beláthatatlan károkat okozhat. Ez a folyamatosan növekvő jelentőség számos működési problémát vet fel, amelyek közül leginkább a rendszer potenciális biztonsági problémái jelentkeznek. A feltárt hiányosságok kezelése számos – az eredeti koncepción túlmutató, néha azzal épp ellentétes(!) – utólagos módosítást (patch) tett szükségessé. Ez a változtatási folyamat jelenleg is zajlik (különféle segédeszköz, új protokoll bevezetése, alkalmazása, stb.), amelynek eredőjeként bizonyos problémák ugyan megoldódnak, de a teljes rendszer mindinkább áttekinthetetlenebbé válik. Az Internet gazdasági/politikai jelentősége gyorsan nő, ez mind több támadási kísérlet tárgyává teszi a hálózatot. A támadók között a korábbi „jóhiszemű” hackerek (feltűnési vágy, szakmai kihívás) után megjelent a szervezett bűnözés (gazdasági előnyszerzés), a nemzetközi terrorizmus (zavarkeltés), sőt a közvetlen katonai aktivitás (katonai célok elérése) is. [2008. Grúziai] Ezzel egyidejűleg az Internet – mint a társadalmi élet egyik területe (domén) – egyre kiterjedtebb búvóhelyként is szolgál(hat) a destruktív célokat követők számára. Mindez végül azt eredményezi, hogy az Internet biztonsága egyre fontosabb szemponttá vált/válik. Erre figyelemmel a legfejlettebb országok részletes nemzeti információs biztonsági stratégiák kidolgozásába fogtak30 31. Mindezek mellett az Internet jelentős további bővülése biztosra vehető. Ez egyrészt új – a következő 5-10 évben milliárdnyi – eszközök bekapcsolásában, másrészt számos kritikus fontosságú szolgáltatás – e-közigazgatás, e-egészségügy, stb. – megjelenését eredményezi. Ugyanakkor a hálózat technikai felhasználási módja is folyamatosan változik. A korábbi Kliens-Szerver megközelítés helyébe mindinkább a Peer-to-Peer alkalmazás (pl. Web 2 – bárki lehet tartalom-szolgáltató) lép. A Cloud Computing térnyerésével az adatok feldolgozása, és tárolása térben eltávolodik a felhasználótól, az információ tényleges birtokosától, egyben az adatok feldolgozása térben elosztott is lehet. E komplex rendszer 30. National Cybersecurity Strategy – GAO-09-432T Government Accountability Office, USA, March 2009. 31. Cyber Security Strategy of the United Kingdom – CM7642 Prime Minister Office of UK, June 2009 32. Future Internet
38
Stratégiai Kutatási Terv 1.1
1 Introduction tényleges működésének áttekintése gyorsan változó/bővülő szakismeretet feltételez, miközben a felhasználók egyre szélesebb körből kerülnek ki. Az ellentmondás feloldását a felhasználói tudatosság fejlesztése jelentheti. Összefoglalva: Az Internet – más kiterjedt infokommunikációs rendszerrel együtt – mind több módon befolyásolja a mindennapi életet, így a továbbfejlesztés, a biztonság fokozására irányuló kutatás/fejlesztés meghatározó jelentőséggel bír.
3.5.2 Strategiai célok A helyzetkép alapján az informatikai biztonság munkacsoport az elkövetkező kutatási és fejlesztési feladatok kapcsán az alábbi elsődlegesen elérendő célokat fogalmazza meg: Az egyének, vállalkozások, illetve közszolgáltatások számára könnyen használható, rugalmas, de mégis biztonságos működést eredményező informatikai technika kialakítása, az ezt biztosító (rész)megoldások kifejlesztése, üzembe állítása, majd folyamatos fenntartása. Mindezt annak érdekében, hogy csökkenjen a hálózati fenyegetettség mértéke, egyben növekedjék a biztonsággal kapcsolatos felhasználói ismeret és tudatosság. Ezt nem az alkalmazások lassabb bevezetése, ellenkezőleg, mind gyorsabb fejlesztés biztosíthatja. Ennek érdekében részletes kutatási/fejlesztési feladatokat kell végrehajtani annak érdekében, hogy fokozható legyen a széles körben felhasznált Internet és az arra alapuló különféle szolgáltatások biztonsága. A ma használt világháló kialakításának kezdetén a biztonság nem volt meghatározó tervezési szempont. A felhasználás során felmerült biztonsági kérdések megoldását mindmáig esetleges fejlesztések, kiegészítések formájában valósították meg. A Jövő Internete (FI32) kutatását kiváltó egyik meghatározó felismerés ezek után úgy fogalmazható meg, hogy az új rendszer alapvető tervezési szempontjaként kell figyelembe venni a biztonság kérdését. Az alkalmazott megoldásokkal el kell érni, hogy a hálózaton megvalósuló szolgáltatások üzembiztonsága elérje más közüzemi szolgáltatások (közműhálózatok, távközlés, közlekedés) rendelkezésre állási értékét. Másképp megfogalmazva: a kidolgozott megoldások elégítsék ki a kritikus (információs) infrastruktúrákkal szemben támasztott üzemviteli és egyéb biztonsági követelményeket. A bővülő hálózati szolgáltatások kapcsán egyre több személyes, illetve vállalati/kormányzati minősített adat továbbítása és/vagy tárolása történik a hálózaton. Az adat tulajdonosa és a feldolgozás/tárolás helye között növekszik a fizikai távolság, az adatfeldolgozás elosztott rendszereken történik. Ez az adatok illetéktelen felhasználását gátló, az adat tulajdonosának egyértelmű azonosítását biztosító megoldások kidolgozását, bevezetését, nyomon követhető alkalmazását követeli meg (letagadhatatlanság, hitelesség kérdése). Hasonlóan fontos feladat az adatlopás/adatszivárgás lehetőségét megakadályozó rendszerek kifejlesztése és bevezetése, valamint bizonyos típusú adatok fiatalkorúak elöli megbízható elrejtését megvalósító megoldások kifejlesztése is. A hálózat széleskörű felhasználása egyben a felhasználók körének bővülését is jelenti. Az egyre ös�szetettebb rendszer alkalmazása kiterjedt szakismereteket tételez fel, ugyanakkor ez a nagyszámú felhasználó esetében nem lehetséges, de nem is szükséges. Elengedhetetlen azonban olyan társadalmi környezet kialakítása, amelyben az egyszerű felhasználó – magánszemély, KKV is – képes a hálózat/
Stratégiai Kutatási Terv 1.1
39
3.5
IT Biztonság
1 Introduction
gép/szolgáltatás elleni támadások elemi felismerésére, ilyen támadás észlelésekor pedig az ismert módon elérhető intézményesített segítség igénybevételére. Mindez a felhasználói tudatosság folyamatos fejlesztését követeli, olyan széles körben felhasználható tudásanyag kidolgozását igényli, amelynek elsajátításával a felhasználó a támadásokat kivédő megelőző intézkedéseket megérti és képes a szükséges ellenlépések (frissítések keresése/telepítése, szakértői segítség igénylése) önálló végrehajtására.
3.5.3 Kutatási célok és feladatok Nemzetközi egyetértés mutatkozik a tekintetben, hogy az Internetet jelentősen tovább kell fejleszteni. Ugyanakkor jelenleg még nem világos az előrelépés fő iránya. Ebből következően számos részterület jelölhető ki, amelyek bármelyike a jövőben fontos eredményekhez vezethet. A nemzetközi kutatások jelenleg két fő megközelítési irányt jelölnek ki: egyrészt az eddig alapvetően alkalmazott End-to-End (E2E) megközelítés (hálózati végpontok együttműködése) helyett a „Trust-toTrust” (T2T) szemlélet elterjedését szolgálják, másrészt berendezések helyett szolgáltatások elérését tekintik követendőnek. A kutatások során megoldást kell találni arra a problémára, amelyet a jelenlegi Internet struktúrájában a biztonság megteremtése és az üzembiztos működés elérése érdekében elhelyezett kiegészítő eszközök – összefoglaló néven: middle-box-ok (pl. NAT, tűzfalak, proxy-k, stb.) – alkalmazása jelent. Ezek az eszközök ugyanis áttekinthetetlenné, megbízhatatlanná, nehézkessé teszik a teljes rendszer működését. Mindezek helyett az elérendő cél az, hogy az új Internet alapjait megteremtő – jelentős fejlesztéseket igénylő – újfajta megoldások lépjenek működésbe, amelyek nem opcionálisan, hanem kötelező jelleggel már a tervezés kezdeti szakaszától kezdődően fontos szempontként kezelik a biztonság kérdését. A nemzetközi tendenciákkal összhangban a munkacsoport megítélése szerint az IT biztonság területén a hazai kutatások a következő fő területekre kell, hogy kiterjedjenek: 1. Adat / identitás-védelem Az új hálózati megoldások – pl. Cloud Computing – eredményeként az adat tulajdonosa térben egyre távolabb kerül az adatfeldolgozás/tárolás helyszínétől. Ennek következtében az illetéktelen adatfelhasználás kockázata növekszik. A fenyegetettségek kivédésére, a távolban tárolt adatok bizalmasságának megőrzésére az eddig alkalmazott megoldásoknál biztonságosabb, jobban ellenőrizhető azonosítási rendszerek, megoldások kifejlesztése és alkalmazása indokolt. A témakör kutatásra váró részterületei a következők: • Egyszeri / újrafelhasználható jelszavak / tokenek alkalmazása. • Biometrikus azonosítás részkérdései. • Soft Secure rendszerek (gyenge és erős azonosítási szint közötti területen található azonosítási megoldások, hosszú távú emlékezetre alapuló megoldások). • Erős titkosítási módszerek, rendszerek kifejlesztése, alkalmazása. • Személyi adatok védelmi rendszerei, adatszivárgás kivédése, adatrejtés. • Védett adatok szabványos/platform független kódolási eljárásai, hosszú távú tárolásának megoldása.
40
Stratégiai Kutatási Terv 1.1
1 Introduction • A digitális és fizikai térben létező rendszerek közti biztonságos átjárás megteremtése – vízjelező rendszerek, nagy adatmennyiséget tároló Barcode rendszerek, nyomtatás-azonosítás. 2. Támadás / behatolás / kéretlen forgalom érzékelés / kivédés A hálózatok növekvő veszélynek, biztonsági kockázatoknak vannak kitéve. Védekeznünk kell a végpontoknál, a szervereknél, és a szolgáltatóknál. A védelmi rendszerek többnyire aláírás-alapúak, a támadások felismerése ismert mintázatok azonosításán múlik. Mindez nehezíti az új típusú fenyegetések időbeni felismerését. Ezen a szokatlan viselkedés felismerésével, anomália-detektációval segítenek, itt azonban magas a hibás jelzések aránya. A behatolásjelző rendszerek nem alkalmazkodtak az új hálózati architektúrákhoz (vezeték nélküli, mobil), illetve nem képesek lépést tartani a növekvő hálózati sebességgel. E problémák megoldása kapcsán, a hatékonyabb védekezési megoldások a következő részterületek kutatását igénylik: • Újfajta tűzfalak, behatolás érzékelő rendszerek. • Megfigyelő, érzékelő hálózatok, naplóállomány elemzés. • Kódolt kommunikációs csatornán folyó nem kívánt adatkommunikáció érzékelése. • Többszintű, automatikus beavatkozó- és automatikus döntés-támogató rendszerek kialakítása, esemény eszkaláció. • Incidenskezelési módszertanok kialakítása / alkalmazása. • Adaptív terhelés megosztás, átirányítás, hálózati kódolás, új rendszerű routing. • Vírusdetektálás új típusú megoldásai. 3. Vezeték nélküli hálózatok interoperabilitása A vezeték nélküli mesh hálózatok az internet jelenlegi infrastruktúrájának jövőbe mutató bővítését jelentik. Vezeték nélküli mesh routerek hálózatán keresztül mobil vezeték nélküli felhasználók férhetnek hozzá az internethez már vezetékkel kapcsolódó elérési pontokhoz. Ezzel költséghatékony, nagy kapacitást biztosító és meghibásodásokra toleráns, robusztus hálózat-bővítéshez juthatunk. A kapcsolatos kutatási téma ezen mesh hálózatok proaktív biztonsági megoldásainak kutatása pl. a mobil vezeték nélküli felhasználók biztonságos hozzáférése a mesh hálózathoz, illetve a biztonságos útvonalválasztás problémája. A feladatot több operátoros környezetben, QoS (Quality of Service) biztosításával kell megoldani. A jelzett problémák kapcsán megoldandó részterületi kutatási témák a következők: • Robosztus Mesh hálózatok. • Útválasztás Mesh hálózatokban, QoS biztosítása. 4. Hálózat-menedzsment fejlesztése Az egyre összetettebb hálózatok áttekintése, a működést biztosító helyes konfigurációk kialakítása és érvényesítése egyre összetettebb és egyre több hibalehetőséget rejtő feladat. Megoldást olyan alhálózati rendszerek kidolgozása hozhat, amelyek – legalább egyes önálló részeiben – a működési paraméterek optimálishoz közeli, ugyanakkor hibátlan önbeállítására, önkonfigurációra képesek. E probléma megoldása az alábbi részterületeken folytatott kutatásokat igényli: • Önkonfiguráló hálózati eszközök/szolgáltatások kialakítása. • Konfigurációs hibák felderítésének automatizálása.
Stratégiai Kutatási Terv 1.1
41
3.5
IT Biztonság
1 Introduction
5. Új hálózati eszközökkel – „Internet of Things” (IoT) – kapcsolatos kutatások Az IoT fogalom alig tíz éves múltra tekint vissza33. Az Internet eddigi lépcsőfokai (adatok/tartalom/ emberek/számítógépek internete) utáni, egy forradalmi fejlődés fázisát fejezi ki34, amely sokmilliárdnyi objektum egymással történő kommunikációját vizionálja. E jövőbeni objektumok alapvetően két csoportba sorolhatók: intelligens, kommunikációra képes (IPv4, IPv6) eszközök (számítógépek, mobiltelefonok, háztartási gépek stb.), míg a másik csoport jellemzője, hogy egyedi azonosítójuk segítségével magukról, térbeli és időbeli helyzetükről illetve közvetlen környezetük állapotáról képesek kis költséggel tájékoztatást adni. E második csoport a világon gyártott és forgalmazott tömegáruk (élelmiszerek, gyógyszerek, ruházat, járművek, szerszámok, alkatrészek, pénzjegyek 35 stb.) illetve a környezetünkbe tömegesen elhelyezett szenzorok kategóriája, amelyek jellemzően az RFID36 technológia segítségével kommunikálnak az őket kérdező eszközökkel. A témakör keretében a következő kutatási területek fogalmazhatók meg37: • RFID technológia, egységesítés, szabványosítás, adatbiztonság. • szenzortechnológia, szenzorinterfészek, energiatakarékosság. • hálózati architektúrák, protokollok, hálózatbiztonság. • személyiségi jogi kérdések, adatvédelem. 6. Szoftverbiztonság megteremtése, vizsgálata (ez a terület talán inkább a „Szoftverminőség” munkacsoporthoz tartozik, jelen kutatási tervben horizontális volta miatt jelzésszinten jelenik meg). • Programkomponensek közötti interakciók biztonságosságának biztosítása. • Biztonságos erőforrás-menedzsment megvalósítása. 7. Tanúsítási rendek és módszertanok egységesítése, egyszerűsítése A jelenleg elterjedt tanúsítási rendek és módszertanok egységes alkalmazásához szükséges a funkcionalitás alapján történő kategorizálásuk és ezen beosztás alapján alkalmazási egységes felületek kialakítása. Emellett kiemelkedő fontosságú, hogy az IT biztonságban nem jártas felhasználók és döntéshozók számára a tanúsítási rendek célja, tartalma és eredménye érthetővé váljon. 8. Az IT biztonság közgazdasági megalapozása Az informatikai beruházások tervezésekor az IT biztonság szempontjait akkor lehet érvényesíteni, ha megfelelő metrika áll rendelkezésre, amely a költség-haszon elemzés alapján képes a döntéshozók számára értelmezhető információkkal megalapozni az IT biztonsági ráfordítás megalapozottságát. Szükséges ennek kialakításához a már létező kockázatkezelési módszertanok felmérése, kiértékelése, valamint integrálása költségvetési számítási rendszerekkel.
33. Kevin Ashton, 1998 34. Gérald Santucci, From Internet of Data to Internet of Things, 28 January 2009 35. EC Staff Working Document, Early Challenges regarding the „Internet of Things”, 29 September 2008 36. Radio Frequency Identification 37. Ministerial Conference on the Internet of the Future, What Challanges for Europe, Nice 6 October 2008
42
Stratégiai Kutatási Terv 1.1
1 Introduction 3.5.4 Hazai és nemzetközi együttműködések A hetedik európai kutatási keretprogram (FP7) egyik alapvető célkitűzése a „Megbízható infokommunikációs technológiák” (Trustworthy ICT), amelynek részét képezi megbízható platformok és keretrendszerek, újfajta protokollok, útválasztó algoritmusok kutatása, ország-, vagy szervezeti határokon átnyúló, skálázható, elosztott, dinamikusan fejlődő és együttműködő rendszerek kialakítása, monitorozási, fenyegetéseket kezelő megoldások vizsgálata. A fentiek kapcsán említést érdemelnek az alábbi kutatási-fejlesztési kezdeményezések: • GENI38 / FIND39 (USA) – NSF40 támogatásával folytatott hosszabb távú (10-15 év) kutatás azon ambiciózus cél elérésére, hogy olyan új hálózati technológia jöjjön létre, amely alkalmassá válhat a jelenlegi Internet helyettesítésére. • Az EU FIRE41 kezdeményezése a GENI/FIND programhoz hasonló célok megoldását fogalmazza meg. A program keretében kormányzati támogatással olyan módszerek kutatását és alkalmazásba vételét támogatják, amelyek megoldást jelenthetnek az Internet jelenlegi problémáira. Kutatói-ipari klaszterek (Future Internet Cluster) létrehozását bátorítják a K+F tevékenységek lebonyolítására. • A NESSI42 (EU) program célja az EU gazdaság – benne az IKT szektor – szolgáltatás-orientált átalakítása. Ennek érdekében innovatív eszközök – elsődlegesen szolgáltatások – kialakítását majd üzemeltetését támogatja, amelyek a gazdaság és a társadalom legkülönfélébb területein alkalmasak a felmerülő igények kiszolgálására. • Az ITC SHOK43 Finnország informatikai kutatási programja, amely a jövő Internetének kialakításához kapcsolódó nemzeti kutatások középtávú koordinálását célozza. A program azt a – Magyarország számára is követendő – hangsúlyos állásfoglalást fogalmazza meg, hogy a nemzeti K+F tevékenység a nemzetközi programokhoz kapcsolódva, azokkal céljaiban és módszereiben harmonizáltan valósuljon meg. A kutatási program az FI témakörében alapkutatásokat, módszertanok kidolgozását, valamint az új eredmények vizsgálatához tesztbed létrehozását támogatja. (Hasonló programok más EU tagországokban is zajlanak már hasonló célokkal, időtartamokkal. Példaként említhető a francia RNRT 44 .) • Önálló kutatási irányt képez a jövőbeni informatikai jellegű (cyber-) fenyegetések elleni védelem kutatása (pld. WOMBAT45 , FORWARD46 projektek), továbbá a kritikus információs infrastruktúrák védelme.
38. Global Environment for Network Innovations — http://geni.net/ 39. Future Internet Design — http://find.isi.edu/ 40. National Science Foundation (USA) — http://www.nsf.gov/ 41. Future Internet Research and Experimentation — http://www.future-internet.eu 42. Networked European Software and Services Initiative — http://www.nessi-europe.com/ 43. ICT cluster of the Finnish Strategic Centres for Science — http://www.futureinternet.fi/ 44. Réseaux de recherche et d’innovation technologiques - Recherche en télécommunications — http://wwww.enseignementsup-recherche.gouv.fr/ technologie/reseaux/rnrt.htm 45. Worldwide Observatory of Malicious Behaviors and Attack Threats — http://www.wombat-project.eu/ 46. FORWARD (Coordination Support Action) — http://www.ict-forward.eu/
Stratégiai Kutatási Terv 1.1
43
3.6
Szoftverminőség
1 Introduction
3.6
Szoftverminőség
3.6.1 Helyzetkép Mivel a szoftverek, és újabban a szoftverszolgáltatások egyre inkább a hétköznapjaink részévé válnak, és sok esetben függünk tőlük, sőt kiszolgáltatottak vagyunk nekik, hangsúlyozottan fontossá válnak a szoftverek és szolgáltatások minőségének és minőségbiztosításának a kérdései. Az ipari méretekben használatos legtöbb szoftverrendszer napjainkra érte el azt az állapotot, amikor már a hosszabb követési időszakon túl (10-20 év) belső minősége jelentős mértékben megromlott, azaz elérte azt a kritikus küszöböt, amikor a folyamatos minőségellenőrzés elengedhetetlen a karbantartási költségek kézbentartásához. A folyamatos minőségromláshoz az a tendencia is hozzájárul, amit manapság tapasztalhatunk a szoftverfejlesztési projektekben, miszerint az implementálási feladatokat olyan országokba helyezik át, ahol a fejlesztési költség olcsóbb, és ez a gyakorlat sok esetben bizonytalan minőségű kódot eredményez. Egy másik megfigyelhető jelenség a nyílt forrású szoftverek térhódítása, ezek gazdasági, társadalmi jelentősége mindinkább előtérbe kerül. A minőség kérdése kiemelten fontos a nyílt fejlesztések kapcsán, hiszen ezeknél a közösségeknél nem minden esetben vannak kialakult és szabályozott minőséget biztosító központosított folyamatok, felelősségi körök, stb. Hagyományosan, a szoftverminőség-biztosítás az előállításra kerülő szoftverek, mint termékek minőségének biztosítását jelentette (a leginkább elterjedt módszer erre a tesztelés). Napjainkban, a szoftverek egymással történő interakciója következtében a külvilág felé megjelenő szolgáltatások (mint a szoftverekből és a közöttük fennálló interakciókból felépülő entitások) minőségbiztosítása is a feladatai közé tartozik. Amíg egy szolgáltatásban résztvevő szoftverek minőségbiztosítása olyan feladat, amely az adott szolgáltatásban résztvevő egyéb szoftverkomponensektől függetlenül elvégezhető, addig egy, a szolgáltatásokra vonatkozó minőségbiztosítási módszertannak alapulnia kell az egyes szoftverkomponensek minőségén, valamint a közöttük fennálló szolgáltatás-topológia – architektúra – minőségi jellemzőin is. A minőség kérdése a fejlesztési életciklus egészében jelen van, kezdve a specifikáció elkészítésétől egészen a tesztelés végéig. A teljes életciklus minőségbiztosított folyamatok általi vezérlése, amelyek az egyes szakaszokban, az adott szakaszban egyedi módon alkalmazható módszerek és eszközök használatát tennék kötelezővé (pl. fejlesztési szakaszban folyamat és termék alapú minőségbiztosítás, tesztelés során tesztmenedzser eszközök használata, stb.) még nincs általánosan elterjedve. A szoftverek életének második nagy szakasza az üzemeltetés, más néven karbantartás, melynek során további minőségi szempontok is előtérbe kerülnek. A szoftverkarbantartás nem más, mint a szoftver felkészítése, átalakítása, továbbfejlesztése, hogy megfeleljen a rá ható új külső igényeknek és kihívásoknak (pl. futtatási környezet megváltozása, jogszabályváltozások, módosult/új felhasználói igények, stb.). Napjainkban a szoftverek minőségének meghatározásakor megjelenik a használhatóság fogalma is, amely a felhasználó nézőpontjából érzékelhető minőséget jelenti. A szoftver használhatóságáról és annak jellemzéséről rengeteg tapasztalat gyűlt össze, de ezek az ismeretek még nem álltak össze egy egységes diszciplínává. A szoftverhasználhatóság vizsgálatának naiv korszakát éljük, és küszöbön van egy egységes terminológia, kapcsolódó módszerek és ezeket támogató eszközök kidolgozása.
44
Stratégiai Kutatási Terv 1.1
1 Introduction 3.6.2 Strategiai célok Mind a fejlesztési, mind az üzemeltetési szakaszban, a minőségbiztosítás alapját lefektetett módszertanokon alapuló folyamatos mérés, modellek alapján történő kiértékelés, és minőségjavítás kell, hogy szolgálja. Ezen modellek és módszertanok kidolgozására már rövidtávon is jelentős hangsúlyt kell fektetni. A sokrétű, szerteágazó és több kutatási területet is érintő szoftverminőség mára önálló területként is fontos szerepet tölt be a tudományos és ipari körökben. A rendelkezésre álló tudásanyag összegyűjtése, kezelése, továbbadása, kutatási irányok kijelölése és koordinálása céljából egy hazai szoftverminőség kompetenciaközpont megalapítása lenne célszerű, amely a felsoroltak mellett biztosítaná a tudás- és technológiatranszfert az akadémia és ipar között. A központ nem csak a tudást és technológiát biztosítaná, hanem a témakörben magasan képzett szakemberek nevelését és utánpótlását is. A stratégiai cél tehát hosszú távon minden hazai szoftverfejlesztő és üzemeltető ipari és akadémiai szereplő számára elérhető, megbízható tudást, módszertanokat és eszközöket biztosító rendszerezett ismeretanyag és eszközkészlet előállítása, amely felhasználásával igazolhatóan jó minőségű szoftverek előállítására nyílik lehetőség.
3.6.3 Kutatási célok és feladatok A munkacsoport által javasolt kutatási feladatok magukban foglalják a szoftverek és szolgáltatások teljes fejlesztési és üzemeltetési életciklusának minőségbiztosítását. A beazonosított fő kutatási területek a következők: 3.6.3.1 Rövidtávú kutatási területek •A szoftver- és szolgáltatásminőség definiálása és számszerűsítése, minőségi modellek megalkotása. A szoftver- és szolgáltatásminőség méréséhez elengedhetetlen a megfelelő minőségi mutatók meghatározása, kidolgozása. A terület nagy nemzetközi szabványai és ajánlásai (pl. ISO/IEC 912647, ISO/IEC 25000/SQuaRE48, ISO/IEC 924149 , ISO/IEC 15504/SPICE50 , Automotive SPICE51, CMMI52 ) adnak ugyan támpontokat, de túl általánosan kerültek megfogalmazásra, nem rögzítik, hogyan, mely metrikákkal lehet a szoftverminőség szerteágazó szempontjait számszerűsíteni, valamint kiszámítani. A szoftver, mint termék minőségének definiálása több egymástól különböző kvalitatív jellemző számításából, majd egy minőségi modell szerint történő egyesítéséből adódik. A minőségi jellemzők lehetnek például: a szoftver forráskódjára számított metrikák (komplexitás, csatoltság, kód újrafelhasználás, kódolási szabálysértések, stb.), a fejlesztési folyamatra vonatkozó metrikák (ráfordított idő, hatékonyság, üzemeltetés, tesztelés során felmerülő hibák száma, performancia adatok, stb.), a szoftver ergonómiára vonatkozó metrikák (használhatóság, felhasználóbarát felépítés, stb.). Minden életciklus fázis esetében rögzíteni kell a számításba vehető alacsony szintű mérőszámokat. A szoftverminőséget, mint mérőszámot szol47. http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=22749 48. http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=35683 49. http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=21922 50. http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_detail.htm?csnumber=38932 51. http://www.automotivespice.com/ 52. http://www.sei.cmu.edu/cmmi/
Stratégiai Kutatási Terv 1.1
45
3.6
Szoftverminőség
1 Introduction
gáltató minőségi modell az alacsonyszintű jellemzőkből a szabványok támpontjait alapul véve szolgáltatnak globális minőségi mérőszámokat. A szolgáltatásokra vonatkozóan a minőségi modell figyelembe veszi a szolgáltatásban résztvevő szoftverek minőségi jellemzőit, a szolgáltatás szoftver-topológiájának minőségi jellemzőit, és ezek egyesítéséből számolt szolgáltatásra vonatkozó minőségi mutatókat. A szoftverminőség számszerűsítése mellett nagyon fontos a szoftverminőségi határértékek meghatározása, a „Mi számít jónak, illetve rossznak?” kérdés megválaszolása (pl. egy forráskód bonyolultságot jellemző érték egészséges, átlagos, vagy kóros állapotot jelent?). • Módszertanok kidolgozása A minőségbiztosítás a teljes szoftver életciklusban szerves része kell, hogy legyen a fejlesztési és üzemeltetési folyamatoknak, csak így van esély jó minőségű végtermékek előállítására. A feladat részét képezik a jó minőségű szoftverek és szolgáltatások létrehozására vonatkozó útmutatások, módszertanok és eljárások, fejlesztési folyamatokra vonatkozó előírások kidolgozása. Ennek része a szoftver- és szolgáltatás minőségi mutatóinak folyamatos mérése és monitorozása az életciklus legkorábbi szakaszától kezdve, az azonosított hibák és hiányosságok kezelésére vonatkozó módszerek (pl. túl nagy csatolású/komplexitású komponensek szétdarabolása), előállított termékek tesztelése (szoftverek és szolgáltatások tesztelésére vonatkozó módszertanok kidolgozása), a szoftver- és szolgáltatásspecifikációra vonatkozó minőségbiztosítási módszertanok kidolgozása. A feladat összetettségéből adódóan szükség van külön módszertan kidolgozására, amely útmutatást nyújt az egyéb (fejlesztésre, folyamatokra vonatkozó) módszertanok éles környezetbe való bevezetéséhez és az éles környezetben történő alkalmazásához. Ennek a módszertani útmutatónak fontos szerepe lehet a nyílt kódú szoftverek minőségbiztosított eljárásainak kidolgozásánál és alkalmazásánál is. 3.6.3.2 Közép távú kutatási területek • Szoftverfejlesztési folyamat minőségének mérése és javítása A szoftvertermékek minőségét erőteljesen befolyásolják a termék kidolgozása kapcsán végrehajtott folyamatok. Elsősorban a fejlesztési folyamatokra szoktak koncentrálni (pl. követelményelemzés, tervezés, kódolás, verifikáció, validáció, termék integráció), de a szoftverfejlesztő csoportokban és szervezetekben meglévő egyéb folyamatok (projektirányítási folyamatok, szervezeti folyamatok, támogató folyamatok – pl. konfigurációkezelés) is hatással vannak a készülő szoftver minőségére. A folyamatok minőségének biztosítására több modell, ajánlás is létezik, melyek mindegyike bizonyos folyamatok meglétének és fegyelmezett végrehajtásának fontosságát hangsúlyozza. Bizonyos szempontból a szoftverfejlesztési folyamatok minősége könnyebben leírható és mérhető, mint a szoftverterméké – talán ez a magyarázata annak, hogy a szoftverfolyamatok fejlesztése manapság egyre nagyobb hangsúlyt kap a szoftverfejlesztői közösségben. Fontos, hogy a folyamatalapú megközelítések Magyarországon is ismertté és alkalmazottá váljanak, hiszen a megrendelők egyre gyakrabban kérnek bizonyítékot a beszállító cégek folyamatainak rendezettségéről, szabványok szerinti végrehajtásáról. A CMMI, ISO/ IEC 15504/SPICE, Automotive SPICE modellek mindegyike alkalmas szoftverfejlesztő cégek folyamatainak vizsgálatára és fejlesztésére, és a cégek valamely „érettségi és/vagy képességi szint” szerinti rangsorolására. Lényeges ugyanakkor, hogy a felsorolt modellek, valamint ezek és a szoftverminőség
46
Stratégiai Kutatási Terv 1.1
1 Introduction egyéb elemeinek (pl. termék, erőforrás) kapcsolatát a hazai szoftverfejlesztő közösség megértse, és, a szoftverminőség alapelemeinek ismeretéből kiindulva tudatosan alakuljanak ki a különböző esetekben érvényes minőségi profilok, az egyes minőségi jellemzők elvárt / elfogadható értékei. Megfelelő szoftverfejlesztési (pl. fejlesztőkörnyezetek, tesztmenedzsment) és támogató (pl. verziókövető, követelménymenedzsment) eszközök bevezetése is lényegesen javítja a szoftverek minőségét, ezért fontos cél az ilyen eszközök népszerűsítése. A napjainkban előtérbe kerülő szoftverfejlesztési paradigmák (pl. agilis fejlesztés, AOP – aspektusorientált programozás, MDD – modellvezérelt fejlesztés, kódgenerálás) bevezetésének és széleskörű elterjesztésének lehetősége is vizsgálandó (a nemzetközi tapasztalatok, kísérleti/kutatási projektek alkalmasak ilyen célra). • Szoftvertermékek és szolgáltatások minőségének mérése és javítása A termékközpontú minőségbiztosítás a mérés, modellek szerint történő kiértékelés és visszacsatolás hármas egységen alapul. A mérés alapjául a korábbi feladatokban meghatározott, szoftverekre és szolgáltatásokra vonatkozó alacsony és magas szintű minőségi jellemzők szolgálnak. Kidolgozandó a szoftverek és szolgáltatások folyamatos mérésének, kiértékelésének módszere. Ennek rögzítenie kell, hogy milyen szoftvereket milyen gyakorisággal, milyen minőségi szint (tanúsítvány) figyelembe vételével kell mérni és kiértékelni. Az egyes életciklus-fázisokban milyen szinten (pl. fejlesztői vagy integrációs), milyen gyakorisággal (pl. naponta, havonta) kell végezni a méréseket, a mérések eredményeinek kiértékelésére, és a kiértékelés eredményeinek következményeire vonatkozó szabályokat kell kidolgozni (pl. túl komplex forráskód szétvágása, kritikus hibák javítása, stb.). A kiértékelés alapjául szolgáló modelleknek bővíthetőnek kell lenniük, az előállított értékeléseknek pedig, értelmezhetőknek, összehasonlíthatóknak, nyomon követhetőknek és indokolhatóknak. A modellek alapján történő kiértékelés eredményeiből következnie kell az alkalmazandó minőségjavítást célzó eszközöknek és módszertanoknak bevezetése/fejlesztése. • Szoftver- és szolgáltatásarchitektúrák feltérképezése, minőségének mérése és javítása A mai nagy elosztott szoftverrendszerek architektúrája (még ha a legmodernebb SOA elvet is követi) általában olyannyira bonyolult, hogy tipikusan nincs olyan egyén, aki a teljes rendszert egymaga átlátja. Ez pedig komoly veszélyeket rejt magában: megjósolhatatlan, hogy egy változtatás a rendszerben mely más részekre lesz hatással, mely más modulok működését fogja befolyásolni, esetleg elrontani. A szoftverek belső architektúrájának feltárása és változásának időbeli követése önmagában a szoftverminőség javulásához vezethet (pl. nemkívánatos szoftverkomponensek közötti függőségek azonosítása). Ezen túlmenően a szoftverrendszer architektúrájából kiindulva további minőségi jellemzők számíthatók. A szolgáltatások minőségének mérése és biztosítása céljából viszont elengedhetetlen a szolgáltatásokban résztvevő szoftverkomponensek topológiájának feltárása, és annak időbeli követése (hiszen ez az architektúra adja a szolgáltatásokra vonatkozó minőségi mutatók kiszámításának alapját). Továbbá, meg kell vizsgálni a valós és a kívánatos szoftver és szolgáltatásarchitektúrák automatikus összehasonlításának lehetőségét, eltérések kiértékelését.
Stratégiai Kutatási Terv 1.1
47
3.6
Szoftverminőség
1 Introduction
• Tesztelés minőségének mérése és javítása A szoftverprojektek költségének jelentős része, nem ritkán több mint fele a tesztelésre fordítódik. Rendkívül fontos a tesztelés költséghatékonyságának növelése, természetesen az eredményességének feláldozása nélkül. A hatékonyságnövelés két legfontosabb eszköze a tesztautomatizálás és priorizálás. Sok helyen az automatizálásban látják a „szoftvertesztelési krízis” megoldását. Ugyanakkor nem ritka az, hogy a kezdeti elvárások nem teljesülnek, egy-egy automatizáló eszköz és módszer (igen költséges) bevezetése után. Ennek fő oka, hogy nagy körültekintéssel szabad csak belevágni ilyen projektbe, hiszen nagyon sok a technikai és szervezeti buktató. Fontos cél olyan módszertanok, ajánlások kidolgozása, amelyek megkönnyítik a tesztautomatizálás bevezetése körüli döntéshozatalt. A másik hatékonyságnövelési lehetőség a tesztelés priorizálása, ami alapvetően a rizikó-alapú teszttervezésnek egyik eleme. Sajnos az ebben rejlő lehetőségeket nem igazán tudják kihasználni, mert a rendelkezésre álló priorizálást támogató eszközök még eléggé korlátozottan elérhetők. A priorizálásnak egyik fajtája a szelektív újratesztelés, aminek lényege, hogy mindig csak a szükséges teszteket hajtsuk végre, prioritási sorrendben attól függően, hogy az adott szoftverváltozás mit érint. A változás-hatásanalízis és teszt szelekciós módszerek és eszközök kidolgozása aktív kutatási terület. A hatékonyság mellet ugyanolyon fontos a tesztelés teljességének kérdése. Magas szintű, folyamatorientált teszttervezéshez még nem igen vannak kidolgozott módszerek, pedig elengedhetetlen lenne annak biztosítása, hogy egy adott folyamat szerint a megtervezett tesztek teljesek legyenek, azaz a folyamatban szereplő szoftverrendszerek magas szintű funkciói maradéktalanul érintve legyenek a tesztelés során, megfelelő kockázatelemzéssel együtt. A tesztelés hatékonyságának növelésére további lehetőség a jobb költségbecslés és hatékonyabb ellenőrzés. Még sajnos nem eléggé elterjedt az a szemlélet, hogy a tesztelés előrehaladását megfelelő statisztikai módszerekkel kövessék nyomon, pl. a funkcionális- és kódlefedettség növekedési ütemének figyelésével megbecsülhető mely területekre kell a ráfordítást koncentrálni (megbízhatóság analízis). A fenti problémák orvoslásában segítenek a különböző ajánlások, szabványok alkalmazása. Kiemelendő a TMMi53 érettségi, fejlettségi mérési módszertan, valamint az ISTQB54 szervezet által ajánlott szoftvertesztelő képesítési séma. E szemléletmódok minél szélesebb körben történő elterjesztése és továbbfejlesztése kiemelt feladat. • Nyílt forráskódú rendszerek minőségbiztosítása A nyílt forráskódú rendszerek fejlesztése lényegesen különbözik a hagyományos szoftverfejlesztéstől. Míg a zárt rendszerek tipikusan egy cégen belül kerülnek fejlesztésre, jó esetben szigorúan ellenőrzött körülmények között, addig a nyílt szoftverek esetében a fejlesztést sokszor önkéntesek végzik (bár legtöbb esetben van egy fejlesztői mag, amelyet egy vagy több multinacionális cég támogat), ezáltal a folyamat másképp kerül szabályozásra. Ez az új megközelítés új kutatási kérdéseket is felvet, a minőségi jellemzők e területre való adaptálását követeli meg. Emellett fontos, hogy folyamatos és megbízható információval rendelkezzünk a nyílt rendszerek minőségre vonatkozóan. Ezért, egy nyílt rendszerekből álló, dinamikus leltár felállítása szükséges, amely az egyes rendszerek minőségére vonatkozóan szolgál aktuális és történeti minőségi adatokkal, valamint lehetőség szerint tartalmazza a kódhoz kapcsolódó releváns hibajegyzéket is.
48
Stratégiai Kutatási Terv 1.1
1 Introduction 3.6.3.3 Hosszú távú kutatási területek • Eszközök fejlesztése A módszertanok mellett eszközök fejlesztése/megléte is szükséges a minőségbiztosítás ellátása céljából. Eszközök kellenek a szoftverek és szolgáltatások statikus és dinamikus elemzéséhez (forráskód és specifikáció szinteken), tesztmenedzser rendszerek (tesztesetek nyilvántartása, futtatása, követelményeknek való megfelelőség vizsgálata, mérések, tanúsítványoknak való megfelelőség), automatikus architektúra feltáró és elemző rendszerek (pl. komponensek közötti szabálytalan függőségek feltárása hozzájárulhat a megfelelő minőségi szint eléréséhez). Az eszközöknek különböző fejlesztési életciklusokat kell támogatniuk. Képesnek kell lenniük a fejlesztés korai szakaszában (pl. fejlesztői környezetbe integrálódva) vizsgálatokat, elemzéseket végezni, de ugyancsak kellenek eszközök a központi kódbázis és a fejlesztési folyamat folyamatos, monitorozott minőségbiztosításához is. • Szoftver használhatóságának mérése és javítása Az informatikai minőséget felhasználói szemmel, a használhatóság nézőpontjából is kell vizsgálni. Ezzel foglalkozik a Usability diszciplína. Magyar és nemzetközi ajánlások születtek a honlapok, e-szolgáltatások használhatóságának biztosítására (pl. a W3C WCAG2.055 ajánlása vagy a KIB 1956 kormányzati ajánlás). Napirenden van a Usability referenciamodelljének (fogalmi rendezés, ontológia) kidolgozása, amely teljességre törekvően terminológiát, fogalmakat rögzít elsősorban a szakemberek számára. Alsó rétege a munkahelyi ergonómia (a megvilágítás, billentyűzet dőlésszöge, stb.), felső szint a folyamatszervezési szint (az informatikától függetlenül is működőképes-e a folyamat, értelmesen van-e informatikailag szervezve, olvashatóan dokumentálva, stb.). A kettő között 4-5 réteget lehet elkülöníteni. Szükség van egy standard tartalomépítő technológiára, Usability Framework-re, amely a referenciamodell középső rétegeit lefedi. • Szoftver- és szolgáltatásminőség tanúsítási rendszer kidolgozása A szoftver- és szolgáltatásminőség tanúsítására vonatkozó eljárások és módszertanok kidolgozása, amely magában foglalja az előző pontokban részletezett módszereket, minőségi modelleket, továbbá igény szerint a szolgáltatások élő környezetben történő tesztelését is. A hosszabb távú cél, hogy a szoftverekre kiadható legyen egy tanúsítvány, amely megmutatja, hogy azokat mennyire javasolt használni, valamint a használat mekkora kockázatot jelenthet (hasonlóan pl. a gépjárművek Euro NCAP töréstesztjéhez). • Képzés Jó minőségű szoftverek és szolgáltatások előállításához elengedhetetlen a magasan képzett, jó képességű szakemberek képzése. A kutatások során előálló, iparban és a közigazgatásban hasznosítható eredmények továbbadását célzó tanfolyamok, konferenciák szervezése és oktatási anyagok elkészítése szükséges. Az oktatási anyagoknak különböző szintű tudást kell nyújtani a fentiekben említett területeken, nem csak az újonnan kutatott módszerek, eszközök és technológiák kapcsán, hanem a meglévő, gyakorlatban használatos megközelítések és megoldások tekintetében is. A feladat részét képezi különböző szintű oktatások szervezése (középfokú, felsőfokú, szakképzés, OKJ, tanúsított – pl. ISTQB, REQB), amelyek kifejezetten szoftverminőségben járatos szakemberek nevelését célozza, iparhoz közeli, gyakorlatias tudást nyújtva. 53. http://www.tmmifoundation.org/ 54. http://www.istqb.org/ 55. http://www.w3.org/TR/WCAG/ 56. http://www.ekk.gov.hu/hu/kib/kib_19_honlap_v3.0.pdf
Stratégiai Kutatási Terv 1.1
49
3.7
E-Közigazgatás
1 Introduction
3.6.4 Hazai és nemzetközi együttműködések • NKTH TECH_08: SZOMIN08. Célja az ODF nyílt ISO szabványon alapuló nyílt forrású irodai és mobil szoftverek és fejlesztési folyamatok minőségének mérése, a minőségi mutatók meghatározása, minőségmonitorozás, minőség javítás, felhasználói igények felmérése. • GOP-1.2.1: Szoftveripari Innovációs Pólus Klaszter (http://www.infopolus.hu/) pályázati projektje, amelynek egyik legfontosabb célja a szoftverminőség-biztosítás kidolgozása különféle területeken (irodai alkalmazások, banki rendszerek, logisztika).
3.7
E-Közigazgatás
3.7.1 Helyzetkép Az elektronikus közigazgatási ügyintézés kialakulásának, fejlődésének elsődleges hajtóereje az intézményi működés, a közigazgatás, később a kormányzás hatékonyságának növelése volt. A kezdetben elsősorban hatékonysági célokat szolgáló e-közigazgatás az elmúlt években gazdaság- és társadalompolitikai eszközzé vált, lehetővé tette a szolgáltató állam kialakítását, és egyúttal az EU tagországok számára kijelölte a modern kormányzati működés fejlesztésének elvárás-rendszerét. A következő évek feladata, a technológiai alapokra építve az elektronizáltság növelése mellett, az állampolgárok és vállalkozások e-közigazgatás alkalmazási képességének fejlesztése, a közigazgatási szolgáltatások hatékonyságának növelése és a pán-európai együttműködés, szolgáltatási kínálat megalapozása. Az elektronikus közigazgatás segíthet a kormányoknak, hogy megfelelhessenek a kihívásoknak és igényeknek. Ennek egyik példája a szolgáltatási irányelv, amely 8. cikkelyében kötelezővé teszi a tagállamok számára, hogy biztosítsák a határokon is átnyúló elektronikus egyablakos ügyintézés lehetőségét legalább a szolgáltatások nyújtásával kapcsolatos közigazgatási ügyek tekintetében Magyarországon – még ott is, ahol sikerült már az ügyfélkapcsolatot megfelelően elektronizálni – gyakori, hogy elektronizált front office rendszerek mögött elavult, egymással nem együttműködő intézményi rendszerek állnak. Ezért kulcskérdés a szolgáltatási folyamatok korszerűsítése, a háttérrendszerek interoperabilitásának megteremtése, az adatok és a technológia szabványosítása. A hatékonyság növelése oldaláról pedig a teljes közigazgatást átfogó elosztott, integrált szolgáltatások rendszerének kialakítása az ügyfélszolgálat, a humánerőforrás gazdálkodás, a pénzügyek, az elektronikus ügyintézés, dokumentumkezelés területén. Helytállásunk kulcskérdései a felzárkózásban a gazdasági hatékonyság, a társadalmi igazságosság, kohézió és a közszolgálati reform. Sikeres e-közigazgatás nem képzelhető el az állampolgárok és a vállalkozások fejlett digitális írástudása, illetve e-közigazgatás alkalmazási tapasztalata és gyakorlata nélkül.
3.7.2 Strategiai célok Cél az elektronikus ügyintézés lehetőségeit rendszerszemléletben megteremtő munka kiterjesztése a közigazgatás egészére, annak érdekében, hogy az motorjává váljon a modern közigazgatási működés 50
Stratégiai Kutatási Terv 1.1
1 Introduction kialakításának, és lehetővé tegye Magyarország pán-európai szolgáltatásokhoz való kapcsolódását. Mindennek megvalósulását négy stratégiai célon keresztül érhetjük el: 1. A közszolgáltatások átalakítása az állampolgárok, a vállalkozások és a velük közvetlen kapcsolatban dolgozó köztisztviselők érdekében. Az IT fejlesztéseknek, a közigazgatási intézményeket középpontba állító hagyományos ügyintézési filozófiával ellentétben, az állampolgárok és a vállalkozások köré kell épülniük korszerű és koordinált szolgáltatói csatornákon keresztül. A közigazgatás modernizációjának elengedhetetlen feltétele, hogy a közigazgatás az ügyfelek és a vállalkozások, azaz a szolgáltatásai igénybevevői felé valódi szolgáltatóként jelenjen meg, és az ügyfélszolgálati ügyintézők a legjobban tudják kiszolgálni az ügyfeleket (elintézni az ügyeiket); 2. A közigazgatás szervezetei és a közszolgáltatások háttérrendszerei számára integrált szolgáltatások bevezetése a közigazgatás átlátható és hatékony működése érdekében. A hatékonyság érdekében szükséges a szolgáltatási folyamatok újratervezése, ennek során a dereguláció, az egyszerűsítés, valamint a funkcionális feladatok megosztása a szakrendszerek között, illetve a szolgáltatások integrációja. A közigazgatás ilyen mértékű, átfogó fejlesztéséhez a közigazgatás-fejlesztésben és majdani működtetésében résztvevőknek szüksége van olyan újszerű ismeretekre, képességekre, amelyek biztosítják a megrendelői attitűd gyakorlásához szükséges tudás- és kompetencia hátteret, másfelől pedig a résztvevőket alkalmassá teszik a létrejövő, új elektronikus közigazgatási rendszer hatékony működtetésére; 3. A közszféra szakmai hozzáértésének (technológiai felkészültségének, technológia-befogadó képességének) növelése a vezetés és a megvalósítás szintjein a közszolgáltatások hatékony nyújtása érdekében, különösen az ügyfélorientált kultúra kiépítéséhez, valamint a közigazgatási IKT fejlesztések tervezéséhez és megvalósításához szükséges ismeretek és képességek terén; 4. A vállalkozások, az állampolgárok és kiemelten az információs társadalom szempontjából hátrányos helyzetűek e-közigazgatás alkalmazási képességének fejlesztése. Az ügyfelek oldaláról várhatóan akkor érhető el jelentős mennyiségi és minőségi növekedés az elektronikus szolgáltatások használatában, ha azok a hagyományos ügyintézésekkel összehasonlítva kényelmesebbé, gyorsabbá, egyszerűbbé teszik számukra ügyeik intézését. Ezen a területen az eredményezhet komoly előrelépést, ha a leggyakrabban keresett szolgáltatások továbbfejlesztése olyan egységes szemléletben történik, amely biztosítja, hogy a kialakítandó szolgáltatások minél egyszerűbb, a felhasználók számára minél kevesebb erőfeszítést igénylő folyamatokra épüljenek.
3.7.3 Kutatási célok és feladatok Az e-közigazgatás tipikus felhasználási doménje a NESSI-Hungary ún. informatikai szakmai kutatási területeinek. Ennek megfelelően a kutatási célok és feladatok elsősorban az alkalmazás és az alkalmazhatóság területére koncentrálnak. Rövidtávon meg kell határozni azokat a követelményeket, amelyek speciálisak az e-közigazgatás számára. Középtávon az egyes területek e-közigazgatási alkalmazását és az ezeken keresztül elérhető új megoldásokat kell kutatni. Hosszú távon pedig ma még nem létező, innovatív megvalósításokat, alkalmazásokat kell létrehozni, amelyekkel a közigazgatás teljesen megújítható (total re-engineering). Mindezzel párhuzamosan a kutatási munkák során szerzett tapasztalatok alapján fel kell tárni azokat az új doméneket, amelyekben a NESSI-Hungary által gondozott kutatási területek specializációja hasznosítható.
Stratégiai Kutatási Terv 1.1
51
3.7
E-Közigazgatás
1 Introduction
3.7.3.1 Rövid távú célok Fel kell mérni azokat a követelményeket, amelyeket az e-közigazgatási domén támaszt a szolgáltatás alapú megvalósítások elé. Ennek keretében azonosítani kell és meg kell nevezni az aktuális fejlődési irányokat, területeket és hajtóerőket. A hagyományos közigazgatás folyamatos fejlődése az ügyfélközpontú, szolgáltatásokon alapuló „Connected Government” felé új megoldásokat igényel minden területen. Mivel a közigazgatás sok szempontból speciális az általános informatikai területekhez képest, ezért szükséges a különleges körülmények megvizsgálása és analizálása. Kiemelten kezelendők a következő területek: • Folyamatleírás és folyamatmodellezés – a közigazgatás szigorú, felülről irányított, ugyanakkor nem mindig egyértelmű szabályozási környezete, illetve a jelenleg meglévő, helyi szabályozásokból, helyi szokásokból álló peremfeltételei nagy kihívás elé állítják a közigazgatási folyamatokat leírni kívánókat. Kutatást kell folytatni annak meghatározására, hogy a folyamatleírás és modellezés során mely megoldások kidolgozására van szükség az e-közigazgatási területre való alkalmazhatósághoz. • Interoperabilitás – az interoperabilitás kérdésköre kiemelt az e-közigazgatás területén. Alapvető különbségek vannak a vállalati környezeti interoperabilitási igények, ahol elsősorban az üzleti érdekek a befolyásoló tényezők, és a közigazgatási környezet között, ahol az állampolgár-központú, hatékony, működőképes közigazgatás kialakítása a cél, és lehetőség van a szabályozási környezet „felülről” való kialakítására. A jövőbeni fejlesztések hatékony megvalósulása és az interoperábilis működés kialakítása érdekében az informatikai fejlesztéseket egységes szabványok, ajánlások mentén kell megvalósítani. A technológiai standardok és informatikai architektúra terén egységes megközelítés kialakítása a privát szektor tapasztalatai és módszerei, illetve a kormányzati területen, nemzetközi szinten már bevált gyakorlatok alapján szükséges. Az itt szerzett tapasztalatokat összhangba kell hozni a terület igényeivel, és meg kell határozni a követelményrendszert. • IT biztonság és adatvédelem – szintén a környezet igényéből adódnak speciális igények az IT biztonság, illetve a személyes adatok védelme területén. A jogi szabályozásból levezetve ki kell egészíteni az általános IT biztonsági követelményeket és meg kell határozni a részletes, gyakorlatban is alkalmazható IT biztonsági követelményrendszert. • SOA – a szolgáltatásorientált architektúra műszaki megvalósításai több esetben nem adnak kielégítő választ a közigazgatási környezet speciális igényeire (pl. perzisztencia kérdések, folyamatokra vonatkozó szabályrendszer – jogszabályok – változásának kérdései, stb.). Meg kell határozni ezeket az igényeket, és meg kell kezdeni a megoldásokhoz vezető kutatásokat. 3.7.3.2 Közép távú célok Az e-közigazgatás egyes kiemelt kérdéseire megfelelő, konkrét megoldást kell adni. A kutatandó területek a következők: • Az egyes szereplők (állampolgárok és közigazgatási dolgozók) megbízható azonosítása. A biztonságos azonosításra alkalmas eszközrendszer bevezetésének célja, hogy az elektronikus ügyintézés során, távoli elérésnél megfelelő biztonságot garantáló megoldás álljon rendelkezésre az állampolgár azonosításához, adatainak eléréséhez, a vele való hiteles és letagadhatatlan kommunikációhoz. A különböző megoldások ésszerű kombinációjával kell biztosítani, hogy az azonosítás minden ügyintézési helyzetben megfelelő biztonságot nyújtson, és ne jelentsen a felhasználók számára indokolatlan anyagi és szellemi megterhelést. Az azonosító eszköznek és a hozzá kapcsolódó azonosítási rendszernek biztosítania kell, hogy a magyar állampolgárok igénybe tudják venni az EU szolgáltatásait, és az EU tagállamok állampolgárai Magyarországon is használhassák a kölcsönösen elfogadott azonosító eszközeiket, eljárásaikat.
52
Stratégiai Kutatási Terv 1.1
1 Introduction
• IT biztonsági megoldások kidolgozása. A biztonságos kommunikáció, azonosítás, adattárolás, archiválás, fizetés, dokumentumkezelés területén kutatásokat kell folytatni a megfelelő, országos, vagy EU szinten is alkalmazható és hosszú távon is megbízható megoldások kidolgozásáért. • Dokumentumkezelési megoldások kidolgozása. A hivatalok iratokkal dolgoznak, amelyek száma évente milliós nagyságrendű. Ez a tény önmagában is világossá teszi, hogy a közigazgatás korszerűsítésének egyik alapeleme az iratok, dokumentumok elektronikus kezelésének megoldása, amely a hivatali munka gyorsítását, ezzel hatékonyságának javítását eredményezi, valamint biztosíthatja az ügyek intézésének átláthatóságát, illetve emellett jelentős papír-megtakarítással is jár. A korábban alkalmazott technológia nem tette lehetővé a szigetszerűen működő iratkezelő rendszerek együttműködését, és erre sem jogszabályi kötelezettség, sem gyakorlati igény nem volt. Kiemelt cél a közigazgatáson belüli szabványos, egymás közötti átjárhatóságot, interoperabilitást biztosító iratkezelő rendszerek tömeges alkalmazásba vétele. Az alkalmazott iratkezelő rendszereknek biztosítaniuk kell a Ket. és a levéltári törvény által megfogalmazott követelmények megvalósítását, az iratok elektronikus továbbításának és – amennyiben a beérkező irat adatai ehhez elégségesek – automatikus iktatásának lehetőségét, valamint a csatolt dokumentumok kezelését. Támogatniuk kell az ügyfél-hivatal (C2G és B2G), valamint a hivatalok közötti (G2G) automatizált ügyintézést, valamint az ügyek elintézési állapotának ügyfelek általi nyomon követhetőségét. Biztosítaniuk kell az elektronikus iratok hosszú távú megőrzésével és archiválásával kapcsolatos feladatok megvalósítását, valamint a papíralapú iratok digitalizálásának lehetőségét.
Stratégiai Kutatási Terv 1.1
53
3.7
E-Közigazgatás
1 Introduction
3.7.3.3 Hosszú távú célok • Az e-közigazgatási terület speciális alkalmazási területe a folyamatleírásnak, illetve formalizált szabályrendszerrel meghatározott környezetnek. Cél, hogy a szabályrendszerből, amely jelen környezetben a jogszabályi, szabályozási környezetet takarja, automatikusan, vagy közel automatikusan generálhatóak legyenek a folyamatokat megvalósító alkalmazások. Ennek feltétele nem csak a folyamatleírás automatizálása, de a jogszabályok formalizált leírhatósága is. Kutatásokat kell folytatni annak megoldására, hogy miként lehet jogszabályokat olyan módon formalizálni, hogy az automatizált ellenőrzési és folyamatleírás-generálás megoldható legyen. • Személyre szabható és univerzálisan elérhető e-közigazgatás kutatása. Távlati cél az egyes állampolgárok számára a személyre szabható (perszonalizált) közigazgatási szolgáltatások nyújtása. Az országos méretű, vagy akár az egész EU-ra kiterjeszthető megoldás, valamint egyéb követelmények miatt ez hatalmas informatikai kihívást jelent, amely radikálisan új megoldásokat követel. Cél az itt sikerrel alkalmazható megoldások kidolgozása és kifejlesztése.
3.7.4 Hazai és nemzetközi együttműködések A hazai fejlesztési célokat 2020-ig meghatározó Országos Fejlesztéspolitikai Koncepció (OFK) a közigazgatási szolgáltatások korszerűsítését az elektronikus kormányzás fejlesztésével alapozza meg. Az OFK céljai között „Befektetés az emberbe” prioritáscsoport foglalkozik a közigazgatás és az állami szolgáltatások korszerűsítésével. A Konvergencia Program az államháztartás minél gyorsabb konszolidálásához szükséges rövid távon ható fiskális lépések mellett, és azokkal párhuzamosan, az állami működés egészét érintő, átfogó reformokkal kívánja megteremteni a tartós egyensúly feltételeit. A tervezett intézkedések nemcsak a szabályozás változását jelentik, hanem a gazdasági és társadalmi szereplők gondolkodásmódjában is jelentős módosulást igényelnek, olyan fontos kérdésekben, mint az állam szerepének újraértékelése. A beavatkozások kiterjednek a köz által finanszírozott tevékenységek teljes spektrumára. A beavatkozások célja, hogy az állam fenntartható finanszírozású, jobb minőségű és jobb hozzáférésű szolgáltatásokat tudjon nyújtani az állampolgárok és a vállalkozások számára. Az EU stratégiai irányait meghatározó dokumentumok gazdasági versenytényezőként kezelik az innovatív eszközöket alkalmazó, szolgáltató állam működését. A nemzeti versenyképesség, az erős innovációs képesség és a közigazgatás minősége között fennálló szoros kapcsolat azt jelzi, hogy a világgazdasági versenyképességhez a jó minőségű kormányzás szükséges feltétel. Az eEurope 200557 tapasztalatait és eredményeit felhasználó i201058 a megújított Lisszaboni Stratégiára59 alapozva határozza meg az európai információs társadalom átfogó közpolitikai irányelveit. A befogadó információs társadalom elérése érdekében az i2010 a társadalmi integráció, a jobb közszolgáltatások és az életminőség javítása területén fogalmaz meg prioritásokat. Az i2010 e-Kormányzati Akcióterv60 foglalja össze a tagországok feladatait 2010-ig.
57. http://ec.europa.eu/information_society/eeurope/2005/index_en.htm 58. http://ec.europa.eu/information_society/eeurope/i2010/index_en.htm 59. Integrated guidelines on growth and employment (2005-2008), COM(2005) 141 60. i2010 eGovernment action plan: acceleration ofelectronic government for the benefit of the whole society) COM(2006) 173
54
Stratégiai Kutatási Terv 1.1
4.0
1 Introduction
Kutatási prioritások
Az alábbiakban rövid, közép és hosszú távra katalogizáltan felsoroljuk az előző fejezetben bemutatott feladatok és kutatási irányok közül a fontosabbakat. A katalogizálás elsődleges szempontja, hogy az adott feladat megvalósulását, az érintett kutatási terület gyakorlati eredményeinek elérését mikorra várjuk. A felsorolás nem teljeskörű, nem tér ki minden, a Platform által kitűzött célra, csupán azokra, amelyek megvalósítását kiemelten fontosnak érezzük. A katalogizálás alapját adó időtávok jelentése a következő: Rövid táv – az elkövetkező 1-3 éven belül • Közép táv – az elkövetkező 3-6 éven belül • Hosszú táv – az elkövetkező 6-10 éven belül
4.1
Rövid távú kutatási célok
• Az eddigi megoldásoknál biztonságosabb, jobban ellenőrizhető adat- és identitás-védelem a nagymértékben elosztott rendszerekben. • A szoftver- és szolgáltatásminőség definiálása és számszerűsítése, minőségi modellek megalkotása, minőségbiztosítási módszertanok kidolgozása. • Refaktorizációs tervezési minták fejlesztése, formalizálása és viselkedés megőrzésük formális bizonyítási módszereinek feltérképezése, megismerése vagy kifejlesztése. • Üzleti, humán és informatikával támogatott folyamatok egységes katalogizálása. • Üzleti, humán és informatikával támogatott folyamatok monitorozásának támogatása. • Régi informatikai rendszerek migrációjának elősegítése újrafelhasználható adapterek kialakításával, valamint folyamatpéldányok állapotának migrációja. • Egységes, gyártó-független metamodell kidolgozása, amely lehetővé teszi web-szolgáltatások, protokollszabványok és folyamatok együttes leírását. • Több, független felügyelettel rendelkező szereplő közös, hosszú lefutású szolgáltatási folyamatában a perzisztencia megvalósítása. • Szolgáltatási sín szabványosítása és létrehozása, amely különböző szereplők (vállalatok, közigazgatási szakrendszerek) SOA-alapú összekapcsolásának alapja lehet. • Ontológia-támogató rendszerek kidolgozása. Stratégiai Kutatási Terv 1.1
55
4.0
Kutatási prioritások 4.2
Közép távú kutatási célok
• Támadás / behatolás / kéretlen forgalom érzékelés és kivédés nagymértékben elosztott rendszereknél. • IT biztonság közgazdasági megalapozása. • Szoftverfejlesztési folyamat minőségének mérése és javítása. • Szoftvertermékek és szolgáltatások minőségének mérése és javítása. • Szoftver- és szolgáltatásarchitektúrák feltérképezése, minőségének mérése és javítása. • Szoftvertesztelés minőségének mérése és javítása. • Nyílt forráskódú rendszerek minőségbiztosítása. • A modell-alapú gondolkodás fontosságának és helyének bemutatása és elfogadtatása a menedzsment, a jogi és az igazgatási szinteken. • A szakterület-specifikus modellezés alkalmazási területeinek feltérképezése, alkalmazási feltételeinek vizsgálata és használata. • Hatékony felhasználói felületek tervezési elveinek széles körű alkalmazása. • A generatív programozásra alkalmas, hasonló funkcionalitású vagy struktúrájú rendszerek feltérképezése, közös rendszermodell létrehozása, mely lehetővé teszi a további rendszerpéldányok automatizálását. • Üzleti, humán és informatikával támogatott folyamatminták azonosítása. • Hosszú lefutású folyamatok informatikailag támogatott menedzselése. • Hosszú lefutású, SOA-alapú folyamatok környezeti változásainak technológiai támogatása. • A több szereplőre kiterjedő SOA-alapú folyamatok és szolgáltatások tesztelésének hatékony támogatása. • Szabályrendszerrel megfogalmazott követelmények modellezése. • A szolgáltatási szerződés formális leírására szolgáló eszközöknek és módszereknek ágazati (elsősorban e-közigazgatási) rendszerekben történő alkalmazása feltételeinek vizsgálata, szerződés minták és idiómák kidolgozása. • Támogató eszközrendszer, illetve módszertan kidolgozása, amely segítséget nyújt interoperabilitási megoldások létrehozásában. • A szolgáltatásban érintett autonóm szervezetek közötti koordinációs mechanizmusok (policy-k, szabályok, eljárásrendek, ezeket támogató eszközök) elemeinek, paramétereinek, sikertényezőinek feltárása, szervezeti- és munkaterv kidolgozása.
56
Stratégiai Kutatási Terv 1.1
4.3
Hosszú távú kutatási célok
• Üzleti, humán és informatikával támogatott folyamatok modellezése. • Folyamatelemző módszerek kifejlesztése. • Tanúsítási rendek és módszertanok egységesítése, egyszerűsítése. • Informatikai eszközök fejlesztése a minőségbiztosítás ellátása céljából. • Szoftver használhatóságának mérése és javítása. • Szoftver- és szolgáltatásminőség tanúsítási rendszer kidolgozása. • Feladat (intézmény) specifikus interoperabilitási keretrendszerek kialakítása, illetve ezek működtetésének támogatása. • Feladat (intézmény) specifikus ontológiák és repository-k kialakítása és fenntartása. • Államhatárokon átnyúló, páneurópai interoperabilitási kérdések kezelése. • Az új programozási paradigmák és nem-funkcionális követelményeknek megfelelő tervezési minták kidolgozása és használatának széles körű propagálása.
Stratégiai Kutatási Terv 1.1
57
5.0
1 Introduction
Oktatás, képzés, egyéb feltételek
Ez a fejezet kilép a szorosabb értelemben vett szakmai stratégiai keretek közül, és néhány olyan körülményre és azzal kapcsolatos tennivalóra hívja fel a figyelmet, amelyek megoldása nélkül még az oly átgondolt és megalapozott szakmai kutatási-fejlesztési stratégia átfogó hatásának érvényesülése is gyengülhet. Először néhány általános, társadalmi szintű problémát vetünk fel, majd az oktatás és képzés kérdéseivel foglalkozunk.
5.1
Általános problémák
Mozgósító erejű kihívások szükségessége Innovációban is megnyilvánuló tudományos-technikai fejlődés ott van, ahol erre valamilyen mozgósító erő igényt teremt. A történelmi példák azt mutatják, hogy ilyen lehet sajnos a fegyverkezési verseny, vagy fenyegetettség által motivált hadiipari fejlesztés – szögezzük le gyorsan, hogy ezt feltétlen elkerülni javasoljuk – valamely globális probléma felismerése és a megoldására elindított tevékenység, vagy valamely pozitív célt kitűző, széles körben támogatott mozgalom. Magyarországon a szolgáltatás alapú IT rendszerek alkalmazása tekintetében ilyen lehetne az államreform végrehajtására indított ÁROPEKOP programpáros. Sajnálattal kell megállapítani, hogy az ebben rejlő lehetőséget az eddigiek során nem sikerült kihasználni, a két, nyilvánvalóan összefüggő program összehangolásának alig látszanak jelei, így nem alakult ki az az érthető, átfogó koncepció, ami mozgósító erővel bírhatna. Márpedig a közszolgáltatások hatékony megvalósítása nem csak az államhoz, önkormányzatokhoz kapcsolható ügyeink gyorsabb, transzparensebb elintézését teszik lehetővé, hanem annak össztársadalmi költségeit is jelentősen csökkentik. Párbeszéd és kooperáció Aligha tévedünk, ha a párbeszéd és kooperáció készségét a mai magyar valóság egyik legnagyobb hiány-területeként jelöljük meg. Összetettek az okok, a Platform profilján és kompetenciáján jóval túlmu58
Stratégiai Kutatási Terv 1.1
1 Introduction tatnak. Ha változást akarunk, érdemes lenne társadalmi szinten a tömegkommunikációban megjelenő viselkedésminták és az oktatás alapintézményeinek szerepét is átgondolni. Szakterületünkön maradva: professzionális projektmenedzsmenttel, megfelelő érdekeltségi rendszer kialakításával, egyéb motivációs eszközökkel el kell érni, hogy a fejlesztési projekt sikeres megvalósításához szükséges együttműködés létrejöjjön. Azért is fontos a kooperatív attitűd kialakítása, mert e nélkül a szakmák közösen elfogadott és megértett fogalmainak kialakítása meglehetősen reménytelen. Két intelligens partner minimális közös kezdeti tudással kommunikáció útján tetszőlegesen tudja közelíteni egymáshoz saját modelljét egy adott rendszerről, ha mindkettőjüknek a szándéka a másik szempontjának megértése, a közelítés. Ugyanakkor külső hatás nélkül a partnerek bármelyike lehetetlenné tudja tenni a közös modell kialakulását, ha akarja. Hosszú távú, következetes építkezés Komplex informatikai infrastruktúra és szolgáltatások kiépítése, a SOA alapú integráció végig vitele még kisebb, vállalati léptékben is több éves feladat. Nagyobb fejlesztéseket, mint például egy átfogó elektronikus közigazgatási, vagy egészségügyi közszolgáltatási rendszer, nagyobb, akár 10 éves távlatot szem előtt tartva célszerű tervezni, általában több, spirál modell szerint egymásra épülő fejlesztési ciklusra készülve. Sajnálatosan a kormányzati ciklusok, sőt annak egyes fázisai során bekövetkező változások gyakorta szakmailag indokolhatatlanul dobnak el kész, vagy csaknem kész megoldásokat, változtatnak meg fejlesztési koncepciókat. A gazdasági veszteségen, a kárba veszett ráfordításokon túl ennek eredménye a konzisztens rendszerek hiánya. Szabványosítás, egységesítés A SOA alapú IT megoldások, mint megmutattuk, szabványokon alapulnak. A szabványosítás néhány fontos szervezetben zajlik. Fontos, hogy a hazai megoldások minél inkább kövessék az aktuális szabványokat, mert az illeszthető termékskála így bővebb, ami a szállítóknak való kiszolgáltatottságot csökkenti. Egyre inkább valószínűsíthető a rendszerek nemzetközi szintű összekapcsolása, ami szabványos megoldások esetén nyilvánvalóan egyszerűbb. A szabványosító testületek a szabványokat az új kutatási eredmények alapján dolgozzák ki. A testületek munkájában való részvétel tehát egyrészt a tájékozódás szempontjából, másrészt a magyar eredmények beépülése, a magyar műhelyek érdekérvényesítése szempontjából is fontos.
Stratégiai Kutatási Terv 1.1
59
5.0
Oktatás, képzés, egyéb feltételek
1 Introduction
5.2
Oktatás és képzés
A Platform stratégiai kutatási tervének nem közvetlen feladata az oktatás és képzés kérdéseire kitérni, azonban a stratégia megvalósulása nagy mértékben függ az oktatás és képzés színvonalától. Ezért ennek a területnek legfontosabb összetevőit – a teljesség igénye nélkül – megemlítjük. Valamennyi alább felsorolt oktatási formában jelentős tematikai korszerűsítésre, majd a tananyagok folyamatos és dinamikus karbantartására van szükség annak érdekében, hogy az IT megoldásokban rejlő lehetőségek minél szélesebb körben ismertekké váljanak, és megfelelő számú szakember álljon rendelkezésre a felmerülő feladatok színvonalas megvalósítására.
5.2.1 Reguláris képzések Az IT megoldások sikerét hosszabb távon a reguláris oktatási rendszer informatikai tárgyú képzései biztosíthatják. Ennek főbb területei: • a közoktatás, ahol színvonalas, alapismereteket és gondolkodásmódot átadó informatikai képzésre van szükség, • a nem informatikai szakterületek felsőfokú képzése, ahol általános tájékozottság, alkalmazói ismeretek átadása, és legfontosabbként a gondolkodásmód, a saját szakma modell alapú megközelítésének kialakítása a cél, • közép szintű képzettséggel rendelkező IT szakembereket megfelelő létszámban kibocsátó felsőfokú BSc képzés, • magas szintű képzettséggel rendelkező IT szakembereket megfelelő létszámban kibocsátó felsőfokú MSc képzés, • önálló kutató-fejlesztő tevékenységre alkalmas IT szakembereket kibocsátó PhD képzés, • inter- és multidiszciplináris szakok, képzési formák létesítése.
5.2.2 Felnőttképzés, másoddiploma Az alkalmazási területekhez jobban illeszkedő megoldások kialakulása érdekében szervezendő, már rövid távon is kedvező hatású képzések: • Az alkalmazási területeken felsőfokú végzettséget szerzett szakemberek számára képesítést, diplomát nyújtó, jellegzetesen munka mellett elvégezhető informatikai képzés. • Informatikus felsőfokú végzettséggel rendelkezők számára képesítést, diplomát nyújtó, jellegzetesen munka mellett elvégezhető szakterületi képzés valamely alkalmazási területen. Ezek a képzések elősegítik, hogy a jelenleg alapvetően szállítóvezérelt piacon a megrendelői pozíciók erősödjenek.
60
Stratégiai Kutatási Terv 1.1
1 Introduction 5.2.3 Tanfolyami képzesek Rövid távon célzott tematikájú tanfolyamok is javíthatják a szállítói pozíciókat. Ezek célközönsége főként az alkalmazói oldal szakemberei, akiknek az IT fejlesztések követelményeit kell felállítaniuk, és együtt kell működniük a szállítói oldal munkatársaival. A tanfolyamok tematikája lehet az általános IT színvonal bemutatása, de lehet egy-egy konkrét termék lehetőségeinek ismertetése is. Az oktatási és képzési programok kidolgozásakor is célszerű a nemzetközi trendekhez igazodni, nemzetközileg értelmezhető, megfeleltethető oktatási programokat kidolgozni és okleveleket kiadni.
F
Fogalomtár
ABPMP..........................................................Association of Business Process Management Professionals AOP...............................................................Aspect-oriented programming belső minőség...............................................Azon minőség, amely már az előtt mérhető egy szoftveren, mielőtt annak az első futtatható verziója elkészülne. BMI................................................................Business Modeling & Integration Domain Task Force BPEL..............................................................Business Process Execution Language BPI.................................................................Business Process Improvement BPMM...........................................................Business Process Maturity Model BPMN............................................................Business Process Modeling Notation BPR...............................................................Business Process Reengineering DAML.............................................................DARPA Agent Markup Language DARPA...........................................................Defense Advanced Research Projects Agency design-by-contract........................................A Design by Contract (DbC) vagy Programming by Contract egy szoftvertervezési megközelítés. Előírja, hogy a szoftvertervezők formális, precíz és ellenőrizhető interfészspecifikációkat definiáljanak a szoftver komponensei számára. A DbC a hagyományos absztrakt adattípus-definíciót előfeltételekkel (pre-condition), utófeltételekkel (post-condition) és invariánsokkal bővíti ki. Ezek a specifikációk az ún. szerződések (contract). digitális aláírás...............................................Olyan egyedi adat, amely az üzenethez csatolva, vagy a titkosítás során a címzett számára egyértelműen azonosítja az üzenet küldőjét és bizonyítja az üzenet sértetlenségét. Stratégiai Kutatási Terv 1.1
61
F
Fogalomtár
1 Introduction
DSL................................................................Domain Specific Language DSM...............................................................Domain Specific Modeling E2E................................................................End-to-End EA..................................................................Enterprise Architecture EABPM..........................................................European Association of Business Process Management e-Government...............................................Az e-Government (electronic government, elektronikus közigazgatás) a közigazgatási szolgáltatások javítását célozza IKT alkalmazásával. Biztosítja az együttműködést az állampolgárok, a vállalatok és a kormányzat egyéb ágai között. EIF.................................................................European Interoperability Framework EPC...............................................................Event-driven Process Chain FEA................................................................Federal Enterprise Architecture FI....................................................................Future Internet folyamatpéldányok állapotának migrációja....Sok esetben – többek között a közigazgatási és pénzügyi szférában is – a végrehajtott üzleti folyamatok hosszabb ideig is elhúzódhatnak, így állapotukat tárolni és kezelni kell. A hosszú végrehajtási idő alatt változhatnak a törvényi feltételek és ezáltal a folyamat leírása is, de akár végrehajtó rendszer verziója is módosulhat, vagy akár egy teljesen más végrehajtó rendszerre kell a már futó folyamatokat áttelepíteni. Ezt a problémát hivatott megoldani a folyamatpéldányok állapotának migrációja. FP7................................................................Az EU 7. kutatási keretprogramja generatív programozás..................................Mivel a fejlesztendő rendszerekben sok a hasonlóság, a rendszer specifikációból kiindulva, a konkrét rendszert több, már megvalósított, újrafelhasználható komponensből generáljuk. A generatív programozás célja, hogy a különálló alkalmazások fejlesztésének minél nagyobb részét automatizáljuk. használatbeli minőség...................................A működő szoftveren az egyes felhasználói csoportok szemszögéből mérhető minőség. használhatóság.............................................1) A használati minőséggel rokon fogalom. A szoftvertermék azon tulajdonsága, hogy rendeltetésszerű használata során érthető, tanulható és hatékony a felhasználók különböző kategóriái számára.
62
2) Az ezzel foglalkozó szakterület neve.
Stratégiai Kutatási Terv 1.1
1 Introduction HTML.............................................................Hypertext Markup Language humán folyamat.............................................Olyan tevékenységek rendszere, amely megvalósítása manuális munkával történik. IDABC............................................................Interoperable Delivery of European eGovernment Services to public Administrations, Businesses and Citizens informatikával támogatott folyamat...............Olyan tevékenységek rendszere, amelyek magvalósítása informatikai eszközök segítségével automatizált. IoT.................................................................Internet of Things ISO.................................................................International Organization for Standardization ISTQB............................................................International Software Testing Qualifications Board jogi interoperabilitás......................................A jogi interoperabilitás feladata a megfelelő jogi háttér megteremtése annak érdekében, hogy az együttműködő szervezetek a megfelelő jogi felhatalmazással rendelkezzenek az együttműködésben. KAON............................................................Karlsruhe ontology KKV................................................................Kis- és középvállalkozás külső minőség...............................................Azon minőség, amely csak a futtatható szoftveren, annak környezetében mérhető. MDD..............................................................Model-driven development mesh hálózat.................................................Sok egymáshoz kapcsolódó elérési pont (WiFi router) viszonylag sűrű telepítésével kialakított hibatűrő, nagy kiterjedésű hálózat. modell-alapú szoftverfejlesztés.....................A modellezés a fejlesztendő rendszer pontos definiálása a megfelelő absztrakciós szinten. A modell-alapú fejlesztés során, a modellek, a rendszer specifikálása mellett, fontos szerepet játszanak magának a végleges rendszernek az előállításában. Modellek használatával a fejlesztés hatékonysága, valamint a végleges rendszer minősége és megbízhatósága nagymértékben növelhető. nyílt forráskódú szoftver................................Olyan szoftverek, amelyek teljes forráskódja szabadon elérhető. OASIS............................................................Advancement of Structured Information Standards OIL.................................................................Ontology Inference Layer / Ontology Interchange Language OMG..............................................................Object Management Group
Stratégiai Kutatási Terv 1.1
63
F
Fogalomtár
1 Introduction
ontológia........................................................Az ontológia egy szakterület fogalmainak és ezek kapcsolatainak formális reprezentációja. Felhasználható az adott szakterület definiálására, valamint a szakterület egyes tulajdonságainak bizonyítására. Egy ontológia közös szótárat biztosít, amely a szakterület modellezéséhez felhasználható. OWL..............................................................Web Ontology Language P2P................................................................Peer-to-Peer PRR...............................................................Production Rule Representation QoS...............................................................Quality of Service RDF...............................................................Resource Description Framework refaktorizáció.................................................A szoftverekhez fűződő követelmények az idő múlásával megváltoznak. Egy használatban levő szoftvernek folyamatosan fejlődnie kell, különben használhatósága egyre nagyobb mértekben csökken. A szoftver belső struktúráját, teljesítményét és skálázhatóságát folyamatosan fejleszteni kell, azonban a szoftver kívülről látható viselkedését megváltoztatni nem szabad. Az ilyen viselkedésmegőrző szoftverváltoztatásokat hívjuk szoftver refaktorizációnak. régi rendszerek migrációja............................A már működő régi rendszereket úgy kell átalakítani, hogy funkcionalitásuk szolgáltatásként kiajánlható legyen. REQB.............................................................Requirements Engineering Qualifications Board RFID...............................................................Radio Frequency IDentification RFML.............................................................Relational-Functional Markup Language SBPM............................................................Semantic Business Process Management SBVR.............................................................Semantics of Business Vocabulary and Business Rules SHOE.............................................................Simple HTML Ontology Extensions SOA...............................................................Service Oriented Architecture SOAP.............................................................Simple Object Access Protocol SSE................................................................Software Service Engineering szakterület-specifikus modellezés................A szoftver és hardver rendszerek modellezésében léteznek olyan alkalmazási területek, melyek leírásához az általános célra tervezett UML nem alkalmas. Az ilyen alkalmazási területekhez speciális nyelvek definiálására van szükség. Ezt a célt szolgálják a szakterület-specifikus nyelvek (DSL) és az ezekre épülő szakterület-specifikus modellezés (DSM). 64
Stratégiai Kutatási Terv 1.1
1 Introduction szemantikai interoperabilitás.........................A szemantikai interoperabilitás arra törekszik, hogy a különböző alkalmazások pontosan megértsék az egymásnak átadott információk jelentését. Ennek többnyelvű környezetben különösen nagy jelentősége van. szemantikus üzleti folyamatmenedzsment....A szemantikus üzleti folyamatmenedzsment (SBPM) feladata egy szervezet atomi és összetett folyamatainak formális szemantikai leírása, az üzleti folyamatmodellek különböző változatainak ontológiával történő reprezentációja, valamint egy olyan futtatókörnyezetet használata, amely az üzleti célok és a rendelkezésre álló folyamatok közötti mediációt biztosítja. szemantikus web...........................................A szemantikus web olyan közös keretrendszert bizosít, amely alkalmazások, vállalatok és közösségek határain túlnyúlóan lehetőséget teremt adatok megosztására és újrafelhasználására. A szemantikus web az RDF keretrendszerre épül. szervezeti interoperabilitás............................A szervezeti interoperabilitás a szervezeti célok meghatározásával, szervezeti folyamatok modellezésével foglalkozik abból a célból, hogy a különböző belső felépítésű, és különböző belső folyamatokat használó szervezetek is együtt tudjanak működni egymással. Tárgyalja a felhasználói csoportok különböző igényeit is. szolgáltatási szerződések.............................A SOA alkalmazásokban megjelenő szolgáltatások igénybevétele a szolgáltató és a kliens közötti szolgáltatási szerződésen alapul. A szolgáltatási szerződés egy metaadat, amely leírja a felek viselkedésével kapcsolatos követelményeket, anélkül, hogy az implementációt is specifikálná. szolgáltatástechnológia.................................A SOA alkalmazások teljes életciklusát átfogó korszerű mérnöki diszciplina (Software Service Engineering, SSE), amely a hagyományos szoftvertechnológiai elemeken túlmenően a gazdasági és szociológiai környezetet is figyelembe veszi. T2T................................................................Trust-to-Trust technikai interoperabilitás.............................A technikai interoperabilitás foglalkozik az IKT rendszerek összekapcsolásának műszaki kérdéseivel, mint pl. a nyílt interfészekkel, adatintegrációval, adatok ábrázolásával és cseréjével, biztonsággal, stb.
Stratégiai Kutatási Terv 1.1
65
Tagok
1 Introduction tervezési, architekturális minták....................A szoftvertervezési minták kulcsszerepet játszanak abban, hogy az elkészült szoftvertermék könnyen karbantartható, bővíthető, kiterjeszthető legyen. Segítik a kód könnyebb megértését, valamint hatékonyabbá teszik a fejlesztést azáltal, hogy jól bevált szoftvertervezési megoldásokat biztosítanak a fejlesztők számára. TMMi.............................................................Test Maturity Model Integrated UML...............................................................Unified Modeling Language üzleti folyamat...............................................Olyan tevékenységek rendszere, amely egy vállalat céljainak elérésének érdekében történik. W3C...............................................................World Wide Web Consortium WCAG............................................................Web Content Accessibility Guidelines WEB 2.0.........................................................Olyan internetes szolgáltatások gyűjtőneve, amelyek elsősorban a közösségre épülnek, azaz a felhasználók közösen készítik a tartalmat vagy megosztják egymás információit. WfMC............................................................Workflow Management Coalition WS-BPEL......................................................Web Services Business Process Execution Language WSDL............................................................Web-Services Description Language XML...............................................................Extensible Markup Language XOL................................................................XML-Based Ontology Exchange Language
66
Stratégiai Kutatási Terv 1.1
Tagok 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49.
4D Soft Kft. AAM Zrt. Accenture Kft. Adatmentés Kft. Albacomp Zrt. Alcatel-Lucent Magyarország Kft. Alerant Zrt. Algernon Kft. Altacom Kft. Answare Kft. Ardinsys Zrt. Balabit Kft. Bay Zoltán Informatikai Szakközépiskola és Kollégium Back és Rosta Kft. BMF Neumann J. Informatikai kar Budapesti Műszaki és Gazdaságtudományi Egyetem Bull Magyarország Kft. Corvinno Központ Debreceni Egyetem Informatikai Kar Debreceni Infopark Kft. DSS Consulting Kft. E-Group Zrt. Eötvös Lóránd Tudományegyetem ESRI Magyarország Kft. Észak-Magyarországi Informatikai Klaszter Eurohand Zrt. Euro One Zrt. evosoft Hungary Kft. FreeSoft Zrt. FrontEndART Kft. Grepton Zrt. GriffSoft Zrt. Hajdú-Bihar Megyei Önkormányzat HP Magyarország Kft. Humansoft Kft. Hunquard Kft. Ind Kft. InfoInno Kft. Informatikai Érdekegyeztető Fórum Innotech Kft. IQSYS Zrt. Informatikai Vállalkozások Szövetsége itSMF Magyarország ITWare Kft. kancellár.hu Kft. KOPINT-DATORG Zrt. Kripto Kft. Kürt Zrt. Magyar Szabadalmi Hivatal
Stratégiai Kutatási Terv 1.1
1 Introduction 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67. 68. 69. 70. 71. 72. 73. 74. 75. 76. 77. 78. 79. 80. 81. 82. 83. 84. 85. 86. 87. 88. 89. 90. 91. 92. 93.
Magyar Szabványügyi Testület Magyar Szoftvertesztelő Tanács Egyesület Magyar Elektronikus Aláírás Szövetség Megatrend Zrt. Megyei Jogú Városok Szövegsége MEH E-közigazgatási Szakállamtitkárság Microsoft Magyarország Kft. MindSoft Kft. Montana Zrt. mS Systems Kft. MTA KFKI RMKI MTA SZTAKI MultiRáció Kft. Navayo Research Kft. Net Visor informatikai kft. NETI Kft. Netlock Kft. Neumann János Számítógéptudományi Társaság Nuance-Recognita Zrt. Nyugat-dunántúli Regionális Fejlesztési Ügynökség Open-SKM Agency Kft. Oracle Kft. Pannon GSM Távközlési Zrt. Pannon Novum Kft. Polygon Informatikai Fejlesztő és Tanácsadó Kft. Puskás Tivadar Közalapítvány Quattrosoft Kft. SOART Innovations Kft. Synergon Informatikai NyRt. SQI Kft. Standard-Média Bt. Stratis Kft. Sun Microsystems Kft. Szeged Szoftver Zrt. Szegedi Tudományegyetem Triad Kft. Ürömi Teleház ULX Nyílt Forráskódú Tanácsadó és Disztribúciós Kft. Újbudai Teleház Vectrum Kft. Veszprog Kft. Virusbuster Kft. Vitályos Consulting Tanácsadó Bt. Zalaszám Informatikai Kft.
67
1 Introduction
A kiadvány a Nemzeti Kutatási és Technológiai Hivatal támogatásával készült. Kiadja a NESSI-Hungary Szoftver és Szolgáltatások Nemzeti Technológiai Platform: 1117 Budapest, Magyar tudósok körútja 2. • Telefon: +36-1-463-1210; +36-1-463-1210 • Fax: +36-1-463-1387 www.nessi-hungary.com •
[email protected] A kiadásért felel: Dr. Risztics Péter Károly