Pobierz prezentację
Pobieranie prezentacji. Proszę czekać
OpublikowałAlicja Kot Został zmieniony 8 lat temu
1
Cykle życia oprogramowania oraz role w zespole projektowym Autor: Sebastian Szałachowski s4104
2
Plan prezentacji ● Cykl życia oprogramowania – Omówienie poszczególnych etapów – Omówienie modeli ● Model kaskadowy ● Model spiralny ● Model prototypowania – Model montażu z gotowych dokumentów ● Role w zespole projektowym – Omówienie modeli zespołów – Omówienie poszczególnych ról ● Podsumowanie
3
Cykl życia oprogramowania ● Wraz z tworzeniem coraz bardziej rozbudowanych systemów informatycznych, potrzebna jest organizacja tego procesu ● Proces wytwarzania i pielęgnacji oprogramowania dzielimy na etapy ● Sposób organizacji procesu wytwarzania oprogramowania i podziału na różne etapy nazywamy modelem cyklu życia oprogramowania
4
Etapy wytwarzania oprogramowania ● Faza strategiczna ● Określenie wymagań ● Analiza ● Projektowanie ● Implementacja / konstrukcja ● Testowanie ● Dokumentacja ● Instalacja ● Konserwacja
5
Faza strategiczna ● Określenie celu projektu ● Wstępne rozmowy z klientem ● Podjęcie ważnych decyzji i tej najważniejszej czyli czy projekt zostanie podjęty
6
Określenie wymagań ● Określenie wymagań funkcjonalnych i niefunkcjonalnych z klientem ● Muszą być zgodne z celem projektu ustalonego w fazie strategicznej ● Jest to zazwyczaj trudny proces, ale zarazem kluczowy
7
Analiza ● Odwzorowanie wymagań klienta na model analityczny ● Na tym etapie nie interesuje nas implementacja systemu ● Przykład: – Analityk poznaje sposób działania przedsiębiorstwa bez systemu informatycznego, wyłapuję zależności między pracownikami, dokumentami, klientami, procesami itd. Musi poznać dziedzinę problemową i cały czas mieć na uwadze wymagania klienta oraz cel całego projektu.
8
Projektowanie ● Odwzorowanie powstałego w poprzedniej fazie modelu analitycznego na dane środowisko implementacyjne ● Współczesne języki są ograniczone, nie implementują wszystkich elementów z modelu analitycznego ● Przykład: – Projektant nie musi wiedzieć jak działa firma prawnicza, na podstawie przygotowanego przez analityka modelu odwzoruję sposób działania systemu informatycznego
9
Implementacja ● Praca programistów ● Kodowanie modelu projektowego w danym języku ● Bieżące testowanie i dokumentowanie wytworzonego kodu
10
Testowanie ● Po zakończeniu prac programistycznych ● Wykrycie błędów
11
Dokumentacja ● Dokumentowanie działań nad projektem ● Trwa przez większość etapów
12
Instalacja ● Wdrożenie systemu w środowisku klienta ● Dopracowywanie niuansów w systemie ● Przeszkolenie pracowników
13
Konserwacja ● Łatanie dziur w oprogramowaniu ● Dostosowywanie systemu do zmian np. w gotowych komponentach lub w świecie rzeczywistym ● Przykład – Konieczność zmiany stawek podatku dochodowego z 19,30,40 % na 18 i 32%
14
Modele cyklu życia oprogramowania ● W zależności od tego w jaki sposób i w jakiej kolejności będą wykonywane poszczególne etapy mogą powstać różne modele ● Możemy wyróżnić następujące modele: – Model kaskadowy (waterfall model) – Model spiralny – Model prototypowania – Model montażu z gotowych elementów
15
Model kaskadowy ● Schemat modelu Określenie wymagań Analiza Projektowanie Implementacja Testowanie Konserwacja
16
Model kaskadowy ● Cechy modelu – Etapy następują po sobie – Nie zazębiają się tzn. trwają niezależnie ● Zalety modelu – Łatwość organizacji i harmonogrowania prac ● Wady modelu – Błędy we wcześniejszych pracach wpływają negatywnie na następne – Brak ciągłego kontaktu z klientem – Niezmienna kolejność wykonywania prac
17
Model spiralny ● Schemat Modelu Planowanie Analiza ryzyka AtestowanieKonstrukcja
18
Model spiralny ● Zalety modelu – Dobrze opisuje tworzenie wielu wersji oprogramowania – Minimalizacja ryzyka – Ciągły kontakt z klientem ● Wady – Większe nakłady organizacyjne (etapy wykonywane wielokrotnie) – Położony mniejszy na precyzyjne określenie wymagań
19
Model prototypowania ● Tworzymy makietę systemu, głównie interfejsu użytkownika, bez budowy całego back-endu ● Zalety systemu – Duży nacisk na precyzyjne określenie wymagań – Szybka demonstracja jak system będzie wyglądał ● Wady – Dodatkowy koszt tworzenia prototypu – Klient może narzekać na długi czas realizacji systemu, bo przecież już widział system prawie gotowy
20
Montaż z gotowych komponentów ● Wykorzystuje podobieństwo w funkcjonowaniu wielu przedsiębiorstw ● Możliwość skorzystania z poprzednich swoich rozwiązań ● Możliwość kupienia gotowych komponentów
21
Montaż z gotowych komponentów ● Zalety – Gotowe komponenty są zazwyczaj mniej zawodne niż te pisane od nowa dla każdego systemu – Oszczędność zasobów w tym czasu ● Wady – Możliwość porzucenia rozwoju komponentu przez zewnętrzne firmy – Ograniczona dziedzina problemowa – Nakład na przystosowanie komponentów
22
Role w zespole projektowym ● Im projekt jest bardziej rozbudowany tym więcej ludzi jest zaangażowzanych w jego realizację ● Im więcej ludzi w projekcie tym jest potrzebna większa organizacja pracy ● Potrzebny jest odpowiedni podział ról ● Każda rola ma wyznaczony cel ● Wszyscy członkowie mają wspólny cel – zadowolenie klienta (zakończenie projektu sukcesem)
23
Struktury zespołów ● Model sieciowy Model gwiazdy
24
Model sieciowy ● Każdy członek zespołu wie za co odpowiedzialni są inni członkowie tego zespołu ● Wymiana wiedzy i postępów pomiędzy wszystkimi członkami ● Łatwość zastąpienia jednego z członków przez zespół, gdy ten np. zrezygnował z projektu ● Efektywny tylko przy małych zespołach
25
Model gwiazdy ● Lider zespołu (kierownik projektu) wie za co są odpowiedzialni i jest informowany o postępach ● Mniejsze nakłady na odpowiednią komunikację w zespole ● Trudności przy odejściu lidera z projektu ● Używana przy większych zespołach
26
Role w zespole ● Kierownik projektu ● Analityk ● Projektant ● Programista ● Tester ● Wdrożeniowiec ● Osoba odpowiedzialna za konserwację systemu
27
Kierownik ● Odpowiedzialny za: – Kontakt z klientem – Zarządzanie zasobami – Zarządzanie zespołem – Marketing ● Cechy kierownika – Odporność na stres – Umiejętność rozwiązywania konfliktów – Umiejętność motywacji zespołu
28
Analityk ● Odpowiedzialny za: – Przełożenie wymagań klienta na model analityczny – Określenie funkcjonalności systemu ● Cechy – Doświadczenie zarówno w dziedzinie problemowej jak i w IT – Dobry kontakt z ludźmi
29
Projektant ● Tworzy model implementacyjny z modelu przygotowanego przez analityka ● Nie musi znać dziedziny problemowej ● Musi być doświadczony w danym środowisku implementacyjnym (w języku programowania, bazie danych) ● Można rozdzielić rolę projektanta na projektanta GUI, bazy danych itp.
30
Programista,Tester, Wdrożeniowiec, Konserwator ● Programista – Tworzy oprogramowanie na podstawie modelu przygotowanego przez projektanta ● Tester – Testuje gotowe oprogramowanie ● Wdrożeniowiec – Znajomość różnych konfiguracji sprzętowych i programowych – Zdolności pedagogiczne ● Konserwator – Odpowiedzialny za pielęgnacje systemu
31
Role i członkowie w zespole ● Role można łączyć i tak jeden z członków zespołu może być zarówno projektantem i programistą ● Nie zaleca się łączenia niektórych ról np. rola testera i programisty powinny przypadać różnym osobom, własne błędy trudniej zauważyć
32
Podsumowanie ● Dziękuje za uwagę
33
Źródła ● “Podstawy inżynierii oprogramowania” Włodzimierz Dąbrowski i Kazimierz Subieta ● Wikipedia hasła: – Model kaskadowy – Model spiralny ● MSF Team Model v.3.1 ● MSF Process Model v.3.1
Podobne prezentacje
© 2024 SlidePlayer.pl Inc.
All rights reserved.