Datový model

SongsAndVotes

Projekty .NET

SSŠVT


Datový model k projektu SongsAndVotes

Analýza datového modelu ke každému release-u projektu SongsAndVotes je na samostatné stránce:


Analýza pro Release #2 – Autentizace a správa uživatelů

Release #2 projektu SongsAndVotes řeší zabezpečení aplikace. Pracujeme tedy především s business objektem reprezentujícím uživatele. Pro uživatele vytvoříme i role. Každý uživatel může mít několik rolí.

V tomto release-u máme tedy následující business objekty:

User
Uživatel aplikace SongsAndVotes.
Role
Role uživatele (např. běžný uživatel, administrátor apod.).

U uživatelů a jejich rolí v aplikaci je to obvykle tak, že několik uživatelů může mít stejnou roli. Například máme 350 běžných uživatelů, 3 správce písniček a jednoho superuživatele, který má oprávnění administrovat úplně cokoliv v celém systému.

Pokud může mít jeden uživatel více rolí (např. superuživatel chce mít i možnost si v písničkách listovat a přehrávat si je), pak mezi business objektem User a business objektem Role je vlastně vztah M:N. Pro relace M:N (many-to-many) je vhodné si vytvořit ještě jeden pomocný business objekt (zde např. UserRole), který bude reprezentovat vazební tabulku mezi tabulkou uživatelů a tabulkou rolí.

Datový model (ER-diagram) s vyznačením vazeb mezi business objekty vypadá v tomto release-u takto:

ER-diagram k Release-u #2 projektu SongsAndVotes

Vztah mezi uživateli a rolemi po refaktorování kvůli vazbě M:N neboli many-to-many:

Vztah M:N mezi User a Role