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