V dřívějším článku o datovém modelování jsme slíbili, že vám poskytneme sadu cvičení pro procvičování hledání entit. No, tady jsou. Bavte se!
Problém 1:Jazyková škola
Pan Trotter, majitel rychle rostoucí jazykové školy, chce ve své firmě zavést nový systém. Už nemůže sám sledovat všechny informace, a tak nás požádal o pomoc. Je ale trochu chaotický. Tohle řekl:
Přicházejí sem desítky nových lidí a já už nevím, co mám dělat! Například minulý týden přišla dívka jménem Hannah a chtěla se stát studentkou, ale nemohl jsem najít svůj notebook, takže jsem si nemohl zapsat její příjmení. Pak se zeptala na druhy kurzů, které nabízíme a dobře... máme jich hodně, tak jsem jí ukázal kalendář, kam si zapisuji všechny hodiny. Vybrala si čínštinu a pak se zeptala, kdo ji učil. Řekl jsem, že tu máme mnoho učitelů, tak jsem začal hledat ve své e-mailové schránce, koho jsem napsal o výuce čínštiny v tomto termínu. Trvalo to déle, než jsem čekal, a Hannah odešla. Jaká škoda!
Na základě popisu navrhněte několik entit pro nový systém pana Trottera, aby mohl svou školu řídit efektivněji.
Řešení:
Nejprve pan Trotter uvádí příklad Hannah, která se chce přihlásit do kurzu. V našem systému by byla jednou z mnoha instancí entity Student
. Studenti v našem systému se přihlašují do Course
, což je další dobrý kandidát na entitu. Nakonec se dívka zeptá na Teacher
– přirozeně je chceme také sledovat, takže se stávají třetí entitou.
↑ Kliknutím na logo zobrazíte náhled modelu v prohlížeči | Stáhněte si model jako soubor png
Problém 2:Zaneprázdněný spisovatel
Joanne L. Bowling pracuje pro různé společnosti a píše pro ně věci. Je velmi zaneprázdněná a ráda by měla pohodlnou aplikaci, která zaznamenává vše, co napsala. Tato aplikace bude mít formu portfolia. Svou práci popsala takto:
Jsem velmi talentovaný a píšu spoustu různých věcí. Například minulý týden jsem do novin napsal článek o poslední ekonomické krizi. O ekonomii toho moc nevím, ale trochu jsem četl a dokázal jsem napsat pěkný malý článek. Na druhou stranu, před měsícem jiné slavné noviny vydaly seriál, který jsem dělal já. Ten byl o historii umění v Nizozemsku. Nějaké znalosti v oboru jsem už měl, protože jsem před 5 lety napsal knihu o Rembrandtovi – která mimochodem vyšla minulý rok. Je to téměř vždy stejné, když pracuji s novinami; jejich úkoly jsou rychlé a snadné. S nakladatelstvími je to však jiný příběh. Ověřování, úpravy... je tolik kroků a tolik termínů, které si musím zapamatovat!
Na základě popisu navrhněte několik obecných entit, které by mohly být použity v aplikaci pro Joanne ke sledování všeho, co napsala. Zamyslete se nad následující otázkou:jaké věci napsala a kde je zveřejnila?
Řešení:
Jak vidíme, Joanne píše dva druhy skladeb. První jsou kratší články, které vycházejí v novinách. Jsou to rychlé úkoly a nevyžadují mnoho informací. Druhý typ kompozice je delší a složitější – psaní knih. Vydávají je nakladatelství. Je lepší je ponechat jako samostatnou entitu. Celkově vzato máme dvě hlavní kategorie věcí, které Joanne píše:Article
a Book
. Máme také dvě kategorie společností, které je vydávají:Newspaper
a Publishing House
.
↑ Kliknutím na logo zobrazíte náhled modelu v prohlížeči | Stáhněte si model jako soubor png
Problém 3:Čajovna
Mark Tee vlastní malý obchod v postranní ulici ve středně velkém městě. Měl jen pár zákazníků – až ho jednoho dne na svých cestách objevil slavný blogger a zveřejnil o něm příspěvek. Řekl, že Markův obchod je nejlepším zdrojem čaje na světě. Mark má nyní tolik klientů, že už neví, co je na skladě. Potřebuje systém, který mu pomůže organizovat jeho produkty. Tohle řekl:
Lidé nakupují moje produkty celý den a já musím mít přehled o tom, co mám na skladě. Prodám různé věci. Nejdůležitější z nich je samozřejmě čaj. U čaje jsem velmi detailní:potřebuji informace o jakosti, barvě, původu... Každá jednotlivá odrůda má alespoň některé z těchto vlastností.
Prodávám také hodně kávy, ale káva je jiná a k jejímu popisu se používají různé věci. A pak jsou tu bylinky jako rooibos nebo yerba maté. Čajoví nadšenci jim říkají tisanes nebo nálevy; ve skutečnosti to nejsou „čaj“ a ve svém systému o nich nepotřebuji mnoho dalších informací.
Přečtěte si výše uvedený popis a navrhněte několik různých entit pro Markův systém řízení zásob.
Řešení:
Jak vidíte, v našem systému existují tři druhy produktů a tedy tři entity:Tea
, Coffee
a Tisane
. (Nezacházíme s rooibosem a yerba maté odděleně, protože Mark mezi nimi ve skutečnosti nerozlišuje.)
↑ Kliknutím na logo zobrazíte náhled modelu v prohlížeči | Stáhněte si model jako soubor png
Problém 4:Farmaceutická společnost
Farmaceutická společnost, která vyrábí léky, by chtěla mít systém, který by jí pomohl s řízením. Toto je popis, který nám poslal jeden ze zaměstnanců společnosti:
V naší společnosti jsou produkty samozřejmě různé léky se specifickými vlastnostmi. Vyrábíme léky proti bolesti, antibiotika a další léky. Vyrábějí se v různých odděleních. V každém oddělení jsou zaměstnanci. Zaměstnanci jsou kvalifikovaní pro provádění specifických typů výroby. Zaměstnanci při své práci používají k výrobě drogy speciální zařízení. Bez správných komponent by samozřejmě nic nevyráběli! Jo a mimochodem, výroba je rozdělena do dávek – skupin výrobků vyrobených v jedné operaci. To vše je pro naši společnost nezbytné. Potřebujeme v našem systému uložit podrobné informace o každé jeho části.
Na základě výše uvedeného popisu navrhněte některé entity pro použití v systému farmaceutických společností.
Řešení:
Ve výše uvedené společnosti je výroba založena na Batches
které se skládají z Drugs
. Léky jsou vyrobeny z Components
. Existují také různá Departments
s konkrétními Devices
a Employees
. Těchto šest tučně vytištěných podstatných jmen se stává našimi entitami.
↑ Kliknutím na logo zobrazíte náhled modelu v prohlížeči | Stáhněte si model jako soubor png
Problém 5:Databáze filmů
John je horlivý student filmu a chce vytvořit nový web o filmech. Nápad popsal takto:
V mé databázi budou informace o různých věcech. Nejprve to budou filmy, různé druhy. V každém filmu jsou herci – chci o nich také ukládat informace. Nejen profesionální data, jako jsou filmy, ve kterých hráli, ale také některé vtipné věci nebo některé osobní informace. Pak jsou tu režiséři. Ve filmech jsou velmi důležité, a tak o nich chci také napsat. A filmová studia, samozřejmě! Mnoho webů je nezmiňuje, ale pro mě jsou také důležité. Konečně budou recenze na všechny filmy.
Na základě výše uvedeného popisu navrhněte některé entity pro Johnovu filmovou databázi.
Řešení:
V popisu můžeme jednoznačně identifikovat 5 entit:Movie
, Actor
, Director
, Studio
a Review
.
↑ Kliknutím na logo zobrazíte náhled modelu v prohlížeči | Stáhněte si model jako soubor png