DBS Konceptuální modelování



Podobné dokumenty
DBS Konceptuální modelování

Konceptuální modelování

Funkční schéma Datové schéma Integrita modelu s realitou

Konceptuální modelování

Diagram výskytů a vztahů

DBS Transformace konceptuálního schématu na

Transformace konceptuálního modelu na relační

Modely datové. Další úrovní je logická úroveň Databázové modely Relační, Síťový, Hierarchický. Na fyzické úrovni se jedná o množinu souborů.

Databáze 2013/2014. Konceptuální model DB. RNDr. David Hoksza, Ph.D.

Transformace ER SQL. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, P edn. 9

Konceptuální modelování. Pavel Tyl

Analýza a modelování dat. Helena Palovská

DBS Databázové modely

Databázové modelování. Analýza Návrh konceptuálního schématu

Databázové systémy. Cvičení 2

4IT218 Databáze. 4IT218 Databáze

Analýza dat a modelování. Přednáška 2

Databázové systémy. Vztahy a relace. 3.přednáška

Úvod do databázových systémů 6. cvičení

DBS Databázové modely

RNDr. Jakub Lokoč, Ph.D. RNDr. Michal Kopecký, Ph.D. Katedra softwarového inženýrství Matematicko-Fyzikální fakulta Univerzita Karlova v Praze

Obsah přednášky. Databázové systémy RDBMS. Fáze návrhu RDBMS. Coddových 12 pravidel. Coddových 12 pravidel

Analýza problémové domény

Konceptuální datové modely používané při analýze

Seminá e. Ing. Michal Valenta PhD. Databázové systémy BI-DBS ZS 2010/11, sem. 1-13

A5M33IZS Informační a znalostní systémy. O čem předmět bude? Úvod do problematiky databázových systémů

C8 Relační databáze. 1. Datový model

Inovace tohoto kurzu byla spolufinancována z Evropského sociálního fondu a státního rozpočtu České republiky.

Databáze. Logický model DB. David Hoksza

2 Konceptuální modelování a návrh databáze

Úvod do databázových systémů

2 Konceptuální modelování a návrh databáze

Databáze I. Přednáška 2

Databázové systémy. modelování. Tomáš Skopal. - úvod. - konceptuální datové

2. Konceptuální model dat, E-R konceptuální model

Analýza dat a modelování. Přednáška 1

Kapitola 2: Entitně-vztahový model (Entity-Relationship model) Množiny entit (entitní množiny) Atributy

Úvod do softwarového inženýrství IUS 2009/2010 p.1/30

Úvod do databázových systémů. Lekce 1

DATOVÉ MODELOVÁNÍ ER MODEL

Databáze 2011/2012 Konceptuální model DB. RNDr. David Hoksza, Ph.D.

Fakulta elektrotechniky a informatiky Vysoká škola báňská - Technická univerzita Ostrava. Úvod do databázových systémů 2012/2013 IS MHD

Jazyk UML - přehled. diagram hierarchie procesů. IS firmy. podpora řízení. evidence zaměstnanců. pokladny. výroba. diagram procesních vláken

Strukturované metodologie

Jazyk SQL 1. Michal Valenta. Katedra softwarového inženýrství FIT České vysoké učení technické v Praze c Michal Valenta, 2012 BI-DBS, ZS 2011/12

7.3 Diagramy tříd - základy

Etapy tvorby lidského díla

Relace x vztah (relationship)

Informační systémy 2008/2009. Radim Farana. Obsah. Obsah předmětu. Požadavky kreditového systému. Relační datový model, Architektury databází

Databáze I. 4. přednáška. Helena Palovská

7.3 Diagramy tříd - základy

Petr Křemen. Katedra kybernetiky, FEL ČVUT. Petr Křemen (Katedra kybernetiky, FEL ČVUT) Sémantické sítě a rámce 1 / 112

Modelový příklad Knihovna Vypracovaný příklad ze cvičení včetně komentářů k řešení

