Metodyka spiralna
Metodyka spiralna |
---|
Polecane artykuły |
Metodyka spiralna (ang. spiral model) - zakłada cykliczne realizowanie określonej sekwencji działań prowadzących do osiągnięcia rozwiązania docelowego. Stosowany jest najczęściej w bardzo dużych przedsięwzięciach informatycznych, wymagających ciągłego rozwoju i doskonalenia [Z. Handzel 2016, s. 112].
- Najważniejszą cechą modelu spiralnego jest analiza ryzyka w poszczególnej fazie prac, co stanowi próbę minimalizacji ryzyka niepowodzenia projektu.
- Nieustanne sprawdzenie systemu/produktu przez użytkownika ma na celu wytworzenie produktu w pełni zadowalającego zleceniodawcę.
- Budowa systemu rozpoczyna się od sformułowania głównych wymagań i założenia celów, następnie dokonuje się analiza wykonywania przedsięwzięcia razem z oceną alternatywnych rozwiązań. Opierając się na tą podstawę tworzony jest prototyp systemu.
TL;DR
Metodyka spiralna jest stosowana w dużych projektach informatycznych, gdzie istnieje potrzeba ciągłego rozwoju i doskonalenia. Model ten zakłada analizę ryzyka w poszczególnych fazach projektu, a także regularne sprawdzanie systemu przez użytkownika. Budowa systemu odbywa się poprzez tworzenie prototypów, a każda iteracja przekłada się na poprawę końcowego rozwiązania. Model spiralny składa się z czterech faz: planowania, analizy ryzyka, realizacji i testów oraz planowania kolejnych etapów. Zaletami metodyki spiralnej są możliwość budowania prototypów, elastyczność rozwoju projektu oraz wysoka niezawodność. Jednak wymaga ona umiejętności szacowania ryzyka i doświadczonych ekspertów. Nie nadaje się do małych projektów i jest czasochłonny oraz kosztowny. Metoda spiralna jest zastosowana m.in. w metodyce Microsoft Solutions Framework.
Definicja
Model spiralny wywodzi się z połączenia modelu kaskadowego oraz prototypowego. Głównym założeniem modelu jest stwierdzenie, że każda następna wersja powstającego systemu/produktu będzie stworzona na podstawie wyników wytworzenia wcześniejszych wersji (prototypów), dzięki czemu z każdym kolejnym przebiegiem procesu realizującego końcowy rezultat musi być coraz lepszy. Proces ten ma formę spirali, w której każda pętla odzwierciedla kolejne fazy procesu [M. Trocki 2017, s. 91]. Za twórcę modelu spiralnego uważa się B.W. Boehm, który zdefiniował go po raz pierwszy w 1988 roku w artykule "A Spiral Model of Software Development and Enhancement". Metodyka ta jest wykorzystywana przede wszystkim w projektach informatycznych do zarządzania prygotowaniem oprogramowania oraz opisywania, jak różne procesy współdziałają z procesem projektowania [B. Bereza 2014, s. 13].
Model spiralny jest jedynym takim modelem ogólnym, w którym analizę ryzyka uwzględnia się na równi z fazami planowania i realizacji przedsięwzięcia [E. Buklaha 2011, s. 209]. Zakłada on w sobie etapowe dochodzenie do rozwiązania końcowego przez cykliczne wykonywanie tych samych, powtarzających się etapów przedsięwzięcia [Z. Handzel 2016, s. 112]. W sekwencyjnie realizowanych cyklach wykonywane są kolejne wersje systemu/produktu docelowego przedsięwzięcia, np. kolejne prototypy systemu informatycznego. Każda taka wersja przechodzi przez dokładną kontrolę ze strony użytkownika/zleceniodawcy końcowego i powstałe wątpliwości oraz wnioski wpływają na realizację następnego etapu w cyklu zarządzania powstającym rozwiązaniem końcowym [Z. Handzel 2016, s. 112]. W modelu spiralnym proces rozwoju systemu/produktu jest opisany na jedym z czterech pól spirali projektowej, przedstawionych na rysunku.
Przechodząc przez poszczególne etapy modelu na podstawie analizy ryzyka jest dokonywana ocena dalszego uzasadnienia biznesowego, wykonanej wersji systemu/produktu docelowego i zaleca się przyjęcie odpowiedniej wersji projektu do zrealizowania [R. Michalski 2008, s. 74]. W końcu każdego cyklu przedsięwziecia, otrzymane produkty cząstkowe i postęp prac poddają się ocenie przez decydentów i kluczowych interesariuszy przedsięwzięcia. Następny cykl projektu może zacząć się dopiero po zatwierdzeniu przez nich efektów otrzymanych w poprzednim etapie [M. Trocki 2017, s. 91].
W zakresie prac projektowych, na różnych poziomach szczegółowości, formułowane są wymagania biznesowe, opracowany cel i koncepcja dojścia do niego, również tworzona jest koncepcja docelowego produktu, jego projekt i realizowanie [M. Trocki 2017, s. 93]. Definiowany jest plan testów i realizowane są prace związane z testowaniem, poddaje się analizie ryzyko projektowe oraz, na zakończenie poszczególnego cyklu, wykonywana jest ocena w celu zgłoszenia problemów do rozwiązania w kolejnym cyklu spiralnego wykonywania [Z. Szyjewski 2004, s. 255]. Ilość powtórzeń spirali jest zależne od rozmiaru przedsięwzięcia, jego kreatywności oraz innowacyjności, warunków zewnętrznych, które mają wpływ na project, ilości wymagań do uwzględnienia, możliwości wykonawcy prac oraz dostępnych środków i rezerw [M. Trocki 2017, s. 92]. Z racji tego, że w wyniku przejścia z jednego etapu do drugiego poddajemy ocenie dotychczasowe osiągnięcia, model spiralny pozwala zauważyć ryzyko niezgodności z bieżącymi zapotrzebowaniami znacznie wcześniej [Z. Szyjewski 2004, s. 43].
Etapy
Model spiralny to cyklicznie wykonywane cztery główne fazy (czynności):
- planowanie - w pierwszej z faz ustalają się ogólne warianty struktury systemu/produktu końcowego, dokonywane jest określenie ograniczeń i alternatyw oraz możliwości ich wykonywania.
- analiza ryzyka - w drugiej fazie dokonywana jest ich ocena i wartościowanie, uwzględniając analizę ryzyka każdej alternatywy i oczekiwanych środków zaradczych.
- realizacja i testy - trzecia faza uwzględnia wytworzenie i sprawdzenie zrealizowanego celu przez użytkownika/zleceniodawcę końcowego i zawiera w sobie zmiany potrzebne do jego osiągnięcia.
- planowanie następnych etapów - czwarta faza występuje w przypadku wymaganej zmiany zaproponowanego modelu, np. wersji systemu informatycznego, i dotyczy planowania następnej iteracji przedsięwzięcia na podstawie wcześniejszych postępów oraz ustalonych kierunków rozwoju [M. Trocki 2017, s. 91].
Zalety i wady metodyki spiralnej
Zalety:
- Budowanie prototypów daje możliwośc lepszej oceny zgodności i sprawdzenia wymagań.
- Nadaje się do dużych systemów/przedsięwzięć - pozwala na szybką reakcję na pojawiające się czynniki i wymagania [M. Trocki 2017, s. 92].
- Wielki nacisk na wykrywanie i eliminowanie zagrożeń, który skutkuje wysoką niezawodnością i szansą wykonywania przedsięwzięcia.
- Software jest stwarzany już we wcześniejszych etapach.
- Możliwość dopasowania na każdym etapie projektu.
- Zawiera połączenie iteracji z klasycznym modelem kaskadowym [B. Bereza 2014, s. 7].
- Elastyczny rozwój produktów cząstkowych projektu.
- Stabilność docelowego rozwiązania i stopień wykonania końcowych wymagań użytkownika.
Wady:
- Trudno do niej przekonać klientów.
- Wymaga obowiązkowej umiejętności szacowania ryzyka.
- Potrzebuje bardzo dobrze doświadczonych i wyszkolonych ekspertów do analizy planowania, ryzyka oraz relacji z klientem itd.
- W dużej mierze sukces projektu zależy od analizy ryzyka (występują poważne problemy, gdy jest źle oszacowane ryzyko).
- Model jest czasochłonny i kosztowny.
- Nie nadaje się do małych projektów.
- Ciężki i złożony do dokładnego przestrzegania.
Zastosowanie metodyki spiralnej
Istotę modelu spiralnego można przedstawić jako połączenie następujących ważnych cech przebiegu:
- A1 - kompleksowy,
- B2 - sytuacyjny/adaptacyjny,
- C2 - cykliczny,
- D2 - powtarzalny/iteracyjny,
- E2 przyrostowy/inkrementalny [M. Trocki 2017, s. 93].
Model spiralny jest rekomendowany dla dużych przedsięwzięć, w sytuacji których dokładne określenie wymagań jest niemożliwe przed rozpoczęciem etapu wykonawczego, ale docelowy odbiorca nie jest precyzyjnie zidentyfikowany [Z. Handzel 2016, s. 112]. Metoda spiralna jest zastosowana m.in. w metodyce Microsoft Solutions Framework (MSF) [M. Trocki 2017, s. 93].
Bibliografia
- Bereza B. (2014). Metody zwinne, Agile. Szansa na skokowy wzrost produktywności, nr 1
- Buklaha E. (2011). Metodyki zarządzania projektami, Bizarre, Warszawa
- Handzel Z. (2016). Informatyczne wspomaganie zarządzania projektami na przykładzie aplikacji P2ware Project Manager, Zeszyty naukowe WSEI, nr 12
- Michalski R. (2008), Jakość użytkowa w procesie wytwarzania oprogramowania, Badania operacyjne i decyzje, nr 4
- Szyjewski Z. (2004), Metodyki zarządzania projektami informatycznymi, Placet, Warszawa
- Trocki M. (red.) (2017), Metodyki i standardy zarządzania projektami, Polskie Wydawnictwo Ekonomiczne, Warszawa
- Woźniak K. (2005), System informacji menedżerskiej jako instrument zarządzania strategicznego w firmie, praca doktorska, Akademia Ekonomiczna w Krakowie, Kraków
Autor: Elvira Shymanevska, Krzysztof Woźniak