![Page 1: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/1.jpg)
KOMPUTEROWE WSPOMAGANIE
ZARZĄDZANIA
Dr inż. Mariusz Makuchowski
Wykład 9
Cykl życia systemu informatycznego
![Page 2: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/2.jpg)
2
Cykl życia systemu informatycznego
Przez cykl życia systemu informatycznego należy rozumieć określoną
koncepcję rozłożenia w czasie czynności odbywających się podczas
pracy nad opracowaniem i wyprodukowaniem systemu określonego
typu oraz jego eksploatacji. Cykl ten obejmuje okres od powstania u
użytkownika potrzeby budowy systemu informatycznego, prezentacji
jego idei, konstrukcję, użytkowanie, przystosowane do
ewentualnych zmian funkcjonowania a kończąc na wycofaniu z
eksploatacji.
![Page 3: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/3.jpg)
3
Cykl życia systemu informatycznego
Fazy cyklu życia systemu informatycznego:
• faza strategiczna
• analiza - modelowanie systemowe
• projektowanie
• implementacja
• integracja i testowanie
• wdrożenie
• utrzymanie
• likwidacja
![Page 4: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/4.jpg)
4
Cykl życia systemu informatycznego
W fazie strategicznej podejmowane są czynności poprzedzające
decyzję o realizacji przedsięwzięcia. Między innymi decyzje
dotyczące sposobu organizacji i harmonogramowania.
Do decyzji strategicznych należy:
• Wybór modelu, zgodnie z którym będzie realizowane
przedsięwzięcie
• Wybór technik stosowanych w fazach analizy i projektowania
• Wybór środowiska (środowisk) implementacji
• Wybór narzędzia CASE
• Określenie stopnia wykorzystania gotowych komponentów
• Podjęcie decyzji o współpracy z innymi producentami
![Page 5: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/5.jpg)
5
Cykl życia systemu informatycznego
Modele cyklu wytwarzania systemów internetowych
- porządkują przebieg prac,
- ułatwiają planowanie zadań,
- ułatwiają monitorowanie realizacji zadań.
• Model kaskadowy - separacja faz specyfikacji i implementacji
• Model ewolucyjny - przeplatanie się faz specyfikacji i
implementacji
• Model spiralny - elementy modelu kaskadowego i ewolucyjnego
• Pozostałe modele to różne ich odmiany i modyfikacje
![Page 6: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/6.jpg)
6
Model kaskadowy (model wodospadu)
Najstarszym i prawdopodobnie najlepiej znanym cyklem życia
oprogramowania jest model kaskadowy zwany też modelem
wodospadu.
W modelu tym, aby zbudować system informatyczny należy przejść
przez kolejne etapy, których realizacji ma zapewnić zakończenie
projektu. Wyjście z jednego etapu jest równocześnie wejściem w
kolejny, bez możliwości powrotu. Oczywiście w czasie
poszczególnych etapów mogą wystąpić problemy i wtedy będzie
konieczny powrót ale możliwość wystąpienia takiej sytuacji powinna
być minimalizowana.
![Page 7: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/7.jpg)
7
Model kaskadowy (wodospadu)
Określenie
wymagań
Analiza
Projektowanie
Implementacja
Wdrożenie
Testowanie
Stosowany w projekcie o
dobrze zdefiniowanych
wymaganiach dla
dobrze rozumianych
zastosowań
![Page 8: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/8.jpg)
8
Model kaskadowy (wodospadu)
• Określanie wymagań – określane są cele oraz szczegółowe wymagania
wobec tworzonego systemu,
• Analiza – budowany jest logiczny model systemu
• Projektowanie - powstaje szczegółowy projekt systemu
• Implementacja/kodowanie oraz testowania modułów - projekt
zostaje zaimplementowany w konkretnym środowisku
programistycznym oraz wykonywane są testy poszczególnych modułów,
• Testowanie - następuje integracja poszczególnych modułów połączona
z testowaniem poszczególnych podsystemów oraz całego
oprogramowania,
• Wdrożenie - system jest wykorzystywany przez użytkownika(ów), a
producent dokonuje konserwacji oprogramowania — wykonuje
modyfikacje polegające na usuwaniu błędów, zmianach i rozszerzaniu
funkcji systemu
![Page 9: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/9.jpg)
9
Cechy modelu kaskadowego
Wady:
• Wymagania klienta muszą być w dużym stopniu sprecyzowane.
W przypadku ich zmiany koszty znacznie wzrastają a wszystkie
etapy muszą być przechodzone od nowa.
• Kolejność wykonywania prac musi być ściśle przestrzegana.
• Weryfikacja zgodności produktu z wymaganiami i jego
użyteczności następuje dopiero w końcowych krokach.
• Błędy popełnione we wstępnych etapach (zbierania lub analizy
wymagań) mogą być wykryte dopiero na etapie testów
akceptacyjnych, bądź eksploatacji, a koszty ich naprawy są
bardzo wysokie.
![Page 10: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/10.jpg)
10
Cechy modelu kaskadowego – c.d.
• Próba dopasowania produktu do zmieniających się wymagań,
powoduje znaczący wzrostu kosztów budowy systemu.
• Długa przerwa w kontaktach z klientem może spowodować
zmniejszenie zainteresowania produktem. Klient uczestniczy w
projekcie na samym początku przy określaniu wymogów i analiz
a następny jego udział jest dopiero na etapie wdrażania.
Zalety:
• łatwe planowanie, harmonogramowanie oraz monitorowanie
przedsięwzięcia
• zmusza do zdyscyplinowanego podejścia
![Page 11: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/11.jpg)
11
Model kaskadowy z iteracjami
Określenie
wymagań
Analiza
Projektowanie
Implementacja
Wdrożenie
Testowanie
W czystym modelu kaskadowym
konieczność powrotu do wcześniejszej fazy
traktuje się jako nieprawidłowość, czyli
sytuację awaryjną.
W iteracyjnym modelu kaskadowym
Takie powroty z góry się przewiduje, daje
to większą elastyczność ale wydłuża czas
przedsięwzięcia
![Page 12: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/12.jpg)
12
Realizacja kierowana dokumentami
Realizacja kierowana dokumentami jest odmianą modelu
kaskadowego.
Model stworzony przez armię amerykańską NASA
Każda faza kończy się opracowaniem szeregu dokumentów,
które z założenia są wystarczającą podstawą do realizacji
kolejnych etapów. Dopiero akceptacja dokumentacji
zrealizowanego etapu pozwala na rozpoczęcie kolejnego.
![Page 13: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/13.jpg)
13
Realizacja kierowana dokumentami
Zalety:
• łatwe planowanie, harmonogramowanie oraz monitorowanie
przedsięwzięcia.
• możliwość realizacji kolejnych faz przez inną firmę.
Wady:
• Duży nakład pracy na opracowanie dokumentów - ponad 50%
całkowitych nakładów.
• Przerwy w realizacji niezbędne dla weryfikacji dokumentów
przez klienta.
![Page 14: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/14.jpg)
14
Model ewolucyjny
W modelu tym następuje bardzo wczesne wprowadzenie
użytkownika w obsługę projektowanego systemu. Użytkownik ma
możliwość proponowania zmian w projekcie, co pozwala w
końcowym efekcie na stworzenie systemu, który będzie w pełni
satysfakcjonował użytkownika.
![Page 15: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/15.jpg)
15
Model ewolucyjny
Zalety:
• dobry dla małych projektów, szybki start projektu
• tolerancja dla słabo zdefiniowanych wymagań
• niski koszt błędów (krótki czas życia błędów)
Wady:
• trudność z harmonogramowaniem
• Trudno określić zaawansowanie projektu
• systemy często o złej strukturze
![Page 16: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/16.jpg)
16
Model ewolucyjny
Zarys systemu
Wersja
początkowa
Wersje
pośrednie
Wersja końcowa
Specyfikacja
Rozwój systemu
Weryfikacja
Czynności przebiegające
równolegle
![Page 17: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/17.jpg)
17
Model przyrostowy
Model przyrostowy jest wariantem modelu ewolucyjnego. W
tym modelu rozpoznanie i analiza dotyczą całego systemu.
Dopiero po sformułowaniu problemu i określeniu pełnej
koncepcji następuje podział systemu na moduły (przyrosty),
które są z osobna projektowane, programowane a następnie
wdrażane.
![Page 18: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/18.jpg)
18
Model przyrostowy
Fazy:
• określenie całości wymagań, wykonanie wstępnego, ogólnego
projektu całości systemu
• wybór pewnego podzbioru funkcji systemu (przyrostów)
• szczegółowy projekt (wg modelu kaskadowego) oraz
implementacja części systemu realizującej wybrane funkcje
• testowanie zrealizowanego fragmentu i dostarczenie go
klientowi
• powtarzanie kolejnych etapów, aż do zakończenia
implementacji całego systemu
![Page 19: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/19.jpg)
19
Model przyrostowy
Zalety:
• częste kontakty z klientem (skrócenie przerw w porównaniu z
modelem kaskadowym)
• brak konieczności zdefiniowania z góry całości wymagań
• możliwość wczesnego wykorzystania przez klienta dostarczonych części
systemu,
• możliwość elastycznego reagowania na opóźnienia realizacji fragmentu
– przyspieszenie prac nad inną/innymi częściami (sumarycznie - bez
opóźnienia całości przedsięwzięcia projektowego)
Wady:
• dodatkowy koszt związany z niezależną realizacją fragmentów systemu
• potencjalne trudności z wycinaniem podzbioru funkcji w pełni
niezależnych
![Page 20: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/20.jpg)
20
Model przyrostowy
Określenie
ogólnych
wymagań
Przypisanie
wymagań do
przyrostów
Projekt
architektury
systemu
Tworzenie
przyrostu
systemu
Testowanie
przyrostuIntegracja
systemuTestowanie
systemu
System końcowy
system nie ukończony
![Page 21: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/21.jpg)
21
Model „V”
Jest odmianą modelu kaskadowego, charakteryzuje go rozbudowana
faza testów. Model V jest jednym z najpopularniejszych podejść do
procesu testowania, które mają na celu weryfikację i walidację
poprawności wykonania każdego etapu stanowiącego cykl życia
oprogramowania.
• Każdy z etapów wytwórczych poddany jest różnym testom dzięki
czemu prawdopodobieństwo pojawienia się błędu lub niezgodności
z wymaganiami przy wdrożeniu i eksploatacji jest dużo mniejsze niż
w modelu kaskadowym.
• W procesie tworzenia oprogramowania zgodnym z tym modelem
udział biorą dwa zespoły: projektowy, który opracowuje produkty
poszczególnych faz i testujący, który testuje powstające produkty
![Page 22: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/22.jpg)
22
Model „V”
W modelu V:
• Lewa , schodząca w dół część V ilustruje przejście od analizy do
projektowania, następnie do programowania oraz zwiększający
się podział składowych systemu
• Prawa, biegnąca ku górze część V ilustruje narastające
składanie i testowanie, kończące się na dostarczonym
produkcie;
• Z uwagi na dodatkowe testy mające zapewnić wysoką jakość
systemu, zdecydowanie wydłuża się czas jego tworzenia oraz
znacznie zwiększają się koszty.
![Page 23: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/23.jpg)
23
Model „V”
wymagania
Projekt
systemu
Projekt
podsystemu
Projekt
modułu
Testowanie
akceptacyjne
Integracja i
walidacja systemu
Integracja i weryfikacja
podsystemu
Testowanie
modułu
implementacja
![Page 24: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/24.jpg)
24
Model spiralny
• zaproponowany przez Boehma (1988)
• Główną cechą modelu spiralnego jest analiza ryzyka w każdej
fazie prac co stanowi próbę minimalizacji ryzyka niepowodzenia
przedsięwzięcia.
• Ciągła weryfikacja produktu przez użytkownika ma na celu
wytworzenie produktu w pełni satysfakcjonującego klienta.
• Budowę systemu zaczyna się od określenia podstawowych
wymagań i założenia celów, następnie dokonywana jest analiza
realizacji projektu wraz z oceną alternatywnych rozwiązań. Na
tej podstawie tworzony jest prototyp systemu.
![Page 25: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/25.jpg)
25
Model spiralny
Model spiralny to cyklicznie powtarzane cztery czynności:
• planowanie – na podstawie wymagań i celów wyznaczonych przez
klienta, dokonuje się określenia alternatyw i ograniczeń oraz kolejnego
planowania przy każdorazowym rozpoczęciu kolejnego cyklu spirali.
• analiza ryzyka – sprowadza się do oceny rozwiązań alternatywnych
oraz próby identyfikacji i analizy ryzyka związanego z każdą z
możliwych alternatyw konstrukcji nowego wydania.
• konstrukcja – ma postać „małego‖ wodospadu, a jej celem jest
wytworzenie kolejnego wydania systemu.
• ocena przez klienta – walidacja wydania i jego ocena z możliwością
modyfikacji wymagań na system (możliwość wystąpienia modyfikacji
wymagań powinna być minimalizowana).
![Page 26: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/26.jpg)
26
Model spiralny
TESTOWANIE
PLANOWANIE
Ocena przez klienta – jeżeli
nie jest satysfakcjonująca to
rozpoczyna się nowy cykl
Planowanie -
wyniki kontaktu
z klientem
Wymagania i
założenia
początkowe
ANALIZA
RYZYKA
KONSTRUKCJA
(MODEL
KASKADOWY)
Analiza ryzyka w
oparciu o wymagania
Analiza ryzyka w
oparciu o reakcje
klienta
Kolejne wydania
produktu
![Page 27: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/27.jpg)
27
Model spiralny
Zalety:
• Do dużych systemów - szybka reakcja na pojawiające się
czynniki ryzyka
• Połączenie iteracji z klasycznym modelem kaskadowym
Wady:
• Trudno do niego przekonać klienta
• Konieczność umiejętności szacowania ryzyka
• Problemy, gdy źle oszacujemy ryzyko
![Page 28: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/28.jpg)
28
Prototypowanie
Idea modelu prototypowego polega na stosunkowo szybkim powstaniu
prototypu systemu, który podlega ciągłym iteracją (powtórzeniach,
zapętleniach) aż do momentu uzyskania satysfakcjonującego produktu.
Stosowane gdy są trudności w jednoznacznym ustaleniu wymagań
Przez cały okres tworzenia systemu, użytkownicy uczestniczą w jego
tworzeniu poprzez swoją ocenę oraz możliwość zgłaszania uwag bądź
pomysłów, które zostają przekazana projektantom. Prototypowanie pozwala
na uściślenie wymagań i odpowiednią ich interpretację.
Pozwala na uniknięcie zbyt wysokich kosztów błędów popełnionych w fazie
określania wymagań
![Page 29: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/29.jpg)
29
Prototypowanie
Zalety:
• lepsze określenie wymagań, wykrycie nieporozumień pomiędzy
klientem a twórcami systemu,
• skrócenie czasy powstania całości projektu
• ograniczenie liczby błędów
• redukcja kosztów
• możliwość szybkiej demonstracji pracującej wersji systemu,
• możliwość szkoleń zanim zbudowany zostanie pełny system
Wady:
• niezadowolenie klienta, który po obejrzeniu działającego prototypu
musi następnie długo czekać na dostawę gotowego systemu
• (pozorna) koszt budowy prototypu
![Page 30: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/30.jpg)
30
Prototypowanie
Model ten składa się z następujących faz:
• ogólne określenie wymagań,
• budowa prototypu,
• weryfikacja prototypu przez klienta,
• pełne określenie wymagań,
• realizacja pełnego systemu zgodnie z modelem kaskadowym
Szybkie tworzenie działającego prototypu wymaga najczęściej
wykorzystania narzędzi i metod wspomagających, tj.
generatory oprogramowania, programy szkieletowe, narzędzia
typu CASE
![Page 31: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/31.jpg)
31
Prototypowanie
negatywna
pozytywna
Określenie
ogólnych
wymagań
Budowa prototypu
Ocena przez
klienta
Budowa pełnego
systemu wg modelu
kaskadowego
Poprawa
projektu
i prototypu
Cele:
• wykrycie nieporozumień pomiędzy
klientem a twórcami systemu
• wykrycie brakujących funkcji
• wykrycie trudnych usług
• wykrycie braków w specyfikacji wymagań
Pełne określenie
wymagań
![Page 32: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/32.jpg)
32
Prototypowanie
Metody prototypowania:
• Niepełna realizacja: objęcie tylko części funkcji
• Języki wysokiego poziomu: Smalltalk, Lisp, Prolog, 4GL…
• Wykorzystanie gotowych komponentów
• Generatory interfejsu użytkownika: wykonywany jest wyłącznie
interfejs, wnętrze systemu jest ―podróbką‖.
• Szybkie programowanie: normalne programowanie ale bez
zwracania uwagi na niektóre jego elementy, np. zaniechanie
testowania
![Page 33: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/33.jpg)
33
Montaż z gotowych elementów
Montaż z gotowych elementów zwany też programowaniem z
półki, kładzie szczególny nacisk na możliwości redukcji
nakładów przez maksymalne wykorzystanie podobieństw
tworzonego oprogramowania do wcześniej tworzonych
systemów.
![Page 34: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/34.jpg)
34
Montaż z gotowych elementów
Wykorzystane są tu:
• biblioteki,
• języki czwartej generacji,
• pełne aplikacje
Metody pozyskiwania gotowych komponentów:
• zakup od zewnętrznych dostawców,
• opracowanie wyników aktualnie realizowanych przedsięwzięć
tak, aby mogły być wykorzystane w kolejnych
przedsięwzięciach.
![Page 35: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/35.jpg)
35
Montaż z gotowych elementów
Zalety:
• wysoka niezawodność,
• zmniejszenie ryzyka,
• efektywne wykorzystanie specjalistów,
• narzucenie standardów,
• potencjalna redukcja kosztów.
Wady:
• dodatkowy koszt przygotowania elementów do ponownego
wykorzystania,
• ryzyko uzależnienia się od dostawcy komponentów,
• niedostatki narzędzi wspomagających ten rodzaj pracy.
![Page 36: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/36.jpg)
36
Programowanie odkrywcze
Model stosowany gdy są trudności w ustaleniu nawet wstępnych
wymagań (zaleta), Uwagi użytkownika stanowią podstawę do
uściślenia wymagań i powtórzenia cyklu.
Fazy programowania odkrywczego:
• początek cyklu - bardzo ogólne określenie wymagań,
• budowa systemu - faza realizacji obejmuje wykonanie przynamniej
ogólnego projektu,
• Weryfikacja systemu przez klienta – w przypadku nie spełnienia
oczekiwań, budowana jest kolejna wersja systemu,
• koniec cyklu – w przypadku uzyskania produktu satysfakcjonującego
klienta, jest to jedna z kolejnych wersji systemu
![Page 37: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/37.jpg)
37
Programowanie odkrywcze
negatywnapozytywna
Określenie
ogólnych
wymagań
Budowa systemu
ModyfikacjaWstępne
testowanie
Ocena przez
klientaGotowy produkt
Wytwarzanie odkrywcze polega
na stałej modyfikacji budowy
systemu, bez odrzucania
dotychczas wytworzonego
oprogramowania
(przeciwnie do prototypowania)
![Page 38: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/38.jpg)
38
Programowanie odkrywcze
Wady:
• trudności z zachowaniem sensownej struktury systemu,
• niemożliwe jest wykonanie większych systemów o
zadowalającej niezawodności,
• możliwość testowania wyłącznie przy współudziale klienta.
![Page 39: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/39.jpg)
39
Model RAD (ang. Rapid Application
Development)
Model ten można zastosować gdy system jest skalowalny tzn. składa
się z kilku słabo ze sobą powiązanych lub niepowiązanych głównych
funkcji
• gwarantuje wysoką jakością rozwiązania,
• ewolucyjny proces wytwarzania systemu,
• techniki inżynierskie wytwarzania są stosowane w całym cyklu
realizacji,
• każdą funkcję można przydzielić do realizacji innemu zespołowi
produkcyjnemu. Zespoły te mogą działać niezależnie
• cechuje go stosowanie wydajnych narzędzi wspomagających
wytwarzanie oprogramowania,
• gwarantuje produktywność wytwarzanego oprogramowania.
![Page 40: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/40.jpg)
40
Model RAD
Zalety:
• szybkość tworzenia systemu
Wady:
• system musi być skalowalny
• duże zasoby pracownicze
• intensywne zaangażowanie pracowników
• nie dla wszystkich rodzajów aplikacji
![Page 41: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/41.jpg)
41
Jak wybrać odpowiedni model?
W związku z tym, iż różne projekty mają różne wymagania,
nie ma jednego uniwersalnego modelu, który mógłby być
zawsze stosowany.
Czynnikami, które należy uwzględnić przy wyborze lub
konstrukcji konkretnego procesu są m.in.:
• specyfika tworzonego systemu (m.in. rozmiar systemu),
• stosowane technologie,
• wielkość i charakter zespołu realizującego proces,
• ryzyka związane z realizacją procesu.
![Page 42: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/42.jpg)
42
Jak wybrać odpowiedni model?
Jak podano w literaturze (M. Piasecki) wstępnie można
przyjąć, że jeżeli jest tworzony system informatyczny i:
• na własny użytek chcemy rozwiązać pewien niewielki problem i
nie wiemy, jak się za niego zabrać - model odkrywczy
• wymagania są dobrze zdefiniowane, produkt jest podobny do
realizowanych przez nas do tej pory, mamy doświadczenie w
realizacji podobnych przedsięwzięć - model kaskadowy lub
montażu z gotowych elementów
• klient ma problemy ze wyartykułowaniem swych wymagań -
prototypowanie
![Page 43: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/43.jpg)
43
Jak wybrać odpowiedni model?
• istnieje duża niepewność związana z wytwarzaniem produktu
i duże ryzyko - podejście ewolucyjne (modele przyrostowy,
spiralny)
• wymagania są dość dobrze zdefiniowane, ale występuje dość
duża złożoność problemu (np. bardzo duży system – dużo kodu
do napisania) – podejście przyrostowe
• Kiedy są krótkie terminy, a system jest duży należy zastosować
- podejście RAD ( gdy dysponujemy dużym zespołem produkcyjnym)
- Przyrostowe ( jeżeli mamy niewielki zespół, a klientowi zależy
głównie na najważniejszych funkcjach)
![Page 44: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/44.jpg)
44
Jak wybrać odpowiedni model?
• klient ma chwilowo małe fundusze, ale jest szansa, że w trakcie
realizacji budżet się zwiększy - model spiralny
• W każdym możliwym przypadku budować z gotowych
elementów
• W przypadku wyboru dowolnego modelu, jeśli wymagania są źle
określone - zrobić prototyp
![Page 45: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/45.jpg)
45
Przyczyny niepowodzeń
Przyczyny niepowodzeń projektów informatycznych:
- przytłaczająca złożoność
- zbyt mało kompetencji i doświadczenia (zbyt ambitne cele)
- specyfikacje są niekompletne lub niejednoznaczne
- za mały udział użytkowników
- zła komunikacja
- za mało planowania
- złe oszacowania
- nieobiektywna ocena postępu prac
- brak jasnego określenia zakresu odpowiedzialności
- późne zmiany specyfikacji
- nieskończone ulepszanie
- mało uwagi poświęcone problemom jakości
- słaba dokumentacja
![Page 46: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/46.jpg)
46
Czynniki wpływające na powodzenie
projektu
Kluczowe czynniki powodzenia:
- wspólna wizja produktu - atmosfera zaangażowania i
współodpowiedzialności za projekt
- doświadczona i kompetentna kadra
- praca zespołowa - w szczególności współpraca z użytkownikiem
- myślenie przyszłościowe - zapobieganie zagrożeniom, nie zaś tylko
usuwanie skutków
- planowanie i analiza ryzyka
- dobra komunikacja i przepływ informacji
- zarządzanie zmianami
- regularne przeglądy projektu
![Page 47: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/47.jpg)
47
Bibliografia
[1] Adam Nowicki, Komputerowe wspomaganie biznesu (2006)
[2] Karol Kukuła, Badania operacyjne w przykładach i zadaniach (2002)
[3] Czesław Smutnicki, Algorytmy szeregowania (2002)
[4] Ryszard Knosyla i Zespół, Komputerowe wspomaganie zarządzania
przedsiębiorstwem –Nowe metody i systemy (2007)
[5] Zbigniew Klonowski, Systemy informatyczne zarządzania przedsiębiorstwem.
Modele rozwoju i właściwości funkcjonalne (2004)
[6] M. Fertsch, K. Grzybowska, A. Stachowiak, Logistyka i zarządzanie produkcją –
nowe wyzwania i odległe granice (2007)
[7] S. Zieliński – Inteligentne systemy w zarządzaniu. Teoria i praktyka (2000)
[8] Adamczewski, Piotr. Zintegrowane systemy informatyczne w praktyce, Warszawa,
PWN, 2005
[9] Szejko, Stanisław (Redakcja naukowa). Metody wytwarzania oprogramowania,
Warszawa, PWN, 2004
[10] Lausen, Georgie; Vossen, Gottfried. Obiektowe bazy danych. Modele danych i
języki, Warszawa, WNT, 2004
![Page 48: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/48.jpg)
48
Bibliografia
[11] Miłosz, Marek (Redakcja naukowa). Bezpieczeństwo informacji, Warszawa, PWN,
2005
[12] Dolińska, Małgorzata. Projektowanie systemów informacyjnych na przykładzie
zarządzania marketingiem, Warszawa, Agencja Wydawnicza "Placet", 2003.
[13] Cheesman, John; Daniels, John. Komponenty w UML. Warszawa, WNT 2004
[14] Szyjewski, Zdzisław. Zarządzanie projektami informatycznymi, metodyka
tworzenia systemów informatycznych. Warszawa, Agencja Wydaw. Placet, 2001.
(Biblioteka Biznesmena)
[15] Leyland, Valerie. EDI Elektroniczna wymiana dokumentacji. Warszawa, WNT,
2003
[16] Orłowski, Cezary. Projektowanie hybrydowych systemów informatycznych do
wspomagania zarządzania, Wydaw. Politech. Gdańskiej, 1999.
[17] M.Jurczyk, R.Knosala - Terminowość i efektywność realizacji zleceń w systemach
z wyróżnionym zasobem taktującym
![Page 49: Komputerowe wspomaganie zarządzania Tworzenie i wdrażanie ...mariusz.makuchowski.staff.iiar.pwr.wroc.pl/download/courses/... · akceptacyjnych, bądź eksploatacji, a koszty ich](https://reader031.vdocuments.pub/reader031/viewer/2022022115/5c75927309d3f231488bcc07/html5/thumbnails/49.jpg)
Dziękuję za uwagę.