Terminologie v relačním modelu

Diagramy tříd - základy

Databázové systémy 1. Studijní opora. Ing. Zbyněk Bureš. Ph.D.

2. Modelovací jazyk UML 2.1 Struktura UML Diagram tříd Asociace OCL. 3. Smalltalk 3.1 Jazyk Pojmenování

Objektově orientované databáze. Miroslav Beneš

Otázka č. 1 (bodů za otázku: 4)

RELAČNÍ DATABÁZOVÉ SYSTÉMY

RNDr. Jakub Lokoč, Ph.D. RNDr. Michal Kopecký, Ph.D. Katedra softwarového inženýrství Matematicko-Fyzikální fakulta Univerzita Karlova v Praze

Metodika návrhu databáze

DBS Normální formy, normalizace

Databázové systémy BIK-DBS

Tvorba informačních systémů

Database engine (databázový stroj, databázový motor, databázové jádro) Systém řízení báze dat SŘBD. Typy SŘBD podle způsobu práce s daty

ÚVOD DO DATABÁZÍ I (DISTANČNÍ VÝUKOVÁ OPORA)

6 Objektově-orientovaný vývoj programového vybavení

Relační databázový model. Vladimíra Zádová, KIN, EF, TUL- DBS

Jiří Mašek BIVŠ V Pra r ha

Objektové modelování BI-OMO 4. cvičení

Návrh databázového modelu

Databázové systémy. Ing. Radek Holý

7.5 Diagram tříd pokročilé techniky

Architektura softwarových systémů

Databázové systémy I

Modelování požadavků

UML úvod. Zdroje: Kanisová Hana, Müller Miroslav: UML srozumitelně, Computer Press 2007

Databázové systémy úvod

Souvislost E-R schématu s relačním

Problémové domény a jejich charakteristiky

Modelování procesů s využitím MS Visio.

11 Diagram tříd, asociace, dědičnost, abstraktní třídy

Smysl metodiky IS/IT. Koncentrovaná zkušenost Checklist na nic nezapomeneme

Vývoj IS - strukturované paradigma II

Třída. Atributy. Operace

OOT Objektově orientované technologie

Databázové systémy. Přednáška 1

Úvod do databázových systémů 2012/2013 IS MHD. Jiří Znoj zno

Objektově orientované technologie. Daniela Szturcová

Marketingová komunikace. 2. a 3. soustředění. Mgr. Pavel Vávra 9103@mail.vsfs.cz. Kombinované studium Skupina N9KMK3PH (vm3aph)

Databázové systémy úvod

7.5 Diagram tříd pokročilé techniky

Databázové systémy 1. Cvičení č. 9. Fakulta elektrotechniky a informatiky Univerzita Pardubice

Analýza a modelování dat 2. přednáška. Helena Palovská

DIPLOMOVÁ PRÁCE. Bc. Hana Kozelková. Editor datových modelů s podporou reverzního datového inženýrství

Databázové systémy úvod

Zadání. Seznam typů entit včetně jejich atributů, vyznačte klíče a cizí klíče Seznam typů vztahu určený svým názvem a entitami do něj vstupujícími

Marketingová komunikace. 2. soustředění. Mgr. Pavel Vávra Kombinované studium Skupina N9KMK1aPH/N9KMK1bPH (um1a1ph/um1b1ph)

Relační model reprezentuje databázi jako soubor relací. Kaţdá relace představuje tabulku nebo soubor (ve smyslu soubor na nosiči dat).

Transkript:

DBS Konceptuální modelování Michal Valenta Katedra softwarového inženýrství FIT České vysoké učení technické v Praze Michal.Valenta@fit.cvut.cz c Michal Valenta, 2010 BIVŠ DBS I, ZS 2010/11 https://users.fit.cvut.cz/ valenta/ (odkaz Výuka na BIVŠ ) Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 1 / 33

