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

Szoftvertechnológia 2015/2016 – 1. félév. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Előadó Dr. Johanyák Zsolt Csaba

Hasonló előadás


Az előadások a következő témára: "Szoftvertechnológia 2015/2016 – 1. félév. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Előadó Dr. Johanyák Zsolt Csaba"— Előadás másolata:

1 Szoftvertechnológia 2015/2016 – 1. félév

2 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Előadó Dr. Johanyák Zsolt Csaba http://johanyak.hu Email: johanyak.csaba@gamf.kefo.hu Tel.: 06-76-516-413 2

3 KÖVETELMÉNYRENDSZER Szoftvertechnológia Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 3

4 Követelményrendszer nappali tagozaton 1 Vizsgára bocsátás feltétele: 50 pont megszerzése Megajánlott vizsgajegy 65 ponttól Előadás ZH Előadás ZH (végleges kérdéslista a honlapon okt. 1-től) November 26., pótlási lehetőség: december 10. Megszerezhető pontszám: 40 Kötelező minimum: 21Projektfeladat Első konzultáció: megszerezhető pontszám: 5, kötelező minimum nincs Második konzultáció: megszerezhető pontszám: 5, kötelező minimum nincs Végső bemutatás: megszerezhető pontszám: 50, kötelező minimum: 25 4

5 Követelményrendszer nappali tagozaton 2 Egyéb Ha egy csoport minden tagja minden gyakorlaton jelen van, akkor a csoport minden tagja 5 pontot kap az utolsó gyakorlaton. 15 perces kiselőadás tartása. Témaválasztás és jelentkezés a CooSpace-ben Megszerezhető: 5 pont/kiselőadás (angol nyelvű előadás esetén maximálisan 10 pont szerezhető) Részvétel a tantárgy témaköréhez kapcsolódó Informatika.Neked előadásokon (az előadó hirdeti ki, hogy melyek az érintett előadások) Megszerezhető: 2 pont/előadás Az oktató által a félév során kiadott pontszerző feladat Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 20155

6 Házi feladat nappali tagozaton azoknak, akik gyakorlattal vették fel a tárgyat Első gyakorlaton egy 4-5 fős csoport kialakítása (egy laborgyakorlaton legfeljebb három csoport lehet) A gyakorlatvezető által kiadott szoftverfejlesztési téma egyes részfeladatainak megoldása Értékelés a beadott projektdokumentáció és a bemutató előadás alapján a gyakorlatvezető pontozza a feladatmegoldást (FM) Minden csoporttag nyilatkozik arról, hogy a társak a 0-100-as skálán milyen teljesítményt nyújtottak (T) Minden hallgató kap egy átlagértékelést a csapattársak értékelése alapján (ÁT) Végleges pontszám=FM*ÁT/100 Pl. ha FM=40 pont, T={80,90,90,100}→ÁT=90 VP=40*90/100=36 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 20156

7 Követelményrendszer levelező tagozaton 1 Vizsgára bocsátás feltétele: 50 pont Megajánlott vizsgajegy Elmélet ZH Elmélet ZH (végleges kérdéslista a honlapon okt. 1-től) November 15. 12 20, pótlási lehetőség: nov. 29. 7 45 Megszerezhető pontszám: 40 Kötelező minimum: 21 Házi feladat Megszerezhető pontszám: 50 Kötelező minimum: 25 7

8 Követelményrendszer levelező tagozaton 2 Egyéb Egy kiválasztott témakör esszé jellegű kidolgozása (irodalomfeldolgozás, nem másolás!). Jelentkezés a kiírt témákra a CooSpace-ben Megszerezhető: 5 pont/témakör Részvétel a tantárgy témaköréhez kapcsolódó Informatika.Neked előadásokon (az előadó hirdeti ki, hogy melyek az érintett előadások) Megszerezhető: 2 pont/előadás Az egyéb kategóriában kötelezően megszerzendő pontszám: 4 pont Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 20158

9 Használt szoftverek MS Project 2013 Software Ideas Modeler http://www.softwareideas.net/en/download http://www.softwareideas.net/en/download Microsoft Visual Studio 2013 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 20159

