Cykl życiowy oprogramowania

18
Cykl życiowy oprogramowania Zapraszam Wykonanie: Jacek Rzeszowicz gr. 522

description

Cykl życiowy oprogramowania. Zapraszam. Wykonanie: Jacek Rzeszowicz gr. 522. Co to jest oprogramowanie ???. - PowerPoint PPT Presentation

Transcript of Cykl życiowy oprogramowania

Page 1: Cykl życiowy oprogramowania

Cykl życiowy oprogramowania

Zapraszam

Wykonanie: Jacek Rzeszowicz gr. 522

Page 2: Cykl życiowy oprogramowania

Co to jest oprogramowanie ???

Oprogramowanie (ang. software) to zestaw instrukcji przeznaczonych do wykonania dla komputera. Celem oprogramowania jest przetwarzanie danych w określonym przez twórcę zakresie. Oprogramowanie jest synonimem terminów program komputerowy oraz aplikacja, przy czym stosuje się go zazwyczaj do określania większych programów oraz ich zbiorów

• Rodzaje oprogramowania - Powszechne - Dostosowane ( inaczej na zamowienie )

Page 3: Cykl życiowy oprogramowania

Koszty oprogramowania

Koszty oprogramowania są często dominującym składnikiem kosztów całego systemu. Zdarza się, że koszt oprogramowania znacznie przekracza samą wartość sprzętu komputerowego np. komputera osobistego.

Koszt utrzymania i konserwacji oprogramowania jest większy niż koszt jego wytworzenia. Wieloletnia konserwacja oprogramowania może

kosztować wielokrotnie więcej niż jego zakup.

Page 4: Cykl życiowy oprogramowania

Jak powstaje oprogramowanie:

Inżynieria oprogramowania to dziedzina inżynierii systemów, zajmująca sięwszelkimi aspektami produkcji oprogramowania, do których zaliczamy następujące fazy:

Specyfikacja Projektowanie Implementacja Integracja Ewolucję gotowego oprogramowania

– Inżynierowie oprogramowania pracują w sposób systematyczny i uporządkowany ponieważ jest to najskuteczniejszy sposób tworzenia oprogramowania wysokiej jakości

Page 5: Cykl życiowy oprogramowania

Etapy życiowe oprogramowania

Cykl życiowy oprogramowania jest procesem złożonym z ciągu wzajemniespójnych tematów pozwalających na pełne i skuteczniejsze stworzenie, anastępnie używanie ( okres od momentu uświadomienia potrzeby systemudo momentu jego wycofania z eksploatacji )

Page 6: Cykl życiowy oprogramowania

Poszczególne Fazy Rozwojowe

Faza Strategiczna ( ustalenie strategicznych celów, definicja projektu, ogólne planowanie ) Definiowanie wymagań ( zrozumienie celów klienta, wymagania, oszacowanie kosztów ) Analiza ( specyfikacja problemu, zakres obowiązku systemu, ustalenia celów do jakich ma służyć ) Projektowanie ( co system ma robiąc żeby spełnił wymagania użytkownika, w jaki sposób system

ma być zaimplementowany ) Konstrukcja ( tworzenie systemu, rozwijanie, wykorzystanie gotowych elementów, dokumentacja ) Testowanie ( wykrycie i usuniecie błędów, sprawdzenie zgodności ze specyfikacją ocena

niezawodności ) Dokumentacja ( przygotowanie dokumentów dla różnych odbiorców zarówno dla członków

zespołu jak i użytkowników ) Instalacja ( instalacja gotowego sprzętu, systemu operacyjnego u klienta ) Przygotowanie użytkowników (szkolenia, akceptacja ) Konserwacja (utrzymanie w należytym stanie, pielęgnacja )

Page 7: Cykl życiowy oprogramowania

Etapy życiowe oprogramowania

KONSERWACJA

AKCEPTACJA

INSTALACJA

DOKUMENTACJA

Testowanie

KONSTRUKCJA

PROJEKTOWANIE

ANALIZA

