Az előadás letöltése folymat van. Kérjük, várjon

Az előadás letöltése folymat van. Kérjük, várjon

Programozástechnológia PTE-TTK 2009. tavasz Kilián Imre H-7683 Gyűrűfű Cseresznyéskert (20-6655951 ritkán használható)

Hasonló előadás


Az előadások a következő témára: "Programozástechnológia PTE-TTK 2009. tavasz Kilián Imre H-7683 Gyűrűfű Cseresznyéskert (20-6655951 ritkán használható)"— Előadás másolata:

1 Programozástechnológia PTE-TTK tavasz Kilián Imre H-7683 Gyűrűfű Cseresznyéskert ( ritkán használható)

2 Követelmények 2008 tavasszal csak vizsga

3 Tematika Procedurális technikák. A szoftverfejlesztés fázisai. Objektumorientált programkészítés és tervezés alapjai Statikus és dinamikus modell Az UML és metamodellje Modellvezérelt programkészítés Modellek és metamodellek egyesítése. Intelligens információ integráció. Kódgenerálás Összetevőmodell és telepítési modell

4 Módszerünk (Az őszbe csavarodott csősz becsavarodott) UML tárgyalása UML-lel

5 Rendszertervezési megközelítések funkcionális a folyamatokat lebontjuk részekre és műveletekre az adatszerkezet a műveletek függvényében alakul ki adatközpontú az adatszerkezetekből indulunk ki a folyamatokat a műveletekig lebontjuk objektum-orientált adat, folyamat és viselkedés egyetlen objektumba sűrítve a tárgymodellt az “objektumok” strukturálják

6 Adat Folyamat Viselkedés Mindhárom nézőpont integrálva van egy objektumban. Egy információs rendszer három nézőpontból

7 A szoftverfejlesztési folyamat modelljei Tiszta vízesés modell. –Az egyes funkcionális feladatcsomagok a vízesés „buborékai”, v. „örvényei”, a lánc elemei –Szigorú fegyelmen alapuló modell, egy modul elkészülte feltétele egy másik elkezdésének –Inkább feladatközpontú, mintsem folyamat központú Mérföldkő alapú –Belső és külső mérföldkövek állítása, amelyek nem egyenesen, hanem egy spirálon vannak elhelyezve. Egy kör egy fejlesztési ciklus. –Elképzelés (koncepció)-művelet (funkcionális) specifikáció-kód kész-kibocsátás belső mérföldkövek –Tiszta tulajdon és felelősségi szabályok megállapítása –Kockázatelemzés, kockázatvezéreltség –Több kör párhuzamosan is futhat  változatok kezelés Iteratív –Egyes spirálkörökön belül további beágyazott mikrospirálok lehetségesek Növekményes (incremental) Fejlődő (evolutionary) Többszálú (multi-threaded)

8 A szoftverfejlesztési folyamat modelljei A szoftverfejlesztés hagyományos módja: Systems Development Life Cycle (SDLC) (Minőségbiztosítási ciklusok) Visszacsatolások a szoftverfejlesztésben Szoftverfejlesztés folyamata A szoftver használatba vétele Visszacsatolás a megrendelőhöz Változáskezelés és -követés

9 A szoftverfejlesztés fázisai. I. Követelményelemzés –üzleti folyamatelemzés (Business Modelling), amelyeket a szoftvernek támogatnia kell –a szoftvert kívülről nézzük, a határait húzzuk meg –leírjuk a szoftver és a külvilág kapcsolatát –létrehozzuk a szoftver nagyon durva funkcionális felosztását, és összegyűjtjük a vele szembeni követelményeket –iterációkhoz szükséges műszaki környezet biztosítása –felhasználó interfész I. változata –a követelménygyűjtemény alapján elkészítjük a „tesztesetkatalógust”

10 A szoftverfejlesztés fázisai. II. Elemzés –Már az elkészítendő szoftvert tervezzük, de megvalósítási részletek még nem érdekesek. A szoftver és a tárgyterület ideális modelljét keressük. –A követelményelemzés alapján létrehozzuk a „fogalmi szótárt” –A fogalmi szótár alapján létrehozzuk a tárgymodellt (domain modell) –A funkcionális felosztás (modell) alapján létrehozzuk a szoftver működési tervét –finomítjuk és kiegészítjük a tesztesetkatalógust

11 A szoftverfejlesztés fázisai. III. Tervezés –Az elkészítendő szoftvert tervezésénél minden fontos technikai részletet figyelembe veszünk. –Az elemzési modellből kiindulva meghatározzuk a szoftver-csomagok határait és összekapcsolódási tervét. Külön figyelemmel vagyunk a már meglevő csomagokra –Elkészítjük az újonnan kifejlesztendő szoftver csomagok modultervét, és a felületeik (interface) tervét –Az összekapcsolódási tervet a hardver elemekkel összehangolva elkészítjük a telepítési tervet –finomítjuk és kiegészítjük a tesztesetkatalógust

12 A szoftverfejlesztés fázisai. IV. Megvalósítás –Végső tervezési döntések meghozatala –Kódolási szabványok összegyűjtése és dokumentálása (style guide) –Csoportmunka környezet létrehozása –Forráskódok létrehozása –Tesztszkriptek/kódok létrehozása –A szoftvert a forrásanyagból újrageneráló szkriptek létrehozása –Kezdeti adatállományt létrehozó (adatbázis populáció) szkriptek létrehozása –Terjesztő és telepítőszkriptek létrehozása