10 Kötelező és ajánlott irodalom Kötelező Előadásdiák - minden előadást követően frissített változatot töltök fel [http://johanyak.hu]http://johanyak.hu Szabolcsi Judit: Szoftvertechnológia (a honlapomról letölthető) Ajánlott Ajánlott: Mileff Péter: Szoftverfejlesztés seg. [link]link Tarczali Tünde: UML diagramok a gyakorlatban [link]link Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201510

11 Ajánlott irodalom Langer Tamás: Projektmenedzsment a szoftverfejlesztésben Ian Sommerville: Szoftverrendszerek fejlesztése Szentirmai Róbert: Projektirányítás Microsoft Office Project 2007 segítségével Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201511

12 Témakörök Szoftverfejlesztési projektek menedzselése Szoftver életciklus modellek UML Alap tevékenységek Elvárások elemzése és specifikáció Tervezés Implementálás + tervezési minták Ellenőrzés Objektum orientált szoftverfejlesztési módszerek Agilis módszerek Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201512

13 SZOFTVERFEJLESZTÉSI PROJEKTEK MENEDZSELÉSE Szoftvertechnológia Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 13

14 Projekt definíciók Egy időben behatárolt erőfeszítés, egy egyedi termék, szolgáltatás vagy eredmény létrehozása céljából (PMBOK GUIDE magyarul: Projektmenedzsment útmutató, Akadémia Kiadó 2009) Egyedi folyamatrendszer, amely kezdési és befejezési dátumokkal megjelölt, specifikus követelményeknek – beleértve az idő-, költség- és erőforrás korlátokat – megfelelő célkitűzés elérése érdekében vállalt, koordinált és kontrollált tevékenységek csoportja (ISO 8402) Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201514

15 A menedzselés fontossága A menedzselés szükségessége igen fontos eltérés a professzionális szoftverfejlesztés és az amatőr programozás között A jó menedzsment nem garantálja a projekt sikerét A rossz menedzsment biztos kudarcot eredményez Idő-költség-minőség Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201515 Idő Erőforrás Minőség

16 A szoftvermenedzselés sajátosságai A szoftver nem kézzelfogható termék Gyakori technológiai váltások A nagy projektek gyakran eltérnek a korábbi projektektől Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201516

17 A szoftverprojekt vezetőjének feladatai Indítványok készítése, célok meghatározása és tervek készítése Csapattagok kiválogatása A projekt költségeinek figyelemmel kísérése A projektmegvalósulás követése és felülvizsgálata Beszámolók készítése és előadása Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201517

18 Tervek készítése Projektterv és PDD Minőségbiztosítási terv Validációs terv Konfigurációkezelési terv Karbantartási terv Munkaerő-fejlesztési terv Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201518

19 A projekttervezési és vezetési folyamat 1. Projektcél? Megállapítani a projekt megszorításait Szervezeti keretek, felelősök A projekt paramétereinek egy kezdeti összegzését elkészíteni Definiálni a projekt részeredményeit és mérföldköveit A dokumentálás módjának és szabályainak lefektetése Kockázatelemzés Kiinduló ütemterv elkészítése Projekt indító értekezlet Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201519

20 A projekttervezési és vezetési folyamat 2. Amíg a projekt nincs kész, vagy nem vonták vissza, addig elindítani az ütemtervnek megfelelő tevékenységeket átvizsgálni a projekt előrehaladását felülvizsgálni a projekt paramétereinek becslését frissíteni a projekt ütemtervét ha probléma merül fel elindítani a műszaki felülvizsgálatokat és a lehetséges átdolgozásokat újratárgyalni a projekt megszorításait és részeredményeit ciklus vége Projekt lezárása Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201520

21 A projekt ütemezése A folyamat tevékenységekre bontása Az egyes tevékenységekhez szükséges idő és erőforrások becslése Idő tartalékolása problémák megoldására és előre nem látott feladatokra (pl. Sommerville: +30% probl. +20% fel.) Mely tevékenységek végezhetőek párhuzamosan? Összefüggő sorozatba rendezés Erőforrások (pl. munkatársak) tevékenységekhez rendelése Felelősségi körök meghatározása (felelősségi mátrix) Költségek becslése A munkaerő kihasználtsága optimális legyen Grafikus megjelenítés Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201521

22 Hierarchikus tevékenység/feladat lebontás 1. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Projekt Fázis Szakasz Tevékenység Feladat Végrehajtás Forrás: Dr. Rutkovszky Edéné: Projektmenedzsment 22

23 Hierarchikus tevékenység/feladat lebontás 2. Film Forgatóköny v StílusÍróTém a Sci-fiHorrorstb. Szereposzt ás Casting Helyszín KülsőBelső Rendező Stáb DíszletOperatőrHáttér munkáso k Zene Szerzés IllesztésSzínész ek Gyártá s v. Vágás v.Képi világ Utómunka v. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 23

24 Mérföldkövek és részeredmények A mérföldkő A mérföldkő a szoftverfolyamat tevékenységeinek egy ellenőrző pontja, egy logikai szakasz vége. Egy vagy több olyan részfeladat után helyezzük el, ahol a részfeladatok eredményes befejezése nélkül nem lehet továbbhaladni. A részeredmények A részeredmények a projekt olyan eredményei, amelyek átadhatók a megrendelőnek. Ezek általában mérföldkövek is, de a mérföldkő nem szükségszerűen részeredmény. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201524

25 Tevékenységek és mérföldkövek Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Forrás: Ian Sommerville: Szoftverrendsszerek fejlesztése 25

26 Könyvesboltban történő vásárlás menete Tevékenység neve IdőtartamKezdésBefejezésMegelőzés (1) Vásárlás2 óraK. 13.11.19. (2) Vevő szempontjából 40 percK. 13.11.19. (3) Katalógus megtekintés 5 percK. 13.11.19. (4) Könyv kiválasztása 1 óraK. 13.11.19. 3 (5) Könyv megtekintése 10 percK. 13.11.19. 4 (6) Könyvből való következtetés levonása 5 percK. 13.11.19. 5 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 26

27 Tevékenység neveIdőtartamKezdésBefejezésMegelőzés (7) Alkalmazott szempontjából 20 percK. 13.11.19. (8) Alkalmazott hitelesítés 1 percK. 13.11.19. (9) Hitelesítés létrejövetele 0 percK. 13.11.19. 8 (10) Kiválasztott könyv rögzítése 5 percK. 13.11.19. 4, 8 (11) Vevő adatainak bevitele (ha számlát kér) 5 percK. 13.11.19. (12) Könyv kifizetése2 percK. 13.11.19. Könyvesboltban történő vásárlás menete Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 27

28 Tevékenység – Időtartam – Függőségek táblázat TevékenységIdőtartam napbanFüggőségek T18 T215 T315T1;M1 T410 T510T2;T4;M2 T65T1;T2;M3 T720T1;M1 T825T4;M5 T915T3;T6;M4 T1015T5;T7;M7 T117T9;M6 T1210T11;M8 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Forrás: Ian Sommerville: Szoftverrendszerek fejlesztése 28

29 Tevékenység – Időtartam – Függőségek táblázat – MS Project 2013 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201529

30 Kezdet 03/7/4 M5 03/7/18 T1 8 nap M1 03/7/14 T3 15 nap T9 15 nap M4 03/8/4 M6 03/8/25 M8 03/9/5 T11 7 nap T12 10 nap Vég 03/9/19 T8 25 nap T4 10 nap T2 15 nap T6 5 nap M3 03/7/25 M2 03/7/25 T7 20 nap T5 10 nap T10 15 nap M7 03/8/11 Tevékenységháló Forrás: Ian Sommerville: Szoftverrendszerek fejlesztése Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 30

31 Tevékenység háló – MS Project 2013 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201531

32 7/47/117/18 7/25 8/1 8/88/15 8/22 8/299/59/12 9/19 Kezdet T4 T1 T2 M1 T7 T3 M5 T8 M3 M2 T6 T5 M4 T9 M7 T10 M6 T11 M8 T12 Befejezés Forrás: Ian Sommerville: Szoftverrendszerek fejlesztése Tevékenység (Gantt) diagram

33 Gantt diagram – MS Project 2013 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201533

34 Szervezet lebontási struktúra Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201534

35 OBSWBS Fejlesztő főosztály TervezésElőállítás Oktatás és dokumentálás Műszaki támogatás LogikaiFizikaiKódolás TesztelésOktatás Felhasználói kézikönyv Tervező osztály Programozási osztáy Tesztelő osztály Oktatási osztály Dokumentációs osztály Forrás: Langer Tamás: Projektmenedzsment a szoftverfejlesztésben Felelősségi mátrix Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201535

36 Erőforrások ütemezése Gépek, berendezések, alap- és segédanyagok, tartozékok és egyéb költségforrások A projekt szempontjából lényeges erőforrás Korlátozott mennyiségben áll rendelkezésre Mérhető a költsége Erőforrás típusok Anyag Költség (összeg) Munka (alap óradíj, túlóra díj) – ide tartoznak általában a dolgozók is Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201536

37 Munkatársak lekötöttségi diagramja – MS Project 2013 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201537

38 Túlterhelés Megoldási lehetőségek Elcsúsztatás tartalékidő felhasználással Több erőforrás bevonásának megkísérlése Munkaóra növelés (túlóra) Zárási határidő elcsúsztatásának megkísérlése Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201538

39 Költségvetés készítése Alap órabér számítási megközelítési módok Minden érintett munkatársnál visszaszámoljuk az órabért --> nem megoldható Projektszerep és végzettség szerint átlagos órabért határozunk meg  problémás Egységes átalánnyal számolunk Az órabérhez hozzáadunk átalányköltséget (pl. áram, szoftverbérlet, irodaszer) A teljes projektköltséghez hozzáadunk konkrét költségtételeket (pl. utazás) Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201539

40 Kockázatkezelés Def.: A kockázatok azonosítását és az azok hatásának minimalizálása érdekében történő tervek felvázolását együtt kockázatkezelésnek nevezzük. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201540

41 Kockázati kategóriák Projekt: a projekt ütemtervére vagy az ott használt erőforrásokra ható kockázat Termék: a fejlesztett szoftver minőségére vagy teljesítményére ható kockázat Üzleti: a szervezetre ható kockázat Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201541

42 Konkrét példák Tapasztalt programozó elhagyja a projektet – projekt Hardver elérhetetlensége – projekt CASE-eszköz alulteljesítése – termék A fejlesztendő szoftver méretének alulbecslése – termék Technológia megváltozása – üzleti Versenyképes termék kerül piacra, mielőtt a rendszer elkészülne - üzleti Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201542

43 A kockázatkezelés folyamata 1. Kockázat azonosítása 2. Kockázat elemzése (valószínűség és következmények) 3. Kockázat tervezése (hogyan kerülhetjük el) 4. Kockázat figyelése  2 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201543

44 1. A kockázat azonosítása Kockázattípusok Technológiai - A rendszerhez használt adatbázis nem tud mp-ként annyi tranzakciót feldolgozni, mint amit elvárunk tőle. Emberi - A kulcsfontosságú munkaerő megbetegszik. Szervezeti - A projekt vezetősége megváltozik. Eszköz - A különböző típusú CASE-eszközöket nem lehet integrálni. Követelmény - A megrendelők nem képesek megérteni, hogy az általuk kívánt szolgáltatások miért lennének olyan drágák. Becslési - A szoftver kifejlesztéséhez szükséges időt alábecsülték. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201544

45 Kockázati tényezők Kockázattíp us Potenciális jelzés TechnológiaiA hardver vagy a támogató szoftver kései leszállítása, számos jelzett technológiai probléma. EmberiSzegényes munkamorál, rossz kapcsolatok a csapatok között. SzervezetiMunkahelyi pletykák, a felső vezetés tevékenységének hiánya. EszközA csapatok eszközökkel szembeni idegenkedése, a CASE eszközök körüli panaszok, nagyobb teljesítményű munkaállomások iránti igény. KövetelményIgény számos követelmény megváltoztatására, panaszok a megrendelő felől. BecslésiAz elfogadott ütemtervet nem sikerül betartani, nem lehet tisztázni a jelentett hibákat. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201545 Forrás: Ian Sommerville: Szoftverrendszerek fejlesztése

46 Halszálka diagram Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201546

47 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201547

48 Vizuális programozás projektfeladat sikertelensége #1 Személyi #4 Módszer ----> Lustaság ---->Részfeladatokra bontás ----> Nem megfelelő végzettség---->Nem megfelelő kommunikáció ----> Együttműködő képesség hiánya---->Objektumorientáltsági problémák #2 Eszközök #5 Környezet ----> Számítástechnikai eszközök hiánya---->Távolság ----> Fejlesztőkörnyezet hiánya---->Túlterheltség ----> Jegyzetek hiánya ----> Internet hiánya ----> #3 Ismeretek ----> Hiányos programozói ismeretek ----> Hiányos nyelvi ismeretek ----> Hiányos matematikai ismeretek Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201548 Enter specific causes associated with respective major causes below. Be precise and include data whenever possible. Click "finished" to continue.

49 Halszálka diagram Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201549

50 2. A kockázat elemzése Valószínűség: 1 - nagyon kicsi (<10%), 2 - kicsi (10-25%), 3 - mérsékelt (25-50%), 4 - magas (50-75%) vagy 5 - nagyon magas (>75%); A kockázat hatása: 1 - nem jelentős, 2 - elviselhető, 3 - közepes, 4 - súlyos, 5 - katasztrofális Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201550

51 Kockázatelemzési táblázat Kockázat: Valószínűség (1-5)Hatás (1-5)V*H Lustaság5525 Nem megfelelő végzettség3515 Együttműködő képesség hiánya5315 Távolság4312 Túlterheltség5210 Részfeladatokra bontás339 Hiányos nyelvi ismeretek248 Nem megfelelő kommunikáció155 Hiányos matematikai ismeretek224 Objektumorientáltsági problémák224 Internet hiánya414 Fejlesztőkörnyezet hiánya122 Jegyzetek hiánya122 Számítástechnikai eszközök hiánya212 Hiányos programozói ismeretek212 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201551

52 Pareto Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201552

53 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201553

54 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201554

55 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201555

56 SWOT elemzés Belső tényezők Strengthserősségek Weaknessesgyengeségek Külső tényezők Opportunitieslehetőségek Threatsveszélyek Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201556

57 SWOT elemzés (vállalati példa) Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201557

58 Erősségek Meghatározó a vállalat piaci szerepe? Jó a vásárlók véleménye? Fejlett technológiát használ a vállalat? Egyedülálló versenyelőnnyel rendelkezik? Jók a piaci erőforrásai? Gazdaságos üzemméretet használ? Jó a vállalat menedzsmentje? Kimagasló szakértelműek az alkalmazottak? Sikeres a vállalati stratégia? Forrás: Dr. Rutkovszky Edéné: Projektmenedzsment Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201558

59 Gyengeségek Elavult a technológia? Romlik a piaci pozíció? Nincs egyértelműen meghatározott stratégia? Hiányzik a megfelelő szakértelem? Elhasználódtak a létesítmények? Rossz a vállalat imázsa? Nem sikeres a kutatás-fejlesztési részleg? Rosszul funkcionál a menedzsment? A pénzügyi háttér nem rendezett? Forrás: Dr. Rutkovszky Edéné: Projektmenedzsment Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201559

60 Lehetőségek Gyorsabb piaci növekedés? Kiegészítő termékek fejlesztése? Új piacokra való belépés? Új technológia alkalmazása? A termékcsoport továbbfejlesztése? További célcsoportok feltérképezése? Egy nyersanyagforrás megszerzése? Beszállítás helyett saját előállítás? Új szervezeti felépítés kidolgozása? Forrás: Dr. Rutkovszky Edéné: Projektmenedzsment Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201560

61 Veszélyek Új versenytársak megjelenése a piacon. A piaci növekedés lassulása. Változó fogyasztói igények. Szigorodó szabályozás. Helyettesítő termékek megjelenése. Hátrányos demográfiai változások. Kedvezőtlen gazdasági ciklusok hatása. A beszállítók javuló alkupozíciója. Fogyasztói érdekvédelem fokozódó nyomása. Forrás: Dr. Rutkovszky Edéné: Projektmenedzsment Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201561

62 Kockázat tervezése és menedzselése Stratégiák Elkerülési stratégiák Minimalizációs stratégiák Vészhelyzeti tervek Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201562

63 Kockázat tervezése KockázatStratégia Szervezeti pénzügyi problémák Elkészíteni egy részletes dokumentumot a felső vezetés részére, amely bemutatja, hogy a projekt mennyire fontos kapcsolatban áll az üzleti célokkal Toborzási problémák Riasztani a megrendelőt, hogy potenciális nehézségek és lehetséges késések várhatók, kutatni a megvásárolható komponensek után. Munkaerő megbetegedése Újraszervezni a csapatot úgy, hogy a munkák jobban átfedjék egymást, így az emberek jobban megértik mások munkáit is. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 63 Forrás: Ian Sommerville: Szoftverrendszerek fejlesztése

64 A kockázat figyelése Változott-e az azonosított kockázatok bekövetkezési valószínűsége hatása Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201564

65 Az 1. előadás tartalmából Projekt A vezető feladatai A projekttervezési és vezetési folyamat Hierarchikus tevékenység/feladat lebontás Mérföldkövek és részeredmények Tevékenység – Időtartam – Függőségek - Erőforrások Ütemezés Kockázatkezelés Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201565 Ismétlés

66 A projekttervezési és vezetési folyamat 1. Projektcél? A projekt megszorításai Szervezeti keretek, felelősök A projekt paramétereinek kezdeti összegzése A projekt részeredményeinek és mérföldköveinek definiálása A dokumentálás módjának és szabályainak lefektetése Kockázatelemzés Kiinduló ütemterv elkészítése Projekt indító értekezlet Ismétlés Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201566

67 A projekttervezési és vezetési folyamat 2. Amíg a projekt nincs kész, vagy nem vonták vissza, addig elindítani az ütemtervnek megfelelő tevékenységeket átvizsgálni a projekt előrehaladását felülvizsgálni a projekt paramétereinek becslését frissíteni a projekt ütemtervét ha probléma merül fel, elindítani a műszaki felülvizsgálatokat és a lehetséges átdolgozásokat újratárgyalni a projekt megszorításait és részeredményeit ciklus vége Projekt lezárása Ismétlés Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201567

68 Információgyűjtés Kitöltött űrlapok jelentések, jegyzőkönyvek, programok kimenetei, értekezleteken elhangzott információk Óraelszámolások Állapotjelentések Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201568

69 Elemzés - alapfogalmak ACWP ACWP – Actual Cost Of Work Performed – az elvégzett munka tényleges költsége BCWP BCWP – Budget Cost Of Work Performed – az elvégzett munkára ennyi költséget terveztünk BCWS BCWS – Budget Cost Of Work Scheduled – a tervezett (ütemezett) munkára ennyi költséget terveztünk Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201569

70 Elemzés – származtatott fogalmak CV CV – Cost Variance – költségeltérés CV=BCWP-ACWP SV SV – Schedule Variance – ütemezéstől való eltérés SV=BCWP-BCWS CPI CPI – Cost Performance Index – költséghatékonysági mutató CPI=BCWP/ACWP SPI SPI – Schedule Performance Index – ütemterv teljesülési mutató SPI=BCWP/BCWS CR CR – Critical Ratio – kritikus arány CR=SPI*CPI Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201570

71 Költség Idő Most SV CV BCWS ACWP BCWP Diagram Forrás: Langer Tamás: Projektmenedzsment a szoftverfejlesztésben

72 Felügyelet Beavatkozási határokat meghatározni Pl. 0,9…1,1 - OK 0,8…0,9 vagy 1,1…1,2 - tendenciafigyelés 0,8 alatt vagy 1,2 felett - cselekvés Az SPI és CPI értékét folyamatosan figyelni Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201572

73 Minta BCWSBCWPACWPCVSVCPISPIÉrtelmezés 100 0011Időben és költségen 100125 02511,25Időelőny és költségen 125100 0-2510,8Késés és költségen 100 125-2500,81Időben és túlköltekezés 100125150-25250,831,25Időelőny és túlköltés 125100125-25 0,8 Késés és túlköltés 125 1002501,251Időben és megtakarítás 10012510025 1,25 Időelőny és megtakarítás 15012510025-251,250,83Késés és megtakarítás Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 73 Forrás: Langer Tamás: Projektmenedzsment a szoftverfejlesztésben

74 Projekt lezárása A projekt akkor fejeződik be, ha teljesül a projektcél (elfogadták a projekt eredményét) Projektzáró dokumentum Projektadatok (…, tervezett és tényleges befejezési idő, bevétel, tervezett és tényleges költségek, emberóra ráfordítás) Lezárást követő teendők Vevői elégedettség Projekt általános értékelése Projektzáró értekezlet – értékelik a projekt lefutását Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201574

75 A projekt utóélete Szoftverrendszerrel kapcsolatos költségek 1/3-a fejlesztés és 2/3-a működtetés Projektzárást követő tevékenységek Üzemeltetés Garanciális javítások Későbbi karbantartás Támogatás (tanácsadás) Követés (változó jogi, hardver és szoftver környezet) Továbbfejlesztés Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201575

76 Bejelentések fogadása Service Level Agreement (SLA) rögzíti Bejelentések súlyosság és prioritás szerinti kategorizálása Vállalt reakcióidők Informatikai infrastrukturális szolgáltatások módszertana (ITILv3) - Information Technology Infrastructure Library (ISO/IEC 20 000) Informatikai rendszerek üzemeltetésére és fejlesztésére szolgáló módszertan, illetve szabvány- és ajánlás-gyűjtemény Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201576

77 Bejelentéskezelés Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201577

78 SZOFTVER ÉLETCIKLUS MODELLEK Szoftvertechnológia Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 78

79 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Mi a szoftver? A számítógépes programok, a hozzájuk kapcsolódó dokumentációk és konfigurációs adatok összessége Két fő csoport Általános termékek és Rendelésre készített 79

80 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Igény a rendszerezett munkára Kezdetben kis programok Hardverfejlődés → bonyolultabb feladatok Folyamatábra, metanyelvű algoritmus leírás, stb. Szoftvertechnológia 80

81 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Boehm - 1976 A szoftvertechnológia tudományos ismeretek gyakorlati alkalmazása számítógépes programok előállításához, a fejlesztéshez, a használathoz és karbantartáshoz szükséges dokumentációk tervezésében és előállításában. 81

82 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 IEEE - 1983 A szoftvertechnológia olyan technológiai és vezetési alapelvek összessége, amelyek lehetővé teszik a programok termékszerű gyártását és karbantartását a költség- és határidő korlátok betartásával. 82

83 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Alap tevékenységek Követelményelemzés (Mit is kellene csinálni? Mikorra, és mennyiért? – megvalósíthatóság vizsgálata) Tervezés (architekturális tervezés, absztrakt specifikáció, interfész tervezés) Implementálás (komponens tervezés, adatszerkezet tervezés és algoritmus tervezés) Kipróbálás, validálás, bevezetés (szoftverátvizsgálás és tesztelés) Működtetés, karbantartás, továbbfejlesztés, leállítás 83

84 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Szoftverfolyamat modellek Vízesés Boehm féle spirál Inkrementális (evolúciós) Újrafelhasználás orientált (komponens alapú) V RUP (Rational Unified Process) ISO/IEC 12207 (1995, 2008) 84

85 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Vízesés modell Ábra forrása: Ficsor Lajos: http://www.iit.uni-miskolc.hu/iitweb/opencms/users/ficsorl/Targyak/Sweng/Segedletek / 85

86 Vízesés modell A következő fázis addig nem indulhat el, amíg az előző be nem fejeződött. Ez a modell akkor működik jól, ha a követelmények teljesen ismertek. Előny: Jól menedzselhető és ellenőrizhető. Minden fázisban jól definiált feladatok. Minden fázis jól dokumentálható. Előre jól definiálható követelmények esetén jól alkalmazható. Hátrány: Nagyon sok probléma csak az utolsó fázisban derül ki, így a javítás nagyon költséges. Korán kell jelentős döntéseket hozni, ez hibás döntésekhez vezethet. Nehéz a rendszert a fejlesztés közben változó követelményekhez igazítani. Sok dokumentációs munkát igényel. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201586

87 Spirál modell Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 megvalósíthatóság a rendszer követelményeinek meghatározása rendszertervezés, stb. 87

88 Spirál Modell Elemzés Tervezés Megvalósítás Igények és Célok Prototípus 1 Prototípus 2 Prototípus 3 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 88

89 Spirál modell Előny: a kockázati tényezőkkel explicite számol. A spirális modellben nincsenek rögzített fázisok, és felölelhet más folyamatmodelleket is (vízesés, evolúciós, stb.). Hátrányai: a modell alkalmazása bonyolult, munkaigényes feladat; a párhuzamos foglalkoztatás csak a 3. szektorban lehetséges. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201589

90 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 V modell Forrás: http://softwareandme.wordpress.com/2009/10/20/software-development-life-cycle/sdlc_v_model 90

91 V modell Egy módosított vízesés modell. Megkülönbözteti a fejlesztésen belül a konstrukciós és a tesztelési fázisokat. Definiálja a tesztelés szintjeit. Szemlélteti, hogy a tesztelési munka végigköveti a teljes fejlesztési folyamatot. Összefüggést tételez fel az egyes konstrukciós fázisok és az egyes tesztelési szintek között. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201591

92 Specifiká- ció Tervezés Implemen- táció Tesztelés Specifiká- ció Tervezés Implemen- táció Tesztelés Specifiká- ció Tervezés Implemen- táció Tesztelés Implemen- táció Analízis Inkrementális (evolúciós) Ábra forrása: Ficsor Lajos: http://www.iit.uni-miskolc.hu/iitweb/opencms/users/ficsorl/Targyak/Sweng/Segedletek /

93 Evolúciós modell Ki kell fejleszteni egy kezdeti implementációt (prototípust), azt a felhasználókkal véleményeztetni, majd sok-sok verzión át addig finomítani, amíg megfelelő nem lesz. Iterációs modellnek is nevezik. Objektum orientált fejlesztésben gyakran használják. Ez a modell a felhasználó kívánságait jobban kielégítő programot eredményez. A kis (<100.000 programsor) és közepes (<=500.000 programsor) rendszerek fejlesztéséhez ideális. Hátrányai: a folyamat nem látható; a rendszerek gyakran szegényesen strukturáltak; a gyors fejlesztés rendszerint a dokumentáltság rovására megy. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201593

94 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Újrafelhasználás orientált fejlesztés (komponens alapú) Komponenselemzés Követelménymódosítás Rendszertervezés újrafelhasználással Fejlesztés és integráció 94

95 Komponens alapú modell Előnye: lecsökkenti a kifejlesztendő részek számát, így csökkenti a költségeket és a kockázatot. Ez általában a kész rendszer gyorsabb leszállításához vezet. Hátrányai: a követelményeknél hozott kompromisszumok elkerülhetetlenek, és ez olyan rendszerhez vezethet, ami nem felel meg a felhasználó valódi kívánságának. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201595

96 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Fázisok: Előkészítés Kidolgozás Megvalósítás Átadás Munka- folyamatok folyamatokKövetelményekTervezésImplementációTeszt RUP Ábra: http://www.quattrosoft.hu/szolgaltatasok/szoftverfejlesztes Munkafolyamatok 96

97 RUP - dimenziók Az ábra vízszintes dimenziója az időbeliséget, a függőleges dimenziója a különböző munkafolyamatokat (tevékenységeket) szimbolizálja. Az ábra harmadik dimenziója – amit a sávok magassága jelent –, az egyes tevékenységek intenzitását, erőforrás igényét szimbolizálja. Egy-egy fázis elkészítése során több munkafolyamatot érint, ugyanakkor az egyes munkafolyamatok a különböző fázisokban különböző intenzitásúak, erőforrás igényűek. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201597

98 ISO 12207 Forrás: Tarczali Tünde: UML diagramok a gyakorlatban [link]link Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 201598

99 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 CASE eszközök Computer-Aided Software Engineering Követelményspecifikáció: grafikus rendszermodellek, üzleti és domain Elemzés/tervezés során: adatszótár kezelése, mely a tervben található egyedekről és kapcsolataikról tartalmaz információt; felhasználói interfész generálását egy grafikus interfész- leírásból, melyet a felhasználóval együtt készíthetünk el.; a terv ellentmondás mentesség vizsgálata Implementáció során: automatikus kódgenerálás (Computer Aided Programming - CAP);verziókezelés Szoftvervalidáció során: automatikus teszt-eset generálás, teszt-kiértékelés, -dokumentálás Szoftverevolúció során: forráskód visszafejtés (reverse engineering); régebbi verziójú programnyelvek automatikus újrafordítása újabb verzióba. 99

100 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 CASE eszközök Automatikus dokumentumgenerálás; Projektmenedzsment támogatás (ütemezés, határidők figyelése, erőforrás-tervezés, költség- és kapacitásszámítás, stb. ) 100

101 UML Szoftvertechnológia Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 101

102 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 UML Unified Modeling Language Egységes modellező nyelv 2.4.1 (2.1.2 ISO/IEC 19505 ) http://www.uml.org Object Management Group Eric J. Naiburg, Robert A. Maksimchuk: UML földi halandóknak. Kiskapu Kiadó, Budapest, 2006. 102

103 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 UML Dokumentálható A szoftverrel szemben támasztott követelmények A szoftver felépítése A szoftver működése Grafikus elemek Nem programozási nyelv Nem módszertan „Csak” segédeszköz 103

104 Mire jó az UML? 1. szemléltetésre a fejlesztői csoporton belül, illetve a fejlesztők, tesztelők, menedzserek és a megrendelők közötti kommunikációra specifikálásra megvalósításra dokumentálásra Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015104

105 Mire jó az UML? 2. Evolúciós programfejlesztés „szoftver mag ültetés és hajtatás” Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015105

106 Sikeres szoftverfejlesztési folyamat Jelölésrendszer (notation) – ez lehet az UML Folyamat (process) – pl. RUP (Rational Unified Process) Eszköz (tool) – pl. Enterprise Architect, Rational Rose, Visual Studio 2010 osztálydiagram készítő része, stb. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015106

107 UML szabvány részei 1. Infrastructure (4 rétegű metamodell, a nyelv alapvető szerkezetei, a „mag”) Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015107

108 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 108

109 A metamodell architektúra M3 Meta- metamodell EBNF (Extended Backus-Naur Form) MOF M2metamodell A C# nyelv nyelvtana UML M1modell Egy C# program Számkitaláló M0rendszer Egy konkrét C# program végrehajtása A program futásának egy állapota Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015109

110 Az UML szabvány részei 2. Superstructure (a felhasználó milyen diagramokat, azon belül milyen elemeket és kapcsolatokat használhat; mi főleg ezt tanuljuk) Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015110

111 Az UML szabvány részei 3. UML Diagram Interchange (UMLDI) – lehetővé teszi a különböző UML szerkesztő szoftverek közötti dokumentumcserét UML Human-Usable Textual Notation – egyes UML diagramokból ember által is olvasható szöveget generál MOF 2 XMI Mapping – MOF = Meta Object Facility XMI = XML Metadata Interchange – XML adatok és objektumok cseréje, manipulálása Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015111

112 Modell - diagram A kettő nem ugyanaz! „A modellek (tehát) több diagramból állnak, a diagramok pedig az elemek és azok más elemekkel való kölcsönhatásának ábrázolásai.” (Forrás: UML földi halandóknak könyv) Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015112

113 Diagram Szerkezeti diagram Viselkedési diagram Osztály diagram (class) Objektumd. (object) Csomagdiagram (package) Összetevő d. (component) Összetett szerkezet d. (composite structure) Kialakítás d. (deployment) Tevékenység d. (activity) Használati eset d.(use-case) Állapotautomata d.(state machine) Kölcsönhatási diagram Sorrenddiagram (sequence) Kommunikációs d. (communication) Kölcsönhatás áttekintő d. (interaction overview) Időzítés d. (timing) Kontextus diagram Szakarchitektúra diagram Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 113

114 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Diagram típusok Szerkezeti diagramok: Osztálydiagram (class) Objektumdiagram (object) Csomagdiagram (package) Összetevő diagram (component) Kontextus d., Szakarchitektúra d. Összetett szerkezet diagram (composite stucture) Kihelyezési/telepítési/kihelyezési diagram (deployment) Viselkedési diagramok: Tevékenység diagram (activity) Használati eset vagy feladat diagram (use-case) Állapotautomata vagy állapotgép diagram (state machine) Kölcsönhatási diagramok: Sorrend diagram (sequence) Kommunikációs diagram (communication) Időzítés diagram (timing) Kölcsönhatás áttekintő diagram (interaction overview) 114

115 Szerkezeti és viselkedési A szerkezeti diagramok (statikus) nem törődnek az időbeli változással, ők a modellezett rendszer állapotát egy adott időpillanatban mutatják be. Viselkedési diagramok (dinamikus) folyamatában, változásában mutatják ugyanazt a modellezett rendszert. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015115

116 Szerkezeti diagramok 1 Osztálydiagram: az UML modellezésben leggyakrabban használt diagramfajta. A rendszerben található állandó elemeket, azok szerkezetét és egymás közötti logikai kapcsolatát jeleníti meg. Objektumdiagram: a rendszer egy adott időpontban érvényes pillanatképét határozza meg. Az osztálydiagramból származtatjuk. Csomagdiagram: a csomagok olyan modellelemek, amelyek más modellelemek csoportosítására szolgálnak, és ezeket valamint a köztük lévő kapcsolatokat ábrázolja ez a fajta diagram. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015116

117 Szerkezeti diagramok 2 Összetevő diagram: az összetevő vagy komponens a rendszer fizikailag létező és lecserélhető része, feltéve, hogy az új komponens csatlakozási felülete (interfésze) megegyezik a régivel. Főleg implementációs kérdések eldöntését segíti. A megvalósításnak és a rendszeren belüli elemek együttműködésének megfelelően mutatja be a rendszert. Összetett szerkezeti diagram: A modellelemek belső szerkezetét mutatja. Kialakítás/kihelyezés/telepítési diagram: A fizikai (kész) rendszer futásidejű felépítését mutatja. Tartalmazza a hardver és a szoftverelemeket is. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015117

118 Viselkedési diagramok Tevékenységdiagram: A rendszeren belüli tevékenységek folyamatát jeleníti meg. Általában üzleti folyamatok leírására használjuk. Használati eset/feladat diagram: A rendszer viselkedését írja le, úgy, ahogy az egy külső szemlélő szemszögéből látszik. Állapotautomata diagram: Az objektumok állapotát és az állapotok közötti átmeneteket mutatja, valamint azt, hogy az átmenetek milyen esemény hatására következnek be. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015118

119 Kölcsönhatási diagramok Kommunikációs diagram: Az objektumok hogyan működnek együtt a feladat megoldása során, hogyan hatnak egymásra. Sorrenddiagram: Az objektumok közötti üzenetváltás időbeli sorrendjét mutatja. Időzítés diagram: A kölcsönhatásban álló elemek részletes időinformációit és állapotváltozásait vagy állapotinformációit írja le. Kölcsönhatás áttekintő diagram: Magas szintű diagram, amely a kölcsönhatás-sorozatok közötti vezérlési folyamatról ad áttekintést. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015119

120 ELVÁRÁSOK ELEMZÉSE ÉS SPECIFIKÁCIÓ Szoftvertechnológia Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 120

121 Elvárások elemzése és specifikáció A vevői/megrendelői elvárások összegyűjtése, elemzése (Mit is kellene csinálni? Mikorra, és mennyiért?) A rendszer környezetének felmérése A feladat leírása Információgyűjtés az adott területen dolgozó szakemberektől (pl. interjúk). Az adott terület üzleti folyamatainak beazonosítása A feladat lefordítása a szakmai nyelven megfogalmazott specifikációkra, ami magában foglalja a megvalósíthatóság vizsgálatát is. Dokumentálás: szakterületi fogalomtár, üzleti folyamatok strukturált leírása táblázatos formában és használati eset diagramok segítségével, tevékenység diagramok, állapot automata. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015121

122 Lépések Szakterületi fogalomtár Interjú – leírás szabad szöveges formában Interjú – leírás strukturáltan rendezve Az üzleti folyamatok táblázatos leírása egyenként Használati eset diagram elkészítése Használati esetek részletes, táblázatos dokumentálása Folyamatok (lépések) modellezése tevékenység diagram segítségével Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015122

123 Szakterületi fogalomtár A témakörhöz, feladathoz kapcsolódó fontosabb kifejezések, elnevezések felsorolása és magyarázata Nem szükséges minden esetben Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015123

124 Interjú leírása szabad szöveges formában Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Forrás: http://www.tankonyvtar.hu/hu/tartalom/tamop425/0008_tarcali/Tarczali_UML_diagramok_17_17.html 124

125 Interjú leírása strukturált szövegként Forrás:http://www.tankon yvtar.hu/hu/tartalom/tam op425/0008_tarcali/Tarc zali_UML_diagramok_18 _18.html Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015125

126 Az üzleti folyamatok táblázatos leírása egyenként Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Forrás: http://www.tankonyvtar.hu/hu/tartalom/tamop425/0008_tarcali/Tarczali_UML_diagramok_19_19.html 126

127 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015127

128 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Használati eset diagram Leggyakrabban a követelményelemzés és a specifikáció során alkalmazzák A rendszer viselkedését írja le, ahogyan az egy külső szemlélő szemszögéből látszik Összetevői Használati eset Szereplő Rendszerhatár 128

129 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Kapcsolatok Asszociáció Általánosítás 129

130 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Kapcsolatok - függőségek > 130

131 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Használati eset diagram készítése Enterprise Architectben Könyvtári rendszer használati eset diagramja 131

132 Folyamatok modellezése Tevékenység diagram Állapotautomata Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015132

133 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Tevékenység diagram A probléma megoldásának a lépéseit szemlélteti, a párhuzamosan zajló vezérlési folyamatokkal együtt Hasznos az üzleti vagy munkafolyamatok modellezésére, használati esetek vagy konkrét algoritmusok lefutásának leírására Az állapotautomata egy változatának is tekinthető, ahol az állapotok helyére a végrehajtandó tevékenységeket tesszük, az állapotátmenetek pedig a tevékenységek befejezésének eredményeként valósulnak meg. Action, Activity 133

134 Pénzfelvétel Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015134

135 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Másodfokú egyenlet megoldása 135

136 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Párhuzamos feladatvégrehajtás Elágazás (fork) Csatlakozás (join) 136

137 Tevékenység diagram aktorok szerinti partícióval Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015137

138 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015Dr. Johanyák Zs. Csaba - Szoftvertechn. - 2009 Kivétel Mi idézheti elő? Külső esemény (pl. adathordozóval megszakad a kapcsolat) Időpont (pl. inaktív ftp kapcsolat megszakítása) Esetválasztás (pl. hibás paraméterezés következtében a hívott metódus kivételt idéz elő) Célzott előidézés - továbbadás (throw) 138

139 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Alap tevékenységek Követelményelemzés (Mit is kellene csinálni? Mikorra, és mennyiért? – megvalósíthatóság vizsgálata) Tervezés (architekturális tervezés, absztrakt specifikáció, interfész tervezés) Implementálás (komponens tervezés, adatszerkezet tervezés és algoritmus tervezés) Kipróbálás, validálás, bevezetés (szoftverátvizsgálás és tesztelés) Működtetés, karbantartás, továbbfejlesztés, leállítás Ismétlés 139

140 Diagram Szerkezeti diagram Viselkedési diagram Osztály diagram (class) Objektumd. (object) Csomagdiagram (package) Összetevő d. (component) Összetett szerkezet d. (composite structure) Kialakítás d. (deployment) Tevékenység d. (activity) Használati eset d.(use-case) Állapotautomata d.(state machine) Kölcsönhatási diagram Sorrenddiagram (sequence) Kommunikációs d. (communication) Kölcsönhatás áttekintő d. (interaction overview) Időzítés diagram (timing) Kontextus diagram Szakarchitektúra diagram Ismétlés Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 140

141 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Állapotgép Az objektumok, a használati eseteknek és a protokollok dinamikus viselkedését mutatja, vagy a dialógusok lefutásának leírására is alkalmas Állapot Állapot: az objektum állapotát az attribútumai konkrét értékeinek n-esével jellemezzük. Tervezés és implementálás során Állapotátmenet: két állapot közötti kapcsolat, amely kifejezi, hogy egy adott állapotban lévő objektum egy esemény vagy valamely feltétel bekövetkezésének hatására milyen másik állapotba kerül 141

142 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015142

143 Állapot Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015143

144 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Álapotdiagram 144

145 Diszjunkt alállapotok Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 145

146 Állapotátmenetek Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015146

147 Egy kezdőállapot, több végállapot Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015147

148 Állapotgép könyv – könyvtári rendszer Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 148

149 Összetett állapotok Állapotok aggregációja Diszjunkt szub- vagy alállapotok Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015149

150 Állapotok aggregációja A B és C alrendszerek párhuzamosan működnek Az A állapotát a B és C állapotának az „összege” adja. Ezek egymással párhuzamosan kerülnek különböző állapotokba. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 150

151 Diszjunkt alállapotok Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015151

152 Emlékező vagy történeti állapot Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015152

153 Állapotátmenetek

154 Történeti állapot Egyszerű történeti állapot H – csak az állapotkonfiguráció legfelső szintjét őrzi meg Mély történeti állapot H* - teljes mélységében megőrzi az állapotkonfigurációt Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015154

155 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Állapotgép - tanulmányi rendszer - tantárgyfelvétel 155

156 Állapotgép - párátlanító Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 http://www.altova.com/umodel/state-diagrams.html 156

157 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Alap tevékenységek Követelményelemzés (Mit is kellene csinálni? Mikorra, és mennyiért? – megvalósíthatóság vizsgálata) Tervezés (architekturális tervezés, absztrakt specifikáció, interfész tervezés) Implementálás (komponens tervezés, adatszerkezet tervezés és algoritmus tervezés) Kipróbálás, validálás, bevezetés (szoftverátvizsgálás és tesztelés) Működtetés, karbantartás, továbbfejlesztés, leállítás Ismétlés 157

158 TERVEZÉS Szoftvertechnológia Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 158

159 Tervezés Szoftverarchitektúra beazonosítása (K-A-RM) Felhasználói interfészeken lefutó interakciók modellezése Osztályok és felépítésük Objektum életciklusok és objektum interakciók kidolgozása A tervezés során alkalmazható diagramok: kontextus d., architektúra d., rendszer- montázs d., tervezési osztálydiagram Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015159

160 Kontextus diagram Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015160

161 Táblázat Ügyfél FeladatPénzkivétel, mobil egyenleg feltöltés, stb. Mennyiség* FajtaTermészetes személy Betanítási idő- Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015161

162 Táblázat Alkalmazott (pénzfeltöltő) FeladatKészpénz elhelyezése az automatába MennyiségHeti két alkalom FajtaAlkalmazott Betanítási időFél nap Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015162

163 Szakarchitektúra diagram Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015163

164 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Összetett szerkezeti diagram Composite structure diagram Megmutatja egy osztály belső szerkezetét és az egységek közötti együttműködési lehetőséget. 164

165 Osztálydiagram Az UML modellezésben leggyakrabban használt diagramfajta. A rendszerben található állandó elemeket, azok szerkezetét és egymás közötti logikai kapcsolatát jeleníti meg. Általában a rendszer logikai és fizikai felépítésének ábrázolására szolgál. UML-beli osztály NEM UGYANAZ, mint a programozási nyelvek osztályfogalma! – többféle jelentés Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015165

166 UML-beli osztály jelentései Fogalom: Ez az elemzési/ tervezési fázisban gyakori, ahol a szakterület fogalmait nevezzük osztálynak Típus: Ez már programozási nyelv közelibb; az objektumok az osztály típus értékei, példányai. Objektumhalmaz: Az osztály itt csak egy csoportosítás, az azonos felépítésű objektumok halmaza Implementáció: Az OOP nyelvekben az osztály egyszerűen csak egy implementáció (kód) is lehet, amin az objektumai osztoznak Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015166

167 Szoftver életciklus fázisai 1. Elemzési fázisban az osztály mint Fogalom – igen Típus – esetleg Objektumhalmaz – nem Implementáció (kód) - nem Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015167

168 Szoftver életciklus fázisai 2. Tervezési fázisban az osztály mint Fogalom – esetleg Típus – igen Objektumhalmaz – igen Implementáció (kód) - esetleg Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015168

169 Szoftver életciklus fázisai 3. Megvalósítási fázisban az osztály mint Fogalom – nem Típus – igen Objektumhalmaz – igen Implementáció (kód) - igen Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015169

170 Osztálydiagram példa Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015170

171 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Osztálydiagram 171

172 Osztálydiagram példa Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015172

173 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Az osztályok közötti kapcsolatok Asszociáció/társítás (association) Aggregáció/rész-egész kapcsolat (aggregation) Általánosítás (generalization) Függőség (dependency) Megvalósítás (realization) 173

174 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Asszociáció Reflexív asszociáció – Többes asszociáció 174

175 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Aggregáció Kompozíció (erős tartalmazás) Gyenge tartalmazás 175

176 Példák Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015176

177 Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 További kapcsolatok Általánosítás Függőség Megvalósítás 177


Letölteni ppt "Szoftvertechnológia 2015/2016 – 1. félév. Dr. Johanyák Zs. Csaba - Szoftvertechnológia - 2015 Előadó Dr. Johanyák Zsolt Csaba"

Hasonló előadás


Google Hirdetések