DEFINOWANIE WYMAGAŃ

FAZA STRATEGICZNA

Page 8: Cykl życiowy oprogramowania

Modele cyklu życia oprogramowania:

Model cyklu – jest to uproszczona prezentacja procesu oprogramowania, modele ze swej natury sa uproszczeniami.

PRZYKŁADYPRZYKŁADY MODELI TWORZENIA OPROGRAMOWANIAMODELI TWORZENIA OPROGRAMOWANIA

- Model kaskadowy ( wodospadowy ) separacja faz specyfikacji i implementacji

- Model ewolucyjny planowanie - analiza ryzyka – konstruowanie –weryfikacja

- Model iteracyjny elementy modelu kaskadowego i ewolucyjnego

Page 9: Cykl życiowy oprogramowania

Model Kaskadowy:

.

Określeniewymagań

Analiza

Projektowanie

Implementacja

Testowanie

Konserwacja

Page 10: Cykl życiowy oprogramowania

Model Kaskadowy:

Zalety modelu kaskadowego - Rozliczenia finansowe z klientem na paczatku - Po kazdej fazie wymusza kończenie dokumentacji - Formalny odbiór poszczególnych etapów monitorowanie postępu pracy - Zmusza do zdyscyplinowanego podjecia - Łatwośc budżetowania

Page 11: Cykl życiowy oprogramowania

Model Kaskadowy:

Wady modelu kaskadowego

- Z góry narzucona ścisła kolejnosc faz - Nie możesz przejść do następnej fazy jeśli poprzednia się nie

zakończy- Przerwy w kontaktach z klientami

- Bardzo nieelastyczny podział na kolejne fazy - Wysoki koszt błędów ze wczesnych faz - I co najważniejsze iteracje są bardzo kosztowne - powtarzamy wiele

czynności

Page 12: Cykl życiowy oprogramowania

Model ewolucyjny:

.

Zarys systemu

Wersja poczatkowa

Rozwój systemu

Weryfikacja

Specyfikacja

Wersja końcowa

Wersje pośrednie

Czynności przebiegające równolegle

Page 13: Cykl życiowy oprogramowania

Model ewolucyjny:

Zalety modelu ewolucyjnego :

- Pozwala pózniej określić wymagania do naszego systemu - Prototyp pomaga kształcić przyszłego użytkownika/klienta - Prototyp podnosi koszty ale potem je obniża

Wady modelu ewolucyjnego :

-Zwykle prototyp jest wyrzucany - tworzony jest do rozwiązywania jednego problemu nie wielu

Page 14: Cykl życiowy oprogramowania

Model iteracyjny:

.

Analiza ryzyka ( planowanie )

Projektowanie

Ocena ( testowanie )

Konstrukcja i oddanie do uzytku ( prototypowanie )

Page 15: Cykl życiowy oprogramowania

Model iteracyjny:

Zalety modelu iteracyjnego :

- Pozwala na wczesne wykrywanie bledow - Polaczenie iteracji z klasycznym modelem kaskadowy - Zarzadzanie ryzykiem - Latwosc wprowadzania zmian

Wady modelu iteracyjnego - Wymogi klienta dotyczace harmonogramu moga utrudnic

skorzystanie z tego modelu - Problemy z umiejetnosciami oszacowania ryzyka - Zarzadzanie nie jest takie latwe jak w modelu kaskadowym

Page 16: Cykl życiowy oprogramowania

Porownanie Modeli

Ryzyko blędów Koszty blędów Elastycznosc Zarzadzanie

Model Kaskadowy

Model Ewolucyjny

Model Iteracyjny

Page 17: Cykl życiowy oprogramowania

Literatura

Kazimierz Subieta „ Wprowadzenie do inżynierii oprogramowania” Wyd. PJWSTK

„Praktyczne podejście do inżynierii oprogramowania” Roger S. Pressman wyd. WNT Warszawa 2004

Internet

Page 18: Cykl życiowy oprogramowania

Dziękuję za uwagę

Autor: Jaek Rzeszowicz