|
DM /
Generalizace/specializace< Dvoutváøné entity | Tutoriál informaèní analýzy | Co jsou ISA vztahy > V autoopravnì úètují práci a náhradní díly. Práce jsou rùzného druhu s rùznou hodinovou sazbou. Náhradní díly mají cenu podle ceníku nebo podle ceny dodavatele, nìkteré má dílna na skladì, jiné objednává v pøípadì potøeby. Rozli¹ují se je¹tì náhradní díly, je¾ mají speciální evidenci jednotlivých kusù, jako motory, od náhradních dílù, u kterých se jednotlivé kusy nerozli¹ují a eviduje se jen jejich poèet. Práci i náhradní díly lze pova¾ovat za "slu¾by" poskytované zákazníkùm. U "slu¾by" známe její cenu, a lze ji úètovat ve faktuøe, s udáním úètovaného mno¾ství – poètu hodin práce nebo poètu kusù. O náhradních dílech, a» u¾ typových, nerozli¹ujících jednotlivé kusy, tak o náhradních dílech s evidencí jednotlivých exempláøù, je tøeba znát informace o názvu náhradního dílu, objednacím kódu, dodavateli, technických parametrech a pod. Pojem "náhradní díl" je srozumitelný a v kontextu autoopravny pou¾ívaný. Generalizace èi specializace je to co dìláme v prùbìhu datového modelování, tyto procesy ve výsledku oba vedou k analogii mno¾in a jejich podmno¾in: pøi generalizaci vytváøíme nadtyp (alà nadmno¾inu), pøi specializaci podtypy (alà podmno¾iny). Následující obrázek znázoròuje prve zmínìné typy a jejich podtypy: ![]() Entitní typy jako mno¾iny Eulerùv diagram pro entitní typy "slu¾ba","práce","náhradní díl", "typový náhradní díl", "typ unikátního nahradního dílu" a "exempláø unikátního náhradního dílu" Následující diagram pøidává atributy a vztah unikátních exempláøù k pøíslu¹nému typu náhradního dílu: ![]() Entitní typy a podtypy s atributy a vztahy Odrá¾kovaný seznam uvnitø zaobleného obdélníku vyjmenovává atributy zahrnuté v infomodelu pro daný entitní typ. Spojnice mezi zaoblenými obdélníky "unikátní náhradní díly" a "exempláøe unikátních náhradních dílù" pøedstavuje vztah nále¾ení exempláøe k typu. Tak¾e ka¾dá slu¾ba má kód slu¾by, název a jednotkovou cenu, ka¾dá práce má navíc popis práce. Náhradní díly mají kromì kódu slu¾by, názvu a jednotkové ceny je¹tì objednací kód, technický popis a váhu. Typové náhradní díly mají navíc je¹tì poèet kusù na skladu. Typy unikátních náhradních dílù nemají navíc ¾ádný atribut, ale mají vztah k evidenci jednotlivých kusù toho typu. V grafickém zobrazení konceptuálních schémat se èasto pou¾ívá znázornìní ka¾dého entitního typu zvlá¹», i kdy¾ se jedná o podtypy a nadtypy. V takovém zobrazení není podtyp umístìn uvnitø nadtypu, ale mimo. V zobrazení se pak objeví dal¹í vztahy (tzv. ISA vztahy), které znázoròují, ¾e ka¾dý výskyt v podtypu je zároveò výskytem i v nadtypu. Název ISA pochází z anglického "is a", napøíklad "ka¾dá PRÁCE je SLU®BA" = "each WORK is a SERVICE". ISA vztahy se znázoròují ¹ipkami od podtypu k nadtypu. (Podrobnìji je otázka tìchto obtí¾nìji pochopitelných vztahù diskutována v kapitole Co jsou ISA vztahy.) Následující obrázek zobrazuje pøedchozí konceptuální schéma s pomocí ISA vztahù: ![]() ISA vztahy mezi entitními typy Ka¾dá PRÁCE je zároveò SLU®BA, ka¾dý NÁHRADNÍ DÍL je zároveò SLU®BA, ka¾dý TYPOVÝ NÁHRADNÍ DÍL je NÁHRADNÍ DÍL, ka¾dý UNIKÁTNÍ NÁHRADNÍ DÍL(TYP) je NÁHRADNÍ DÍL. Vztah mezi exempláøem unikátního náhradního dílu (EXEMPLÁØ U.N.D.) a pøíslu¹ným typem unikátního náhradního dílu (UNIK.N.D.(TYP)) není ISA, je to vztah mezi typem a výskytem, jak o tom pojednává kapitola Dvoutváøné entity. Rozdíl je v tom, ¾e k jednomu typu unikátního náhradního dílu (UNIK.N.D.(TYP)) mù¾e nále¾et více jeho exempláøù (EXEMPLÁØ U.N.D.). Ale jedna SLU®BA je buï jedna a ne více PRACÍ nebo jeden a ne více NÁHRADNÍCH DÍLÙ. Identifikátory v rámci generalizace a specializaceS identifikátory je to jiné, pokud k nadtypùm a podtypùm dojdeme generalizací, ne¾ kdy¾ k nim dojdeme specializací. Zaènìme specializací, proto¾e v tom pøípadì je to jednodu¹¹í. Pokud v rámci nadtypu platí nìjaké identifikaèní schéma, platí i v rámci kteréhokoli jeho podtypu. Tak¾e objednací kód platný jako identifikátor libovolného TYPU NÁHRADNÍHO DÍLU je samozøejmì identifikátorem i v omezeném rámci TYPOVÝCH NÁHRADNÍCH DÍLÙ i v rámci TYPÙ UNIKÁTNÍCH NÁHRADNÍCH DÍLÙ. Pøi specializaci novì vzniklé podtypy dìdí i zpùsob identifikace nadtypu. Pokud úèelovì generalizujeme vzájemnì dosti nepodobné entitní typy, jako napøíklad PRÁCI a NÁHRADNÍ DÍL, pak nám vìt¹inou nezbývá ne¾ umìle vytvoøit nový identifikátor pro novì vytvoøený nadtyp. Typ SLU®BA je takový pøípad, a úètovací kód je pøíklad umìle vytvoøeného identifikátoru. Potøeba takového identifikátoru plyne z potøeby se odkazovat na výskyty toho generalizovaného nadtypu jednotným zpùsobem, jako v tomto pøípadì odkazovat polo¾ky na fakturách zákazníkù do seznamu úètovatelných SLU®EB. Je sice mo¾no se obejít bez vytvoøení takového umìlého identifikátoru, ale øízení pøístupu k datùm se s takovým identifikátorem znaènì zjednodu¹í. V rámci nìkterých podtypù v takových pøípadech obvykle platí nìjaké pùvodní identifikátory (pou¾ívané ji¾ pøed generalizací), jako napøíklad objednací kód NÁHRADNÍCH DÍLÙ. Pro takový podtyp pak máme alternativní zpùsoby identifikace – úètovací kódy i objednací kódy mohou ka¾dý z nich stejnì dobøe slou¾it k identifikaci NÁHRADNÍCH DÍLÙ. Èlenìní a rozèleòující charakteristikaÈlenìní je speciální pøípad rozdìlení nadtypu do nìkolika podtypù tak, ¾e toto rozdìlení je úplné a ka¾dý výskyt nadtypu se vyskytuje pouze v jediném z tìch podtypù. U rozdìlení SLU®EB na PRÁCE a NÁHRADNÍ DÍLY v pøedchozím pøípadì sice tomu takto je, ale mù¾eme to chápat jako pøechodný stav. Lze si pøedstavit, ¾e autoopravna zaøadí do seznamu nabízených slu¾eb je¹tì jiné slu¾by, napøíklad zprostøedkování prodeje èi vytipování koupì ojetého automobilu. TYPY NÁHRADNÍCH DÍLÙ jsou v¹ak typický pøípad. U konkrétního typu náhradního dílu buï vedeme evidenci jeho identifikovaných exempláøù, nebo ne. Jasnì jiná mo¾nost není, a tyto mo¾nosti se vzájemnì vyluèují. Tak¾e to, zda se u daného typu dílu vede evidence jednotlivých kusù, je rozèleòující charakteristika do daných dvou podtypù TYPOVÝ NÁHRADNÍ DÍL a TYP UNIKÁTNÍCH NÁHRADNÍCH DÍLÙ. Jiný pøíklad tvoøí rozdìlení osob podle biologického pohlaví na ¾eny a mu¾e. Pohlaví je rozèleòující charakteristika, ka¾dou osobu podle ní zaøadíme buï mezi mu¾e nebo mezi ¾eny. Takovýto jasný znak, podle kterého se nadtyp èlení do podtypù, je mo¾no v konceptuálním schématu zachytit: RoleStudenti a uèitelé na vysoké ¹kole jsou osoby. Kromì studentù a uèitelù zde pracují dal¹í lidé – administrativní pracovníci, pracovníci technické podpory a údr¾by. O ka¾dé osobì se evidují její osobní data, tj. jméno, pøíjmení, adresa atd., i veøejnosprávní identifikátory – rodné èíslo, èíslo obèanského prùkazu nebo pasu. Pojem "osoba" lidé bì¾nì u¾ívají, pøi analýze má smysl uva¾ovat ji jako samostatnou entitu: ke ka¾dé osobì se vá¾e dal¹í informaèní obsah, napøíklad èíslo univerzitního prùkazu, pøístupové jméno a heslo do poèítaèové sítì ¹koly, "osoby" se stravují ve ¹kolní menze, úèastní se ¹kolou organizovaných akcí, pùjèují si ¹kolní majetek, vyu¾ívají slu¾eb ¹kolních zaøízení. ![]() Typy bez evidovaných instancíUva¾ujme ovoce. Jahody, maliny a hru¹ky jsou ovoce. O ka¾dém druhu ovoce mù¾eme napøíklad uvést barvu, prùmìrnou váhu jednoho kusu, kdy a kde dozrává. "Ovoce" je proto vhodný kandidát na entitní typ. "Jahoda","hru¹ka","malina" v¹ak podtypy nejsou, neevidujeme jednotlivé kusy tìchto druhù ovoce, jsou to exempláøe typu nazvaného v pøedchozí vìtì "ovoce", ale výsti¾nìj¹í by bylo nazvat tento typ "druh ovoce" . < Dvoutváøné entity | Tutoriál informaèní analýzy | Co jsou ISA vztahy > |