CASE eszkzk Ezt az j technolgit a szoftverfejleszts

  • Slides: 24
Download presentation
CASE eszközök Ezt az új technológiát a szoftverfejlesztés teljes életciklusát átfogó, az egyes fázisok

CASE eszközök Ezt az új technológiát a szoftverfejlesztés teljes életciklusát átfogó, az egyes fázisok munkáját összehangoló technikák, a CASE (Computer Aided Software Engineering = számítógéppel támogatott szoftvertervezés) eszközök jelentik, amelyek segítik áthidalni a szervezetek valós problémája és a számítógépes rendszer közötti különbségeket.

CASE rendszer fogalma Azokat a szoftver-rendszereket, amelyek támogatják, illetve automatizálják a problémadefiniálási, -elemzési, tervezési,

CASE rendszer fogalma Azokat a szoftver-rendszereket, amelyek támogatják, illetve automatizálják a problémadefiniálási, -elemzési, tervezési, modellezési, kivitelezési tevékenységet, elvégzik a tesztelési, rendszerkövetési-, karbantartási és minőségbiztosítási feladatokat, dokumentálják a fejlesztést, valamint irányítják, ellenőrzik és összehangolják a fejlesztőprojekt munkáját számítógéppel támogatott fejlesztési eszközöknek, CASE rendszereknek nevezzük.

A CASE eszközök szolgáltatásai: 1. Fejlesztési eszközök integrálása Alapvető feladata, hogy az ember munkáját

A CASE eszközök szolgáltatásai: 1. Fejlesztési eszközök integrálása Alapvető feladata, hogy az ember munkáját hatékonyabbá tegye, minimálisra csökkentse az ember által elkövethető hibákat, növelje a termelékenységet. A fejlesztési projektnek is érdeke, hogy munkájában a rendelkezésre álló, lehető leghatékonyabb eszközöket alkalmazza.

2. A fejlesztési folyamat irányítása A számítógép irányítja a végrehajtandó feladatokat, meghatározza a következő

2. A fejlesztési folyamat irányítása A számítógép irányítja a végrehajtandó feladatokat, meghatározza a következő tevékenységet, felhasználja az egyes fázisok eredményét, biztosítja és rendelkezésre bocsátja a fejlesztést segítő hatékony eszközöket. A fejlesztési fázisok szerinti elvek egyértelműen meghatározzák azokat a feladatokat, amelyeket a tervezőnek kell elvégezni.

3. A projektmunka irányítása, a feladatok ütemezése, a projekt részeredményeinek verziókezelése A projektirányító feladata

3. A projektmunka irányítása, a feladatok ütemezése, a projekt részeredményeinek verziókezelése A projektirányító feladata a meglévő erőforrások és az elérendő cél ismeretében meghatározni a feladatokat, azok végrehajtásának logikai és időbeli sorrendjét. A feladatvezérlő feladata, ütemezni az elvégzendő munkákat, felügyelni azok végrehajtását

4. A fejlesztési tevékenység eseményeinek, az egyes fázisok eredményeinek a rögzítése, a fejlesztési adatbank

4. A fejlesztési tevékenység eseményeinek, az egyes fázisok eredményeinek a rögzítése, a fejlesztési adatbank létrehozása A részeredmények fejlesztési adatszótárban történő strukturált tárolásáról, majd a munka előrehaladtával azok automatizálásáról és lekérdezhetőségéről gondoskodik

5. A fejlesztési fázisok munkájának összehangolása A logikai és a fizikai modell tervezési outputjait

5. A fejlesztési fázisok munkájának összehangolása A logikai és a fizikai modell tervezési outputjait olyan kódgeneráló szoftverek részére adják át, amelyek megtervezik a rendszer kommunikációs interfészeit, ellátják a kivitelezési fázis feladatait, és létrehozzák a rendszerfunkciókat megvalósító programrendszert.

6. Jelentéskészítés A CASE megfelelő moduljai elkészítik a felhasználói igényeknek megfelelő, a felhasználói kommunikációt

6. Jelentéskészítés A CASE megfelelő moduljai elkészítik a felhasználói igényeknek megfelelő, a felhasználói kommunikációt biztosító interfészt: a dialógus , képernyő és listaterveket. 7. Eredmények integrálása A fejlesztői részfeladatokat, valamint az egyes fejlesztési fázisok eredményeit összesítik, ellenőrzik a kapcsolódási pontokat és összeférhetőségeket

8. A rendszer logikai helyességének ellenőrzése A programspecifikáció elkészítése előtt a modellezési szabályoknak és

8. A rendszer logikai helyességének ellenőrzése A programspecifikáció elkészítése előtt a modellezési szabályoknak és elő írásoknak megfelelő ellenőrzést végeznek, az észlelt hibákat lehetőség szerint javítják, vagy felszólítanak a javításra. 9. Tervezési dokumentáció készítése A fejlesztési adatbank alkalmas arra, hogy elkészítse a rendszertervi dokumentációt, az üzemeltetési és a felhasználói kézikönyveket.

