Definicja

ERD (Entity Relationship Diagram), czyli diagram związków encji, to narzędzie analizy systemowej służące do projektowania logicznej struktury bazy danych. Pozwala on zrozumieć, jakie dane system musi przechowywać oraz w jaki sposób poszczególne obiekty biznesowe (np. Klient, Produkt, Zamówienie) są ze sobą powiązane.

Kluczowe elementy diagramu ERD

Aby poprawnie odczytać lub stworzyć diagram ERD, należy poznać jego trzy podstawowe składniki:

1. Encja (Entity)

To konkretny obiekt, o którym chcemy zbierać informacje. Na diagramie przedstawiana jest jako prostokąt.

  • Przykład: Klient, Pracownik, Faktura.

2. Atrybut (Attribute)

Cecha opisująca daną encję. Atrybuty to dane, które będą przechowywane w kolumnach tabeli bazy danych.

  • Przykład: Imię, Nazwisko, NIP, Data_Urodzenia.
  • Klucz główny (Primary Key - PK): Unikalny atrybut identyfikujący dany rekord (np. ID_Klienta).

3. Relacja (Relationship)

Linia łącząca encje, która opisuje, jak obiekty wchodzą ze sobą w interakcje. Relacje definiują logikę biznesową systemu.


Liczebność relacji (Cardinality)

Kluczowym aspektem ERD jest określenie liczebności powiązań (tzw. kardynalność), najczęściej oznaczanej za pomocą notacji “kurza stopka” (Crow’s Foot notation):

  • Jeden do jednego (1:1): Jednemu rekordowi w tabeli A odpowiada dokładnie jeden rekord w tabeli B (np. Obywatel – PESEL).
  • Jeden do wielu (1:N): Jednemu rekordowi w tabeli A odpowiada wiele rekordów w tabeli B (np. Klient – Zamówienia).
  • Wielu do wielu (M:N): Wiele rekordów w tabeli A może odpowiadać wielu rekordom w tabeli B (np. Autorzy – Książki). W bazach relacyjnych takie powiązanie wymaga zazwyczaj tabeli pośredniczącej.

Poziomy modelowania danych

W procesie analizy systemowej model danych ewoluuje:

  1. Model Konceptualny: Wysokopoziomowy widok dla biznesu, zawiera tylko główne encje i relacje.
  2. Model Logiczny: Bardziej szczegółowy, zawiera wszystkie atrybuty i klucze, ale jest niezależny od konkretnej technologii bazy danych.
  3. Model Fizyczny: Najbardziej szczegółowy, uwzględnia typy danych (np. VARCHAR, INT), indeksy i ograniczenia konkretnego silnika bazy danych (np. PostgreSQL, SQL Server).

Dlaczego ERD jest ważne dla Analityka?

  • Eliminacja redundancji: Pomaga zaprojektować bazę tak, aby nie dublować tych samych informacji w wielu miejscach (normalizacja).
  • Weryfikacja wymagań: Jeśli biznes mówi o “historii zmian statusu”, a na ERD nie ma tabeli logów, oznacza to lukę w projekcie.
  • Komunikacja z IT: ERD jest dla programisty konkretną instrukcją, jak zbudować bazę danych, która obsłuży logikę opisaną w Przypadkach użycia.

Typowe błędy

  • Brak kluczy głównych – Uniemożliwia jednoznaczną identyfikację rekordów.
  • Relacje “wiszące” – Encje, które nie łączą się z niczym innym, co sugeruje błąd w analizie procesów.
  • Mieszanie poziomów – Umieszczanie szczegółów technicznych (np. wielkość bufora) na modelu konceptualnym dla biznesu.

Podsumowanie

Modelowanie danych to serce analizy systemowej. Bez solidnego diagramu ERD trudno o stabilny i skalowalny system informatyczny. Dobrze zaprojektowany model danych to fundament, na którym opiera się cała logika biznesowa Twojej aplikacji.


Powiązane pojęcia:

Kliknij w pojęcie, aby przejść do jego definicji w słowniku