Artifact: Datový model
Databázové model popisuje reprezentaci perzistentních dat využívaných webovou aplikací. Při vývoji webových aplikaci je využíváno především databází relačních a jinak tomu není ani v případě frameworku ASP.NET MVC.
Domains: Vývoj
Purpose
Zachování perzistence dat.
Relationships
Description
Main Description

Produkt definuje strukturu a formát dat relační databáze a vztahy mezi jednotlivými entitami. Slouží k vypořádání se s problémy sémantiky dat, konzistence dat, redundancí dat a k řešení persistence dat ve webové aplikaci.


Model by se měl vytvářet s ohledem na zvolený RDBMS (Relational database management system), což je v případě aplikací tvořených ve frameworku ASP.NET MVC typicky Microsoft SQL Server. V případě nutnosti je možné použití i jiného RDBMS, nemusí však být frameworkem plně podporován a práce s ním tak bude nejspíše komplikovanější. Datový model může být vytvořen buď využitím zpětného inženýrství na existující databáze, nebo na základě přechozí analýzy požadavků.


Dle úrovně pohledu na data je možné dělit datové modely na několik typů:

  • Konceptuální model – nejvyšší úroveň, která zachycuje pouze třídy entit, jejich vztahy a atributy. Není ovlivněn budoucími prostředky řešení.
  • Logický model – rozšiřuje konceptuální model z hlediska konkrétní databázové implementace (relační, objektové atd.).
  • Fyzický model – nejkonkrétnější, popisuje fyzické uložení dat v konkrétním RDBMS.
Tailoring
Impact of not havingSložitá modifikovatelnost databáze, malý výkon, nízká robustnost řešení.
Reasons for not needingDatový model nemusí být zapotřebí u webových aplikací pracující s malým množstvím perzistentních dat.
Dále není datový model třeba, pokud se programátor rozhodne pro přístup Code First (jeden z přístupů inicializace databáze pomocí nejvyužívanějšího objektově-relačního mapovače zvaného Entity Framework). V takovém případě se tabulky databáze generují automaticky na základě tříd aplikace. I v tomto případě je však doporučeno zpracovat alespoň konceptuální model.
Representation OptionsDatový model je typicky reprezentován UML diagramem.