OTDK

Vállalati információs rendszer elemzése és tervezése SSADM-mel és a DFD-k globális analízise

Alb Péter, Ferenc Rudolf, Rajda Vilmos

Konzulensek: Dr. Bohus Mihály, Dr. Gyimóthy Tibor

A számítástechnika és informatika területén tapasztalható gyors fejlődés ma óriási lehetőségeket biztosít a rendszerfejlesztők, programozók és ezen keresztül az felhasználók számára. A számítástechnikai erőforrásoknak a végfelhasználói igényekhez való igazítása minden szervezetnél nagy problémát jelent. A felhasználók rendelkezésére álló adatfeldolgozási támogatás kulcskérdése a hatékony, gyors programfejlesztés, a növekvő napi feladatok megoldása, valamint az aktuális szervezeti, működési, számítógépes rendszerek és adatállományok naprakész dokumentálása.

Az SSADM az angol „Structured Systems Analysis and Design Method", azaz a „Struktúrált Rendszerelemzési- és Tervezési Módszer" rövidítése, amely a fent említett problémakörre hatékony megoldást kínál. A brit kormányzatban ún. kormányzati szabványként alkalmazzák az információs rendszerek fejlesztésében. A módszer elkülönült egységekre osztja fel az információs rendszer fejlesztésének munkáit és hajlékonyan idomul a különböző feladatokhoz. Az SSADM olyan elterjedt technikákat használ, mint például az egyed modellezés, adatfolyam diagramok, Jackson jelöléstechnikát és elveket alkalmazó (Jackson jellegű) ábrák. Az ilyen technikákat használó fejlesztők könnyen beilleszkedhetnek az SSADM környezetbe.

Egy cég felkérésére olyan információs rendszer alapjait kellet lefektetnünk, mely igazodik jelenlegi és jövőbeni tevékenységeihez. A vállalat tevékenységei alapvetően építkezési projektek köré épülnek, ezért az információs rendszernek maximálisan támogatnia kell ezt, maradéktalanul ki kell elégítenie a cég által elnyert ISO 9001-es szabványt, és minden alrendszerét tekintve funkcionálisan integrált egységet kell alkotnia.

A szervezeti rendszer információ áramlását, folyamatait, valamint a folyamatokban részt vevő szereplőket az Adatfolyam diagram (Data Flow Diagram) segítségével modelleztük. Az első lépésben meghatároztuk a fizikai DFD-ket, ami rávilágított a jelenleg működő rendszer hibáira, redundanciáira. A folyamatok optimalizálásához, illetve a korábban feltárt hibák kiküszöböléséhez el kellett vonatkoztatni a rendszer fizikai összetevőitől. Erre szolgált a logikai DFD-k megalkotása.

Az információs rendszerek elemzése és tervezése során a DFD-k meghatározó jelentőségűek a rendszer üzemszerű működésére nézve. Ezen termékek nagyfokú precizitást, hibamentességet követelnek meg, tehát szigorú minőségi követelményeknek kell megfelelniük. Egy fejlesztési munka során ez azt jelenti, hogy ezek olyan részmunkák, amelyek jelentős idő és munkaerő többletet igényelnek. Az ilyen munkák automatizálása, de legalább egyes mozzanatainak számítógépes támogatása jelentős szerepet játszhat az erőforrások megtakarítása, a munkafolyamat felgyorsítása terén, így nagyban hozzájárulhat, hogy jól használható, hibáktól mentes adatszolgáltatási rendszer készüljön. Ahhoz, hogy egyes tervezési fázisok számítógépes segítséget is felhasználhassanak, modellezni kell a megvalósításra kerülő technikát.

Dolgozatunkban egy olyan modellt alkottunk meg (DFDG - Dataflow Dependency Graph - Adatfolyam Függőségi Gráf), amely lehetővé teszi az adatfolyam diagramok globális elemzését, vizsgálatát és tesztelését matematikai - főleg gráfelméleti - módszerekkel. A matematikai modellt alapul véve számítógéppel megvalósítható egy sor olyan algoritmus, amely manuálisan csak fáradságos munkával, összehasonlíthatatlanul nagy hibaelkövetési eséllyel, és nagy időráfordítással készíthető csak el.

A felépített modellre megadhatóak olyan algoritmusok, melyekkel meghatározhatjuk, hogy egy adattárba mely külső egyedek és folyamatok szolgáltatnak adatokat, illetve egy külső egyed vagy folyamat, mely adattárakból kap információkat. Fontosak még a slicing-eljárások, melyeknek elsődleges szerepe a hibakereséseknél (debugging) nyilvánul meg. Hiba esetén ezekkel viszonylag könnyen meghatározható a hiba keletkezésének helye, illetve mely csomópontokra van kihatással. A független komponensek lehetővé teszik a párhuzamos munkát, azaz egy időben több szálon is folyhat a rendszer fejlesztése. Másik előnye, hogy a kész rendszer adatfeldolgozását többprocesszoros környezetre optimalizálhatjuk.