You are on page 1of 7

See discussions, stats, and author profiles for this publication at: https://www.researchgate.

net/publication/229596276

Przegląd modeli cyklu życia oprogramowania

Article · October 2006

CITATIONS READS

3 2,953

1 author:

Rafał Karol Kasprzyk


Military University of Technology
86 PUBLICATIONS   216 CITATIONS   

SEE PROFILE

Some of the authors of this publication are also working on these related projects:

ABCDEF.Net - Advanced Big & Complex Data Exploration Framework using Networks View project

SAVE - State of the Art & Visionary Energetics View project

All content following this page was uploaded by Rafał Karol Kasprzyk on 08 July 2018.

The user has requested enhancement of the downloaded file.


Inżynieria

oprogramowania

Przegląd modeli
Rafał Kasprzyk
cyklu życia oprogramowania
T
worzenie oprogramowania nie jest sprawą
prostą i nikogo, kto brał udział w dużym pro-
���������������� ������ ����������
��������� ������ ������
jekcie, nie trzeba o tym przekonywać. Czasy,
kiedy jedna osoba zajmowała się zbieraniem wyma-
gań, analizą, projektowaniem, programowaniem, te- ��� ����������
������
stowaniem i wdrażaniem produktu informatycznego ���
dawno już się skończyły. „Programowanie odkryw-
cze” nie jest obecnie dobrym sposobem budowy ja- ����������
������
kichkolwiek systemów informatycznych. Tworzone
dziś systemy są po prostu zbyt skomplikowane, aby Rysunek 1. Programowanie odkrywcze
przez cały cykl życia tych systemów mogła nad nimi
panować jedna osoba. Popularne modele cyklu życia
Trudności w budowaniu dużych systemów wymu- systemu informatycznego
siły, już wiele lat temu, konieczność usystematyzo- Najczęściej wymienianym procesem wytwarzania
wania procesu wytwarzania systemów informatycz- oprogramowania jest model kaskadowy (zwany rów-
nych. Stworzono więc modele porządkujące podej- nież modelem wodospadu, ang. waterfall) i model ite-
mowane działania i stany w jakich znajduje się pro- racyjny. Terminy te często są nie do końca poprawnie
dukt informatyczny. Obecnie zbiór modeli cykli ży- rozumiane. Bardzo często można się spotkać z prze-
cia oprogramowania jest niezwykle bogaty. Oczywi- konaniem, że proces kaskadowy jest procesem prze-
ście wystarczy poznać tylko kilka kluczowych mode- starzałym, a jedynie słusznym podejściem jest proces
li, pozostałe są najczęściej hybrydami tych podsta- iteracyjny. Osobiście ostrożnie podchodzę do takiej
wowych. oceny tych dwóch najpopularniejszych modeli wytwa-
rzania oprogramowania. Uważam, że wybór procesu
Pojęcie modelu cyklu życia w znacznym stopniu zależy od charakteru projektu, a
systemu informatycznego tym samym nie ma jednego słusznego modelu cyklu
Czym właściwie jest model cyklu życia systemu in- życia oprogramowania. Co więcej, najczęściej okazuje
formatycznego (oprogramowania)? To szereg wza- się, że w praktyce najlepiej radzą sobie modele, które
jemnie zależnych od siebie etapów, w których podej- są modyfikacjami lub hybrydami procesów podstawo-
mowane są działania, począwszy od ujawnienia po- wych. Przyczyna ich powstania związana jest bądź to
trzeby budowy systemu informatycznego, prezenta- z wadami bądź trudnościami w adaptacji do rzeczywi-
cji jego idei, konstrukcję, użytkowanie, przystosowa- stych warunków wytwarzania systemów informatycz-
ne do ewentualnych zmian funkcjonowania (wyni- nych modelu kaskadowego. Zauważmy, że sam pro-
kających najczęściej ze względu na zmieniające się ces iteracyjny stanowi swego rodzaju modyfikację
warunki otoczenia), a kończąc na wycofaniu z eks- procesu kaskadowego. Inne znane i popularne mode-
ploatacji. Będziemy zajmować się tylko tą częścią cy- le cyklu życia oprogramowania to model spiralny, mo-
klu życia oprogramowania, która związana jest z pro- del V, prototypowanie, i wiele innych.
cesem wytwórczym i w związku z tym nazywana jest
cyklem wytwarzania oprogramowania. Model kaskadowy
Każdy model cyklu życia oprogramowania ma na Najstarszym i prawdopodobnie najlepiej znanym cy-
celu przedstawienie procesu wytwarzania oprogra- klem życia oprogramowania jest model wodospadu.
mowania, który prowadzi do stworzenia działającego Najpowszechniej spotykanym argumentem zachę-
systemu spełniającego oczekiwania klienta. cającym do użycia tego modelu jest fakt, iż jest on
dla człowieka najbardziej naturalnym sposobem roz-
wiązywania wszelkich problemów. W modelu kaska-
Autor jest absolwentem Wydziale Cybernetyki Wojsko-
dowym, aby zbudować system informatyczny nale-
wej Akademii Technicznej, gdzie od roku zajmuje sta-
nowisko asystenta w Instytucie Systemów Informatycz- ży przejść przez kolejne etapy, których realizacja ma
nych. Pracuje w firmie ISOLUTION będąc odpowiedzial- zapewnić zakończenie projektu. Etapy na jakie dzie-
nym za przygotowywanie, prowadzenie i audyt szkoleń lony jest proces wytwarzania to: zbieranie wymagań,
obejmujących analizę i projektowanie systemów infor- analiza, projektowanie, implementacja, testowanie i
matycznych z użyciem notacji UML. wdrożenie systemu.
Kontakt z autorem: rafal.kasprzyk@wat.edu.pl W modelu wodospadu wyjście z jednego etapu
jest równocześnie wejściem w kolejny, bez możliwo-

