Modelování vztahů a systémů

Přejít ke cvičením na toto téma »

Lidé, věci a další objekty na světě jsou často různými způsoby propojené – navzájem se ovlivňují, souvisí spolu, nebo jsou si třeba nějak podobné. Jinak řečeno, mají mezi sebou vztahy. Víc navzájem propojených objektů tvoří systém. Abychom se ve složitějším systému lépe vyznali, často pomáhá si daný systém znázornit nebo nakreslit – namodelovat.

Zde si můžete procvičit jednoduché rozlišování mezi vztahy a vlastnostmi. Cvičení využívá mimo jiné i entitně-vztahové modely – speciální typ diagramů, které se používají i k modelování databází. Těmito modely se do větší hloubky zabývá následující cvičení, které se na vztahy a vlastnosti dívá z více databázového pohledu.

Objekty (věci, lidé, skupiny, …) mohou mít vztahy s dalšími objekty. Vztahy vyjadřují, jak spolu různé objekty souvisí. Pokud o Ondrovi řekneme, že má sestru Anetu, říkáme, že mezi Ondrou a Anetou je vztah – konkrétně sourozenecký. Dále můžeme říct, že Ondra chodí na 2. ZŠ v Dobříši. To je vztah mezi Ondrou a školou, kterou navštěvuje. Objekty dále mohou mít různé vlastnosti, tedy další informace, které je nějak popisují. Ondrovy vlastnosti jsou například jeho zelené oči a tmavě hnědé vlasy. Vlastnost školy je třeba, že stojí na adrese Školní 1035.

Při určování, jestli jde o vlastnost, nebo o vztah mezi dvěma objekty, často pomáhá zamyslet se, jestli jedna část vztahu může existovat bez druhé. Pokud je jedna část závislá na existenci druhé, jde pravděpodobně o vlastnost. V opačném případě je to spíše vztah. Obecně, vazba mezi objektem a jeho vlastností je obvykle pevnější než vztah mezi dvěma objekty. Kdyby 2. ZŠ v Dobříši neexistovala, nebude existovat ani adresa Školní 1035 – protože na té adrese nebude stát žádná budova. Proto je adresa vlastností školy. Naproti tomu, pokud by neexistovala 2. ZŠ, Ondra by mohl jednoduše chodit na jinou školu. Zároveň, kdyby Ondra bydlel v jiném městě a nechodil na 2. ZŠ, ta by i přesto mohla stát v Dobříši a vzdělávat jiné děti. Proto věta „Ondra chodí na 2. ZŠ“ vyjadřuje vztah a nikoli vlastnost.

Entitně-vztahové modely

Přejít ke cvičením na toto téma »

Entitně-vztahové modely (diagramy) pomáhají znázorňovat a zpřehledňovat vztahy a vlastnosti mezi objekty. Používají je například databázoví architekti, aby naplánovali, jak bude vypadat jejich databáze. Diagramy jsou ale poměrně jednoduché, takže si s nimi můžeme pohrát i my.

V entitně-vztahovém modelu se vyskytují tři typy prvků:

  • Entity představují objekty. Mohou existovat samostatně, nezávisle na ostatních objektech, a mají vlastnosti (atributy). V diagramu se zakreslují do obdélníků.
  • Vztahy (relace) propojují entity. Zakreslují se jako diamanty, které jsou spojené čarou s danými entitami.
  • Atributy (vlastnosti) patří jednotlivým entitám. Typicky nemají smysl bez entity, které patří – nemohou existovat samostatně. Znázorňují se jako elipsy spojené s danou entitou.

Jednoduchý diagram může vypadat například takto:

Rozebraný příklad: význam diagramu

  • Uživatelé sociální sítě mohou zveřejňovat příspěvky a mají určitý počet sledujících.
  • Uživatelé a příspěvky jsou entity.
  • Jsou propojené vztahem, jehož název říká, jak spolu tyto dvě entity souvisí (uživatel zveřejňuje příspěvek).
  • Počet sledujících je atribut uživatele.

Vztahy mohou mít různé četnosti. Četnosti vyjadřují, s kolika entitami může být každá strana v daném vztahu. Uvažme zmínený příklad sociální sítě. Jeden uživatel může zveřejnit více příspěvků. Ale každý příspěvek je zveřejněn pouze jedním uživatelem. Proto je četnost vztahu „zveřejňuje“ 1 uživatel – více příspěvků. Naproti tomu, pokud bychom mluvili o vztahu „uživateli se líbí příspěvek“, byla by četnost více uživatelů – více příspěvků. To proto, že jednomu uživateli se může líbit více příspěvků, a jeden příspěvek může být „olajkován“ více uživateli.

NAPIŠTE NÁM

Děkujeme za vaši zprávu, byla úspěšně odeslána.

Napište nám

Nevíte si rady?

Nejprve se prosím podívejte na časté dotazy:

Čeho se zpráva týká?

Vzkaz Obsah Ovládání Přihlášení Licence