Modelowanie systemu

  • Diagramy struktur
    • Obiektów (ang. object diagram)
    • Komponentów (ang. component diagram)
    • Wdrożenia (ang. deployment diagram)
    • Struktur złożonych (ang. composite structure diagram)
    • Pakietów (ang. package diagram)
    • Profili (ang. profile diagram, nowość wprowadzona w UML 2.2)
  • Diagramy zachowań
    • Czynności (activity diagram)
    • Przypadków użycia (use case diagram)
    • Maszyny stanów (ang. state machine diagram) (dla UML 1.x Stanów, ang. statechart diagram)
    • Interakcji (diagram abstrakcyjny)
      • Komunikacji (ang. communication diagram) (dla UML 1.x Współdziałania, ang. collaboration diagram)
      • Sekwencji (sequence diagram)
      • Czasowe (ang. timing diagram)
      • Przeglądu interakcji (ang. interaction overview diagram)

Projektując system informatyczny, rozpoczyna się przeważnie od tworzenia diagramów w następującej kolejności:

  1. Przypadków użycia
  2. Sekwencji
  3. Klas
  4. Aktywności

Są to najczęściej wykorzystywane diagramy. Pozostałe bywają pomijane, zwłaszcza przy budowaniu niedużych systemów informatycznych. [Żródlo: Wikipedia]

Narzędzia UML
List of UML tools

Produkty procesu projektowani:

  1. Projekt architektury
  2. Specyfikacja abstrakcji (oprogramowania)
    • wyszczególnienie dostarczanych usług i ograniczeń dla każdego podsystemu (środowisko, biblioteki, technologie, itp.)
    • Diagramy: np. użycia
  3. Specyfikacja interfejsu dla każdego podsystemu
  4. Specyfikacja komponentu
    • usługi komponentu (diagram użycia, sekwencji, itp.)
    • budowa komponentu (diagram klas)
  5. Specyfikacja danych
    • struktury danych
    • Diagramy: np. klas
  6. Specyfikacja algorytmu
    • projektowanie algorytmów dostarczających usługi

Trac może być z powodzeniem wykorzystany do dokumentowania wszystkich aspektów projektu. Strony wiki pozwalają na tworzenie dokumentacji i jej modyfikacji w łatwy sposób, wspierając wymianę informacji. Linki łączące usługi Trac (wiki, repozytorium, harmonogram, zadania, itd.) ułatwiają śledzenie postępów pracy oraz tworzenie raportów.