52 www.sdjournal.org Software Developer’s Journal 10/2006


Przegląd modeli cyklu życia oprogramowania

l Weryfikacja zgodności produktu z wymaganiami i jego


�����������������
użyteczności następuje dopiero w końcowych krokach.
l Próba dopasowania produktu do zmieniających się wyma-
�������
gań, powoduje znaczący wzrostu kosztów budowy systemu.
������������� l Kolejności wykonywania prac muszą być ściśle przestrze-
gane, co niekoniecznie trzeba uważać za wadę. Warto jed-
������������� nak zauważyć, że większość osób preferuje znacznie mniej
rygorystyczne procesy wytwarzania oprogramowania.
���������� l Wysoki koszt błędów popełnionych we wstępnych eta-
pach jest bardzo charakterystyczną właściwością modelu
���������
kaskadowego. Przecież błędy popełnione na etapie zbie-
rania lub analizy wymagań mogą być wykryte dopiero na
Rysunek 2. Model kaskadowy etapie testów akceptacyjnych, bądź eksploatacji, a ich
koszt o kilka rzędów wielkości przewyższać koszt błędów
ści powrotu. Zostaje zatem utworzona sztywno narzucona ko- popełnionych podczas implementacji.
lejność poszczególnych etapów. Analityk po stworzeniu mo- l Częstym argumentem podnoszonym przeciwko modelowi li-
delu dziedziny problemu przekazuje wyniki swojej pracy pro- niowemu jest zmarginalizowanie roli klienta w procesie wy-
jektantowi. Projektant, po stworzeniu projektu oprogramowa- twarzania oprogramowania. Długa przerwa w kontaktach z
nia, w oparciu o wyniki etapu analizy, przekazuje go w ręce klientem, z którym ściśle współpracuje się podczas określa-
programisty, którego zadaniem jest jego implementacja. Na- nia wymagań, pociąga za sobą ryzyko zmniejszenia zain-
stępnie w celu zapewnienia wysokiej jakości produktu, kod teresowania klienta produktem, podczas gdy nie bierze on
jest testowany, a dopiero na samym końcu jest przekazywa- udziału w procesie wytwórczym. Klient „przypomina” sobie o
ny klientowi. systemie, który w końcu był przez niego zamawiany, na eta-
W procesie kaskadowym bardzo istotna jest forma przeka- pie wdrażania, kiedy to jego wizja na temat funkcjonalności,
zywania wyników z jednego etapu do drugiego. Niekiedy po- jaką system powinien zapewniać, może ulec istotnej zmianie.
jawiają się powroty, ale możliwość wystąpienia takiej sytuacji
powinna być minimalizowana. Oczywistym jest przecież, że Warto nadmienić, że model kaskadowy mimo swych licznych
na przykład podczas implementacji może wystąpić jakiś pro- wad, w nieco zmodyfikowanej postaci, stał się standardem,
blem, który zmusi zespół do powrotu do projektu lub co gor- zalecanym przez Departament Obrony Narodowej Stanów
sza powtórnej analizy. Weryfikacja wyników poszczególnych Zjednoczonych (DOD STD 2167), stosowanym przy wytwa-
etapów jest więc nieunikniona. rzaniu systemów informatycznych dla wojska. Standard ten
Podstawowe cechy modelu kaskadowego niestety poka- jest ścisłą realizacją modelu kaskadowego „kierowaną doku-
zują jednocześnie jego wady: mentami”. Na czym owa modyfikacja polega? Po prostu, każ-
dy etap kończy się opracowaniem szeregu dokumentów, które
l Uzyskanie produktu spełniającego oczekiwania klienta z założenia są wystarczającą podstawą do realizacji kolejnych
niezwykle silnie zależy od stabilności wymagań, która jest etapów. Dopiero akceptacja przez klienta dokumentacji zreali-
przecież trudna do uzyskania. zowanego etapu pozwala na rozpoczęcie kolejnego.

