Szoftverfejlesztési életciklus (SDLC) fázisok és modellek

Mi az SDLC?

SDLC egy olyan szisztematikus folyamat a szoftverkészítéshez, amely biztosítja a megépített szoftver minőségét és helyességét. Az SDLC folyamat célja olyan kiváló minőségű szoftver előállítása, amely megfelel az ügyfelek elvárásainak. A rendszerfejlesztésnek az előre meghatározott időkeretben és költségben kell teljesülnie. Az SDLC egy részletes tervből áll, amely elmagyarázza, hogyan kell megtervezni, felépíteni és karbantartani egy adott szoftvert. Az SDLC életciklusának minden fázisa megvan a maga folyamata és a szállítmányok, amelyek beépülnek a következő fázisba. Az SDLC jelentése Szoftverfejlesztési életciklus és Alkalmazásfejlesztési életciklusnak is nevezik.

Miért SDLC?

Íme, a legfontosabb okok, amelyek miatt az SDLC fontos egy szoftverrendszer fejlesztéséhez.

  • Alapot nyújt a projekttervezéshez, ütemezéshez és becsléshez
  • Keretrendszert biztosít a tevékenységek és eredmények szabványos készletéhez
  • Ez egy mechanizmus a projekt nyomon követésére és ellenőrzésére
  • Növeli a projekttervezés láthatóságát a fejlesztési folyamatban érintett valamennyi érintett számára
  • Növeli és fokozza a fejlesztési sebességet
  • Javított ügyfélkapcsolatok
  • Segít csökkenteni a projektkockázatot és a projektmenedzsment-tervet

 

SDLC fázisok

A teljes SDLC folyamat a következő SDLC lépésekre oszlik:

SDLC fázisok
SDLC fázisok
  • 1. fázis: Követelménygyűjtés és elemzés
  • 2. fázis: Megvalósíthatósági tanulmány
  • 3. fázis: Tervezés
  • 4. fázis: Kódolás
  • 5. fázis: Tesztelés
  • 6. fázis: Telepítés/Üzembe helyezés
  • 7. fázis: Karbantartás

Ebben az oktatóanyagban elmagyaráztam ezeket a szoftverfejlesztési életciklus fázisokat

1. fázis: Követelménygyűjtés és elemzés

A követelmény az SDLC folyamat első szakasza. Ezt a vezető csapat tagjai hajtják végre, az iparág összes érdekelt felének és területi szakértőjének hozzájárulásával. Tervezés a minőségbiztosítás a követelmények és a kapcsolódó kockázatok felismerése is ebben a szakaszban történik.

Ez a szakasz világosabb képet ad a teljes projekt hatóköréről és a várható problémákról, lehetőségekről és irányelvekről, amelyek elindították a projektet.

Követelmények Az összejövetel szakaszában csapatokra van szükség a részletes és pontos követelmények eléréséhez. Ez segít a vállalatoknak abban, hogy véglegesítsék a rendszer munkájának befejezéséhez szükséges ütemtervet.

2. fázis: Megvalósíthatósági tanulmány

Miután a követelményelemzési fázis befejeződött, a következő sdlc lépés a szoftverigények meghatározása és dokumentálása. Ezt a folyamatot a „Szoftverkövetelmény-specifikáció” dokumentum, más néven „SRS” dokumentum segítségével hajtották végre. Mindent magában foglal, amit a projekt életciklusa során meg kell tervezni és fejleszteni.

Főleg ötféle megvalósíthatósági ellenőrzés létezik:

  • Gazdasági: Be tudjuk fejezni a projektet a költségvetésen belül vagy sem?
  • Legal: Kezelhetjük-e ezt a projektet kiberjog és egyéb szabályozási keretek/megfelelőségekként?
  • Operakivitelezhetősége: Létrehozhatunk olyan műveleteket, amelyeket az ügyfél elvár?
  • Műszaki: Ellenőriznie kell, hogy a jelenlegi számítógépes rendszer támogatja-e a szoftvert
  • Menetrend: Döntse el, hogy a projekt a megadott ütemezésen belül befejezhető-e vagy sem.

3. fázis: Tervezés

Ebben a harmadik fázisban a rendszer- és szoftvertervezési dokumentumok a követelményspecifikációs dokumentum szerint készülnek el. Ez segít meghatározni a rendszer általános architektúráját.

