03.ProjektowanieWcykluZycia
Download
Report
Transcript 03.ProjektowanieWcykluZycia
Jarosław Kuchta
Dokumentacja i Jakość Oprogramowania
Projektowanie w cyklu życia
oprogramowania
[email protected]
[email protected]
Klasyczny cykl życia
oprogramowania
Planowanie
Analiza
Projektowanie
Implementacja
Testowanie
Pielęgnacja
Dokumentacja i Jakość
Oprogramowania
Projektowanie w cyklu życia
oprogramowania
2/12
Waga poszczególnych faz
Pielęgnacja
Pielęgnacja
Testowanie
Testowanie
Implementacja
Implementacja
Projektowanie
Projektowanie
Analiza
Analiza
Plan.
Planowanie
Układ niestabilny
Dokumentacja i Jakość
Oprogramowania
Układ stabilny
Projektowanie w cyklu życia
oprogramowania
3/12
Projektowanie a analiza
Planowanie
Analiza
Projektowanie
szczegółowe
Specyfikowanie wymagań
Analiza
statyczna
Analiza
funkcjonalna
Analiza
dynamiczna
Analiza
behawioralna
Projektowanie
w dziedzinie
problemu
Projektowanie
interfejsu
użytkownika
Projektowanie
struktury
danych
Projektowanie
architektury
systemu
Dokumentacja i Jakość
Oprogramowania
Projektowanie w cyklu życia
oprogramowania
modelowanie
Projektowanie
systemowe
SWS
4/12
Specyfikowanie wymagań
Cele:
Aktywności:
Określenie celu biznesowego projektu
Identyfikacja wymagań (funkcjonalnych, niefunkcjonalnych)
Alokacja wymagań do poszczególnych składników systemu
informatycznego
Określenie udziałowców projektu
Pozyskiwanie wymagań
Walidacja wymagań
Produkt:
Specyfikacja Wymagań Systemowych
Dokumentacja i Jakość
Oprogramowania
Projektowanie w cyklu życia
oprogramowania
5/12
Analiza systemowa
Cel:
Aktywności:
Osiągnięcie właściwego poziomu zrozumienia pomiędzy
zespołem projektowym a klientem odnośnie tego co ma
system robić
Analizowanie wymagań systemowych
Modelowanie wymaganego systemu
Prototypowanie systemu
Produkt:
Złożony model systemu w dziedzinie problemu
Dokumentacja i Jakość
Oprogramowania
Projektowanie w cyklu życia
oprogramowania
6/12
Aspekty analizy
Aspekt statyczny
Aspekt funkcjonalny
Analiza funkcjonalności systemu: funkcji udostępnianych przez system dla
użytkowników lub innych systemów
Aspekt behawioralny
Analiza struktury systemu: elementów składowych (klas, obiektów), ich
właściwości i relacji między nimi
Analiza zachowania systemu i jego elementów składowych: ich reakcji na
zdarzenia pochodzące od użytkowników lub innych systemów
Aspekt dynamiczny
Analiza relacji w czasie i zmian czasowych zachodzących w systemie i
pomiędzy systemem a jego użytkownikami lub innymi systemami
Dokumentacja i Jakość
Oprogramowania
Projektowanie w cyklu życia
oprogramowania
7/12
Modele analityczne
Model klas i obiektów (a.statyczny)
Model przypadków użycia (a.funkcjonalny)
Model kolaboracji (a.funkcjonalny)
Model przepływu danych (a.funkcjonalny)
Model czasowy (a.dynamiczny)
Model przejść stanów (a.behawioralny)
Model aktywności (a.funkcjonalny, behawioralny,
dynamiczny)
Dokumentacja i Jakość
Oprogramowania
Projektowanie w cyklu życia
oprogramowania
8/12
Cele projektowania
Projektowanie systemowe
Określenie zgrubnej struktury systemu dla
zrozumienia jak system ma być zrealizowany
Projektowanie szczegółowe
Określenie szczegółowej struktury systemu dla
ułatwienia poprawnej implementacji projektu
Dokumentacja i Jakość
Oprogramowania
Projektowanie w cyklu życia
oprogramowania
9/12
Aspekty projektowania
Projektowanie w dziedzinie problemu
Projektowanie interfejsu użytkownika
Zaprojektowanie klas, obiektów, ich właściwości, relacji i funkcjonalności
niezbędnych do komunikacji pomiędzy systemem informatycznym a jego
użytkownikami
Projektowanie struktury danych
Odwzorowanie modelu analitycznego w zbiór klas, obiektów, ich
właściwości, relacji i funkcjonalności możliwych do zrealizowania w
systemie informatycznym
Zaprojektowanie klas, obiektów, ich właściwości, relacji i funkcjonalności
niezbędnych do przechowywania danych przez system
Projektowanie architektury systemu
Określenie elementów składowych systemu tworzących jego fizyczną
strukturę
Dokumentacja i Jakość
Oprogramowania
Projektowanie w cyklu życia
oprogramowania
10/12
Produkty projektowania
Projekt architektury systemu
Projekt interfejsu użytkownika
Projekt struktury danych
Projekt struktury klas
Dokumentacja i Jakość
Oprogramowania
Projektowanie w cyklu życia
oprogramowania
11/12
Literatura
Pressman R.S., Software engineering. A
practitioner’s approach, McGraw-Hill,
International Edition, 1992
Dokumentacja i Jakość
Oprogramowania
Projektowanie w cyklu życia
oprogramowania
12/12