���������������
�������

���������������
�������

������
��������������� ����������
�������
�������������

������������������
����������������������
������������

�����������
�������

Rysunek 3. Model iteracyjny

Software Developer’s Journal 10/2006 www.sdjournal.org 53


Inżynieria
oprogramowania

�����
���������
������������

����� �����
�������� �����������

������� �����
�������� ������������

������� �����
�������� �������

������������� ���������

Rysunek 4. Model V

Model iteracyjny go rodzaju rozpoznania wymagań, w celu uzyskania ogólnego


W modelu iteracyjnym wymagania są porządkowane i dzie- obrazu i zakresu projektu. Celem, jaki przyświeca tym działa-
lone na mniejsze podzbiory. Każdy taki podzbiór wymaganej niom, jest podział wymagań na właściwe iteracje. Takie wstęp-
funkcjonalności wymaga przejścia przez etapy, o których by- ne działania polegają najczęściej na stworzeniu ogólnej archi-
ła mowa w modelu kaskadowym. Po zakończeniu każdej ite- tektury systemu, a niekiedy nawet jego prototypu.
racji wybierany jest kolejny podzbiór wymagań do realizacji i Ciekawą i moim zdaniem niezwykle pożądaną odmia-
ponownie przechodzimy przez wszystkie etapy wytwarzania ną procesu iteracyjnego jest możliwość przekazania sys-
oprogramowania. temu do wdrożenia, gdy tylko jakiś rozsądny podzbiór wy-
Zauważmy, że takie podejście pozwala na szybką imple- magań zostanie zaimplementowany i przetestowany. Jest to
mentację przynajmniej części wymaganej funkcjonalności (tej korzystne, co najmniej z dwóch powodów: wcześniej moż-
o najwyższym priorytecie, lub też stanowiącej najwyższe ry- na uzyskać pewne korzyści (nie ma co ukrywać, że chodzi
zyko niepowodzenia realizacji). Model iteracyjny pozwala więc tu o korzyści finansowe) z wdrożenia systemu, ale również,
na bardzo szybką weryfikację realizowalności wytwarzanego co w dłuższej perspektywie jest ważniejsze, można uzyskać
systemu i informację zwrotną od klienta, czy to, czego potrze- w pełni obiektywne opinie na temat jego działania w rzeczy-
buje, jest tym, co otrzyma jako produkt procesu wytwórczego. wistych warunkach. W takich sytuacjach system można wy-
Praktyka stosowania procesu iteracyjnego zaleca przed puszczać w kolejnych wydaniach, z których każde podzielo-
rozpoczęciem rzeczywistych iteracji przeprowadzenie swe- ne jest na pewną liczbę iteracji.

