SDLC – Iteratív modell

Hirdetések

Az iteratív modellben az iteratív folyamat a szoftverkövetelmények egy kis halmazának egyszerű megvalósításával kezdődik, és iteratív módon fejleszti a fejlődő változatokat, amíg a teljes rendszer megvalósul és készen áll a bevezetésre.

Az iteratív életciklus-modell nem próbál a követelmények teljes specifikációjával kezdeni. Ehelyett a fejlesztés a szoftver csak egy részének meghatározásával és megvalósításával kezdődik, amelyet aztán felülvizsgálnak a további követelmények azonosítása érdekében. Ezt a folyamatot ezután megismétlik, és a modell minden egyes iterációjának végén a szoftver új verzióját állítják elő.

Iteratív modell – tervezés

Az iteratív folyamat a szoftverkövetelmények egy részhalmazának egyszerű megvalósításával kezdődik, és iteratív módon fejleszti a fejlődő változatokat, amíg a teljes rendszer meg nem valósul. Minden egyes iteráció során tervezési módosítások történnek, és új funkcionális képességek kerülnek hozzáadásra. A módszer alapgondolata, hogy a rendszert ismétlődő ciklusokon keresztül (iteratív) és egyszerre kisebb részekben (inkrementális) fejlesztjük.

A következő ábra az iteratív és inkrementális modell ábrázolása –

Az iteratív és inkrementális fejlesztés az iteratív tervezés vagy iteratív módszer és a fejlesztés inkrementális építési modelljének kombinációja. “A szoftverfejlesztés során a szoftverfejlesztési ciklus egynél több iterációja is folyamatban lehet egyidejűleg”. Ez a folyamat “evolúciós beszerzés” vagy “inkrementális építés” megközelítésként írható le.”

Ez inkrementális modellben a teljes követelményt különböző építésekre osztják fel. Minden egyes iteráció során a fejlesztési modul végigmegy a követelmények, a tervezés, a megvalósítás és a tesztelés fázisain. A modul minden egyes következő kiadása funkcióval egészíti ki az előző kiadást. A folyamat addig folytatódik, amíg a teljes rendszer el nem készül a követelménynek megfelelően.

Az iteratív szoftverfejlesztési életciklus sikeres alkalmazásának kulcsa a követelmények szigorú validálása, és a szoftver minden egyes verziójának a modell minden egyes ciklusán belüli, e követelményekkel szembeni verifikációs & tesztelése. Ahogy a szoftver az egymást követő ciklusokon keresztül fejlődik, a teszteket meg kell ismételni és ki kell terjeszteni a szoftver minden egyes verziójának ellenőrzésére.

Iteratív modell – Alkalmazás

A többi SDLC-modellhez hasonlóan az iteratív és inkrementális fejlesztésnek is van néhány speciális alkalmazása a szoftveriparban. Ezt a modellt leggyakrabban a következő forgatókönyvekben használják –

  • A teljes rendszer követelményei világosan meghatározottak és érthetőek.

  • A főbb követelményeket meg kell határozni, azonban egyes funkciók vagy kért fejlesztések idővel fejlődhetnek.

  • Létezik a piackorlátozás.

  • Új technológiát használnak, és azt a fejlesztőcsapat a projekt munkája során megtanulja.

  • A szükséges készségekkel rendelkező erőforrások nem állnak rendelkezésre, és a tervek szerint szerződéses alapon veszik igénybe őket bizonyos iterációkhoz.

  • Vannak olyan magas kockázatú funkciók és célok, amelyek a jövőben változhatnak.

Iteratív modell – előnyök és hátrányok

Ez a modell előnye, hogy a fejlesztés nagyon korai szakaszában már van egy működő modell a rendszerről, ami megkönnyíti a funkcionális vagy tervezési hibák megtalálását. A problémáknak a fejlesztés korai szakaszában történő megtalálása lehetővé teszi, hogy korlátozott költségvetés mellett javító intézkedéseket tegyünk.

A hátránya ennek az SDLC-modellnek, hogy csak nagy és terjedelmes szoftverfejlesztési projektekre alkalmazható. Ennek oka, hogy egy kis szoftverrendszert nehéz további kis, használható inkrementumokra/modulokra bontani.

Az iteratív és inkrementális SDLC modell előnyei a következők –

  • Egy bizonyos működő funkcionalitás gyorsan és az életciklus korai szakaszában fejleszthető.

  • Eredményeket korán és időszakosan kapunk.

  • Párhuzamos fejlesztés tervezhető.

  • A fejlődés mérhető.

  • Kisebb költséggel jár a terjedelem/követelmények módosítása.

  • A kisebb iterációk során a tesztelés és hibakeresés egyszerű.

  • A kockázatok az iteráció során azonosíthatók és megoldhatók; és minden egyes iteráció egy könnyen kezelhető mérföldkő.

  • Egyszerűbb a kockázatkezelés – a magas kockázatú rész készül el először.

  • Minden inkrementummal működőképes termék kerül átadásra.

  • Az egyes növekményekből azonosított problémák, kihívások és kockázatok felhasználhatók/alkalmazhatók a következő növekményre.

  • A kockázatelemzés jobb.

  • Támogatja a változó követelményeket.

  • Kisebb a kezdeti működési idő.

  • Jobb a nagy és kritikus fontosságú projektekhez.

  • Az életciklus során a szoftver korán elkészül, ami megkönnyíti a vevői értékelést és visszajelzést.

Az iteratív és inkrementális SDLC-modell hátrányai a következők: –

  • Több erőforrásra lehet szükség.

  • A változtatás költségei ugyan kisebbek, de a változó követelményekre nem nagyon alkalmas.

  • Magasabb vezetői figyelmet igényel.

  • Rendszerarchitektúrával vagy tervezéssel kapcsolatos problémák merülhetnek fel, mivel a teljes életciklus elején nem gyűjtenek össze minden követelményt.

  • Az inkrementumok meghatározása a teljes rendszer meghatározását igényelheti.

  • Kisebb projektekhez nem alkalmas.

  • A menedzsment bonyolultabb.

  • A projekt vége nem feltétlenül ismert, ami kockázatot jelent.

  • A kockázatelemzéshez magasan képzett erőforrásokra van szükség.

  • A projekt előrehaladása nagyban függ a kockázatelemzési fázistól.

Hirdetések

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.