Databázové modelování Analýza Návrh konceptuálního schématu
Proč modelovat/analyzovat? Standardizované pracovní postupy Snadnější komunikace v týmu Aktuální a kompletní dokumentace
Analýza Funkční analýza Datová analýza DFD – Data Flow Diagram ER Model – Entity Relationship Model
Funkční analýza Identifikace systémových funkcí Identifikace událostí Definice transakcí Popis transakcí
DFD – Data Flow Diagram Stavební prvky DFD Proces Datový tok 1 Název Název Proces Datový tok Terminátor Úložiště dat
DFD Top-Down Postup Používáme postup Shora – dolů Úrovně: 1. Kontextový diagram – inf. o tom jak bude IS komunikovat se zbytkem světa 2.- n-tá další postupné rozklady (max. doporučená hodnota n je 3, pozn. jedná se o hodnotu doporučenou) Vhodná jmenná konvence
Chyby DFD datastory, z nichž se jenom čte nebo se do nich jenom zapisuje samogenerující funkce, tj. funkce které mají jenom výstupy černé díry, tj. funkce do nichž data pouze vstupují
Jednoduchý příklad kontextového diagramu Dodavatel Management Dílna Sklad
Seznam událostí p.č. Název události Typ Reakce systému 1. Dílna žádá materiál Data Vyhledá mat., vystaví výdejku 2. Sklad nemá dostatek materiálu Řídící Vystaví objednávku 3. Dodavatel dodá materiál Přijme mat., potvrdí dodací list 4. Je první den v měsíci Řídící datum Vytvoří přehled o spotřebě
Upřesněný kontextový diagram Dodavatel Management Dílna Sklad Dodací list Objednávka Přehled spotřeby Žádanka Výdejka
Další úrovně rozkladu - sklad Žádanka Databáze Objednávání Příjem mat. Tvorba přehledů Výdej mat. Objednávka Přehled spotřeby Skladové zásoby Mat. Mat. dodavatel Výdejka Zásoba mat. Materiál
ER – Entity Relationship Model Stavební prvky ER Zaměstnanci Oddělení Pracuje_V Od Jméno RC KO Plat Název
Rozšíření ER modelu Omezení klíčem Oddělení Zaměstnanci Řídí Od Jméno RC KO Plat Název
Rozšíření ER modelu Parcialita vztahu Oddělení Zaměstnanci Řídí Od Jméno RC KO Plat Nazev Pracuje_V
Rozšíření ER modelu Slabé entity, identifikační závislost Pokrytí Zaměstnanci Pokrytí Pojistka Cena Jméno RC pnázev Plat Věk
Rozšíření ER modelu ISA-hierarchie Zam_mzda Zaměstnanci Jméno RC OHod Plat HMzda Zam_Smlouva Smlouva ISA
ER – návrh databáze Entita x Atribut Entita x Vztah Binární x Ternární vztahy Agregace x Ternární vztah
ER -> relační databáze Entita Zaměstnanci Jméno RC Plat CREATE TABLE Zamestnanci ( RC CHAR(12), Jmeno CHAR(30), Plat Integer, PRIMARY KEY (RC) )
ER -> relační databáze Relační vztah (bez omezení klíčem) CREATE TABLE Pracuje_V ( RC CHAR(12), KO CHAR(10), Od DATE, PRIMARY KEY (RC,KO) FOREIGN KEY (RC) REFERENCES zamestnanci, FOREIGN KEY (KO) REFERENCES oddeleni )
ER -> relační databáze CREATE TABLE Řídí ( RC CHAR(12), KO CHAR(10), Od DATE, PRIMARY KEY (KO) FOREIGN KEY (RC) REFERENCES zamestnanci, FOREIGN KEY (KO) REFERENCES oddeleni ) CREATE TABLE Odd-Řídí ( KO CHAR(10), Od DATE, RC CHAR(12), PRIMARY KEY (KO) FOREIGN KEY (RC) REFERENCES zamestnanci)
ER -> relační databáze Parcialitní omezení CREATE TABLE Ridi_Odd ( KO CHAR(12), Nazev CHAR(30), Od DATE, RC CHAR(12) NOT NULL, PRIMARY KEY (KO), FOREIGN KEY (RC) REFERENCES zamestanaci, ON DELETE NO ACTION)
ER -> relační databáze Slabé entity CREATE TABLE Pojistenci_Poj ( pnazev CHAR(12), vek INTEGER, Cena REAL, RC CHAR(12), PRIMARY KEY (pnazev,RC), FOREIGN KEY (RC) REFERENCES zamestnanci, ON DELETE CASCADE)
Definice všech datových prvků Vztah E-R a DFD Kontextový diagram DFD 1. úroveň DFD n-tá úroveň Definice všech datových prvků ERA diagram Specifikace procesů popis všech funkcí s uvedením na datové prvky a s popisem podmínek vykonání funkcí
Děkuji Vám za pozornost