Ez a tervezési fázis bemenetként szolgál a modell következő fázisához.

Ebben a fázisban kétféle tervezési dokumentum készül:

Magas szintű tervezés (HLD)

  • Az egyes modulok rövid leírása és neve
  • Vázlat az egyes modulok működéséről
  • Interfész kapcsolat és függőségek a modulok között
  • Adatbázistáblázatok azonosítása kulcselemeikkel együtt
  • Teljes architektúra diagramok technológiai részletekkel együtt

Alacsony szintű tervezés (LLD)

  • A modulok funkcionális logikája
  • Adatbázis táblák, amelyek tartalmazzák a típust és a méretet
  • A felület teljes részletezése
  • Minden típusú függőségi problémát kezel
  • A hibaüzenetek listája
  • Komplett bemenetek és kimenetek minden modulhoz

4. fázis: Kódolás

Ha a rendszertervezési fázis véget ért, a következő fázis a kódolás. Ebben a fázisban a fejlesztők elkezdik a teljes rendszer felépítését úgy, hogy kódot írnak a választott programozási nyelven. A kódolási fázisban a feladatokat egységekre vagy modulokra osztják, és a különböző fejlesztőkhöz rendelik. Ez a szoftverfejlesztési életciklus folyamatának leghosszabb szakasza.

Ebben a fázisban a Fejlesztőnek bizonyos előre meghatározott kódolási irányelveket kell követnie. Használniuk is kell programozási eszközök mint a fordító, az értelmezők, a hibakereső a kód generálásához és megvalósításához.

5. fázis: Tesztelés

Miután a szoftver elkészült, és a tesztkörnyezetben üzembe kerül. A tesztelő csapat megkezdi a teljes rendszer működőképességének tesztelését. Ez annak ellenőrzésére szolgál, hogy a teljes alkalmazás az ügyfél követelményeinek megfelelően működik-e.

Ebben a fázisban a minőségbiztosítás és a tesztelő csapat találhat néhány hibát/hibát, amelyet közölnek a fejlesztőkkel. A fejlesztőcsapat kijavítja a hibát, és visszaküldi a QA-nak újbóli tesztelésre. Ez a folyamat addig folytatódik, amíg a szoftver hibamentes, stabil, és a rendszer üzleti igényeinek megfelelően működik.

6. fázis: Telepítés/Üzembe helyezés

Miután a szoftvertesztelési szakasz véget ért, és nem maradtak hibák vagy hibák a rendszerben, megkezdődik a végső telepítési folyamat. A projektmenedzser visszajelzései alapján a végleges szoftver kiadásra kerül, és ellenőrzik, hogy vannak-e telepítési problémák, ha vannak ilyenek.

7. fázis: Karbantartás

A rendszer üzembe helyezése és az ügyfelek a kifejlesztett rendszer használatának megkezdése után a következő 3 tevékenység történik

  • Hibajavítás – hibákat jelentenek bizonyos forgatókönyvek miatt, amelyeket egyáltalán nem tesztelnek
  • Upgrade – Az alkalmazás frissítése a Szoftver újabb verzióira
  • Bővítés – Néhány új funkció hozzáadása a meglévő szoftverhez

Ennek az SDLC-fázisnak a fő célja annak biztosítása, hogy az igények továbbra is kielégíthetők legyenek, és hogy a rendszer továbbra is az első fázisban említett specifikáció szerint működjön.

Népszerű SDLC modellek

Íme néhány a szoftverfejlesztési életciklus (SDLC) legfontosabb modelljei közül:

Vízesés modell SDLC-ben

A vízesés egy széles körben elfogadott SDLC-modell. Ebben a megközelítésben a szoftverfejlesztés teljes folyamata az SDLC különböző fázisaira oszlik. Ebben az SDLC modellben az egyik fázis eredménye a következő fázis bemeneteként működik.

Ez az SDLC-modell dokumentációigényes, a korábbi fázisok dokumentálják, hogy mit kell elvégezni a következő fázisokban.

Növekményes modell SDLC-ben

