Upload
trinhnhu
View
226
Download
0
Embed Size (px)
Citation preview
1
Databázové modelování
AnalýzaNávrh konceptuálního schématu
2
Vytváření IS
Analýza Návrh Implementace Testování Předání SW
Jednotlivé fáze mezi sebou iterují
3
Proč modelovat/analyzovat?
Standardizované pracovní postupy Snadnější komunikace v týmu Aktuální a kompletní dokumentace
4
Analýza
Funkční analýza DFD – Data Flow Diagram
Datová analýza ER Model – Entity Relationship Model ERD (Entity-Relationship Diagram) Peter Chen in 1976
5
Funkční analýza
Identifikace systémových funkcí Identifikace událostí Definice transakcí Popis transakcí
6
DFD – Data Flow Diagram
Stavební prvky DFD
1 Název
Název Název
NázevProces
Datový tok
Terminátor
Úložiště dat
7
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
8
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í
9
Jednoduchý příklad kontextového diagramu
Dodavatel
Management
Dílna
Sklad
10
Seznam událostí
Vytvoří přehled o spotřebě
Řídící datum
Je první den v měsíci4.
Přijme mat., potvrdí dodací list
DataDodavatel dodá materiál
3.
Vystaví objednávku ŘídícíSklad nemá dostatek materiálu
2.
Vyhledá mat., vystaví výdejku
DataDílna žádá materiál1.
Reakce systémuTypNázev událostip.č.
11
Upřesněný kontextový diagram
Dodavatel
Management
Dílna
SkladDodací list
Objednávka
Přehled spotřeby
Žádanka
Výdejka
12
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
13
ER Model
Cílem je vytvořit datový model postihující určitou část „světa“
Postup zdola nahoru Vytváříme Konceptuální schéma
(nezávisle na DB modelu -relační, síťový)
14
Primitiva ERD
Entita (reálná nebo imaginární část světa)
Typová entita (superclass) Atributy Vztahy mezi entitami Atributy vztahů Parcialita vztahu Kardinalita vztahu (1:1, 1:N, M:N)
15
Atributy
Jednoduché (Datum, Jméno) Kompozitní
(Adresa=(Č_Domu,Ulice,PSČ)) Vícehodnotové (Vzdělání)
16
Vztahy mezi entitami
Vyjadřuje souvislost (vztah, závislost) mezi entitami Název je sloveso, obvykle je možné dvojí
čtení (jazyková nikoliv konceptuální záležitost!)
Například: má, náleží, je členem, obsahuje
17
Parcialita vztahu
0:0 oboustranně nepovinné členství 1:0 nepovinné členství 1:1 oboustranné povinné členství
18
UML (Unified Modeling Language) industry-standard language for specifying,
visualizing, constructing, and documenting the artifacts of software systems.
19
ER – Entity Relationship Model Stavební prvky ER
Zaměstnanci OdděleníPracuje_V
OdJméno
RC KO
PlatNázev
20
Rozšíření ER modelu Omezení klíčem
Zaměstnanci Oddělení Řídí
OdJméno
RC KO
PlatNázev
21
Rozšíření ER modelu Parcialita vztahu
Zaměstnanci Oddělení Řídí
OdJméno
RC KO
PlatNazev
Pracuje_V
22
Rozšíření ER modelu Slabé entity, identifikační závislost
Zaměstnanci Pokrytí Pojistka
CenaJméno
RCpnázev
Plat Věk
23
Rozšíření ER modelu
ISA-hierarchie
Zaměstnanci
Zam_mzda
Jméno RC
OHod
Plat
HMzda
Zam_Smlouva
Smlouva ISA
24
ER – návrh databáze
? Entita x Atribut? Entita x Vztah? Binární x Ternární vztahy? Agregace x Ternární vztah
? Další příklady CASE Studio
25
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) )
26
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 )
27
ER -> relační databázeCREATE 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)
28
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)
29
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)
30
Vztah E-R a DFDKontextový 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í
31
Děkuji Vám za pozornost