���������� �������������
����������������� ����������������

������������������������������� ������������������������
���������������������������� �������������������
�����������������������������

���������������������������
������������������ ����������������
�����������������������������������

������������������������� ������������������������

�����
����������
�������������

Rysunek 5. Model spiralny

54 www.sdjournal.org Software Developer’s Journal 10/2006


Przegląd modeli cyklu życia oprogramowania

Bardzo często można spotkać się z pojęciem procesu przy- jest wstanie ocenić pod względem zgodności z wymaganiami
rostowego, ewolucyjnego lub spiralnego, które w praktyce są tym (a często niestety mało precyzyjnymi wyobrażeniami).
samym, co proces iteracyjny. Oczywiście na gruncie teoretycz-
nym rozważa się różnice pomiędzy tymi procesami, ale nie są Model V
one wyraźne. W dalszej części artykułu przedstawiony jednak Rozwinięciem modelu wodospadu jest model V, charakteryzu-
zostanie model spiralny, ze względu na częste odwołania się do jący się rozbudowaną fazą testów. Model V jest jednym z naj-
niego w literaturze dotyczącej omawianego tematu. popularniejszych podejść do procesu testowania. Testy mają
na celu weryfikację i walidację poprawności wykonania każ-
Model kaskadowy dego etapu stanowiącego cykl życia oprogramowania. Dzię-
i model iteracyjny – możliwe scalenie ki rozbudowaniu sekwencji etapów wytwórczych o testowanie
Przedstawiony opis modelu kaskadowego i iteracyjnego zo- otrzymujemy produkt o najwyższej jakości, spełniający wyma-
stał znacząco uproszczony, aby czytelnik uchwycił podsta- gania klienta.
wową różnicę pomiędzy tymi procesami. Praktyka pokazuje, Model V podobnie jak klasyczny model kaskadowy stwa-
że oba procesy mogą podlegać bardzo wielu zaburzeniom, co rza bardzo duże niebezpieczeństwo. Oczywistym jest prze-
nie oznacza oczywiście, że wówczas system jest realizowany cież, że im później zostanie wykryty błąd lub niezgodność z
niemetodycznie. wymaganiami, tym kosztowniejsza będzie naprawa. Dzięki te-
Często proponowanym rodzajem procesu jest tzw. etapo- mu, że każdy z etapów wytwórczych kończy się różnego ro-
wy cykl tworzenia oprogramowania, które stanowi scalenie dzaju przeglądami i inspekcjami prawdopodobieństwo poja-
modelu kaskadowego i modelu iteracyjnego. Proponuje się w wienia się błędu lub niezgodności z wymaganiami przy wdro-
nim dokonać według modelu kaskadowego zbierania wyma- żeniu i eksploatacji jest dużo mniejsze niż w modelu klasycz-
gań, analizy i projektowania, a implementację i testowanie po- nym. Powoduje to znaczące obniżenie kosztów pielęgnacji
dzielić następnie na iteracje. Wdrożenia można natomiast do- systemu. Dodatkowo wynikiem każdego etapu wytwórcze-
konać po zaimplementowaniu i przetestowaniu całości wy- go są plany testów, które po zakończeniu zstępującego cyklu
magań ponownie według modelu kaskadowego lub też mo- produkcyjnego (lewe ramię litery V) realizowane są wstępują-
że to polegać na instalacji kolejnych wydań systemu, co zale- co (prawe ramię litery V).
ży oczywiście od charakteru projektu i uzgodnień z klientem.
Oczywistym jest, co już zostało wspomniane, że to drugie po- Model spiralny
dejście wydaje się być z różnych przyczyn korzystniejsze za- Model spiralny jest w pewnym sensie próbą formalizacji po-
równo dla twórców, jak i odbiorców systemu. dejścia iteracyjnego do wytwarzania oprogramowania. Głów-
Można śmiało postawić tezę, że jednym z głównych po- ną cechą tego modelu jest analiza ryzyka występująca w każ-
wodów modyfikacji modelu kaskadowego elementami cha- dej iteracji. Ciągłe monitorowanie i pomiar zmian, które pod-
rakterystycznymi dla procesu iteracyjnego są względy finan- dawane są krytycznemu spojrzeniu użytkownika, umożliwiają
sowe, a nie jak by się mogło wydawać oczywiste zalety itera- dokonanie analizy ryzyka. Pierwszą czynnością, która nie jest
cyjnego podejścia do wytwarzania oprogramowania. Zauważ- przedstawiona na rysunku obrazującym model spiralny, jest
my, że wykonawca żąda pieniędzy za każdy wykonany etap. analiza wymagań wstępnych. Jeżeli wymagania wydają się
Z kolei klient, płacąc za wykonany etap, żąda wyników, które być realizowalne w założonym czasie, budżecie i przy dostęp-

