V. Félév Információs rendszerek tervezése Komplex információs rendszerek tervezése dr. Illyés László - adjunktus 1
Az előadás tartalma A GI helye az informatikában Az előadás tartalmának magyarázata A szoftver előállítási- és életciklusa 2
COMPUTER SCIENCE COMPUTER ENGINEERING ALKALMAZOTT INFORMATIKA ALKALMAZOTT INFORMATIKA A GAZDASÁGBAN SOFTWARE ENGINEERING SOFTWARE ENGINEERING A GAZDASÁGBAN INFORMÁCIÓS RENDSZER INFORMÁCIÓS RENDSZER A GAZDASÁGBAN GAZDASÁGI INFORMATIKA 3
Kérdések az előadáshoz a) Mi fontosabb? Eszközök tanítása vagy ismeretek közlése? (? Sokra ) b) Mennyi algoritmustervezésre van szükség? ( szerint c) Melyik ismeretet és módszert kell leadni? (tanterv d) Milyen pedagógiai és metodikai módszereket kellene ( vitatható ) használni? e) Melyik a legjobb CASE eszköz/környezet/programozási nyelv kombináció? ( astah/netbeans/java ) 4
A program termékké vált A termék jellemzői: Szolgáltatási funkcióval rendelkezik Minőséggel rendelkezik Előállítási költsége van Előállítási határideje van A termék előállításához technológiára van szükség és menedzsmentre. 5
A technológia valaminek az előállításával foglalkozik. Definíció: A társadalom által a gyakorlatban felvetett problémák megoldására szolgáló dolgok tudományos ismeretek alkalmazásával történő, gazdaságos előállításának mikéntjét nevezzük technológiának. [KSL07] 6
A szoftvertechnológia tárgya: Nagy méretű programrendszerek előállítása Ezen programrendszerek jellemzői: Nagy bonyolultságú rendszerek Csapatmunkában készülnek el Hosszú az élettartamuk (verziók és azok ( munkák menedzselése, karbantartási 7
A szoftver előállítási és életciklusa Definíció: életciklus Definíció: ellőállítási ciklus ciklusmodellek Grafikai Illusztrációk 8
A szoftver élet- és előállítási ciklusa ( Organization ISO (International Standard 12207 Life-Cycle standard IEEE (Institute of Electrical and Electronics Engineers) az Egyesült Államokban elismert 1. Definíció: Az életciklus az a időintervallum ami a döntés és a szoftver teljes kicserélése között van. 2. Definíció: Az előállítási ciklus az az időintervallum amelyik a döntés és az implemetáció között van 9
Az életciklus elsődleges folyamatai Acquisition vétel, beszerzés Supply felszerelés Development fejlesztés Operation működés, üzemeltetés Maintenance karbantartás Destruction - megsemmisítés 10
Előállítási Princípiumok: - Minőségi princípium (biztosítja a hibák megtalálását és ( kiküszöbölését ( tervezése - Menedzsment princípium (az árak, idő - Mérnöki princípium (a probléma tiszta meghatározása, a ( kiválasztása megoldás - Az életciklus fázisai ( követelményanalízis ) 1) a felhasználók kérelmei 2) szoftver-követelmények 3) Architektúra tervezése 4) Finom tervezés ( írása 5) Implementáció (programkód 6) Karbantartás 11
Menet, szakasz A felhasználó kérelmei szoftverkövetelmények A durva tervezés Célkitűzés A probléma definiálása A probléma analízise Általános megoldás Végtermék A felhasználó specifikációja A szoftver specifikációja Az általános terv A tervezés Implementáció Aprólékos, finom terv Az átültetés Karbantartás Installálás A szoftver fejlődése A kliensek felkészítése, hibakeresés Karbantartott és tovább fejlesztett szoftver 12
Az életciklus 4 fázisa erőforrás és idő függvényében erőforrás idő kezdet kidolgozás felépítés átmenet 13
Az életciklusok modelljei - Vízesés modell - növekményi modell - evolúciós modell - spirális modell - modellekre támaszkodó modell 14
Probléma A vízesés modell egy formája Követelmények leírása Analízis Tervezés Implementáció Tesztelés Futtatás+karbantartás 15
Vízesés modell 1 -A fázisok egymásra csúsznak -A hiba közvetítése 2 -Visszacsatolás szükséges 3 4 5 16
wikipedia 17
A növekményi modell -vissza az utolsó fázishoz 1 2 3 4 5 6 -gyors verzió elkészítése 18
evolúciós modell 1 2 3 4 5 6 Prototípus gyors elkészítése Jó menedzsmentre van szükség 19
( Bőhm ) A spirális model tervezés Impl. analízis Szoftver specifikácio V1, V2, V3, V4 Dokumentálás Integráció Több verzió fokozatos javítása Altalánosítás felé 20
http://en.wikipedia.org/wiki/file:spiral_model_(boehm,_1988).svg 21
Az IBM Rational Unified Process metodológia 22
Szoftverfejlesztési életciklus az Agile módszertanban 23
A Rational Unified Process (RUP) egy iteratív szofver- fejlesztési folyamat keretrendszer, amelyet a Rational Software Corporation fejlesztett ki, a IBM-nek egy 2003-tól létező részlege. A RUP nem egy egyetlen, konkrét előírásos folyamat, hanem egy alkalmazható folyamat-keretrendszer, amelyet úgy tervezték, hogy a szervezetek és a szoftverfejlesztő csapatokra szabható legyen, amelyek kiválasztják a nekik megfelelő elemeket a folyamatból. A 6 legjobb ajánlás (best practice) 1. fejlessz iterációkban 2. kezeld a követelményeket 3. használj komponenseket 4. modellezz vizuálisan 5. ellenőrizd a minőséget 6. Irányítsd a változásokat 24
Modellekre támaszkodó modell Egy kész modellből indulunk ki. Ez könnyen érthetővé teszi a teendőket A következő modellekből indulunk ki: Szoftver termékmodell Processz, rendszermodell Kódolási modell Tesztelési modell 25
Más szempont szerint, vannak: funkcionális (DFD) modellek Infomációs (ERD) modellek Ellenőrző kontrol (DTS) modellek Vagy Deszkriptív modelek Operácionális modelek Mindezekhez szükséges egy modellezési nyelv és modellezési technológia 26
A karbantartás több időt és pénzt igényel Analízis, Tervezés, Implementáció Karbantartás Jéghegy princípium 27
Konstans felületű háromszög ár - minőség idő 28
( hozzárendelés(erőkifejtés Erőforrás Tesztelés Analízis. tervezés Impl. Idő 29
erőkifejtés erőkifejtés változása Jövőbeni fejlesztés Régi erőkifejtės Jővőbeni erőkifejtés Erőkifejtés kiküszöbölése idő Anal. Terv. Finom terv. Kód. Teszt Integr. kipróbálás karbant. 30
Ellenőrző kérdések 1) Mi az életciklus definíciója 2) Mi az előállítási ciklus definíciója 3) Magyarázzák meg a konstans háromszög ábrát. 4) Melyek a szoftver előállítási princípiumok? 5) Sorolják fel az életciklus fázisait! 6) Sorolják fel az életciklus modelleket! 7) Mit ábrázol a jéghegy princípium? 31