2.2. A szoftver életciklusa

A szoftver életciklus (Software Development Life Cycle (SDLC)) a szoftverrel egy idős fogalom. Ha átadunk egy szoftvert a felhasználóknak, akkor a felhasználók előbb vagy utóbb újabb igényekkel állnak elő, ami a szoftver továbbfejlesztését teszi szükségessé. Tehát egy szoftver soha sincs kész, ciklikusan meg-megújul. Ezt nevezzük életciklusnak.

Az életciklus lépéseit a módszertanok határozzák meg. Ezeket később fejtjük ki. Itt egy általános életciklust tekintünk át.

A szoftverfejlesztés életciklusa (zárójelben a legfontosabb elkészítendő termékek):

  1. A felhasználókban új igény merül fel.

  2. Az igények, követelmények elemzése, meghatározása (követelmény specifikáció).

  3. Rendszerjavaslat kidolgozása (funkcionális specifikáció, szerződéskötés).

  4. Rendszerspecifikáció (megvalósíthatósági tanulmány, nagyvonalú rendszerterv).

  5. Logikai és fizikai tervezés (logikai- és fizikai rendszerterv).

  6. Implementáció (szoftver).

  7. Tesztelés (tesztterv, tesztesetek, teszt napló, validált szoftver).

  8. Rendszerátadás és bevezetés (felhasználói dokumentáció).

  9. Üzemeletetés és karbantartás (rendszeres mentés).

  10. A felhasználókban új igény merül fel.

. ábra Életciklus

Látható, hogy az első lépés és az utolsó ugyanaz. Ez biztosítja a ciklikusságot. Elvileg egy hasznos szoftvernek végtelen az életciklusa. Gyakorlatilag a szoftver és futási környezete elöregszik. Előbb-utóbb már nem lesz programozó, aki ismerné a programozási nyelvet, amin íródott (ilyen probléma van manapság a COBOL programokkal), a futtató operációs rendszerhez nincsenek frissítések, a meghibásodott hardver elemeket nem lehet pótolni. Az ilyen IT rendszereket hívjuk „legacy system”-nek (kiöregedett, hagyaték rendszernek). Valahol itt van vége az életciklusnak. Az életciklus egyes lépéseit részletesebben is kifejtjük.