R E K L A M A
Inżynieria
oprogramowania
l ocena przez klienta – walidacja wydania i jego ocena z
możliwością modyfikacji wymagań na system (możliwość
wystąpienia modyfikacji wymagań powinna być minimali-
zowana).

Główne zalety modelu spiralnego to próba minimalizacji ry-


zyka niepowodzenia przedsięwzięcia oraz ciągła weryfikacja
produktu przez użytkownika, co ma na celu wytworzenie pro-
duktu w pełni satysfakcjonującego klienta.

Prototypowanie
Model prototypowania jest kolejną próbą radzenia sobie z pro-
blemem identyfikacji i braku stabilności wymagań. Prototy-
powanie polega na budowaniu kolejnych „przybliżeń” syste-
mu do momentu aż prototyp stanie się dobrym odzwiercie-
dleniem wymagań. Oceny prototypów i kolejne wersje owych
prototypów, w sposób bardzo naturalny prowadzą do identy-
fikacji wymagań. Zauważmy, że prototypowanie w tym przy-
padku pokrywa etap analizy wymagań i stąd często przedsta-
wiany model określa się jako „prototypowanie wymagań”. Ce-
chą charakterystyczną „prototypowania wymagań” jest budo-
wa „szybkiego projektu” bez dbałości o jego jakość i dostoso-
wanie do środowiska docelowego. Oczywiście możliwe jest
szersze spojrzenie na prototypowanie tak, aby obejmowało
ono również etap projektowania w celu weryfikacji efektywno-
ści przyjętych rozwiązań. Ten rodzaj prototypowania określa-
ny jest mianem „prototypowania wytwórczego”.
Gdy mamy już pewność, że wszystkie wymagania zosta-
ły zidentyfikowane, wówczas można przystąpić do konstruk-
cji właściwego produktu zgodnie z modelem klasycznym wy-
twarzania oprogramowania, rozpoczynając od etapu projekto-
wania. Tego typu podejście może niekiedy spotkać się z nie-
zrozumieniem ze strony klienta, bądź też pojawić się na wyż-
szych szczeblach zarządzania firmą wykonawcy. Często po-
jawiają się pytania typu: Dlaczego trzeba zaczynać wszystko
od nowa „jeśli już prawie wszystko zrobiono”? Kolejną wadą
Rysunek 6. Model prototypowania prototypowania jest możliwość „przyzwyczajenia się” klienta
do funkcjonalności oferowanej przez prototyp, a która nie wy-
nych zasobach (tzw. zasad trójkąta) można przejść do plano- nika z przyjętych wymagań. Również projektant może „przy-
wania projektu i pierwszej iteracji. zwyczaić się” do rozwiązań zastosowanych w prototypie. Re-
Właściwie kolejne iteracje mają postać „małych” wodo- asumując, model prototypowy musi być dobrze rozumiany
spadów. Po każdej takiej pełnej iteracji dokonuje się przeglą- przez obie strony tj. zarówno twórcę systemu informatyczne-
du systemu. Jeżeli dane przedsięwzięcie wymaga dalszych go, jak i klienta.
prac wówczas należy zaplanować kolejną iterację, a następ-
nie przeprowadzić analizę ryzyka realizacji kolejnego wyda- Planowanie predykcyjne i adaptacyjne
nia. Model spiralny stanowi więc „obudowaną” wersję modelu Wybór procesu wytwarzania oprogramowania bardzo silnie
wodospadu opartą o bieżącą analizę ryzyka. zależeć będzie od stabilności wymagań. Również sposób pla-
Model spiralny można postrzegać jako cyklicznie powta- nowania jest uzależniony od stabilności wymagań. Przy zało-
rzane cztery czynności: żeniu, że wymagania, które zostały zebrane nie będą już się
zmieniały, jak również klient nie będzie dodawał nowych, za-
l planowanie – na podstawie wymagań i celów wyznaczo-
nych przez klienta, dokonuje się określenia alternatyw i
ograniczeń oraz planowania iteracji przy każdorazowym Literatura
rozpoczęciu kolejnego cyklu spirali. l [1] Marin Fowler UML Distilled: A Brief Guide To The Standard
l analiza ryzyka – sprowadza się do oceny rozwiązań alter- Object Modeling Language, Pearson Education, Inc., 2004;
natywnych oraz próby identyfikacji i analizy ryzyka zwią- l [2] Stanisław Szejko Metody wytwarzania oprogramowania,
zanego z każdą z możliwych alternatyw konstrukcji nowe- MIKOM, Warszawa 2002;
go wydania. l [3] Graham I. Inżynieria oprogramowania – metody obiektowe
l konstrukcja – ma postać „małego” wodospadu, a jej celem w teorii i praktyce, WNT, Warszawa 2004.
jest wytworzenie kolejnego wydania systemu.

