PODNIKOVÉ ONTOLOGIE URČENO PRO VZDĚLÁVÁNÍ V AKREDITOVANÝCH STUDIJNÍCH PROGRAMECH FRANTIŠEK HUŇKA ČÍSLO OPERAČNÍHO PROGRAMU: CZ.1.07 NÁZEV OPERAČNÍHO PROGRAMU: VZDĚLÁVÁNÍ PRO KONKURENCESCHOPNOST OPATŘENÍ: 7.2 ČÍSLO OBLASTI PODPORY: 7.2.2 INOVACE VÝUKY INFORMATICKÝCH PŘEDMĚTŮ VE STUDIJNÍCH PROGRAMECH OSTRAVSKÉ UNIVERZITY REGISTRAČNÍ ČÍSLO PROJEKTU: CZ.1.07/2.2.00/28.0245 OSTRAVA 2012
Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky Recenzent: RNDr. Jaroslav Žáček, Ph.D. Název: Podnikové ontologie Autor: doc. Ing. František Huňka, CSc. Vydání: první, 2012 Počet stran: 152 Jazyková korektura nebyla provedena, za jazykovou stránku odpovídá autor. doc. Ing. František Huňka, CSc. Ostravská univerzita v Ostravě
OBSAH Úvod pro práci s textem pro distanční studium... 5 1 Úvod do problematiky... 7 2 Podnikové procesy... 12 3 Ontologické modely přehled... 17 4 Pojem faktu... 20 4.1 Elementární fakt... 20 4.2 Metodologie modelování rolí objektů... 25 4.2.1 Modelování jedinečnosti typů faktů... 27 4.2.2 Modelování jedinečnosti na delších typech faktů... 34 4.2.3 Modelování povinných a volitelných rolí... 37 4.2.4 Referenční schémata... 38 4.2.5 Vylučující omezení... 39 5 Specifikační jazyk světa otologie... 43 5.1 Faktická znalost... 43 5.2 Stata a fakta... 48 5.3 Ontologie světa... 50 5.4 Deklarace typů statum... 51 5.5 Specifikace existenčních pravidel... 54 5.6 Odvozování typu statum... 58 5.7 Typy faktů a pravidla výskytu... 62 6 Operační axiom... 65 6.1 Koordinační čin... 68 6.2 Produkční čin... 68 6.3 Aktoři... 69 7 Transakční axiom... 72 7.1 Standardní vzor transakce... 74 7.2 Vzor Cancellation... 76 7.2.1 Rušení ve fázi request... 77 7.2.2 Rušení ve fázi promise... 78 7.2.3 Rušení ve fázi state... 79 7.2.4 Rušení ve fázi accept... 80 7.3 Kompletní vzor transakce včetně vzorů cancellation... 81 8 Axiom kompozice... 85 3
9 Rozlišovací axiom... 91 9.1 Koordinační čin... 93 9.2 Produkční čin... 94 9.3 Aplikace axiomu na konkrétní zadání... 96 10 Modelovací metoda... 100 11 Model knihovny... 104 11.1 Syntéza vzorů transakcí... 104 11.2 Analýza struktury výsledků... 106 11.3 Konstrukční model interakční model... 107 11.4 Procesní model... 114 11.5 Model akcí... 124 11.5.1 Pravidla akcí pro roli aktora A01... 124 11.5.2 Pravidla akcí pro roli aktora A04... 126 11.5.3 Pravidla akcí pro roli aktora A06... 127 11.5.4 Pravidla akcí pro roli aktora A09... 128 11.5.5 Pravidla akcí pro roli aktora A10... 129 11.6 Stavový model... 131 11.7 Konstrukční model interstrikční model... 133 12 Model pizzerie... 138 12.1 Konstrukční model interakční model... 138 12.2 Procesní model... 143 12.3 Model akcí... 146 12.3.1 Pravidla akcí pro roli aktora A01... 146 12.3.2 Pravidla akcí pro roli aktora A02... 147 12.3.3 Pravidla akcí pro roli aktora A04... 148 12.4 Stavový model... 148 12.5 Konstrukční model interstrikční model... 150 Korespondenční úkoly... 156 Seznam použitých termínů... 158 Literatura... 160 4
Úvod pro práci s textem pro distanční studium Cíl předmětu Seznámit studenty s postupem využití podnikové ontologie k modelování podnikových procesů. Výsledkem postupu jsou čtyři aspektové modely, které jsou zcela nezávislé na implementaci a vedou k jádru (podstatě) modelovaného podniku. Uvedený postup se opírá jak o teorii, tak o dobře propracovanou metodologii postupu vytváření uvedených modelů. Po prostudování textu budete znát: Tento učební text je určen studentům informatiky pro předmět Podnikové ontologie. Cílem textu je seznámit studenty se správným chápáním podnikového procesu a jeho modelování pomocí aspektových modelů, které poskytují formalismus pro efektivní a srozumitelné modelování vybrané aplikační domény. Závěrečné kapitoly obsahují dva názorně zpracované příklady využívající uvedené metodologie. V textu jsou dodržena následující pravidla: - je specifikován cíl lekce (tedy co by měl student po jejím absolvování umět, znát, pochopit) - výklad učiva - důležité pojmy - úkoly a otázky k textu - korespondenční úkoly (mohou být sdruženy po více lekcích) Úkoly Na konci učebního textu jsou uvedeny tři příklady, které během semestru zpracujete a zašlete ke kontrole vyučujícímu. Zadané příklady odpovídají postupně probíranému učivu. Podrobné informace obdržíte na úvodním tutoriálu. 5
Pokud máte jakékoliv věcné nebo formální připomínky k textu, kontaktujte autora (frantisek.hunka@osu.cz). 6
1 Úvod do problematiky V této kapitole se dozvíte: o základních problémech při analyzování činností podniku, o opětovném návrhu (re-designu), o re-engineeringu v podniku. Po jejím prostudování budete schopni: lépe rozumět důvodům teorie a metodologie Podnikové ontologie, která může být použita k modelování podniku. Klíčová slova této kapitoly: re-design, re-engineering, aktor, podniková ontologie, funkční kompozice/dekompozice, konstrukční kompozice/dekompozice. Provoz podniku je dnes charakterizovaný velkou rozmanitostí a složitostí, ve které se evidentně projevuje nedostatek vnitřního uspořádání, tedy struktury a logiky. Navíc se vše v čase vyvíjí a podléhá změnám. Jak tedy přistoupit k navržení efektivní struktury podniku, nebo k dosažení zamýšlených změn v provozu podniku? Jedná se o teoretickou a praktickou práci vedoucí k řízenému provádění dobře navržených změn a plánů. V postupech k znovu navržení (redesign) a re-engineeringu podniku, se v literatuře projevuje nedostatek fundované teorie o činnosti a chodu podniku. Často nejsou dokonce jasně a přesně definovány nejzákladnější pojmy jako je čin aktora a podnikový proces. Rostoucí zájem o praktické aplikace a využití tzv. ontologického modelu podniku poskytuje šanci a nový začátek v provedení redesignu a re-engineeringu podniků na kvalitativně vyšší úrovni. Tento záměr však vyžaduje nalezení způsobu, jak oddělit stabilní 7
ontologickou podstatu podniku od proměnného prostředí, ve kterém je realizován a implementován. Získání stabilní ontologické podstaty podniku dává velkou šanci na zvládnutí rozmanitosti a složitosti stávajících podniků. Aby se ale takto naznačený způsob řešení dal realizovat, je třeba mít teorii, ve které mají místo dobře definované koncepty podstaty realizace a implementace a všechny ostatní relevantní koncepty. Tato teorie a odpovídající metodologie pak vytváří tzv. ontologický model podniku (někdy se také nazývaná podniková ontologie). Podniková ontologie je nový subjekt, který umožní nový a výkonný vhled do podstaty činností (chodu) podniků. Tento vhled je pak plně nezávislý na realizaci a implementaci. Je třeba si uvědomit, že dnešní řízení podniku je daleko komplikovanější, než bývalo v minulosti. Problémem dnešních podniků je, že jsou dobře prozkoumány a dokumentovány. Více než dobře, protože daleko méně úsilí je zaměřeno na přemýšlení, jak se s tím vším dobře prozkoumaným a zdokumentovaným vypořádat. Buď jak buď, společným jmenovatelem těchto problémů je složitost a složitost je možné zvládnout pouze při splnění dvou základních podmínek. První podmínkou je, že člověk má k dispozici teorii o těchto druzích problémů (věcí) jejichž složitost chce zvládnout. Druhou podmínkou je, že člověk má k dispozici odpovídající analytické metody a techniky, založené na této teorii. Dokonce i nadaný podnikatel se dnes neobejde bez základního systematického a integrálního pochopení, jak podnik pracuje. Ke skutečnému zvládnutí dnešních a budoucích problémů potřebuje podnikatel konceptuální model, který je logicky skloubený, souvislý, srozumitelný, obsažný, konzistentní a stručný, a který zobrazuje podstatu (jádro) provozu (činnosti) podniku. Nejdůležitější vlastností však zůstává, že konceptuální model tvoří skutečné základní jádro, obsahuje tedy pouze nejpodstatnější strukturu podniku. To 8
znamená, že model abstrahuje od problémů realizace a implementace. Takovýto konceptuální model se nazývá ontologickým modelem. Při modelování podnikových procesů je třeba mít na zřeteli, že existují dva fundamentálně odlišné typy konceptuálních modelů. White box model, což je konceptuální model konstrukce konkrétního systému a black box model, což je konceptuální model funkce konkrétního systému. Konstrukční kompozice/ dekompozice a funkční kompozice/ dekompozice jsou fundamentálně odlišné záležitosti. Existuje pouze jedna konstrukční kompozice/dekompozice, ale libovolné množství funkčních kompozic/dekompozic. Black box model pouze reprezentuje interakce mezi konkrétním systémem a okolím, což je modelováno pomocí vstupních a výstupních proměnných. White box model tak tvoří dominantní typ modelu. Vztah mezi oběma perspektivami je takový, že funkce a chování systému jsou způsobeny a vysvětleny pomocí konstrukce a činnosti systému. Z toho vyplývá, že myšlenka, že funkční dekompozice ve svém důsledku povede k poznání systému je scestná. V procesních systémech hraje důležitou roli aktor, člověk, a proto by procesní systémy měly reflektovat způsob, jakým se lidské bytosti chovají, když kooperují k dosažení zadaných cílů. To ontologický model podniku dělá a rozlišuje různé úrovně koordinace a produkce. Vlastní ontologický model se skládá ze čtyř aspektových (pohledových) modelů. Konstrukční model specifikuje identifikované transakční typy a v podstatě specifikuje konstrukční model organizace. Tento aspektový model je na nejvyšší úrovni všech čtyř 9
aspektových modelů. (Skládá se z interakčního modelu a interstrikčního modelu). Model procesů obsahuje pro každý typ transakce v konstrukčním modelu specifický transakční vzor daného transakčního typu. Je to buď kompletní transakční vzor, nebo jeho část. Model procesů také obsahuje příčinné a podmíněné relace mezi transakcemi. Stručně řečeno, model procesů specifikuje stavový prostor a přechodový prostor. Podnikový proces je pak tvořen uspořádanou kolekcí transakčních typů, alespoň z jednoho. Model akcí specifikuje pravidla akcí (činností), které slouží jako vodítka pro aktory při vykonávání jejich agendy. Tato pravidla jsou seskupována podle rolí aktorů. Stavový model vychází z modelování rolí objektů a specifikuje stavový prostor. Ontologický model podniku poskytuje celkové snížení složitosti o více než 90%. Dále tento model reflektuje způsob chování sociálních individuí (lidských bytostí), které spolupracují za účelem dosažení daného cíle. Validovaný návrh podnikového procesu, nebo aplikace ICT (informačních a komunikačních technologií) na základě ontologického modelu, je nezbytný předpoklad pro vytvoření efektivně fungující implementace, která je navíc otevřená dalším změnám a re-engineeringu v budoucnu. Je to intelektuální technika, která již prokázala, že je vysoce efektivní. Podnik (enterprise) bude definován jako heterogenní systém v kategorii sociálních systémů. Být sociálním systémem znamená, že elementy tohoto systému jsou sociální individua, např. subjekty. Abstrahujeme od subjektů, abychom se mohli zaměřit na různé role aktorů, které vykonávají. Je důležité si všimnout, že nás primárně 10
nezajímají vlastní aktoři jako takoví, ale zaměřujeme se na jejich role. Aktor je v modelu abstrakcí sociálního individua, tedy člověka. A člověk jako takový má v modelu role jako např. student, mladý muž, syn, instruktor nějaké aktivity, zaměstnanec na vedlejší úvazek atd. Z tohoto výčtu je vidět, že jeden aktor vykonává celou řadu různých rolí, které je třeba modelovat. Podniková ontologie se právě zaměřuje na tyto role aktora. Aktor je tedy subjekt, který vykonává role aktora. Aktoři v rámci podnikové ontologie vykonávají dva druhy činů (činností): produkční činy a koordinační činy. Vykonáváním produkčních činů přispívají k dosažení cílů (záměrů) podniku. Vykonáváním koordinačních činů vstupují aktoři do plnění závazků (příslibů) týkajících se produkčních činností. Poznámka k termínům v textu. Podniková ontologie (Enterprise Ontology) používá řadu termínů z anglického jazyka a někdy také latiny. Tyto termíny tvoří z velké části to, co tvoří klíčová slova v konkrétním programovacím jazyce. Proto v následujícím textu budeme používat původní termíny, kdy český ekvivalent je vždy uveden při prvním použití, anebo ho čtenáři naleznou v závěru textu v Seznamu použitých termínů. Kontrolní otázky 1. jak lze dnes charakterizovat podnik? 2. Jaké jsou největší problémy, kterým čelí analytik při jeho modelování? Shrnutí obsahu kapitoly Cílem úvodní kapitoly je popsat problematiku, které se učební text bude věnovat a tím studenty motivovat ke studiu uvedené problematiky. 11
2 Podnikové procesy V této kapitole se dozvíte: co je to transakce (transakční typ) a z jakých částí se skládá, jak se jednotlivé fáze transakce objevují v reálných aplikacích. Po jejím prostudování budete schopni: lépe chápat princip a podstatu sociálních systémů, využít získané vědomosti v pochopení pojmu podnikový proces. Klíčová slova této kapitoly: jednotlivé fáze transakce: request, promise, product, state, accept. Průvodce studiem Vývoj programového vybavení neustále pokračuje. Kromě samotné implementace, která byla v počátcích nejdůležitější a převážně jediná používaná metoda, se objevily další etapy neméně důležité. K nim řadíme analýzu požadavků, vlastní analýzu, návrh, systémový návrh, implementaci, testování. Blíže viz softwarové inženýrství. Jedna z problémových oblastí tvorby programového vybavení je právě ujasnění si požadavků mezi zadavatelem (zpravidla rozumí dobře aplikační doméně) a tvůrcem (rozumí dobře možnostem programového resp. aplikačního vybavení, méně pak vlastní aplikační doméně). Aby ti dva měli k sobě myšlenkově co nejblíže, je snaha, aby všechny etapy programového řešení co nejvíce odpovídaly vlastní aplikační doméně. Jednou z možností jsou podnikové procesy, které oslovují jak zadavatele, tak i tvůrce programového řešení. 12
Existuje spousta definic podnikových procesů a také spousta programových nástrojů, které je modelují. Jedním z nejjednodušších může být diagram případů užití UML (use case diagram), nebo je možné použít také formalismus diagramů aktivit. Existují samozřejmě programové nástroje, které nabízejí konkrétní prostředky pro popis aplikační domény v podnikových procesech jako např. IDEF1 atd. Spousta těchto postupů a metodik nemá přesné definice a často již implicitně předpokládá, že člověk sám poté, co je mu ukázáno pár podnikových procesů, bude tyto procesy identifikovat a popisovat. Naší snahou ale je, explicitně uvést, co podnikový proces je a jaké má fáze. Jednoduchými příklady podnikového procesu jsou např. Zapsání se do sportovního klubu (vyřízení členství) nebo v knihovně, či zapsání si daného kurzu pro následující semestr. Dalšími příklady mohou být např. nákup bochníku chleba v prodejně, či nákup kytice květin v květinářství. Všechny tyto činnosti mají společné to, že v nich vystupují 2 osoby v odlišných rolích a to jedna v roli zákazníka a druhá v roli producenta nebo prodejce či administrativního pracovníka. Někdy činnost procesu může být tak zautomatizovaná, že roli administrativní osoby přebírá kompletně počítačový program. Uvažujme ale o dvou osobách a jejich rolích zákazník a producent (prodejce, administrativní pracovník) a nákupu kytice květin. Fáze podnikového procesu: První fázi tvoří požadavek zákazníka (request) na kytici květin požadavek. 13
Druhou fázi tvoří příslib (promise) prodávající (většinou ženy) na vytvoření požadované kytky v zákazníkem udané specifikaci příslib. Třetí fáze je fáze, kdy prodávající kytku vytvoří podle přání zákazníka produkce. Čtvrtá fáze je fáze, kdy prodávající předvede (state) kytku (vytvořený produkt) zákazníkovi předvedení. Pátá, konečná fáze je fáze, kdy zákazník kytku převezme (accept) a zaplatí za ni přijetí. Obr. 2.1 zobrazuje graficky jednotlivé fáze podnikového procesu. Když se podíváme na tento jednoduchý model podnikového procesu detailněji, vidíme, že se skutečně jedná o transakci mezi dvěma rolemi. Zobecnění pak vede na transakční vzor. Transakční vzor pak představuje komplexní řešení, které oproti našemu jednoduchému příkladu je rozšířeno o akce, které se odehrávají v reálném životě, a to např. požadavek zákazníka na kytku nelze splnit, protože prodejna nemá konkrétní květiny. Obr. 2.1 Podnikový proces jako transakční vzor 14
Vytvořená kytka se zákazníkovi nelíbí, protože je např. příliš drahá, nebo květiny v ní jsou povadlé. Tedy zapracování všech těchto výjimečných vztahů, které v reálném životě mohou nastat, pak vede k transakčnímu vzoru. Bude předmětem představení a vysvětlení v následujících kapitolách. Další důležitá věc, které je třeba si všimnout a která bude v následujících kapitolách jednak více objasněna a také využita, je charakter činností, které jsou v jednoduchém modelu podnikového procesu popsány v jeho fázích. Celkem bylo zmíněno pět fází. Tyto fáze, nebo spíše jejich výsledky, můžeme dělit do dvou skupin. Jedná se o koordinační činy (acts) a produkční činy (acts). Obecně výsledkem koordinačních činů je nějaký příslib o budoucí činnosti. Výsledkem produkčních činů je buď hmatatelný nebo imaginární výsledek. Konkrétní hmatatelný výsledek může představovat kytka květin a imaginární výsledek pak představuje např. potvrzení o zápisu kurzu, rozhodnutí o pojišťovací události, vynesení rozsudku atd. V našem konkrétním případě koordinační činy představují: požadavek (request), příslib (promise), předvedení (state), přijetí (accept). Produkční čin je reprezentován vytvořením požadované kytky. Pokud bychom se podívali na příklady reálných podnikových procesů, našli bychom jejich některé činy ukryté, nebo se odbývají automaticky. Jsou brány implicitně jako vyřešené. Např. při nákupu bochníku chleba po fázi požadavek následuje fáze předvedení a přijetí. To znamená, že některé činnosti jsou prováděny bez vnější prezentace. 15
Kontrolní otázky: Jaké je význam jednotlivých fází transakce? Co jsou to koordinační činy a produkční činy? V čem se liší? Úkoly k zamyšlení: Jak byste popsali zápis konkrétního kurzu v informačním systému? Co bude obsahem jednotlivých fází transakce při vypůjčení knihy? Shrnutí obsahu kapitoly: Kapitola definuje a popisuje základní fáze sociálních systémů, a to pojem transakce a jednotlivé její fáze. Učí rozpoznávat tyto fáze a také zavádí pojmy koordinační čin a produkční čin. 16
3 Ontologické modely přehled V této kapitole se dozvíte: jaké jsou čtyři aspektové modely a co je jejich hlavním cílem, jak jsou uvedené modely vzájemně propojeny. Po jejím prostudování budete schopni: rozlišovat tyto aspektové modely, navázat na tento přehled detailním vysvětlením a popisem v dalších kapitolách. Klíčová slova kapitoly: konstrukční model, procesní model, model akcí, stavový model Průvodce studiem Kompletní podniková ontologie se skládá ze čtyř příbuzných aspektových modelů: konstrukčního modelu (Construction Model), model procesů (Process Model), model akcí (Action Model), stavového modelu (State Model). Konstrukční model je velmi vzdálený klasickým organizačním modelům. Představa standardního konstrukčního modelu je hierarchická struktura organizačních jednotek jako divize, oddělení atd. a eventuálně jejich organizačních funkcí jako manažeři, prodejci, účetní. Avšak v teorii Ψ [1], která je základ pro 17
metodologii, toto organizační a funkční členění patří do oblasti implementace. Elementární role aktora jsou jeho kompetence (authority) a zodpovědnosti (responsibility) a ty tvoří základní jednotku. Navíc, pojem organizace je především považován jako interakce rolí aktorů. Proto model interakce ukazuje ontologickou konstrukci, nebo kompozici podniku; prvky role aktorů a jejich vzájemné ovlivňování. Procesní model popisuje a zobrazuje, jak jsou různé transakce vzájemně propojeny. Existují dva druhy propojení mezi transakčními kroky, a to příčinné (kauzální) spojení a podmíněné spojení. Kauzální spojení od transakce T1 k transakci T2 znamená, že transakce T2 je iniciována z transakce T1. Podmínění spojení od transakce T1 k transakci T2 znamená, že transakce T2 musí čekat, na dokončení transakce T1 než může být zpracovaná. Ačkoli aktoři pracují autonomně, musí sledovat směrnice, normy a postupy, aby pracovaly zodpovědně. Připomínáme, že každý aktor má dvě základní činnosti a ty jsou pravomoc a zodpovědnost. Tyto směrnice a postupy se obecně nazývají pravidla činností (action rules). Pravidla činností, které pronikají (zasahují) výlučně do podnikové ontologie, se nazývají ontologický model činností. Aby byl model činností specifikován co možná nejpřesněji, je k popisu využit pseudo-algoritmický jazyk. Stavový model obecně specifikuje stavový prostor (množinu možných stavů) jak produkčního světa, tak i koordinačního světa podniku. Jinými slovy, stavový model obsahuje konceptuální model všech faktů, které jsou produkovány a všech faktů, které jsou použity. Stavové modely jsou vyjádřeny ve specifikačním jazyku doménové ontologie. 18
Druhá část konstrukčního modelu se nazývá interstriction model. Ta přidává k interakčnímu modelu všechny pasivní vzájemné vlivy mezi rolemi aktorů. Nazývají se interstrictions jako protipól k interakcím, které jsou aktivními vlivy. Interstrictions jsou reprezentovány jako přístupová spojení (vazby) z role aktora do informační banky. Shrnutí obsahu kapitoly Tato kapitola vlastně představuje všechny čtyři aspektové modely a velmi stručně popisuje jejich význam v modelování. V dalších kapitolách bude navázáno na tyto znalosti. 19
4 Pojem faktu V této kapitole se dozvíte: co je to fakt, jak můžeme fakta graficky vyjadřovat pomocí nástroje ORM. Po jejím prostudování budete schopni: použít diagramy pro modelování rolí objektu k modelování faktů. Klíčová slova této kapitoly: pojem faktu, modelování rolí objektu (Object Role Modeling). Průvodce studiem Abychom si jasněji vymezili pojmy, podnik pro nás představuje systém, jehož aktivity ovlivňují okolní svět, který s ním koresponduje. Jiná slova pro termín okolní svět jsou pro nás doména a universum diskursu. V dalším budeme používat označení svět, jako např. svět cestování letadlem, svět vzdělávání studentů na univerzitě atd. Stav takového světa může být jednoduše pojat (pochopen) jako množina elementárních faktů takových, jako např. že konkrétní osoba, nebo auto nebo pojištění existují, nebo že konkrétní osoba vlastní konkrétní auto a že konkrétní pojištění je pro konkrétní auto. Faktická znalost je v rozporu s procedurální znalostí, která bývá jednoduše označována jako know-how. 4.1 Elementární fakt Celá probíraná problematika má úzkou vazbu na informační modelování a na konceptuální schéma používaní hlavně při modelování databází. Konceptuální schéma je na nejvyšší úrovni 20
modelování databází a mělo by se tedy vyjadřovat v uživatelsky orientovaných konceptech. Avšak praxe je jiná a většina konceptuálních schémat je specifikovaná za použití entitněrelačního modelování. Větší expresivitu a přirozenost poskytuje např. metodologie Modelování rolí objektu v originále Object Role Modeling (ORM), jejíž podstatná část je také využita v podnikové ontologii. Proto ji nejdříve popíšeme a vysvětlíme na příkladech, aby se pak dala snadno aplikovat v příkladech modelování podnikových procesů. Modelování rolí objektů lze také jednoduše charakterizovat v pojmech, kde objekty hrají role. Navíc tato metodologie umožňuje vyjádřit konceptuální model v pojmech elementární fakta, omezení (constraints) a odvozovací pravidla (derivation rules). Logické databázové schémata ať již relační nebo síťová, jsou příliš vzdálena uživatelským (lidským) pojmům jako objekty, aby usnadnily přímé modelování aplikací. Místo toho by aplikační model měl být specifikován na konceptuální úrovni s využitím formalizovaného přirozeného jazyka před tím, než bude mapován do nižších modelovacích úrovní, tedy do logické a fyzické úrovně návrhu databáze. Kvalita databázového schématu tak kriticky závisí na kvalitě konceptuálního modelu. Elementární fakt je definován na základě věty přirozeného jazyka, ve které je vyjádřen. Elementární fakt lze stručně definovat jako tvrzení, že objekt hraje danou roli. Následující věta je jednoduchá věta, která vyjadřuje elementární fakt: Jan se narodil 16 listopadu 1988 (1) Věta se nazývá elementární, protože není možné ji rozdělit na menší části, které by byly platné (platné věty) a které by současně 21
měly význam původní věty. Další věta je příkladem ne elementární věty: Jan se narodil 16 listopadu 1988 a má modré oči (2) Z uvedené věty je naprosto zřejmé, že spojka a umožňuje větu rozdělit na dvě elementární věty: Jan se narodil 16 listopadu 1988 (1) Jan má modré oči (3) Význam původní věty je kompletně zachován ve dvou elementárních větách. Avšak ne elementární věta nemusí být nutně pouze spojena spojkami a, nebo, ale atd. Uvažujme následující větu: Jan se narodil 16 listopadu 1988 v Brně (4) Při bližším pohledu na tuto větu objevíme, že není elementární a že může být rozdělena na dvě elementární věty tak, aby byl uchován kompletní smysl původní věty: Jan se narodil 16. listopadu 1988 (1) Jan se narodil v Brně (5) Abychom se vyhnuli takovým zvláštnostem gramatiky přirozeného jazyka, brzy poznáme, že modelovací přístupy založené na přirozeném jazyku mohou vyjádřit fakt pomocí řady různých vět. Aby vše bylo jednodušší, bylo vyvinuto objektivní kritérium, pro stanovení toho, zda je fakt elementární či není. Toto kritérium se nazývá pravidlo n-1 a říká, že každé aplikovatelné jednoznačné pravidlo musí obsáhnout alespoň n-1 rolí n-arního faktového typu. To se dá snadno demonstrovat graficky poté, co rozvedeme větu do kompletní formy. Například rozvedení posledně uvedené věty je následující: 22
OSOBA se jménem OSOBY Jan je narozena DATUM se jménem DATUMU 16-11-1988 v MÍSTO se jménem MÍSTO Brno Toto je instance typu faktu, který je modelován pomocí metodologie ORM (Object Role Modeling Modelování rolí objektů), jak je ukázáno na následujícím obrázku. Symbol pro typ faktu (fact type) je podélný obdélník, který je na obrázky rozdělen na tři části označené číslicemi 1, 2, 3. Typ faktu je označen F01. Tedy typ faktu je znázorněný jako obdélník vzniklý propojením v našem případě tří částí. Každá část (nesoucí označení 1, 2, 3) představuje roli připojené třídy objektu (object class), kterou představuje na obrázku ovál. Obr. 4.1 Typ faktu vyjádřen pomocí věty 4 Typ fakt pak může být reprezentovaný instancemi faktu jako např. Anna 16.12.1988 Ostrava Zdeněk 1.6.1991 Havířov Eva 22.3.1966 Frýdek Místek Jan 16.11.1988 Brno 23
Na obrázku 4.1 je také vyjádřeno pravidlo jedinečnosti (unicity). Toto pravidlo znamená, že v libovolných instancích typu faktu F01 se objekt v dané roli může vyskytnout pouze jednou. Toto pravidlo představuje vodorovná čára nad částí obdélníku označena 1 (rolí), a konkrétně to znamená, že daná osoba se vždy narodila pouze v daný den a na daném místě. Nemůže existovat osoba, která má např. dvě nebo více různých dat narození, nebo dvě či více míst narození. Toto pravidlo jedinečnosti není v souladu s n-1 pravidlem, z čehož plyne, že typ faktu není elementární. Odpovídající postup pro úpravu chyby je nahradit ternární typ faktu F01 dvěma binárními typy faktu, viz následující obrázek. Obr. 4.2 Typy faktů (F002, F003) vyjádřeny jako věty 1 a 5 Typy faktů pak mohou být reprezentovaný instancemi faktu jako např. F02: Anna 16.12.198 Zdeněk 1.6.1991 Eva 22.3.1966 Jan 16.11.1988 F03: Anna Zdeněk Eva Jan Ostrava Havířov Frýdek Místek Brno Jak je vidět, tak k popisu používáme deklarativní věty. Fakt vlastně spojuje objekty. V popisované doméně věci (objekty) neexistují 24
samostatně, ale jsou součástí faktů. Elementární fakt je kombinací objektů. Uvedené věty měly deklarativní charakter, který byl reprezentován pravdivým faktem - tvrzením, tedy, že Jan se narodil v Brně 16. listopadu 1988. Vyjadřování informací jako elementárních faktů nebývá vždy jednoduché. Důvody, proč využívat elementárních faktů jsou následující: Tím, že pracujeme s informacemi v jednoduchých jednotkách, máme lepší šanci k získání korektního obrazu aplikace, která je modelovaná; Je snadnější vyjádřit a kontrolovat omezení (omezující podmínky); Je snadnější modifikovat konceptuální schéma, protože typy faktů mohou být přidávány nebo rušeny postupně, což je lepší než modifikace složených typů faktů. Stejné konceptuální schéma může být použito k mapování odlišných datových modelů. Pokud budeme seskupovat typy faktů do složených typů faktů v konceptuálním schématu, mohou být využita různá seskupení pro odlišné cílové modely. 4.2 Metodologie modelování rolí objektů V předchozí kapitole o elementárních faktech jsme stručně zmínili metodologii modelování rolí objektů, která nese původní jméno Object Role Modeling ve zkratce metodologie ORM. Tato metodologie je využita v aspektových modelech podnikové ontologie, a proto se jí budeme věnovat důsledněji. Cílem této 25
metodologie je vytvořit konceptuální model informačního systému, který je vyjádřený pouze prostřednictvím elementárních faktů, omezujících podmínek (constraints) a odvozovacích pravidel (derivation rules). Hlavním cílem této metodologie je poskytnout konceptuální model informačního systému na vysoké úrovni, kde je aplikace popsána ve výrazech (pojmech) konkrétní aplikační domény a je takto snadno srozumitelná vlastním uživatelům. Tím se liší od používaných postupů, kdy se aplikační doména popisuje (vyjadřuje) ve výrazech a pojmech struktury implementovaných dat tedy např. v entitně-relačním modelu. Takže zpět ke konkrétním příkladům faktů: Planeta se jménem Země je obydlena. (7) Planetu se jménem Mars obíhá Měsíc se jménem Phobos. (8) Pracovník se jménem Nový navštívil Zemi se jménem Čína v Roce 2001. (9) V uvedených tvrzeních (deklarativních větách) je třída objektu uvedena velkým písmenem. Tedy konkrétně třídy objektu jsou: Planeta, Měsíc, Pracovník, Země, Rok. Predikáty jsou věty, ve kterých jsou místa (díry) pro objektové třídy (znázorněny třemi za sebou jdoucími tečkami). Predikáty tedy můžeme popsat následovně:... je obydlena ; unární fakt... obíhá... ; binární fakt... navštívil... v.... ternální fakt 26
4.2.1 Modelování jedinečnosti typů faktů Unární typy faktů jsou nejsnadnější. Proto se na ně podíváme nejdříve. Předpokládejme, že jako část fitness aktivity sledujeme, kteří lidé provozují jogging. To může být zpracováno jako unární typ faktu. Předpokládejme, že budeme lidi identifikovat podle příjmení. Přikládáme proto vzorek populace: Osoba s příjmením Horák provozuje jogging. Osoba s příjmením Nová provozuje jogging. Osoba s příjmením Procházka provozuje jogging. Obr. 4.3 Unární typ faktu Instance od takových typů faktů pak můžeme ukládat do relační databáze. Při tom, když budeme chtít databázi aktualizovat se může stát, že se některá osoba může vyskytnout vícekrát. Pro jednoduchost předpokládáme, že každá osoba má jedinečné příjmení. Jedná se o omezující podmínku jedinečnosti, kterou musíme být schopni modelovat i v grafickém nástroji. Tato podmínka zajišťuje, že entity jsou jedinečné, tedy bez duplikátů. Realizace je znázorněna na obr.4.4. 27
Obr. 4.4 Omezení jedinečnosti Omezení jedinečnosti naznačuje vodorovná čára nad unárním predikátem. Instance osoby s příjmením Horák je uvedena dvakrát, ale její druhý výskyt není umožněn. V obrázku je to označeno přeškrtnutím tohoto příjmení. Přejdeme na binární predikáty. Nejběžnější případ je omezení jedinečnosti právě jedné role. Předpokládejme, že budeme mít následující typy faktů: Každý Politik se narodil nanejvýše v jedné Zemi. Je možné, že některá Země je místem narození více Politiků. Velkými písmeny (Politik, Země) jsou označeny třídy objektů, které se pak v instanci faktu nahradí konkrétním objektem. Obr.4.5 Omezení jedinečnosti na první roli 28
Z obrázku 4.5 je patrné, že uvedený typ faktu může být interpretován jedním, nebo obráceným směrem. Proto je u rolí napsáno se narodil interpretace zleva doprava a je místem narození interpretace zprava do leva. Omezení jedinečnosti je u třídy objektu Politik, což znamená, že ten se může narodit pouze v jedné zemi. Snadno si to můžete představit jako primární klíč v rámci relační databáze. Interpretace tohoto typu faktu je následující. Každý politik se narodil nanejvýš v jedné Zemi. (1) Je možné, že ve stejné Zemi se narodil více než jeden Politik. (2) Obr. 4.6 Dopředný predikát je n : 1 a inverzní predikát je 1 : n Aby bylo vše názornější, doplnili jsme ještě další obrázek vyjadřující kardinality mezi objekty. Omezení ve větě (1) je formálně slovně vyjádřeno v pozitivní formě. Mnoho Politiků se může narodit ve stejné Zemi. Tato věta vyjadřuje vazbu mezi objekty, která je n : 1. 29
Ale protože mnoho Zemí nemůže být místem narození pro jednoho Politika, je inverzní kardinalita mezi objekty 1 : n. Obr. 4.7 Třídy objektů jsou obě jedinečné Na obrázku 4.7 je uvedena další možnost, a to, že omezení jedinečnosti je uvedeno nad oběma rolemi. To by vyjadřovalo predikát následujícího tvaru: Každý Politik řídí nanejvýše jednu Zemi. Každá Země má nanejvýše jednoho hlavního Politika. Poznámka: Politikem je myšlen v tomto příkladu prezident eventuálně ministerský předseda. Pak predikát dává smysl. C H B USA ČR VB 1 : 1 Obr. 4.8 Vyjádření kardinalit Na obr. 4.8 máme názorně vysvětleny uvedené predikáty, které vedou k vazbě 1 : 1. 30
Dalším příkladem je typ faktu, který vidíme na obrázku 4.9. Z tabulky instancí faktů je zřejmé, že sloupce v tabulce faktů se opakují (Václav Havel 2x, USA 2x). Na druhou stranu ale můžeme říci, že každý řádek tabulky faktů je jedinečný. Žádný řádek se neopakuje. To právě znázorňuje vodorovná čára nad oběma rolemi. Z ní vyplývá, že Politik a Země musí být jedinečné. Predikát, který vyjadřuje uvedený obrázek je následující. Obr. 4.9 Politik může navštívit mnoho Zemí a naopak Je možné, že stejný Politik navštívil více Zemí a že stejná Země byla navštívena více než jedním Politikem. Tato konstrukce vede ke kardinalitě m : n, která je znázorněná na obr. 4.10. Obr. 4.10 Znázornění kardinalit mezi objekty Abychom vše dobře procvičili, uvedeme ještě další příklady. Ty se týkají tzv. rekurzivní vazby mezi typy objektů, tedy když se jeden typ objektu vyskytuje ve více rolích. Na obr. 4.11 se jedná o roli rodiče a roli dítěte. Role jsou reprezentovány dvěma přilehlými obdélníky, nad nimiž je text je rodičem / je dítětem. Takže obě role 31
jsou reprezentovány. Typ objektu Osoba zůstává jeden. Omezení jedinečnosti (vodorovná čára u rolí) představuje vazbu 1 : 1, tedy rodič : dítě. Dvojice rodič a dítě musí být jedinečné (způsobuje souvislá vodorovná čára nad oběma obdélníky). Pod obrázkem je pak dále uvedena instanční tabulka faktů, ze které je vše jasnější. Osoba je rodičem / je dítětem Tomáš Tomáš Jarmila Jarmila Jareček Zdenička Zdenička Jareček Obr. 4.11 Rekurzivní vazba 1 : 1 Osoba je matkou / má matku Kamila Eva Jarmila Jarmila Jareček Zdenička Zdenička Jareček Obr. 4.12 Rekurzivní vazba - pokračování 32
Na obrázku 4.12 se změnilo omezení jedinečnosti (vodorovná čára pokrývá jen jednu roli). Interpretace predikátu je následující. Každé dítě má pouze jednu matku. Ačkoli matka může mít více dětí, každá Osoba má pouze jednu (biologickou) matku. Další příklad na obr. 4.13 modeluje monogamii: v libovolném čase každý muž může mít nanejvýš jednu manželku a každá žena může nanejvýš jednoho manžela. Takže entity v každém sloupci musí být jedinečné. Osoba je manželem / je manželkou Kamil Adam Julián Jarmila Eva Zdenička Obr. 4.13 Monogamie, vztah 1 : 1 Omezení jedinečnosti lze nejlépe pochopit v kontextu doprovodných tabulek, kde jsou uvedeny konkrétní instance. Pro jakýkoli daný typ faktu, každá role je asociována s odpovídajícím sloupcem v tabulce faktů (uvedena pod obrázkem). Máme tedy možnost si vybrat přesně jednu ze čtyř možných omezujících vzorů, které jsou uvedeny na následujícím obrázku. 33
R (1) Žádné duplikáty nejsou povoleny pro sloupec a. Každé a z R má nanejvýš jedno b. Realizuje vazbu n : 1. a b (2) (3) R R a b Žádné duplikáty nejsou povoleny pro sloupec b. Každé b z R má nanejvýš jedno a. Realizuje vazbu 1 : n. Jedno a má přiřazeno jedno b. Jedno b má přiřazeno jedno a. Realizuje vazbu 1: 1. (4) R a a b b Žádné duplikáty dvojic (a, b) nejsou povoleny. Každé a může mít mnoho b a naopak.realizuje vazbu n : m. Obr. 4.14 Čtyři omezující vzory jedinečnosti pro binární fakty. 4.2.2 Modelování jedinečnosti na delších typech faktů V této části se budeme zabývat, jak specifikovat omezení jedinečnosti na n-ární typy faktů, včetně objektivizace (objectification) nebo vnoření. Začněme s obr. 4.15, na kterém je uveden ternární typ faktu ve formě: Osoba získala body Hodnocení za Kurz. 34
Hodnocení Osoba Kurz... získané body za... Kantor Kantor Konečná Růžičková 7 7 9 7 UVALP RELDA ZAMAT UVALP Obr. 4.15 Co jsou omezení jedinečnosti Obr. 4.15 představuje studenty a získané body z konkrétního kurzu. Pohledem na tabulku faktů, která je uvedena pod obrázkem, budeme zvažovat každý sloupec zvlášť. Každý sloupec má alespoň jednu hodnotu, která se opakuje. Takže žádný ze samotných sloupců nemůže aplikovat omezení jedinečnosti. Nyní se podívejme na každou dvojici sloupců. Sloupce Osoba a Hodnocení mají společné hodnoty v prvním a ve druhém řádku. Při porovnání sloupců Osoba a Kurz vidíme, že každá dvojice je jedinečná. Při porovnání sloupců Hodnocení a Kurz vidíme, že řádky první a čtvrtý jsou stejné pro tuto dvojici. Existuje tedy pouze jeden způsob, jak párovat sloupce v dané tabulce. Jsou-li data uvedená v tabulce signifikantní (mající význam), existuje pouze párové omezení jedinečnosti, které říkají, že každá dvojice (Osoba, Kurz) musí být jedinečná. Pokud jsme obeznámeni s konkrétní doménou, můžeme rozhodnout, zda data uvedená v tabulce jsou signifikantní, a tedy zda můžeme takto pokračovat. Takže upravený diagram je uvedený na obr. 4.16. 35
Obr. 4.16 Každá dvojice (Osoba, Kurz) je jedinečná. Obr. 4.17 Jedinečnost omezení aplikovaná na všechny role Obr. 4.17 ukazuje, jak se aplikuje ternární typ faktu. Zde politici mohou navštívit mnoho zemí během jednoho roku. Říká se, že takový typ faktu je mnoho ku mnoho ku mnoho. Žádná trojice v řádku se nesmí opakovat. To tabulka faktů uvedená pod obrázkem splňuje. Někdy ale potřebujeme relaci (dvě role binární fakt) transformovat a nahradit ji objektem. V diagramu tříd UML se transformaci relace do podoby třídy říká asociativní třída. V metodologii ORM se tato transformace nazývá objektivizace či zpředmětnění (objectification) nebo vnořování, hnízdění (nesting), viz následující obrázek. 36
Obr. 4.18 Vnořená verze Místo vyjádření jedné věty, vyjádříme typ faktu ve dvou větách: Student R06103 je zapsaný v kurzu RELDA. (1) Tento Zápis kurzu má výsledek v Hodnocení 7. (2) Tento Zápis kurzu odkazuje na specifický vztah mezi Osobou a Kurzem. Ten je dán první větou zápisu. Jak je vidět z omezení jedinečnosti, dvojice (Osoba, Kurz) musí být jedinečné. Zápis kurzu má pak vazbu na Hodnocení. V této vazbě opět Zápis kurzu musí vystupovat jako jedinečný. 4.2.3 Modelování povinných a volitelných rolí Doposud jsme nerozlišovali povinnost a volitelnost rolí. Pokud bychom však uvažovali jednoduchý příklad pacienta v nemocnici, ten má jistě své jméno, identifikační číslo, ale nemusí mít nutně číslo telefonu. Povinná (mandatorní) role se v diagramu označuje tečkou, viz obr. 4.19. Na něm je jako mandatorní role označena skutečnost, že pacient s danou identifikací musí mít své jméno. 37
Obr. 4.19 Mandatorní role Mandatorní omezení: Každý pacient má nějaké jméno. Omezení jedinečnosti: Každý pacient má nanejvýš jedno jméno. Každý pacient má nanejvýš jedno telefonní číslo. 4.2.4 Referenční schémata Jednoduché referenční schéma může obsahovat doménu (univerzum), kde osoby jsou identifikovány pomocí jejich příjmení a každé město (místo bydliště) má dané jméno. tedy jediný požadavek na jedinečnost splňuje v daném případě jméno osoby. Tab. 4.1 Osobní údaje Osoba Město Výška Hrudník Váha IQ (cm) (cm) (kg) Konečná Karviná 172 100 76 120 Znojil Karviná 181 91 82 110 Nová Ostrava 170 95 77 115 Vydrová Petřvald 168 97 73 100 Na následujícím obrázku je uvedeno schéma odpovídající tab. 4.1. 38
Obr. 4.20 Konceptuální schéma tab. 4.1 Role Osoby je mandatorní (povinná), proto má u sebe zvýrazněné tečky. U každé role je uveden textový predikát např. má výšku, někdy ještě doplněný o měřenou hodnotu [výška]. Z diagramu je vidět, že Výška a Hrudník mají stejnou třídu objektu, protože se obě měří ve stejných jednotkách. Podobné diagramy se pak využívají ve stavovém diagramu podnikové ontologie. 4.2.5 Vylučující omezení V některých případech potřebujeme vyjádřit již přímo v diagramu, že některé role již ve své podstatě vyžadují vylučující omezení (exclusion constraint). Náš příklad, který nejdříve uvedeme tabulkou, se týká natočených filmů, jejich režisérů a kritiků. Je samozřejmě nemyslitelné, aby Osoba v roli režiséra u daného filmu zároveň vykonávala roli kritika u stejného filmu. Tuto skutečnost musíme vyloučit. Podobný případ by nastal, pokud by autor příspěvku na konferenci byl zároveň jeho hodnotitelem. 39
Tab. 4.2 Vyloučení rolí objektů Název filmu Režisér Země narození Kritik Země narození DaVinciho kód Ron Howard USA Fred Bloggs Ann Green USA USA Krokodíl Dundee Peter Faiman Austrálie Ann Green Inna Viewer Tom Sawme USA VB Austrálie Hvězdný mír Ann Green USA Inna Viewer VB Uvedená tabulka je zpracovaná formou diagramu ORM. V tomto diagramu jsou jednak označeny mandatorní role a dále je mezi rolemi byl režírován a byl hodnocen vyjádřena vzájemná vyloučitelnost pomocí kroužku s křížkem uprostřed. 40
Obr. 4.21 Diagram ORM tabulky 4.2 41
Kontrolní otázky: Co je to typ faktu a co je to instance faktu? Uveďte příklady. Co je podstatou metodologie modelování rolí objektů? (Čím se liší od diagramů UML nebo od ER diagramů) Úkoly k zamyšlení: Co jsou výhodné stránky metodologie modelování rolí objektů a jak mohou zlepšit návrhy relačních databází? Shrnutí obsahu kapitoly: Tato kapitola se zabývala vysvětlením a názornými příklady metodologie modelování rolí objektů, která je využita ve stavovém modelu podnikové ontologie. 42
5 Specifikační jazyk světa ontologie V této kapitole se dozvíte: základní pojmy ze světa ontologie, budete schopni rozlišovat mezi statum a faktum, jak se specifikují existenční pravidla, co jsou to typy faktů a jaká mají pravidla výskytu. Po jejím prostudování budete schopni: lépe se orientovat v pojmech typ a koncept, třída a objekt a jejich vzájemnými vazbami. budete schopni rozlišovat subjektivní a objektivní pohled. Klíčová slova této kapitoly: ontologický rovnoběžník, typ, koncept, třída, objekt. Průvodce studiem Anglický název této kapitoly je World Ontology Specification Language, kde slovíčko World představuje svět, doménu nebo obecněji universum diskursu. My jsme přeložili celý název jako svět ontologie, což podle nás vyjadřuje podstatu problému. Jeho sémantický základ, stejně jako jeho grafická notace, je adoptována z metodologie modelování rolí objektů, která byla předmětem předchozí kapitoly. 5.1 Faktická znalost Faktickou znalostí míníme znalost stavu a změny stavů zkoumaného (pozorovaného) světa. Příkladem může být znalost, že osoba, nebo auto nebo pojistka existuje, stejně jako znalost, že pojistka auta začala platit v konkrétní den. Základem 43
pro porozumění faktické znalosti je významový trojúhelník (meaning triangle). Ten vysvětluje, jak lidé používají symboly (jména) jako reprezentace objektů, aby byly schopni mluvit o těchto objektech, když tyto objekty nejsou přítomny, např. když nejsou vidět, nebo když se na ně nedá ukázat. koncept subjektivní designation reference denotace objektivní označení objekt Obr. 5.1 Významový trojúhelník Elementární pojmy, které budeme používat, jsou vymezeny pomocí slov označení, objekt a koncept. Pojem konceptu je subjektivní pojem, zatímco pojmy označení a objekt jsou objektivní pojmy. Subjektivní pojem chápeme tak, že se týká věcí, které existují pouze uvnitř lidských myslí. Naopak objektivní pojem existuje nezávisle na lidském vědomí. Označení není, jak by se na první pohled mohlo zdát, atributem objektu. Je to dohoda, že dané označení se bude používat při komunikaci o daném objektu. Označení je objekt, který se používá jako reprezentace něčeho jiného. Dobře známá třída označení jsou symbolická označení, jak se používají v přirozeném jazyce. Příklady symbolických označení jsou jména osob Karel Čapek, označení na poznávací značce auta 1T3 56-19 a čísla 7 stejně jako věty Karel Čapek vlastní auto s poznávací značkou 1T3 56-19 a auto s poznávací značkou 1T3 56-19 je 7 let staré. 44
Objekt je objektivní individuální věc, která je pozorovatelná a identifikovatelná např. osoba nebo auto. Objekt je již podle své definice něco objektivního, tedy existuje nezávisle na lidském vědomí. Říkáme, že vnímatelné vlastnosti objektu kolektivně vytváří formu objektu. Objekty mohou být součástí dalších objektů, stejně jako mohou obsahovat již složené objekty. Auto může být klasickým příkladem složeného objektu. Pojem objektu, jak byl vysvětlen, je ve skutečnosti pojem konkrétního objektu. Pouze konkrétní objekty jsou pozorovatelné a identifikovatelné lidmi. Ale existuje samozřejmě celá řada zajímavých objektů, které nejsou pozorovatelné. Příkladem může být uvedené číslo 7, nebo složený objekt označující, že Karel Čapek vlastní auto s poznávací značkou 1T3 56-19. Tyto objekty se nazývají abstraktní objekty. Označení abstraktní objekt není více méně nic, než konvenční cesta analogického uvažování. Koncept je subjektivní individuální věc. Je to myšlenka nebo mentální obraz objektu, který může ve své mysli mít subjekt. Koncept je podle definice typovaný, je vždy nevyhnutelně konceptem typu. Je to pouze důsledek práce lidské mysli. Klasifikace je totiž nejzákladnější konceptuální princip, který se odráží ve všech přirozených jazycích pomocí lingvistického pojmu podstatného jména: podstatná jména reprezentují typy. Stejně jako existují konkrétní a abstraktní objekty existují analogicky konkrétní a abstraktní koncepty. Příkladem konkrétních konceptů jsou např. mentální obraz, který mám o osobě Karla Čapka nebo mentální obraz, který mám např. o autě s poznávací značkou 1T3 56-19. Příklady abstraktních konceptů jsou např. číslo 7 nebo fakt že Karel Čapek vlastní auto s poznávací značkou 1T3 56-19 a fakt, že toto auto je 7 let staré. 45
Základní pojmy pro označení, objekt a koncept jsou ve vzájemné vazbě každý ke každému pomocí tří pojmových vztahů a to designace, denotace a reference. Typ je subjektivní věc, příklady jsou např. typ osoby, typ auta, typ čísla, typ vlastní (vlastnictví), typ věk. Lidský mozek aplikuje typy při pozorování okolního světa. Typy mohou být také chápány jako předpis formy. Tomuto předpisu formy se také říká intenze typu. Forma objektu může vyhovovat (odpovídat) jednomu, nebo více typům, což způsobuje vznik jednoho, nebo více individuálních konceptů. Např. konkrétní objekt má tvar, je z konkrétního materiálu a má barvu. Následně se můžeme na tento objekt odkazovat pomocí tří individuálních konceptů, každý odlišného typu. Např. krychle, dřevěná věc a zelená věc. Stejně tak forma objektu označeného jako Karel Čapek může vyhovovat typu osoba, ale také typu spisovatel nebo novinář nebo pacient a může se stát, že to bude současně. Třída je kolekce objektů. Podle definice, třída obsahuje všechny objekty, které vyhovují asociaci s daným typem. Např. třída osob to je kolekce objektů, které sdílejí takové vlastnosti, že vyhovují typu osoba, třída aut je kolekce objektů, které vyhovují typu auto a kolekce dvojic objektů <osoba, auto> která sdílí vlastnosti, že osoba vlastní auto. Extenze je vazba mezi typem a třídou. Říkáme, že třída je extenzí typu. Např. třída osob je extenzí typu osoba; třída aut je extenzí typu auto; třída řady vlastnictví je extenzí typu vlastnit. Vazba mezi individuálními koncepty a generickými koncepty (typy) a následně mezi individuálními objekty a třídami je zobrazena na obrázku 5.2. Na tomto obrázku jsme záměrně 46
vynechali označení, protože označení nejsou v ontologii relevantní. Ontologie je o podstatě věcí a ne o jejich jménech, která jsme jim dali. Na obrázek 5.2 je zobrazen tzv. ontologický rovnoběžník (parallelogram), který celou problematiku názorně zobrazuje. Obr. 5.2 Ontologický rovnoběžník Obrázek rovněž popisuje základní vztahy mezi uvedenými pojmy a to instanciaci, konformitu a stupněm zaplnění (obsazenost - population). Instanciace je vztah mezi konceptem a typem a vyjadřuje, že každý koncept je instancí typu. Příklady jsou následující: osoba Karel Čapek je instancí typu osoba; auto s poznávací značkou 1T3 56-19 je instancí typu auto; číslo 7 je instancí typu číslo; koncept Karel Čapek vlastní auto s poznávací značkou 1T3 56-19 je instancí typu vlastní. Konformita je vztah mezi formou objektu a typu. Říkáme, že objekt vyhovuje (je konformní k) typu (an object conforms to a type). Příklady mohou být následující: objekt s označením Karel Čapek vyhovuje typu osoba (je konformní k typu osoba); objekt označený jako 1T3 56-19 vyhovuje typu auta. 47
Předvedené příklady se týkaly konkrétních objektů, ale stejná analogie platí i pro abstraktní objekty. Můžeme mít objekt, který má označení čísla 7, které vyhovuje typu číslo. Populace (population) je vztah mezi objektem a třídou. Říkáme, že třída je populace objektů. Běžnější způsob vyjádření pro populaci je výrok, že objekt je člen třídy, nebo patří třídě. Příklady tohoto označení jsou: objekt označený Karel Čapek patří do třídy osob; objekt označený poznávací značkou 1T3 53-19 patří do třídy aut; objekt označený Karel Čapek vlastní auto 1T3 56-19 patří do třídy vlastnictví (ownerships). 5.2 Stata a fakta Ontologický rovnoběžník je základem pro vytvoření ontologie konkrétního světa. V každém momentu je svět v konkrétním stavu, který je jednoduše definovaný jako množina objektů, o nichž se říká, že jsou aktuální, během daného času. Změna stavu se nazývá přechod (transition). Přechod je jednoduše definovaný jako uspořádaná dvojice stavů např. T1 = <S1, S2>, T1 je přechod ze stavu S1 do stavu S2. Výskyt přechodu se nazývá událost (event). Událost může být tedy jednoduše definovaná jako dvojice <T, t>, kde T je přechod a t konkrétní čas (bod na časové ose). Přechod se následně může konat několikrát během života (lifetime) konkrétního světa, avšak události jsou jedinečné. Událost je vždy způsobena nějakým činem (činností). Abychom dokonale pochopili, co je stav konkrétního světa a co je přechod stavu, je nutné rozlišovat mezi dvěma druhy objektů, které nazveme stata (jednotné číslo statum) a fakta (jednotné číslo faktum). Poznámka: zde jsme ponechali původní jména. Hlavně se jedná o jméno stata, statum, které se nevyskytuje ani v angličtině a má svůj původ v latině. 48