A CASE eszközök csoportosítása 1. Képességek Ennél a szempontnál azt vizsgáljuk, hogy az eszköz

A CASE eszközök csoportosítása 1. Képességek Ennél a szempontnál azt vizsgáljuk, hogy az eszköz milyen módszertani megoldásokat támogat, és milyen formalizmusokat használ. • A leírás, az információk rögzítésének formája szerint megkülönböztetünk verbális és formális leírást. A formális leírásokkal az eredmények a megbízó és a fejlesztő számára érthetőbbek, egyszerűbben áttekinthetőek (diagramok, táblázatok, képernyőtervek). • A módszertani támogatás szempontjából szigorúan adott módszerekhez kötött eszközök, illetve általánosan használható eszközökkel is találkozhatunk. • A fejlesztés támogatott fázisai szerint léteznek olyan eszközök, amelyek a fejlesztési ciklusnak csak meghatározott fázisaiban nyújtanak segítséget, és olyanok is, melyek az egész ciklust végigkísérik.

2. Az eszköz bonyolultsága A második szempont szerinti osztályozásnál a CASE eszközök működési sajátos

2. Az eszköz bonyolultsága A második szempont szerinti osztályozásnál a CASE eszközök működési sajátos ságainak megfelelően az egyszerű editoroktól az integrált fejlesztőrendszerekig számtalan megoldást találhatunk: • Programnyelv orientált eszközökkel a programozó implementációs munkája könnyíthető meg (Turbo Pascal) • Az adatbázis orientáció egyszerű kezelést biztosít a fejlesztőknek és felhasz nálónak egyaránt (Access, d. Base, Frame. Work)

 • Az operációsrendszer orientált lehetőségek függetlenek a programnyelvektől, de operációsrendszerhez kötöttek (UNIX os

• Az operációsrendszer orientált lehetőségek függetlenek a programnyelvektől, de operációsrendszerhez kötöttek (UNIX os fordítók, debuggerek) • A fejlesztési integritás megvalósításához rendelkezésre álló eszközök a fejlesztés teljes életciklusát végigkísérik. Napjainkban a legtöbb CASE eszköz eleget tesz ennek az elvárásnak. • Az általános érvényességi képesség arra irányul, hogy az alkalmazott módszereket, az operációs rendszereket, a programnyelveket, a szervezési és üzleti modelleket egységesen lehessen kezelni. • Az integritási (és általános érvényességi) képességelvárásokat a legújabb objektumorientált szemléletű CASE eszközök teljes mértékig kielégítik (Oracle Designer, Rational Rose, Visual ULM).

3. Fázisok támogatása A harmadik csoportban a CASE eszközöket szolgáltatásaik alapján vizsgáljuk. Az eszközök

3. Fázisok támogatása A harmadik csoportban a CASE eszközöket szolgáltatásaik alapján vizsgáljuk. Az eszközök közti legjelentősebb különbség abban nyilvánul meg, hogy a fejlesztés melyik fázisát támogatják, milyen funkciókat látnak el. • Ennek megfelelően az alábbi csoportok különböztethetőek meg:

 • Integráltság szerint – CASE Tool – legalább egy fázist támogat – CASE

• Integráltság szerint – CASE Tool – legalább egy fázist támogat – CASE Tool. Kit – Néhány fejlesztési fázist támogat – CASE Work. Bench – teljes életciklus folyamatot támogat – I CASE Integrated Work. Bench – teljes fejlesztési folyamatot támogat. Az I_CASE eszközök a projekt erőforrások jobb kihasználásával és komplexitásukkal hatékonyabban teljesítik az elvárásokat. Beépített forráskód generálóval rendelkeznek (3 GL, 4 GL), így automatikusan szolgáltatják a kivitelezési munkához a bemeneteket.

 • A fejlesztés életciklusában való elhelyezkedés szerint – Upper CASE: stratégiai tervezésre, projektvezetésre

• A fejlesztés életciklusában való elhelyezkedés szerint – Upper CASE: stratégiai tervezésre, projektvezetésre szolgál – Middle CASE: a rendszerelemzési és tervezési fázisok munkáját támogatja – Lower CASE: egyszerűbb rendszerspecifikációk készítésére szolgál

 • Módszertani támogatás szerint – követelményspecifikációs modell – projekt modellek – architektúrális modellek

• Módszertani támogatás szerint – követelményspecifikációs modell – projekt modellek – architektúrális modellek

CASE komponensek A CASE eszközök kategorizálása és képességeinek vizsgálata után tekintsük át a fejlesztőeszközök

CASE komponensek A CASE eszközök kategorizálása és képességeinek vizsgálata után tekintsük át a fejlesztőeszközök egyes moduljait, azok célját, a felajánlott szolgáltatásokat, a modu lok kapcsolatát.

CASE komponensek • • Üzleti rendszerek modellezése Elemzés/tervezés Projektmenedzsment Implementáció – 4 GL, 5

CASE komponensek • • Üzleti rendszerek modellezése Elemzés/tervezés Projektmenedzsment Implementáció – 4 GL, 5 GL Tesztelés, tesztgenerátor Prototípuskészítés Karbantartás

 • Elemzés/tervezés Egyre elterjedtebbek azok a CASE eszközök, amelyek a napjainkban vezető helyen

• Elemzés/tervezés Egyre elterjedtebbek azok a CASE eszközök, amelyek a napjainkban vezető helyen álló strukturált elemzési/tervezési módszertanokat használják, így a szervezet elemeinek és működési modelljének kialakítására, a normalizált adatmodell megtervezésére, a felhasználó interfészek tervezésére is használhatók • Üzleti rendszerek modellezése Egy szervezet stratégiai információrendszerének modellezéséhez, és az információigények specifikálásához az üzleti rendszerek tervezési modul használható, amelynek segítségével feltárhatók és specifikálhatók a szervezeti elemek közötti információáramlási és feldolgozási folyamatok

Projektmenedzsment modulok segítségével automatizálhatók az alábbi feladatok: • Projekt tervezés (időütemezés, erőforrásigény, stb. )

Projektmenedzsment modulok segítségével automatizálhatók az alábbi feladatok: • Projekt tervezés (időütemezés, erőforrásigény, stb. ) • Követelmény teljesítési felülvizsgálat: összevethető, hogy az elkészített szoftver mennyire elégíti ki a felhasználói igényeket. • A mértékrendszer kezelése (emberi teljesítmény, technikai elvárások) • A minőségbiztosítási tevékenység a helyes módszerek és eszközök alkalmazásán alapul • A dokumentálási támogatás jelentősége: a CASE eszközök alkalmazásával minden tevékenység pontosan adminisztrált, a személyek, a feladatvégzés, annak ideje, eredménye jól dokumentált, a felelősség egyértelműen megállapítható.

Implementáció – 4 GL, 5 GL Egy nyitott rendszerű, új szemléletű, hatékony alkalmazásfejlesztő eszköz

Implementáció – 4 GL, 5 GL Egy nyitott rendszerű, új szemléletű, hatékony alkalmazásfejlesztő eszköz az alábbi feladatokat látja el: • Környezeti feltételek specifikálása, kezelése, dialógustervezés, képernyőszerkesztés és kommunikáció • Adatbázis lekérdező nyelvek és az adatfeldolgozási lehetőségek felkínálása • Programtervezés támogatása • Kódgenerálás • Grafikus felhasználói felületi lehetőségek biztosítása • Outputterv generálás, táblázatkezelés • Használatukkal —a fejlesztési idő drasztikus csökkenthető, —a fejlesztési munka hatékonysága növekszik, —megvalósul a platform függetlenség.

Tesztelés, tesztgenerátor • A tesztelési munkát gyakorlatilag a teljes életciklusban folyamatosan végezni kell. Külön

Tesztelés, tesztgenerátor • A tesztelési munkát gyakorlatilag a teljes életciklusban folyamatosan végezni kell. Külön hangsúlyt kell kapjon a karbantartási fázis tesztje, amelynek feladata az alkalmazások konzisztens működtetése oly módon, hogy a problémák mérhető és megismételhető terheléssel azonosíthatók legyenek. Prototípuskészítés • A prototípusokat különböző grafikus editorokkal lehet elkészíteni, segítségükkel munkafolyamatokat lehet szimulálni.

 • Karbantartás Az üzemeltetés során felügyelni kell a működtetést, és biztosítani kell a

• Karbantartás Az üzemeltetés során felügyelni kell a működtetést, és biztosítani kell a teljesítés elvárt minőségét. A karbantartási modulok éppen ezt a munkát támogatják, alapvetően három területen: • Reverse Engineering A módszerrel a forráskódok olyan szintű visszafejtése folyik, amelynek eredményeként egy működő programból elkészíthető a kiinduló modell, annak szimbólum rendszerével, a kapcsolati hivatkozásokkal, esetleg még részlete sebb információkkal. Ezeket „kód vizualizációnak” is szokták nevezni.

 • Kód átstrukturálás és elemzés Ezek a modulok analizálják a program szintaxisát, működési

• Kód átstrukturálás és elemzés Ezek a modulok analizálják a program szintaxisát, működési logikáját. Programvezérlési gráfot generálnak, és automatikusan hoznak létre egy optimalizált, strukturált programot. • Re engineering eszközök A támogatás segítségével a fejlesztő viszonylag egyszerűen alakíthatja át az adatbázis logikai felépítését, normalizálhatja az új fájlokat, és automatikusan generálhatja az új adatbázist.