56 www.sdjournal.org Software Developer’s Journal 10/2006


Przegląd modeli cyklu życia oprogramowania

leca się planowanie predykcyjne. Planowanie predykcyjne jest nej współpracy zespołu projektowego z klientem, a zbiór
bardzo często narzucone w projektach rządowych i dla woj- wymagań może być dość elastycznie modyfikowany, roz-
ska. Trudno wyobrazić sobie tutaj inny sposób planowania, szerzany, a niekiedy zawężany, oczywiście wszystko za po-
ponieważ mamy najczęściej sztywną datę zakończenia i kwo- rozumieniem obu stron. W tego typu projektach zastosowa-
tę budżetu. Ustalenia pomiędzy twórcą systemu i zamawiają- nie modelu kaskadowego z góry skazane jest na niepowo-
cym muszą jednoznacznie precyzować, co właściwie jest do dzenie. Plan adaptacyjny możliwy jest do zastosowania je-
zrobienia, ile produkt finalny będzie kosztował i kiedy zosta- dynie w przypadku zastosowania procesu iteracyjnego i je-
nie ukończony. To dlatego w tego typu projektach możliwe jest go licznych modyfikacji, z których niektóre przedstawione
wykorzystania procesu kaskadowego. Dla administracji nic zostały w artykule.
przecież nie jest bardziej kłopotliwe niż brak jasnej wizji kosz-
tu wytworzenia jakiegoś produktu i czasu jego realizacji. Podsumowanie
Powstaje jednak pytanie, czy projekty informatyczne mo- Badania prowadzone w Stanach Zjednoczonych wykazały, że
gą być w ogóle przewidywalne. Bez wątpienia w większości ponad 2/3 wszystkich projektów informatycznych kończą się
projektów można się spotkać z „chaosem wymagań”. Chaos niepowodzeniem. Niepowodzenie było najczęściej rezultatem
polega na wprowadzaniu zmian do wymagań w późniejszych braku środków finansowych na kontynuowanie projektu (nie-
etapach cyklu życia oprogramowania. Zmiany takie prak- doszacowanie kosztów), stworzenie produktu, który nie speł-
tycznie zawsze powodują konieczność przebudowy pierwot- nia wymagań klienta lub zakończenie procesu wytwarzania z
nie stworzonego planu projektu. Oczywiście można próbo- bliżej nieokreślonych względów (często politycznych).
wać walczyć z taką sytuacją. Powszechnie stosowanym spo- Powodów porażki może być wiele, ale najczęściej wskazy-
sobem radzenia sobie ze zmianami „życzeń klienta” jest za- wanymi były:
mrożenie na pewnym etapie zbioru wymagań. Powstaje jed-
nak pewien problem. Zamrożenie wymagań powoduje ryzyko l brak większego zaangażowania ze strony klienta;
stworzenia produktu, który właściwie nie jest potrzebny klien- l zbyt ogólnie sformułowane wymagania lub ich modyfika-
towi już w chwili wdrażania. cja;
Można jednak inaczej próbować podejść do proble- l brak „właściciela” projektu;
mu zmieniających się wymagań. Zakładamy mianowicie, l brak planu działania.
że „chaos wymagań” jest zjawiskiem nieuniknionym, a peł-
na przewidywalność to iluzja. Doskonale sprawdza się wów- Wydaje się więc, że rozważania na temat procesu wytwarza-
czas planowanie adaptacyjne, które traktuje zmiany jako nia oprogramowania są potrzebne, ponieważ twórcom syste-
coś zupełnie naturalnego. Zmiany muszą być oczywiście mów informatycznych zależy na tym, aby sukces jednego pro-
kontrolowane. Ciekawą rzeczą jest fakt, że w przypadku jektu przekładał się na następny, aby był powtarzalny. Takie
planowania adaptacyjnego ciężko powiedzieć, że system ja- podejście daje możliwość doskonalenia procesu wytwarza-
ko całość rozwija się zgodnie z planem, a to dlatego, że taki nia oprogramowania poprzez dokonywanie pomiarów i osza-
plan ulega ciągłej modyfikacji. Oznacza to tyle, że plan słu- cowań, a to z kolei wpływa na polepszenie jakości produktu i
ży raczej do możliwości oszacowania konsekwencji wpro- zadowolenie klienta.
wadzenia zmian niż do przewidywania, kiedy system zosta- Nie wolno zapominać, że proces wytwarzania oprogramo-
nia oddany w ręce klienta. W przypadku planowania adapta- wania powinien być wspomagany przez narzędzia CASE, któ-
cyjnego można oczywiście na stałe określić budżet przewi- re oczywiście wymagają odpowiedniej konfiguracji na potrze-
dziany na projekt i czas jego zakończenia, jednak nie moż- by danego projektu. Umiejętność wykorzystania tego typu na-
na przewidzieć zakresu wymagań, które zostaną zrealizo- rzędzi jest praktycznie warunkiem koniecznym powodzenia
wane. Planowanie adaptacyjne wymaga ścisłej permanent- każdego większego przedsięwzięcia informatycznego. n

R E K L A M A

View publication stats

You might also like