13 A szoftverfejlesztés fázisai. V. Tesztelés –Funkcióteszt (egységteszt, unit teszt): az egyes eljárások/csomagok hibamentes működését ellenőrzi –Integrációs teszt: az egyes szoftverösszetevők helyes működését, ill. a helyes összekapcsolódását ellenőrzi –Rendszerteszt: a teljes rendszert a végfelhasználó szemszögéből teszteli –Átvételi teszt: rendszerteszt, amelyet a szoftver átvételekor a megrendelő hajt végre –Regressziós teszt: integrációs teszt, változtatások után az érintett csomagok automatizált ellenőrzésére.

14 Modellezési nyelv Általában grafikus jelölésrendszer, amellyel leírjuk a rendszert, rendszertervet A kommunikáció alapja (megrendelő és fejlesztő csoport között, fejlesztő csoport tagjai között) Fontos, hogy a modellezési nyelv alkalmas legyen mind a valóság, mind rendszer belső szerkezetének ábrázolására (üzleti modelltől, telepítési modellig) Mi az UML modellezési nyelvet használjuk

15 Mi az UML? Unified Modelling Language - Egységes Modellező Nyelv Objektumorientált elemzés, tervezés és üzleti modellezés eszköze –Analízis (elemzés) a megoldandó feladat leírása –Tervezés a megoldás –Az üzleti modellezés a valóság folyamatait írja le Szabványos (Object Management Group - OMG) –1997. november óta Alapvetően grafikus nyelv Modellező nyelv, nem módszertan

16 Az UML története nov:Az OMG elfogadta az UML-t

17 A szoftverfejlesztés részletes modellje UML alapon Szoftverfejlesztés munkafolyamata „workflow” UML+Software Process Engineering Metamodel (SPEM) – hogy mi az pontosan, azt majd később… RUP (Rational Unified Process) az UML használatára vonatkozó módszertan Az előzőeknél részletesebb modell

18 Munkafolyamat modellezés The basic concepts and relationships to be modelled Incremental evolution with other concepts Inferred relationships: eg. sequence of activities can be inferred from dataflow model. Other business rules/constraints

19 The basic concepts and relationships to be modelled Incremental evolution with other concepts Inferred relationships: eg. sequence of activities can be inferred from dataflow model. Other business rules/constraints Munkafolyamat modellezés

20 The basic concepts and relationships to be modelled Incremental evolution with other concepts Inferred relationships: eg. sequence of activities can be inferred from dataflow model. Other business rules/constraints Munkafolyamat modellezés

21 The basic concepts and relationships to be modelled Incremental evolution with other concepts Inferred relationships: eg. sequence of activities can be inferred from dataflow model. Other business rules/constraints Munkafolyamat modellezés

22 The basic concepts and relationships to be modelled Incremental evolution with other concepts Inferred relationships: eg. sequence of activities can be inferred from dataflow model. Other business rules/constraints Munkafolyamat modellezés

23 SPEM (Software Process Engineering Metamodel) elemei

24 A RUP szerkezete tartalom idő

25 A RUP munkafolyamatai Üzleti modellezés Követelmény-elemzés Elemzés-tervezés Implementáció Tesztelés Telepítés Konfiguráció és változás-kezelés Projektvezetés Környezet kialakítása Mérnöki munkafolyamatok Támogató munkafolyamatok

26 Mérnöki munkafolyamatok Üzleti modellezés (Business Modeling) –Cél megérteni annak a szervezetnek a felépítését, folyamatait, amely támogatására az alkalmazást fejlesztjük Követelmény-elemzés (Requirements) –Cél meghatározni azokat a feladatokat, amelyeket a rendszernek meg kell oldani (scope) és a megrendelőkkel együttműködve egy egységes képet kell kialakítani a fejlesztendő rendszerről Elemzés-tervezés (Analysis & design) –Cél a követelményelemzés során meghatározott elvárásoknak megfelelő, robosztus rendszer tervezése A fejlesztési munka konkrét feladatai

27 Mérnöki munkafolyamatok Implementáció (Implementation) –Cél a terv alapján a rendszert alkotó komponensek implementálása, egységtesztjeinek elvégzése és integrálása Tesztelés (Test) –Cél annak ellenőrzése, hogy az implementált rendszer megfelel-e az elvárásoknak, és hogy valamennyi követelmény implementálva lett-e Telepítés (Deployment) –Cél a kész alkalmazást elérhetővé tenni a felhasználó számára

28 Támogató munkafolyamatok Konfiguráció és változás-kezelés –Cél a fejlesztés során előálló termékek verzióinak kezelése Projektvezetés –Cél irányelvek megadása és a projekt ellenőrzésével kapcsolatos feladatok elvégzése Környezet kialakítása –Cél a szoftverfejlesztési környezet (módszertan, eszközök) kialakításával kapcsolatos feladatok ellátása Azok a feladatok, amelyek a fejlesztés során folyamatosan segítik a fejlesztők munkáját


Letölteni ppt "Programozástechnológia PTE-TTK 2009. tavasz Kilián Imre H-7683 Gyűrűfű Cseresznyéskert (20-6655951 ritkán használható)"

Hasonló előadás


Google Hirdetések