W modelowaniu systemów i inżynierii wymagań korzysta się z różnych rodzajów diagramów, w zależności od potrzeb i etapu projektowania.
1. Diagramy UML:
- Diagram przypadków użycia (Use Case Diagram) **Junior Python Dev
- Cel: Modelowanie funkcjonalności systemu z perspektywy użytkownika (co system robi).
- Zastosowanie: Definiowanie wymagań funkcjonalnych.
- Elementy: Aktorzy, przypadki użycia (use cases), związki między nimi.
- Przykład: "Użytkownik loguje się", "Klient składa zamówienie".
- Diagram klas (Class Diagram) **Junior Python Dev
- Cel: Reprezentowanie struktury systemu, klas, ich atrybutów i relacji.
- Zastosowanie: Modelowanie struktury danych i obiektów.
- Elementy: Klasy, pola, metody, związki (asocjacja, dziedziczenie, agregacja, kompozycja).
- Przykład 1 (Library API)
- Przykład 2 (Library API)
- Diagram sekwencji (Sequence Diagram) **Junior Python Dev
- Cel: Pokazanie, jak obiekty w systemie komunikują się ze sobą w określonej kolejności.
- Zastosowanie: Analiza przepływu komunikatów w konkretnym przypadku użycia.
- Elementy: Obiekty, linie życia, komunikaty, aktywności.
- Diagram aktywności (Activity Diagram)
- Diagram stanów (State Diagram)
2. Diagramy ERD (Entity-Relationship Diagram):
- Cel: Modelowanie struktur danych i relacji między encjami w bazie danych.
- Zastosowanie: Projektowanie baz danych.
3. Diagramy procesów biznesowych (BPMN - Business Process Model and Notation)
4. Diagramy przepływu danych (DFD - Data Flow Diagram) **Junior Python Dev
- Cel: Modelowanie przepływu danych w systemie (co się dzieje z danymi).
- Zastosowanie: Analiza systemów, które przetwarzają dane.
- Elementy: Procesy, przepływy danych, magazyny danych, terminatory (źródła/zlecenia danych).
- Przykład: System rezerwacji lotów.
5. Diagram architektury systemu (System Architecture Diagram)
6. Diagramy fizyczne i wdrożeniowe
7. Diagramy map myśli (Mind Maps)
Podsumowanie:
- Na poziomie wymagań funkcjonalnych: Diagram przypadków użycia, diagramy procesów biznesowych, DFD.
- Na poziomie architektury i projektowania: Diagram klas, diagramy architektury, diagramy wdrożenia.
- Na poziomie analizy przepływów: Diagram sekwencji, diagram aktywności, diagram stanów.