[[oktatas:programozás|< Programozás]] ====== A szoftverek életciklusa ====== * **Szerző:** Sallai András * Copyright (c) Sallai András, 2014, 2015, 2018 * Licenc: GNU Free Documentation License 1.3 * Web: http://szit.hu ===== A szoftverek életciklusáról ===== A szoftver egy speciális ipari termék, mert ha egyetlen része hibás, akkor az egész nem működhet. Hogyan néz ki egy szoftver életciklusa? Hol kezdődik? Milyen részekre osztható fel és hol van vége? Legegyszerűbb ábra: {{:oktatas:programozás:szoftver_eletciklus_3.png|}} Részletesen a következő pontokat határozhatjuk meg: * projekt elhatározása * elemzés * tervezés * megvalósítás * tesztelés * terjesztés * oktatás és támogatás * karbantartás {{:oktatas:programozás:szoftver_eletciklus.png|}} {{:oktatas:programozás:szoftver_eletciklus_2.png|}} {{:oktatas:programozás:hagyomanyosgyartaseletciklus.png|}} {{:oktatas:programozás:szoftverekeletciklusa.png|}} ===== Egy szoftver életciklusa egy verzión belül ===== * pre-alfa * alfa * béta * kiadásra jelölt - release candidate - RC * kiadott - released {{:oktatas:programozás:szoftvereletciklusaverzionbelul.png|}} Van ahol csak verziószámokkal tüntetik fel a nem teljes változatot: ^ Első prototípus ^ ^ ^ ^ ^ Félig kész ^ ^ ^ Kiadás előtt ^ Első kiadás ^ Hibajavítások ^ Második kiadás ^ | 0.01 | 0.1 | 0.2 | 0.3 | .. | 0.5 | .. | 0.9 | 0.9.1 | 1.0 | 1.01 | 2.0 | | Hiányoznak funkciók ||||||||| "Minden" funkció || Bővebb funkciók | ===== Szoftverek sorsa ===== {{:oktatas:programozás:a_rendszerek_sorsa.png?300|}} ===== Statisztikák ===== A megírt programsorokból statisztikát készíthetünk. Így alakult ki a LOC vagy SLOC mértékegység. A LOC a lines of code rövidítése. Az SLOC a Source Lines Of Code rövidítése. 100 LOC, száz megírt kódsort jelent. A kérdés persze az, hogy mit tekintünk kódsornak. Hasonlítsuk össze a következő két kódot: for (int i = 0; i < 10; i++) kiir("helló"); /* Hány sor ez a kódrész? */ for (int i = 0; i < 10; i++) kiir("helló"); /* Hány sor ez a kódrész? */ A for ciklust több sorba szoktuk írni. De akár egy sorban is írható. De hogyan számoljuk egy statisztika esetén? A LOC mellett használhatom a SI prefixumokat. Ekkor 1000 LOC így írandó: 1 kLOC * 1000 LOC = 1 kLOC Szoftverprojektek statisztikája nemzetközi szinten: * tipikus kódméret: 10 kLOC … 1000 kLOC * fejlesztési idő: 0,1 - 0,5 mérnökév / kLOC (nagyméretű szoftver) * 5-10 mérnökév / kLOC (kritikus szoftver) * Hiba eltávolítás (ellenőrzés, tesztelés, javítás): 45 - 75% ráfordítás * Hibasűrűség változása: 10 - 200 hiba / kLOC jön létre a fejlesztés során ===== Források ===== * A diagram értékeinek forrása: * Dr. Szepesné Stiftinger Mária (2010) - Nyugat-magyarországi * Egyetem - http://tankonyvtar.hu * Nemzetközi statisztika a kódsorokról: * https://inf.mit.bme.hu/ * Majzik István; Szoftver verifikáció és validáció; Bevezető áttekintés