200 likes | 553 Views
Cykl życiowy oprogramowania. Zapraszam. Wykonanie: Jacek Rzeszowicz gr. 522. Co to jest oprogramowanie ???.
E N D
Cykl życiowy oprogramowania Zapraszam Wykonanie: Jacek Rzeszowicz gr. 522
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 )
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.
Jak powstaje oprogramowanie: Inżynieria oprogramowania to dziedzinainż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
Etapy życiowe oprogramowania Cykl życiowy oprogramowania jest procesem złożonym z ciągu wzajemnie spójnych tematów pozwalających na pełne i skuteczniejsze stworzenie, a następnie używanie ( okres od momentu uświadomienia potrzeby systemu do momentu jego wycofania z eksploatacji )
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 )
Modele cyklu życia oprogramowania: Model cyklu – jest to uproszczona prezentacja procesu oprogramowania, modele zeswej natury sa uproszczeniami. PRZYKŁADYMODELI TWORZENIA OPROGRAMOWANIA - Model kaskadowy ( wodospadowy ) separacja faz specyfikacji i implementacji - Model ewolucyjny planowanie - analiza ryzyka – konstruowanie –weryfikacja - Model iteracyjny elementy modelu kaskadowego i ewolucyjnego
ModelKaskadowy: . Określenie wymagań Analiza Projektowanie Implementacja Testowanie Konserwacja
ModelKaskadowy: • 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
ModelKaskadowy: • 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
Model ewolucyjny: . Specyfikacja Wersja poczatkowa Rozwój systemu Zarys systemu Wersje pośrednie Weryfikacja Wersja końcowa Czynności przebiegające równolegle
Modelewolucyjny: 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
Modeliteracyjny: • . Analiza ryzyka ( planowanie ) Projektowanie Konstrukcja i oddanie do uzytku ( prototypowanie ) Ocena ( testowanie )
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
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