Konceptuální modelování databází - proč? (opakování) Nejdůležitější přínosy: společné chápání objektů aplikace uživateli a projektanty, integrace různých uživatelských pohledů, výsledek je vstupem pro realizaci databáze, slouží jako dokumentace. Důsledky vypuštění konceptuální úrovně: Příliš nízká úroveň pohledu na data: obtížná komunikace se zadavatelem (zákazníkem), neumožní realizaci větší databáze. V rozsáhlejší databázi je velmi těžké se zorientovat. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 3 / 33

Návrhy IS postaru Funkční a datová analýza relativně oddělená. Funkční schéma výsledek funkční analýzy a návrhu. Kdo bude používat aplikaci? Kategorie uživatelů systému. Pracovní postupy v organizaci, které mají být počítačově podporovány. Události, která spouští počítačově podporovaný pracovní postup. Datové schéma výsledek datové analýzy a návrhu. Problém: udržení konzistence funkční a datové analýzy. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 5 / 33

Návrh IS v objektově orientovaném prostředí Funkční a datová analýza není tak striktně oddělená. Objektový přístup zdůrazňuje zapouzdření dat, pracuje s voláním metod na objektech. Masivně využívá konstrukce jako agregace, kompozice, dědění. UML notace je objektově orientovaná. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 6 / 33

Prvky konceptuálního modelu orientace na entity (třídy) a vztahy (asociace) mezi nimi entity (třídy), instance (objekty) atributy doména, povinnost, identifikátor/unikátnost vztahy (asociace) obecný vztah (asociace) kardinalita, parcialita identifikační vztah (slabá a silná entita) ISA-hierarchie (podtyp jako specializace) nepřehánět a pozor na sémantiku!!! Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 7 / 33

Tvorba datového modelu postup Identifikace entit (entitních typů) jako tříd objektů stejného typu. příklady entit FILM, ZÁKAZNÍK, ZAMĚSTNANEC, KOPIE Identifikace vztahů (vztahových typů), do kterých entity mohou vstupovat : příklady vztahu ZAKAZNÍK (entita) MÁ_PŮJČEN (vztah) FILM (entita) Identifikace atributů popisujících blíže vlastnosti entit a vztahů. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 9 / 33

Atributy a IO Příklady atributů: příjmení (atribut) zaměstnance (entita), rodné číslo (atribut) zaměstnance (entita), datum (atribut vztahu), do kdy má zákazník (entita) půjčenou (vztah) kopii filmu (entita). Příklady integritních omezení (IO): Doménou atributu vaha (entity zákazník) je integer. Atribut vaha (entity zákazník) musí mít jednu hodnotu (pro jednoho zákazníka). Atribut rodné číslo je identifikátorem entity zákazník. Atribut datum (vztahu půjčeno) může mít nejvýše jednu hodnotu. Atribut herec entity film muže mít mnoho hodnot. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 10 / 33

Entita a vztah Lineární zápis: Entity: Film, Kino Relace: ma_na_programu (Film, Kino) Grafický zápis: Poznámka: převážně budu používat binární ER notaci (nástroj Oracle Data Modeller). Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 12 / 33

Atributy Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 13 / 33

Kardinalita 1:1 Kino hraje nejvýše jeden film. Film je na programu nejvýše jednoho kina. Poznámka: povinnost/nepovinnost členství ve vztahu (parcialitu) budeme diskutovat později. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 14 / 33

Kardinalita 1:N Kino může hrát více filmů. Film je na programu nejvýše jednoho kina. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 15 / 33

Kardinalita M:N Kino může hrát více filmů. Film může být na programu více kin. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 16 / 33

Povinnost účasti ve vztahu (parcialita) povinná účast (obvykle značíme plnou čarou nebo 1 ) Všechny instance musí být zapojeny do příslušného vztahu. Kino musí mít na programu alespoň jeden film. Film musí být na programu alespoň jednoho kina. nepovinná účast (obvykle značíme přerušovanou čarou nebo 0 ) Jednotlivé instance mohou, ale nemusí být zapojeny do vztahu. Evidované kino nemusí hrát ani jeden film. (Kino může být evidováno i bez programu.) Evidujeme i filmy, které se nikde nehrají. (Film nemusí být na programu žádného kina.) Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 17 / 33

