Model spiralny: kiedy stosować? Zalety i wady

Co to jest model spiralny?

Model spiralny to model procesu tworzenia oprogramowania oparty na ryzyku. Jest to połączenie modelu kaskadowego i modelu iteracyjnego. Model Spiral pomaga zaadaptować elementy tworzenia oprogramowania z wielu modeli procesów do projektu oprogramowania w oparciu o unikalne wzorce ryzyka, zapewniając efektywny proces rozwoju.

Każda faza modelu spiralnego w inżynierii oprogramowania zaczyna się od celu projektowego i kończy się przeglądem postępów przez klienta. Model spiralny w inżynierii oprogramowania został po raz pierwszy wspomniany przez Barry'ego Boehma w jego artykule z 1986 r.

Proces rozwoju w modelu spiralnym w SDLC rozpoczyna się od małego zestawu wymagań i przechodzi przez każdą fazę rozwoju dla tego zestawu wymagań. Zespół inżynierów oprogramowania dodaje funkcjonalność dla dodatkowych wymagań w coraz większych spiralach, aż aplikacja będzie gotowa do fazy produkcyjnej. Poniższy rysunek bardzo dobrze wyjaśnia Model Spiralny:

Schemat modelu spirali
Schemat modelu spirali

Fazy ​​modelu spiralnego

Fazy ​​modelu spiralnego Czynności wykonywane w fazie
Planowanie
  • Obejmuje oszacowanie kosztów, harmonogramu i zasobów iteracji. Obejmuje to również zrozumienie wymagań systemowych dotyczących ciągłej komunikacji pomiędzy analitykiem systemowym a klientem
Analiza ryzyka
  • Identyfikacja potencjalnego ryzyka odbywa się w trakcie planowania i finalizowania strategii ograniczania ryzyka
Inżynieria
  • Obejmuje testowanie, kodowanie i wdrażanie oprogramowania u klienta
Ocena
  • Ocena oprogramowania przez klienta. Obejmuje także identyfikację i monitorowanie ryzyk, takich jak przesunięcie harmonogramu i przekroczenie kosztów

Kiedy stosować model spiralny?

  • Model spiralny w inżynierii oprogramowania jest używany, gdy projekt jest duży
  • Gdy wymagane jest częste emisje, stosuje się metodologię spiralną
  • Kiedy ma zastosowanie stworzenie prototypu
  • Kiedy ważna jest ocena ryzyka i kosztów
  • Metodologia spiralna jest przydatna w projektach o średnim i wysokim ryzyku
  • Gdy wymagania są niejasne i złożone, model spiralny w SDLC jest przydatne
  • Kiedy zmiany mogą wymagać w dowolnym momencie
  • Kiedy długoterminowe zaangażowanie w projekt nie jest wykonalne ze względu na zmiany priorytetów ekonomicznych

Zalety i wady modelu spiralnego

Zalety Niedogodności
Dodatkowe funkcjonalności lub zmiany można wprowadzić na późniejszym etapie Ryzyko niedotrzymania harmonogramu lub budżetu
Oszacowanie kosztów staje się łatwe, ponieważ budowa prototypu odbywa się w małych fragmentach Rozwój spiralny sprawdza się najlepiej w przypadku dużych projektów, wymaga jedynie specjalistycznej wiedzy w zakresie oceny ryzyka
Ciągły lub powtarzalny rozwój pomaga w zarządzaniu ryzykiem Aby zapewnić płynne działanie protokołu modelu spiralnego, należy ściśle przestrzegać
Rozwój jest szybki, a funkcje są dodawane w sposób systematyczny w rozwoju Spiral Dokumentacja jest większa, ponieważ zawiera fazy pośrednie
Zawsze jest miejsce na opinie klientów Tworzenie oprogramowania spiralnego nie jest wskazane w przypadku mniejszych projektów, może to ich dużo kosztować