A növekményes modell nem különálló modell. Ez lényegében vízesési ciklusok sorozata. A követelményeket a projekt kezdetén csoportokra osztják. Minden csoport esetében az SDLC modellt követik a szoftver fejlesztése. Az SDLC életciklus-folyamata megismétlődik, és minden egyes kiadás több funkciót ad hozzá, amíg az összes követelmény teljesül. Ebben a módszerben minden ciklus az előző szoftverkiadás karbantartási fázisaként működik. A növekményes modell módosítása lehetővé teszi a fejlesztési ciklusok átfedését. Ezt követően a következő ciklus megkezdődhet, mielőtt az előző ciklus befejeződik.

V-modell SDLC-ben

Az ilyen típusú SDLC modell tesztelésben és a fejlesztésben párhuzamosan tervezzük a fázist. Tehát az SDLC ellenőrzési fázisai vannak az oldalon, és az érvényesítési fázis a másik oldalon. A V-Model kódolási fázissal csatlakozik.

Agilis modell SDLC-ben

Az agilis módszertan egy olyan gyakorlat, amely elősegíti a fejlesztés és a tesztelés folyamatos interakcióját bármely projekt SDLC folyamata során. Az Agilis módszerben a teljes projektet kis növekményes buildekre osztják. Mindezek a buildek iterációban állnak rendelkezésre, és minden iteráció egy-három hétig tart.

Spirálmodell

A spirálmodell egy kockázatvezérelt folyamatmodell. Ez az SDLC tesztelési modell segít a csapatnak egy vagy több folyamatmodell elemeinek, például vízesés, növekményes, vízesés stb.

Ez a modell a prototípusmodell és a vízesés modell legjobb tulajdonságait alkalmazza. A spirál módszertan a gyors prototípuskészítés és a tervezési és fejlesztési tevékenységek párhuzamosságának kombinációja.

Big bang modell

Az ősrobbanás-modell a szoftverfejlesztés és -kódolás minden típusú erőforrására összpontosít, tervezés nélkül vagy nagyon kevéssé. A követelményeket megértik és végrehajtják, amikor jönnek.

Ez a modell a legjobban olyan kis projekteknél működik, amelyek kisebb méretű fejlesztőcsapattal dolgoznak együtt. Akadémiai szoftverfejlesztési projektekhez is hasznos. Ideális modell, ahol a követelmények vagy ismeretlenek, vagy nincs megadva a végleges megjelenési dátum.

Összegzésként

  • A szoftverfejlesztési életciklus (SDLC) egy olyan szisztematikus folyamat a szoftverkészítéshez, amely biztosítja a megépített szoftver minőségét és helyességét.
  • Az SDLC teljes formája a szoftverfejlesztési életciklus vagy a rendszerfejlesztési életciklus.
  • Az SDLC a szoftverfejlesztésben keretet biztosít a tevékenységek és a termékek szabványos készletéhez
  • Az SDLC hét különböző szakasza a következő: 1) Követelménygyűjtés és elemzés 2) Megvalósíthatósági tanulmány: 3) Tervezés 4) Kódolás 5) Tesztelés: 6) Telepítés/Üzembe helyezés és 7) Karbantartás.
  • Az idősebb csapat tagjai vezetik a követelményelemzés fázis
  • A megvalósíthatósági tanulmány szakasza mindent magában foglal, amit a projekt életciklusa során meg kell tervezni és fejleszteni
  • A tervezési szakaszban a rendszer és szoftver tervezési dokumentumok a követelményspecifikációs dokumentum szerint készülnek el
  • A kódolási fázisban a fejlesztők elkezdik a teljes rendszer felépítését úgy, hogy kódot írnak a választott programozási nyelven
  • A tesztelés a következő fázis, amelynek során ellenőrizni kell, hogy a teljes alkalmazás az ügyfél követelményeinek megfelelően működik-e.
  • A telepítési és telepítési arc akkor kezdődik, amikor a szoftver tesztelés fázis véget ért, és nem maradt hiba vagy hiba a rendszerben
  • Hibajavítás, frissítés és bevonási műveletek a karbantartási felületen
  • Waterfall, Incremental, Agile, V model, Spiral, Big Bang néhány népszerű SDLC modell a szoftverfejlesztésben
  • Az SDLC a szoftvertesztelésben egy részletes tervből áll, amely elmagyarázza, hogyan kell megtervezni, felépíteni és karbantartani egy adott szoftvert