Nepovinná účast různé notace Kino může hrát více filmů (ale také žádný). Film je na programu právě jednoho kina. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 18 / 33

Povinná účast různé notace Kino hraje alespoň jeden film (ale může více). Film je na programu právě jednoho kina. Jak takovou databázi inicializujeme? Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 19 / 33

Identifiakční závislost, slabá entita Emtita je identifikována (částačně nebo plně) vztahem k jiné entitě. Slabá entita má vlastní atribut, který se podílí na identifikaci. Slabá entita nemá vlastní atribut, který se podílí na identifikaci. K jednomu vlastníkovi může patřit nejvýše jedna identifikačně závislá instance. Každá osoba může mít nejvýše jeden profil. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 20 / 33

Atributy ve vztahu - motivace. Chenova notace atributy u vztahu povoluje (viz prednáška o databázových modelech). Binární notace (i UML Class Diagram) vyžadují explicitní dekompozici vztahu. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 21 / 33

Dekompozice vztahu M:N Každý vztah M:N lze dekomponovat na 2 vztahy 1:N. Bud vložíme silnou entitu: Nebo použijeme identifikační závislost: Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 22 / 33

Atributy ve vztahu - řešení Použití identifikační závislosti: Použití silné vztahové eintity: Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 23 / 33

Dekompozice vztahu M:N - řešení Použití identifikační závislosti: Pozor: v tomto případě může konkrétní kino hrát konkrétní film nejvýše jednou! Použití silné vztahové eintity: Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 24 / 33

Rekurzivní vztah Používá se k vyjádření vztahu mezi instancemi stejné entity. Přímý nadřízený, předchůdce-potomek, část-celek,... Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 25 / 33

ISA hierarchie Původně zkratka z anglického Is a Pozor, ve striktním pojetí ER modelu se vyžaduje, aby každá instance nadtypu měla právě jednu instanci podtypu. nevhodné pro role (např. student, učitel,...), lepší identifikační závislost. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 26 / 33

Sémantický relativismus modelujeme situaci, kdy pacienti leží na pokojích zákazník zdůrazňuje, že je důležité znát na kolikalůžkovém pokoji pacient leží??? PACIENT(ID_PAC, JMENO,.., POCET_LUZEK) lépe: PACIENT(ID_PAC, JMENO...) POKOJ(ID_POKOJE, POCET_LUZEK,...) Informace o počtu lůžek na pacientově pokoji je dohledatelná ze vztahu mezi pacientem a pokojem. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 27 / 33

Příklad - návrh videopůjčovny 1/3 Půjčovna se rozhodala použít počítač pro evidenci vyjpůček filmů. eviduje se skutečnost, kterou lze jednou větou vyjádřit jako : Danému zákazníkovi je daný film daným zaměstnancem půjčovny Poznámka: umělé versus přirozené identifikátory. Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 29 / 33

Příklad - návrh videopůjčovny 2/3... rozlišujeme KOPIE a FILMY, film si lze rezervovat: Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 30 / 33

Příklad - návrh videopůjčovny 3/3... a krom toho, chceme vědět, které filmy se ještě hrají v kinech... Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 31 / 33

Poznámky na závěr Notace mohou být různé. Při konceptuálním modelu se staráme hlavně o popis reality, ne o rešení v konkrétním systému Používáme vztahy mezi entitami, kardinalitu a parcialitu nikoliv cizí klíče Jakmile se v obrázku objeví cizí klíče, už se jedná o konceptuální model, ale o grafickou podobu modelu relačního Michal Valenta (FIT ČVUT) DBS Konceptuální modelování BIVŠ DBS I, 2010 33 / 33