• Databáze jako informační model oboru. Typy vztahů mezi objekty předmětové oblasti

    Všechny objekty jsou aktivní.

    Vlastní ovládání skupin oken.

    Úkolově orientované typy oken.

    Okamžitý závazek.

    Dynamické ikony odrážející stav objektu.

    přímou manipulaci.

    Kombinování předmětů.

    Složení předmětů a kontejnerů.

    Vícenásobné koordinované prohlížení objektů.

    Vlastnosti diskutované výše grafická rozhraní, stejně jako technologie DCD, která je základem jejich implementace, vyžaduje použití objektově orientovaného přístupu pro návrh GUI. Tento přístup zahrnuje použití analogií mezi softwarovými objekty a objekty reálného světa. Z pohledu uživatelské rozhraní, objekty nejsou pouze soubory nebo ikony, ale také jakékoli zařízení pro ukládání a zpracování informací, včetně buněk, odstavců, symbolů atd., jakož i dokumenty, ve kterých se nacházejí.

    Objekty, ať už jsou v reálném světě nebo mají počítačovou inkarnaci, mají určité vlastnosti, které nám pomáhají pochopit, co jsou a jak se chovají v určitých situacích. Následující pojmy popisují hlavní aspekty a charakteristiky objektů, které mají počítačovou implementaci.

    Vlastnosti objektu. Objekty mají určité vlastnosti nebo atributy, nazývané vlastnosti, které definují jejich reprezentaci nebo možné stavy (např. barva, velikost, datum modifikace). Vlastnosti nejsou omezeny na vnější nebo viditelné atributy objektu. Mohou odrážet jejich vnitřní organizaci nebo aktuální stav objektu.

    Operace s objekty. Všechny akce, které lze provést na objektu (nebo na něm), jsou považovány za platné operace. Přesouvání nebo kopírování objektu jsou příklady operací. Uživatel může provádět operace s objekty pomocí některých mechanismů poskytovaných rozhraním ( ovládání příkazů nebo přímou manipulaci).

    Komunikace (vztahy) mezi objekty. Jakýkoli objekt tak či onak interaguje s jinými objekty. V mnoha případech lze vztah mezi objekty popsat jako vztah určitého typu.

    Typy vazeb mezi objekty.

    Většina běžné typy vztahy jsou množiny (Collection), svazy (Constraints) a kompozice (Composites).

    Kit je nejjednodušší typ vztahu, který odráží přítomnost objektů v některých společné vlastnosti. Výsledky dotazu (vyhledávání vzoru) nebo operace výběru více objektů – příklady použití tohoto typu vztah. Důležitou výhodou tohoto typu vztahu je to, že umožňuje specifikovat operace, které by se měly vztahovat na konkrétní sadu objektů.

    Sdružení odráží užší vztah mezi objekty, ve kterém změna objektu ovlivní nějaký jiný objekt v sadě. Nejjednodušší příklad takový vztah mění formát sousední stránky při přidávání textu na předchozí stránku.

    Složení probíhá, když lze agregaci několika objektů považovat za nový objekt s vlastní sadou vlastností a povolenými operacemi. Sloupec buněk v tabulce a odstavec v textu jsou příklady kompozic.

    Dalším běžným typem vztahu mezi objekty je kontejner.

    Kontejner je objekt, který obsahuje další objekty (například obrázek v dokumentu nebo dokument ve složce lze považovat za součást obsahu odpovídajícího kontejneru). Vlastnosti kontejneru často ovlivňují chování jeho obsahu. Tento vliv může spočívat v rozšíření nebo potlačení některých vlastností objektů v něm obsažených nebo ve změně seznamu povolených operací. Kromě toho kontejner řídí přístup ke svému obsahu a také převod typu (formátu) objektu v něm obsaženého. To může zejména ovlivnit výsledek přenášení předmětu z jednoho kontejneru do druhého.

    Výše uvedené aspekty vyžadují přiřazení každého objektu k jednomu nebo jinému typu (třídě) objektů. Objekty stejného typu mají podobné vlastnosti a chování.

    Základní typy objektů rozhraní tvoří základní třídy všech objektů, které poskytuje operační systém. Existují tři hlavní typy objektů: datové objekty, kontejnerové objekty a objekty zařízení.

    Mnoho objektů má vlastnosti, které patří do více než jedné třídy (příkladem je složka Doručená pošta: vlastnosti kontejneru a zařízení). Proto je nutné dobře rozumět třídám objektů rozhraní a jejich chování. Objekty musí splňovat očekávání uživatelů ohledně akcí, které provádějí, to znamená určovat, které pohledy je mohou zobrazovat a měnit. Objekty typu kontejner by měly poskytovat reprezentace odpovídající jiným kontejnerům, objekty zařízení by měly nabízet reprezentace, které jsou toto zařízení a kompatibilní s ostatními.

    Datové objekty poskytují uživatelům informace. Mohou představovat jakýkoli typ informací, jako je text, tabulky, obrázky, hudba, nahraná řeč, video, animace nebo jakákoli jejich kombinace. Vzhledem k tomu, že datové objekty jsou obvykle orientovány na produkt, vývojové příručky nedefinují konkrétní datové objekty. To je úkolem softwarových designérů.

    databáze jako informační model předmětová oblast

    Jakoukoli předmětovou oblast lze považovat za dynamické informační pole, pokrývající vlastnosti objektů, jejich vztahy, informační toky mezi nimi atd. Změny probíhající v předmětné oblasti vedou ke generování nových informací, nových informačních prvků nebo jejich změně, což umožňuje hovořit o informačním a navíc dynamickém informačním poli. To však vyvolává otázku, jak se informační pole předmětové oblasti zobrazuje informační prostor databází nebo jinými slovy, které složky předmětné oblasti a jak plně se v databázích promítají.

    Databáze je informačním modelem předmětné oblasti.

    Informační model definuje objekty a vztahy mezi nimi. Vývoj modelu informační domény zahrnuje definici doménových objektů, sadu atributů, které popisují vlastnosti těchto objektů, a ustavení vztahů mezi objekty.

    Celá množina objektů předmětové oblasti je rozdělena do skupin objektů stejného typu se stejnou sadou atributů (vlastností). Aby se každý objekt předmětné oblasti odlišil od jiných objektů tohoto typu, je mu přiřazen nějaký identifikátor, který na něj umožňuje jednoznačně odkazovat. Takový identifikátor se nazývá primární klíč. Jako primární klíč lze použít libovolný atribut nebo kombinaci několika atributů objektu. Kromě toho se používají nejedinečné identifikátory, tzv cizí klíče(sekundární klíče) a označující sady objektů tohoto typu. Každá taková sada obsahuje objekty, které odpovídají stejnou hodnotu cizí klíč.

    Mezi objekty předmětné oblasti mohou existovat souvislosti, které mají různé smysluplné významy. Tyto odkazy mohou být povinné a volitelné (volitelné). Povinný vztah NÁHRADY existuje např. mezi 2 typy objektů ZAMĚSTNANEC a POZICE v předmětové oblasti „HR oddělení organizace“. Každý zaměstnanec je zařazen na pozici a nemůže existovat zaměstnanec, který pozici neobsadí. Současně je vztah REPLACED mezi typy objektů POZICE a ZAMĚSTNANEC volitelný, protože mohou existovat volná místa.

    Vztahy mezi typy objektů mohou mít jakýkoli rozměr (aritu). Nejčastěji používané binární vazby, které vytvářejí různé korespondence mezi objekty 2 typů - "jeden k jednomu" (1: 1), "jeden k mnoha" (1: n), mnoho k mnoha (m: n).

    Soubor typů objektů a typů vazeb mezi nimi charakterizuje strukturu předmětné oblasti.

    Zvažte konstrukci informačního modelu předmětové oblasti na příkladu. Jako obor bereme vysokou školu. Jedním z úkolů souvisejících s organizací přijetí na vysokou školu je účtování informací o uchazečích. Zajímají vás tyto informace: fakulta, odbor, pro který se dokumenty předkládají, osobní údaje (příjmení, jméno, rodokmen, rok narození, rodinný stav, sociální postavení atd.), zkoušky a známky. Žadatel je charakterizován jedinečným identifikátorem Id*, který umožňuje jednoznačně identifikovat konkrétního žadatele.

    Navíc je známo, že následující odkazy:
    SPECIALITY FACULTY ®®;
    ID FACULTY ®®*;
    SPECIALTY ®® Id*;
    Id* ®® SUBJECT;
    Id* ® PŘÍJMENÍ ŽADATELE, JMÉNO, PATRONYMID, ROK NAROZENÍ, …;
    Id* ® PŘEDMĚT, HODNOCENÍ;
    DĚKAN FAKULTY ®, TELEFONNÍ ČÍSLO;
    KÓD SPECIALITY ® ČÍSLO, NÁZEV SPECIALITY.

    Zde ®® - typ připojení 1: n; ® - typ připojení 1:1.

    Podívejme se nyní na informační model té části oboru, která je spojena s organizací přijetí na univerzitu (obr. 1), přičemž jsme dříve identifikovali objekty „UCHAZEČ“, „FAKULTA“, „ODBOR“ a „PŘEDMĚT“ a formalizovali odkazy.


    Obr. 1. Informační model podle objektové analýzy

    Objekty informačního modelu jsou reprezentovány tabulkami v relační databáze data. Sloupce tabulky definují atributy objektů, řádky tabulky odpovídají konkrétním objektům daného typu.

    K definování vztahů mezi objekty v relační databázi se používají primární a cizí klíče. Pro určení vztahu 1:1 primární klíč jedna tabulka je umístěna v 2. tabulce jako primární klíč. Pro definování vztahu 1:n se primární klíč první tabulky přidá do druhé tabulky, ale jako cizí klíč ukazující na primární klíč první tabulky.

    Databázi lze tedy považovat za informační model předmětové oblasti, protože odráží objekty, jejich vlastnosti a vztahy mezi nimi - prvky informační struktura předmětová oblast. Úplnost odrazu těchto prvků je určena výsledky fáze informačního modelování.

    Vazby mezi objekty.

    Název parametru Význam
    Předmět článku: Vazby mezi objekty.
    Rubrika (tematická kategorie) Spojení

    V reálném světě obzvlášť komplexní systémy mezi předměty existují různé vztahy. Při modelování jsou objekty reprezentovány jako objekty a vztahy mezi nimi jako spojení. Každý typ spojení v modelu má své jméno. V grafické podobě je odkaz zobrazen jako čára mezi souvisejícími objekty s ID odkazu.

    Existují tři typy elementárních vztahů: jeden k jednomu (obr. 4.1.), jeden k mnoha (obr. 4.2.) a mnoho k mnoha (obr. 4.3.).

    Vztah jedna ku jedné existuje, když je jedna instance jednoho objektu spojena s jednou instancí jiného. Vztah jedna ku jedné je označen šipkami ← nebo →.

    Vede

    Rýže. 4.1. Příklad vztahu „jeden k jednomu“.

    Vztah jeden k mnoha existuje, když je jedna instance prvního objektu spojena s více než jednou instancí druhého objektu, ale každá instance druhého objektu je spojena pouze s jednou instancí prvního objektu. Takový vztah je znázorněn dvojitou šipkou →→.

    Skládá se z

    Rýže. 4 . 2. Příklad vztahu jeden k mnoha.

    Vztah mnoho k mnoha existuje, když je každá instance prvního objektu přidružena k jednomu nebo více velké množství instance druhé a každá instance druhé je spojena s jednou nebo více instancemi první. Tento typ připojení je znázorněn oboustrannou šipkou ↔.

    Studium

    Rýže. 4.3 . Příklad vztahu ʼʼmany-to-manyʼʼ.

    Kromě mnohosti lze vztahy rozdělit na nepodmíněné a podmíněné. Každá instance objektu se účastní bezpodmínečného vztahu. Ne všechny instance objektu se účastní podmíněného vztahu. Komunikace by měla být podmíněná jak na jedné, tak na obou stranách.

    Všechny odkazy v informačním modelu vyžadují popis, minimálně ĸᴏᴛᴏᴩᴏᴇ zahrnuje:

    ‣‣‣ identifikátor připojení;

    ‣‣‣ typ připojení (jeho pluralita a podmíněnost).

    Elementární spojení jsou základní části odkazové struktury. Bezpodmínečná posloupnost vztahů jedna ku jedné se běžně nazývá struktura typu fronty a je graficky znázorněna na obr. 4.4.a. Zobecněním struktury typu fronty je cyklická struktura znázorněná na Obr. 4.4.b.

    Velmi důležitá role hraje stromový informační model, který je jedním z nejběžnějších typů klasifikačních struktur.
    Hostováno na ref.rf
    Vztah stromu je bezpodmínečný vztah jedna k mnoha a je graficky znázorněn na Obr. 4.4. PROTI . Charakteristickým rysem této struktury je, že každý objekt nemůže mít více než jednoho předka, libovolný počet potomků. Objekt, který nemá žádné potomky, se nazývá listový objekt. Hierarchický strom začíná jediným objektem, který se nazývá kořenový objekt. Je velmi důležité, že každý objekt musí mít svůj jedinečný název nebo identifikátor.
    Hostováno na ref.rf
    Tato komunikační struktura se také nazývá hierarchická. Na Obr. 4.4. PROTI . obdélník R je kořenový objekt. Objekty B1,. . ., B8 jsou listové. Hierarchický model je docela vhodný pro reprezentaci oblastí předmětu, protože hierarchické vztahy jsou mezi entitami reálného světa zcela běžné. Ale hierarchický model nepodporuje vztahy many-to-many, když mnoho objektů jednoho typu souvisí s mnoha objekty jiného typu. Předpokládejme, že chceme modelovat vztah mezi množinou učitelů a množinou předmětů. Hierarchická stromová struktura není pro modelování takových vztahů vhodná.

    Z
    V
    A
    A). . .
    Z
    B
    b)
    C

    R
    PROTI)
    A1
    A2 [e-mail chráněný]@
    A3
    A4
    B1
    B4
    B5
    B6
    B7
    B8

    Obr.4.4. Informační modely jako ʼʼfrontaʼʼ (a), ʼʼcyklusʼʼ (b), ʼʼstromʼʼ (c).

    Jednotlivá připojení

    Jednotlivá připojení proběhnou, když každá instance prvního objektu (A) odpovídá pouze jedné instanci druhého objektu (B) a naopak, každá instance druhého objektu (B) odpovídá pouze jedné instanci prvního objektu (A). Nutno podotknout, že takové objekty lze snadno spojit do jednoho, jehož struktura je tvořena spojením atributů obou původních objektů a jako atribut klíče lze zvolit libovolný z alternativních klíčů, tzn. klíče zdrojového objektu. Grafický obrázek one-to-one odkazy jsou skupina - vedoucí, společnost - běžný účet v nádrži atd.

    Obr.1 Grafické znázornění vztahů jedna - jedna ku jedné objektů

    Vztahy jeden k mnoha (1:M)

    Vztahy jeden k mnoha (1:M)- jedná se o takové vztahy, kdy instance jednoho objektu (A) může odpovídat několika instancím jiného objektu (B) a každá instance druhého objektu (B) může odpovídat pouze jedné instanci prvního objektu (A).

    Obr.2 Grafické znázornění jedno - mnohohodnotového spojení vztahů mezi objekty.

    V takovém spojení je objekt A hlavním objektem a objekt B je objektem podřízeným, tzn. existuje hierarchická podřízenost objektu B objektu A. Příkladem hodnotových vztahů jedna k mnoha jsou pododdělení - zaměstnanci, oddělení - učitel, skupina studentů atp.

    Vztahy s mnoha hodnotami (M:N)

    Vztahy s mnoha hodnotami (M:N)- to je, když každá instance jednoho objektu (A) může odpovídat několika instancím druhého objektu (B) a naopak, každá instance druhého objektu (B) může také odpovídat několika instancím prvního objektu (A ).

    Obr.3 Transformace odkazu typu M:N přes objekt - odkaz

    Objekt odkazu musí mít identifikátor vytvořený z identifikátorů původních objektů Ka a Kb.
    Příkladem mnoha – vícehodnotových vztahů je vztah dodavatel – zboží, kdy jeden dodavatel dodává zboží různého jména a zboží stejného jména dodává více dodavatelů.

    Definování vazeb mezi informačními objekty

    Uvažujme o definici vazeb mezi informačními objekty a typu vztahů, kterými se vyznačují pro předmět Vzdělávací proces.

    Vztahy mezi objekty SKUPINA-STUDENT jsou charakterizovány vztahy jedna k mnoha (1:M), protože jedna skupina zahrnuje mnoho studentů a jeden student je zahrnut pouze v jedné skupině. Spojení mezi nimi se provádí číslem skupiny, které je jedinečným identifikátorem hlavního objektu GROUP je součástí složeného identifikátoru objektu STUDENT (viz tabulka 1)

    Podobně je navázáno spojení mezi objekty KATEDRA UČITEL , které jsou rovněž v relacích jeden k mnoha. Propojení mezi nimi se provádí unikátním klíčem hlavního objektu KATEDRA - kód katedry, který je popisný v podřízeném objektu UČITEL.

    Tabulka 1. Objekty informace o pozadí o studentech, skupinách a předmětech

    Tabulka 2. Seskupení podrobností podle informačních objektů dokumentu Seznam učitelů katedry

    V tabulce jsou akceptovány zápisy klíče: P - jednoduchý, U - jedinečný.

    V každé skupině probíhá během semestru výuka v různých předmětech (objekt STUDIUM). Na druhou stranu je každá aktivita specifická pro každou skupinu. Proto existuje vztah jedna k mnoha mezi objekty PŘEDMĚT - STUDIUM.

    Pro každý předmět existuje mnoho tříd v různých skupinách od různých učitelů. Na druhou stranu je každá lekce vedena na konkrétní předmět, který definuje vztah jedna k mnoha mezi předměty SUBJECT-STUDY. Vztahy jedna k mnoha mezi objekty jsou definovány podobně. UČITEL - STUDIUM.
    Objekt STUDY ve skutečnosti hraje roli spojovacího objektu ve relacích mnoho k mnoha hodnotám objektů.

    Obr.4 Mnohohodnotové vztahy informačních objektů


    Obr.5 Informační-logický model předmětové oblasti Vzdělávací proces

    Objekt STUDY obsahuje údaje o pokroku (známce) konkrétního studenta v konkrétní hodině. Proto je přidružen k objektu STUDENT a objektu STUDY. Jeden student má známky za několik tříd, ale každá známka se vždy vztahuje na jednoho konkrétního studenta. To znamená, že objekt PROGRESS je podřízený a je ve vztahu jedna ku jedné s objektem STUDENT. Objekt PROGRESS, a je také podřízený a je v jednom - mnohohodnotovém vztahu s objektem STUDY. Objekt STUDY plní roli objektu - spojnice mnoha - mnohohodnotných vztahů mezi objekty STUDENT a STUDY. Mnoho - mnohohodnotné vztahy mezi těmito objekty jsou dány tím, že jeden student odpovídá mnoha třídám zobrazeným objektem STUDIUM a jedna lekce je vedena s mnoha studenty.

    Tabulka 3 uvádí všechny jednohodnotové vazby mezi objekty, specifikuje klíče, pomocí kterých by měly být vazby vytvořeny, a definuje hlavní a podřízené informační objekty v těchto vazbách.

    Tabulka 3 Vztahy informačních objektů

    Informačně-logický model předmětu Vzdělávací proces

    Informačně-logický model je podán v kanonické podobě a objekty v něm jsou umístěny po úrovních. Úroveň ostatních objektů je určena nejvíce dlouhá cesta k objektu z nulové úrovně. Takové umístění objektů dává představu o jejich hierarchické podřízenosti, činí model vizuálnějším a usnadňuje pochopení hodnotových vztahů mezi objekty.

    Logická struktura relační databáze

    Logická struktura relační databáze Access je adekvátním zobrazením přijatých informací - logický model, který nevyžaduje další transformace. Každý informační objekt datového modelu je mapován na odpovídající relační tabulku. Struktura relační tabulky je určena požadovaným složením odpovídající informační objekt, kde každý sloupec (pole) odpovídá jednomu z atributů objektu. Klíčové atributy objektu tvoří jedinečný klíč relační tabulky. Pro každý sloupec je určen typ, velikost dat a další vlastnosti. Řádky (záznamy) tabulky odpovídají instancím objektu a jsou tvořeny při načítání tabulek.

    Vztahy mezi objekty datového modelu jsou implementovány stejnými náležitostmi − komunikační klíče v příslušných tabulkách. Klíč propojení je vždy jedinečný klíč hlavní tabulky. Klíč odkazu v podřízené tabulce je buď částí jedinečného klíče v ní, nebo polem, které není součástí primárního klíče (například kód oddělení v tabulce UČITEL). Je volán odkazový klíč v podtabulce cizí klíč. Přístup může vytvořit datové schéma, který vizuálně zobrazuje logickou strukturu databáze. Definice vztahů jedna - mnoho hodnot v tomto schématu by měla být provedena v souladu s vytvořeným datovým modelem. Vzhled datové schéma se prakticky shoduje s grafickým znázorněním informačně-logického modelu. Pro datový model sestavený v uvažovaném příkladu je logická struktura databáze ve formě datového schématu Accessu znázorněna na obr. 2.7.

    V tomto diagramu obdélníky zobrazují databázové tabulky s úplným seznamem jejich polí a vztahy ukazují, ke kterým polím se tabulky vztahují. Názvy klíčových polí jsou na levé straně kompletní seznam pole každé tabulky.

    1. Základní pojmy a termíny k tématu
    „INFORMAČNÍ MODEL JE ZÁKLADEM PRO VÝSTAVBU
    SYSTÉMY ŘÍZENÍ DATABÁZÍ.

    Každá civilizace se musí potýkat se zpracováním informací. S rozvojem ekonomiky a růstem populace roste i množství vzájemně propojených dat potřebných k řešení obchodních a administrativních problémů.

    @ Model shromažďování, ukládání, zpracování a využívání vzájemně propojených dat za účelem co nejoptimálnějšího řízení informačních toků a řešení úkolů v dané tematické oblasti se nazývá informační systém. . Takový systém je primárně navržen tak, aby člověku usnadnil práci, ale k tomu musí co nejlépe odpovídat velmi složitému modelu reálného světa.

    @ jádro informační systém jsou v něm uložená data . V každém podniku se data z různých oddělení zpravidla překrývají, to znamená, že se používají v několika odděleních nebo jsou obecně sdíleny. Například účely řízení často vyžadují informace v rámci celého podniku. Díly nelze objednat bez informací o skladech.Údaje uložené v informačním systému by měly být snadno dostupné ve formě, v jaké jsou potřebné pro konkrétní výrobní činnost podniku. Nezáleží na tom, jak jsou data uložena. Dnes se v podniku můžeme setkat se systémem zpracování dat tradiční typ, do kterého zaměstnanec ručně umístí data do složky a vedle - moderní systém pomocí nejrychlejších počítačů, sofistikovaného hardwaru a softwaru. Navzdory své nápadné odlišnosti jsou oba systémy povinny poskytovat spolehlivé informace v určitou dobu, určité osobě, na určitém místě a za omezenou cenu.

    Abyste pochopili proces budování informačního systému, musíte znát řadu pojmů, které se používají k popisu a prezentaci dat.

    @ Předmětná oblast nazývaná část skutečný systém zajímavé pro tuto studii.

    Při návrhu automatizovaných informačních systémů je předmětná oblast zobrazena datovými modely několika úrovní. Počet použitých vrstev závisí na složitosti systému, ale v každém případě zahrnuje logické a fyzické vrstvy. Předmětná oblast může odkazovat na jakýkoli typ organizace (jako je banka, univerzita, nemocnice nebo továrna).

    Je třeba rozlišovat kompletní věcnou oblast (velký výrobní závod, sklad, obchodní dům apod.) a organizační jednotku této věcné oblasti. Organizační jednotka zase může představovat vlastní předmětovou oblast (např. karosárna automobilky nebo oddělení zpracování dat firmy na výrobu počítačů). V tomto případě mohou samotné workshopy a oddělení odpovídat určitým tematickým oblastem.

    Informace potřebné k popisu domény závisí na skutečném modelu a mohou zahrnovat informace o personálu, mzdách, zboží, fakturách, fakturách, prodejních zprávách, laboratorních testech, finančních transakcích, lékařských záznamech, tj. informace o lidech, místech, objektech, událostech a koncepty.

    @ objekt se nazývá prvek informačního systému, informace o kterých ukládáme. V teorii relačních databází se objekt nazývá entita.

    Objekt může být nemovitý(například osoba, předmět nebo osada) a abstraktní(například událost, faktura od zákazníka nebo studující kurz). Například v oblasti prodeje automobilů jsou příklady objektů MODEL AUTA, ZÁKAZNÍK a ÚČET. Ve skladu je to DODAVATEL, ZBOŽÍ, ODJEZD atd. Každý objekt má určitou sadu vlastností, které jsou uloženy v informačním systému. Při zpracování dat se často musíte vypořádat s kolekcí homogenních objektů, jako jsou zaměstnanci, a pro každý z nich zaznamenat informace o stejných vlastnostech.

    @ třída objektu nazývá množina objektů, které mají stejnou množinu vlastností.

    Pro objekty stejné třídy tedy bude sada vlastností stejná, i když hodnoty těchto vlastností pro každý objekt se samozřejmě mohou lišit. Například vlastnosti třídy objektů MODEL pro každý objekt mohou být samozřejmě různé. Například třída funkcí CAR MODEL by měla stejnou sadu vlastností, které popisují vlastnosti automobilů, a každý model by měl pro tyto vlastnosti různé hodnoty.

    Předměty a jejich vlastnosti jsou koncepty reálného světa. Ve světě informací, které existují v mysli programátora, se mluví o atributech objektů.

    @ Atribut je informační zobrazení vlastností objektu. Každý objekt se vyznačuje řadou základních atributů.

    Například model auta je charakterizován typem karoserie, zdvihovým objemem motoru, počtem válců, výkonem, rozměry, názvem atd. Zákazník autobazaru má atributy jako příjmení, jméno, patronymie, adresa a příp identifikační číslo. Každý atribut v modelu musí mít jedinečný název – identifikátor. Atribut při implementaci informačního modelu na libovolném paměťovém médiu se často nazývá datový prvek, datové pole nebo jen pole.

    Rýže. 1.1. Tři oblasti prezentace dat.

    @ Stůl je nějaká pravidelná struktura sestávající z konečného souboru záznamů stejného typu. V některých zdrojích se tabulka nazývá relace.

    Pokusíme se vyhnout druhému termínu, protože s rozvojem relační teorie se „vztah“ spolu s pojmem „vztah“ často začal vztahovat na vztahy mezi tabulkami. Každý záznam jedné tabulky se skládá z konečného (a stejného!) počtu polí a specifické pole každého záznamu jedné tabulky může obsahovat data pouze jednoho typu.

    @ Hodnoty dat představují skutečná data obsažená v každém datovém prvku.

    Datový prvek „MODEL NAME“ může nabývat hodnot jako „Voyager“96 3.8 Grand, „Continental 4.6“ nebo „Crown Victoria 4.6“. V závislosti na tom, jak datové prvky popisují objekt, mohou být jejich hodnoty kvantitativní. , kvalitativní nebo popisné.Informace o určité předmětové oblasti mohou být reprezentovány pomocí několika objektů, z nichž každý je popsán několika datovými prvky.Hodnoty přijímané datovými prvky se nazývají data.

    @ Je volána jediná sada hodnot akceptovaných datovými prvky instance objektu. Předměty spolu určitým způsobem souvisí.

    @ Je volán odpovídající objektový model s jeho základními datovými prvky a vztahy konceptuální model předmětová oblast. Koncepční model dává představu o toku dat v předmětné oblasti.

    Některé datové prvky mají vlastnost, která je důležitá pro vytvoření informačního modelu. Pokud známe hodnotu, kterou takový datový prvek objektu nabývá, můžeme identifikovat hodnoty, které nabývají jiné datové prvky stejného objektu. Například, když známe jedinečné číslo modelu automobilu - 7, můžeme určit, že se jedná o „Voyager“ 96“ a že zdvihový objem motoru tohoto modelu je „3778“.

    @ klíčový prvek datový prvek je takový prvek, pomocí kterého je možné určit hodnoty jiných datových prvků.

    Dva nebo více datových prvků může jednoznačně identifikovat objekt. V tomto případě se jim říká „kandidáti“ na klíčové datové prvky. Otázkou je , o tom, kterého z kandidátů použít pro přístup k objektu, rozhoduje uživatel nebo návrhář systému. Klíčové datové prvky by měly být vybrány pečlivě, protože správná volba přispívá k vytvoření správného konceptuálního datového modelu.

    @ primární klíč je atribut (nebo skupina atributů), který jednoznačně identifikuje každý řádek v tabulce.

    Koncept primárního klíče je nesmírně důležité v souvislosti s konceptem integrity databáze, kterému se budeme podrobně věnovat na konci této části.

    @ Alternativní klíč je atribut (nebo skupina atributů), který neodpovídá primárnímu klíči a jednoznačně identifikuje instanci objektu.

    Například pro objekt ZAMĚSTNANCE, který má atributy ID ZAMĚSTNANCE, PŘÍJMENÍ, KŘESTNÍ JMÉNO a JMÉNO PATRONY, může být skupina atributů PŘÍJMENÍ, JMÉNO, PATRONYMID alternativním klíčem k atributu „IDENTIFIKÁTOR ZAMĚSTNANCE“ (za předpokladu, že úplný jmenovec v podniku nefunguje).

    @ Externí klíč je atribut tabulky, který je primárním klíčem jiné tabulky.

    Například atribut „MODEL NUMBER“ objektu CAR může být cizím klíčem k objektu „MODEL“.

    @ Záznam dat je sbírka hodnot souvisejících datových položek.

    Na Obr. 1.2. takovými datovými položkami jsou jedinečný klíč a název modelu, zdvihový objem, počet válců a výkon motoru. Například jeden ze záznamů je “7 Voyager'96 3.8 Grand 3778 6164.0” . Tento řetězec představuje hodnoty, které nabývají datové prvky objektu CAR MODEL. Záznamy jsou uloženy na nějakém médiu, kterým může být lidský mozek, list papíru, paměť počítače, externí paměťové zařízení atd.

    MODELKA

    UNIKÁTNÍ MODELOVÝ KLÍČ

    Jméno modelu

    Výtlak (cc)

    Výkon (hp)

    GMC Jimmy 4.3

    7

    Voyager'96 3.8 Grand

    3778

    164,0

    Stealth 3.0

    348 Spider 3.4

    Obr.1.2. Datové záznamy objektu MODEL.

    Každý záznam jedné tabulky se skládá z konečného (a stejného!) počtu polí a specifické pole každého záznamu jedné tabulky může obsahovat pouze jeden typ dat

    @ Datový typ charakterizuje typ uložených dat.

    Pojem datového typu v informačním modelu je plně adekvátní pojetí datového typu v programovacích jazycích. Moderní DBMS typicky umožňují ukládání znakových, numerických dat, bitových řetězců, specializovaných numerických dat (například částky v peněžních jednotkách), jakož i dat speciálního formátu (datum, čas, časový interval atd.). V každém případě je třeba při výběru datového typu zohlednit možnosti SŘB, se kterými bude fyzický model informačního systému implementován.

    @ Spojení je funkční závislost mezi entitami.

    Pokud existuje vztah mezi některými entitami, pak fakta z jedné entity odkazují nebo nějakým způsobem souvisí s fakty z jiné entity. Zachování konzistence funkčních závislostí mezi entitami se nazývá referenční integrita. Vzhledem k tomu, že vztahy jsou obsaženy „uvnitř“ relačního modelu, implementace referenční integrita může být prováděna jak aplikací, tak samotným DBMS (s využitím mechanismů deklarativní referenční integrity a triggerů).

    Odkazy mohou být reprezentovány pěti hlavními charakteristikami:

    Typ odkazu (identifikující, neidentifikující)

    mateřská entita;

    Dětská (závislá) entita;

    Komunikační síla (srdečnost);

    Platnost prázdných ( null ) hodnot.

    Vztah se nazývá identifikace pokud je instance podřízené entity identifikována (jedinečně definována) prostřednictvím jejího přidružení k nadřazené entitě. Atributy, které tvoří primární klíč nadřazené entity, jsou zahrnuty v primárním klíči podřízené entity. Podřízená entita v identifikačním vztahu vždy závislý.

    Vztah je prý neidentifikující. pokud je instance podřízené entity identifikována jinak než prostřednictvím vztahu k nadřazené entitě. Atributy, které tvoří primární klíč nadřazené entity, jsou zahrnuty v neklíčových atributech podřízené entity.

    Komunikační síla je poměr počtu instancí nadřazené entity k odpovídajícímu počtu instancí podřízené entity. Pro jakékoli jiné než nespecifické spojení se toto spojení zapisuje jako 1:n.

    @ Uložené procedury je aplikace (program), která kombinuje dotazy a procedurální logiku (operátory přiřazení, logické větvení atd.) a ukládá je do databáze.

    Uložené procedury umožňují obsahovat s databází poměrně složité programy, které vykonávají velké množství práce bez přenosu dat po síti a interakce s klientem. Programy napsané v uložených procedurách jsou zpravidla spojeny se zpracováním dat. Databáze tak může být funkčně nezávislou vrstvou aplikace, která může interagovat s jinými vrstvami a přijímat dotazy nebo aktualizovat data.

    @ Pravidla umožnit vyvolat provedení specifikované akce při změně nebo přidávání dat do databáze (DB) a tím kontrolovat pravdivost údajů v ní umístěných.

    Akce je obvykle voláním určité procedury nebo funkce. Pravidla mohou být přidružena k poli nebo záznamu a podle toho se spouštět, když se změní data v konkrétním poli nebo záznamu tabulky. Pravidla nelze použít při mazání dat. Na rozdíl od omezení, která jsou pouze prostředkem kontroly relativně jednoduchých podmínek pro správnost zadávání dat, pravidla umožňují kontrolovat a udržovat libovolně složité vztahy mezi datovými prvky v databázi.

    @ Referenční integrita zajišťuje, že hodnota cizího klíče instance podřízené entity odpovídá hodnotám primárního klíče v nadřazené entitě.

    Referenční integritu lze řídit pro všechny operace, které upravují data.

    @ Normalizace vztahů je proces konstrukce optimální struktury tabulek a vztahů v relační databázi.

    Během procesu normalizace jsou datové položky seskupeny do tabulek představujících objekty a jejich vztahy. Teorie normalizace je založena na skutečnosti, že určitá sada tabulek má lepší vlastnosti pro vkládání, úpravu a mazání dat než všechny ostatní sady tabulek, které mohou reprezentovat stejná data. Zavedení normalizace vztahů při vývoji informačního modelu zajišťuje minimální množství fyzické, tedy zaznamenané na libovolném médiu, databáze a její maximální výkon, který přímo ovlivňuje kvalitu informačního systému. Normalizace informačního modelu probíhá v několika fázích (1., 2. a 3. normální forma).

    @ Datový slovník je centralizované úložiště informací o objektech, jejich základních datových prvcích, vztazích mezi objekty, jejich zdrojích, hodnotách, použití a formátech prezentace.

    @ Zajištění integrity databáze je systém opatření zaměřených na udržení správnosti údajů v databázi kdykoli.

    Náklady na ověřování a údržbu dat mohou tvořit významnou část celkových nákladů provozní náklady. Například v dopravních podnicích se pro kontrolu správnosti zadávání údajů z cestovní dokumentace praktikuje souběžné zadávání stejných údajů několika operátory. Předpokládá se, že pravděpodobnost spáchání stejné chyby v tomto případě bude extrémně malá a jednoduché srovnání výsledků zadání různých operátorů pomůže získat bezchybná data. V DBMS je integrita dat zajištěna sadou speciální nabídky tzv. integritní omezení.

    @ Omezení integrity je soubor specifických pravidel, která zakládají přípustnost údajů a vztahy mezi nimi.

    Automatizovaný systém zpracování dat je založen na použití konkrétního datového modelu nebo informačního modelu. Datový model odráží vztahy mezi objekty.

    2. Posloupnost tvorby informačního modelu

    Proces tvorby informačního modelu začíná definicí koncepčních požadavků řady uživatelů (obr. 2.1). Koncepční požadavky lze stanovit i pro některé úkoly (aplikace), jejichž realizace se v nejbližší době neplánuje. To může mírně zvýšit složitost práce, ale pomůže to zohlednit všechny nuance funkcí vyžadovaných pro vyvíjený systém a snížit pravděpodobnost jeho přepracování v budoucnu. Požadavky jednotlivých uživatelů jsou integrovány do jediné „zobecněné reprezentace“. Ten se nazývá konceptuální model.

    @ konceptuální model představuje objekty a jejich vztahy, aniž by specifikoval, jak jsou fyzicky uloženy.

    Koncepční model je tedy v podstatě doménovým modelem. Při navrhování koncepčního modelu by veškeré úsilí vývojáře mělo být zaměřeno hlavně na strukturování dat a identifikaci vztahů mezi nimi bez zvažování implementačních prvků a problémů s efektivitou zpracování. Návrh koncepčního modelu vychází z analýzy úloh zpracování dat řešených v tomto podniku. Konceptuální model zahrnuje popisy objektů a jejich vztahů, které jsou v uvažované oblasti zajímavé a identifikované jako výsledek analýzy dat. Zde máme na mysli data použitá jak v již vyvinutých aplikační programy a v těch, které budou teprve realizovány.

    Koncepční model je poté převeden do datového modelu kompatibilního s vybraným DBMS. Je možné, že vztahy mezi objekty reflektované v konceptuálním modelu se později ukáží jako nerealizovatelné pomocí zvolené DBMS. To bude vyžadovat změnu koncepčního modelu. Verze koncepčního modelu, kterou může poskytnout konkrétní DBMS, se nazývá logický model.

    @ Logický model odráží logické vztahy mezi datovými prvky bez ohledu na jejich obsah a prostředí úložiště.

    Logický datový model může být relační, hierarchický nebo síťový . Uživatelům jsou přiděleny podmnožiny tohoto logického modelu, nazývané externí modely (v některých zdrojích se jim také říká podobvody), odrážející jejich představy o předmětné oblasti. externí model odpovídá pohledům, které uživatelé získají na základě logického modelu, zatímco koncepční požadavky odrážejí názory, které si uživatelé původně přáli a které tvořily základ pro vývoj koncepčního modelu. Logický model se zobrazí v fyzická paměť, jako je disk, páska nebo jiné paměťové médium.

    @ Fyzikální model , který definuje rozložení dat, přístupové metody a techniku ​​indexování, se nazývá vnitřní model systému.

    Z hlediska aplikovaného programování není nezávislost dat dána technikou programování, ale její disciplínou. Aby se například zabránilo překompilování aplikace při jakékoli systémové změně, doporučuje se v programu nedefinovat konstanty (konstantní datové hodnoty). Nejlepším řešením je předat hodnoty programu jako parametry.

    V koncepčním modelu by měly být zohledněny všechny skutečné požadavky předmětné oblasti a jim adekvátní „skryté“ požadavky ve fázi návrhu. Samozřejmě je nemožné předvídat všechna možná použití a změny databáze. Ale ve většině oborů jsou základní údaje, jako jsou objekty a jejich vztahy, relativně stabilní. Pouze změna informační požadavky, tedy způsoby využití dat k získávání informací.

    Míra nezávislosti dat je dána pečlivým návrhem databáze. Komplexní analýza doménových objektů a jejich vztahů minimalizuje dopad měnících se požadavků na data v jednom programu na jiné programy. O tom je komplexní nezávislost na datech.

    3. Vztahy v modelu

    Vztah vyjadřuje mapování nebo vztah mezi dvěma sadami dat. Existují vztahy jako jedna ku jedné», « jeden k mnoha" A "mnoho k mnoha"". V uvažovaném úkolu automatizace řízení práce autobazaru, pokud klient zadá objednávku na nákup automobilu poprvé, je provedena počáteční registrace jeho údajů a informací o provedené objednávce. Pokud klient provede objednávku znovu, zaeviduje se pouze tato objednávka. Bez ohledu na to, kolikrát daný zákazník provedl objednávky, má jedinečné identifikační číslo (jedinečný zákaznický klíč). Informace o každém klientovi zahrnují jméno klienta, adresu, telefon, fax, příjmení, jméno, příjmení, znamení právnická osoba a poznámka. Atributy objektu KLIENT jsou tedy „JEDINEČNÝ KLÍČ ZÁKAZNÍKA“, „JMÉNO KLIENTA“, „ADRESA KLIENTA“ atd. Dalším objektem, který nás zajímá, je MODEL AUTA. Tento objekt má atributy "UNIQUE MODEL KEY", "MODEL NAME" atd. Třetím zvažovaným objektem je OBJEDNÁVKA. Jeho atributy jsou „ČÍSLO OBJEDNÁVKY“, „KLÍČ ZÁKAZNÍKA“ a „KLÍČ MODELU“. A čtvrtým zvažovaným objektem je PRODEJCE. Jeho atributy jsou „JEDINEČNÝ KLÍČ PRODEJCE“, „JMÉNO PRODEJCE“, „PŘÍJMENÍ“ a „ZAPLACENÉ JMÉNO“.

    Vztah jedna ku jedné (mezi dvěma typy objektů)

    Vraťme se mentálně do dob plánovaného distribučního hospodářství. Řekněme, že v určitém okamžiku může jeden zákazník zadat pouze jednu objednávku. V tomto případě vztah" jedna ku jedné“, označené jednoduchými šipkami, jak je znázorněno na obr. 2.2a.

    Rýže. 2.2. Vztahy mezi dvěma objekty: a) „jeden k jednomu“; b) "jeden k mnoha"; c) mnoho k mnoha

    Rýže. 2.3. Vztah mezi daty ve vztahu jedna ku jedné.

    Vztah jeden k mnoha (mezi dvěma typy objektů).

    V určitém okamžiku se jeden klient může stát vlastníkem více modelů automobilů, zatímco několik klientů nemůže být vlastníky jednoho vozu. Vztah jedna k mnoha lze znázornit jednoduchou šipkou směřující k jedné a dvojitou šipkou směřující k mnoha, jak je znázorněno na Obr. 2.2, b.

    V tomto případě bude jeden datový záznam prvního objektu (často nazývaný nadřazený nebo hlavní) odpovídat několika záznamům druhého objektu (podřízeného nebo podřízeného). Vztahy one-to-many jsou při vývoji relačních databází velmi běžné. Adresář se často používá jako nadřazený objekt a jedinečné klíče pro přístup k položkám adresáře jsou uloženy v podřízeném objektu. V našem příkladu jako takový adresář můžeme reprezentovat objekt CLIENT, který uchovává informace o všech klientech. Při přístupu k záznamu pro konkrétního zákazníka máme přístup k seznamu všech nákupů, které provedl a informace o nich jsou uloženy v objektu CAR MODEL, jak je znázorněno na Obr. 2.4. Pokud jsou v podřízeném objektu nějaké záznamy, pro které neexistují žádné odpovídající záznamy v objektu CLIENT, pak je neuvidíme. V tomto případě se říká, že objekt obsahuje osamocené (osamocené) záznamy. To není přijatelné a v budoucnu se naučíte, jak se takovým situacím vyhnout.

    Rýže. 2.4. Vztah mezi daty ve vztahu jedna k mnoha.

    Pokud se podíváme na záznamy objektu CAR MODEL, tak v objektu CLIENT můžeme získat data o klientovi, který si toto zakoupil automobil (viz obr. 2.4). Vezměte prosím na vědomí, že nebudeme dostávat informace o zákaznících pro osiřelé záznamy.

    Vztah mnoho k mnoha (mezi dvěma typy objektů).

    V tomto příkladu může každý prodejce obsluhovat více zákazníků. Na druhou stranu nákup aut v různé časy, každý zákazník může být obsluhován různými prodejci. Mezi objekty ZÁKAZNÍKA a PRODEJCE existuje vztah mnoho k mnoha. Tento vztah je označen dvojitými šipkami, jak je znázorněno na obr. 2,2, c.

    Na Obr. 2.5 ukazuje schéma, kterým budou data v tomto případě propojena. Pohledem na data v objektu ZÁKAZNÍK zjistíme, kteří prodejci obsluhovali konkrétního zákazníka. V objektu SELLER však v tomto případě budeme muset vytvořit několik záznamů pro každého prodejce. Každý řádek bude odpovídat každé zákaznické službě prodejce. S tímto přístupem budeme čelit vážným problémům. Například nebudeme moci zadat jedinečný klíč pro každého prodejce do objektu SELLER, protože jeden prodejce bude nevyhnutelně obsluhovat několik zákazníků, v takovém případě budeme mít několik záznamů pro stejného prodejce.

    Rýže. 2.5. Vztah mezi daty ve vztahu many-to-many

    Podle teorie relačních databází jsou pro uložení vztahu many-to-many zapotřebí tři objekty: jeden pro každou entitu a jeden pro uložení vztahů mezi nimi (mezilehlý objekt). Mezilehlý objekt bude obsahovat identifikátory souvisejících objektů, jak je znázorněno na obrázku 1. 2.6.

    Rýže. 2.6. Zobrazení vztahů mezi daty ve vztahu many-to-many pomocí mezilehlého objektu

    Vztahy mezi objekty jsou součástí konceptuálního modelu a musí být mapovány do databáze. Spolu se vztahy mezi objekty existují vztahy mezi atributy objektu. Rozlišuje také mezi vztahy jeden k jednomu, jeden k mnoha a mnoho k mnoha.

    Vztah jedna ku jedné (mezi dvěma atributy)

    Předpokládáme, že klíč (číslo) klienta je jeho jedinečným identifikátorem, to znamená, že se nemění s následnými příjmy objednávek od tohoto klienta. Pokud je v databázi spolu s klientským číslem uložen další jedinečný identifikátor (například číslo pasu), pak mezi těmito dvěma jedinečnými identifikátory existuje vztah jedna ku jedné. Na Obr. 2.7a tento vztah je označen jednoduchými šipkami.

    Vztah jeden k mnoha (mezi dvěma atributy)

    Jméno zákazníka a číslo zákazníka koexistují. Klientů se stejným jménem může být mnoho, ale všichni mají různá čísla. Každý klient má přiděleno jedinečné číslo. To znamená, že danému zákaznickému číslu odpovídá pouze jedno jméno. Vztah jedna k mnoha je označen jednou šipkou ve směru „jedna“ a dvojitou šipkou ve směru „mnoho“ (obr. 2.7, b).

    Vztah mnoho k mnoha (mezi dvěma atributy)

    Více zákazníků se stejným jménem může obsluhovat více dodavatelů. Více prodejců se stejným jménem mohlo přijímat objednávky od více zákazníků. Mezi atributy "jméno zákazníka" a "jméno prodejce" existuje vztah mnoho k mnoha. Tento vztah označujeme dvojitými šipkami (obr. 2.7, c).

    A)

    b)

    PROTI)

    Rýže. 2.7. Vztahy mezi dvěma atributy:
    a) vztah jedna ku jedné; b) vztah jeden k mnoha
    » c) vztah mnoho k mnoha»

    Typy datových modelů

    Hierarchické a síťové datové modely se začaly používat v systémech správy databází na počátku 60. let. Na počátku 70. let to bylo navrženo relační model data. Tyto tři modely se liší především tím, jak reprezentují vztahy mezi objekty.

    Hierarchický datový model je postaven na principu hierarchie typů objektů, to znamená, že jeden typ objektu je hlavní a zbytek se nachází na nižší úrovně hierarchie, - podřízení (obr. 2.8). Mezi hlavními a podřízenými objekty je vytvořen vztah jeden k mnoha. Jinými slovy, pro daný typ hlavního objektu existuje několik podřízených typů objektů. Zároveň pro každou instanci hlavního objektu může existovat několik instancí typů podřízených objektů. Vztahy mezi objekty se tedy podobají vztahům v rodokmenu, s jedinou výjimkou: pro každý podřízený (podřízený o ) typ objektu může existovat pouze jeden nadřazený (hlavní) typ objektu. Na rýže. 2.8 uzly a větve tvoří hierarchickou stromovou strukturu. Uzel je kolekce atributů, které popisují objekt. Nejvyšší uzel v hierarchii se nazývá kořenový uzel. hlavní typ objekt). Kořenový uzel je na první úrovni. Závislé uzly (podřízené typy objektů) jsou na druhé, třetí atd. úrovni.

    Rýže. 2.8. Diagram hierarchického datového modelu.

    V síťový model Tyto koncepty master a slave objektů jsou poněkud rozšířeny. Jakýkoli objekt může být jak master, tak slave (v síťovém modelu je master objekt označen pojmem „vlastník množiny“ a podřízený – pojmem „člen množiny“). Tentýž objekt může být zároveň vlastníkem i členem množiny. To znamená, že každý objekt se může účastnit libovolného počtu vztahů. Schéma síťového modelu je na obrázku 2.9.

    Obr.2.9. Schéma datového modelu sítě.

    V relačním datovém modelu jsou objekty a vztahy mezi nimi reprezentovány pomocí tabulek, jak je znázorněno na Obr. 2.10. Vztahy jsou také považovány za objekty. Každá tabulka představuje jeden objekt a skládá se z řádků a sloupců. V relační databázi musí mít každá tabulka primární klíč ( klíčový prvek) je pole nebo kombinace polí, které jednoznačně identifikují každý řádek v tabulce. Pro svou jednoduchost a přirozenost reprezentace je relační model nejrozšířenější v DBMS pro osobní počítače.

    Rýže. 2.10. Schéma relačního datového modelu.