PODNIKOVÁ PRAVIDLA A DATOVÁ INTEGRITA APLIKACÍ V LOGISTICE BUSINESS RULES AND DATA INTEGRITY OF APPLICATION IN LOGISTICS PROCESS RÁBOVÁ Ivana, (ČR) ABSTRACT The business rules are the basis of all knowledge in every enterprise. The rules are essential business concepts and recently they have increasingly big value. They control goals, resources and processes in enterprise. They are included in business indirections, guidelines, norms and orders but also in government’s law and regulations. Many of them are implemented into information systems that support business activities and processes. The article deals with the business rules classification with regard to need of their automatization. The focus of this article is to the rules that are implemented in information systems but it treats also of rules that can’t be implemented in information system. Author concerns with problem of correct modeling and specification of business rules for software application and with method of their observance monitoring. All things will be explained on problem’s domain of logistics and its analytics models including examples from this domain. KEYWORDS Business process, business rules, application rules, logistics, constraint of integrity, data integrity.
ÚVOD Světové ekonomické fórum publikuje tzv. Business Competitiveness Index – BCI (Index podnikatelského prostředí), který hodnotí dvě oblasti, které jsou klíčové pro podnikatelské prostředí každé země: jde o
úroveň firemních strategií a procesů kvalita mikroekonomického prostředí.
Z pohledu informatika je zajímavá oblast firemních strategií a procesů. Jejich nedílnou součástí, aniž by si to firmy explicitně uvědomovaly jsou podnikové znalosti a tedy podniková pravidla. Na nich je strategie postavena a jimi se procesy řídí. Podniková pravidla představují jeden z nejdůležitějších konceptů podnikové architektury a v rámci podnikového modelování na ně klademe postupně větší a větší důraz. Pravidlo definujeme jako sadu podmínek a zásad, které musí být splněny pro správné fungování podniku, jako ustanovení definující a omezující některé aspekty podniku. Definice se týká podnikových organizačních struktur, chování podniku a především způsobu spouštění nebo posloupnosti aktivit v podnikových procesech. Na podnikových pravidlech jsou postaveny podnikové procesy, pravidla mohou omezit vykonávání podnikových procesů a chování zdrojů. Pravidla představující podnikové znalosti a ovládají strukturu zvnějšku i uvnitř. Pravidla tedy vlastně řídí podnik (nařízení, zákony, předpisy a ustanovení jak vnitřního tak externího charakteru).
Podnikovými pravidly se zabývají společnosti jak u nás tak ve světě. Jmenujme IDS Sheer, Business Ruless Solution, Business Ruless Community a jiné. Ve vztahu k podnikové architektuře a modelování podnikových konceptů pomocí jazyka UML se o pravidlech zmiňují (ERRIKSON, H., PENKER, M., 2000), kteří definují pravidlo jako ...ustanovení, která mohou řídit nebo ovlivnit jak chod podnikového procesu tak strukturu zdrojů v podniku. Stanovení specifikuje podmínku, která musí být splněna nebo podmínku, která řídí, jaká aktivita by měla následovat dále. Může vyjádřit podnikový cíl, specifikovat způsob, jak by měl být vykonáván proces, detailizuje podmínky vztahu nebo omezení chování zdroje. Pravidla určují ceny, schvalovací procesy a organizační odpovědnosti, jejichž prostřednictvím významně ovlivňují podnikové procesy v organizaci. Je proto překvapující, že v mnoha organizacích se během dokumentace procesů podniková pravidla často opomíjí nebo se jim nevěnuje odpovídající pozornost. Zůstávají tak uložena pouze v hlavách zaměstnanců či v aplikačním softwaru, který jednotlivé procesy automatizuje. Potřebné změny těchto pravidel se sice provedou v informačním systému, avšak pouze jako nový požadavek ze strany uživatele a jinak zaznamenány nejsou. MATERIÁL A METÓDY Přesto jsou viditelné snahy některých firem, spíše informatického zaměření, zabývat se pravidly jako samostatným konceptem, sice je v software zohlednit, ale jako podnikové pravidlo je dále udržovat a řídit po celou dobu jeho životního cyklu. Některé CASE nástroje toto podporují pomocí své centrální repozitory, která obsahuje speciální složku s navrženou strukturou pro zadávání a vkládání jednotlivých pravidel. Struktura takových záznamů závisí na potřebě v podniku ale už dnes můžeme hovořit o několika přístupech ke klasifikaci pravidel. Pokud se podaří shromáždit pravidla do takové encyklopedie, je možné použít už patentovanou technologii pro automatické vyhledávání problémů (kompletnost a konfliktnost pravidel) stejně jako provést konverzi optimalizovaných pravidel do webových služeb pro jejich automatické provádění (RÁBOVÁ, I., 2005). Z mnoha zdrojů, které slouží jako teoretická východiska k systémovému řízení a správě podnikových pravidel jsem vybrala Manifest podnikových pravidel, který popisuje velmi srozumitelně podstatu této problematiky. Manifest podnikových pravidel (ROSS, 2006) obsahuje 10 principů pro jejich klasifikaci a systémovou správu. Z tohoto významného avšak u nás dosud neznámého dokumentu můžeme vyčíst některé poznatky a uplatnit je v praxi. Například:
Pravidla jsou zásadní pro podnikové a technologické modely a jsou jejich samostatnou součástí. Pokud tedy modelujeme podnik, definice, výpočty a omezení bychom měli zahrnout do specifického dokumentu, aby v něm bylo možné pojednat nikoliv o vykonávání jednotlivých procesů ale globálně, protože pravidla platí napříč více procesy a organizacemi. Podobně by pravidla měla být oddělena od klasického popisu produktu tedy informačního systému a postavena na faktech, konceptech, pojmech z podnikové terminologie. Pravidla jsou základem toho, co podnik ví o sobě samém, je to tedy základní podniková znalost a musí být o ně pečováno, musí být chráněna a spravována.
Pravidla by měla být vyjádřena deklarativně ve větách přirozeného jazyka srozumitelně pro lidi z podniku a jestliže něco nemůže být vyjádřeno deklarativně, není to pravidlo. Pravidla by měla být definována nezávisle na odpovědnosti a na jejich uplatnění a případné výjimky z pravidel musí být vyjádřeny jinými pravidly. Základem pro dobře formulované vyjádření pravidel v podnikových termínech stejně jako pro technologie, které podniková pravidla implementují, je formální a predikátová logika (RÁBOVÁ, I., 2007). Pravidla často vyžadují speciální nebo vybrané zacházení při detekování porušení. Taková aktivita při porušení pravidla je aktivita podobná jiné aktivitě. Pravidla jsou o podnikových praktikách a průvodcích a proto jsou motivována podnikovými cíli a podnikovými objekty a jsou formovaná různými vlivy.
Již ze samotné definice podnikového pravidla vyplývá jejich podle mého názoru základní klasifikace. A to na pravidla aplikační a obecná. Obecná pravidla jsou taková, která se v podniku dodržují, jsou obsažena ve směrnicích a pokynech, jejich obsah však nemůže být aplikován v informačním systému a jejich plnění nemůže informační systém kontrolovat. Pravidla „zákaz kouření ve všech prostorách univerzity“, „každý zaměstnanec musí zapsat svůj příchod i odchod do speciální knihy“, „každý zaměstnanec má povinnost přerušit práci na ½ hodinovou přestávku vždy po 4 odpracovaných hodinách“, „doba přestávky se nepočítá do pracovní doby zaměstnance“, by mohla být považována za pravidla všeobecná. Jejich aplikace do informačního systému a podpora jejich dodržování automatizovaně tak není příliš reálná. Oproti tomu je mnoho pravidel, která souvisí přímo s požadavkem na informační systém a často se právě tato pravidla uvažují, modelují a realizují jako podniková znalost. Tato pravidla jsou pro informatiky daleko důležitější a zajímavější a my se jim zde budeme tedy také důkladněji věnovat. Souvisí se stavbou databáze, s integritními omezeními a s podobou informačních systémů a jejich ovládáním. V oblasti databázových teorií se hovoří o datové integritě. Dobře navržený databázový systém zabezpečí konzistenci dat pomocí vhodných pravidel. Zajištění této věrohodnosti dat znamená právě to, že data vyhovují jistým omezujícím podmínkám, které pro ně byly definovány. Některá pravidla totiž souvisí se strukturou dat, jiná s transakcemi, které databázový stroj provádí nad daty. Existují však také pravidla, která se týkají dat, ale nikoliv jejich integrity. Jsou to pravidla související s jejich bezpečnosti. Především pravidla přístupu k datům některé zdroje (RIORDAN, R., 1999) uvádí i pravidla dostupnosti (po jakou dobu budou uživatelé moci k datům přistupovat a jak se budou data zálohovat. Jde samozřejmě o pravidla aplikační související s jejich implementací, tedy s tvorbou kódu ne s datovou integritou. Bezpečnost dat je charakterizována na několika úrovních a to na sdílené úrovni (kdy je jedno heslo pro celou databázi) a na úrovni uživatelů (kdy má heslo každý uživatel nebo jejich skupina, resp. jeho role) podle oprávnění, která k jednotlivým datům mají. Toto je organizační záležitost, je to součástí podnikových pravidel, ale jednotlivá specifika patří do směrnic a pokynů v podniku. Jednotlivé postupy jsou v rukou správců systému, konzultantů nebo implementátorů. V některých případech se doporučuje tzv. audit, tedy požadavek na kontrolu toho, co vlastně jednotliví uživatelé v sytému vykonávají. V příspěvku se zaměřuji na pravidla, která souvisí s věrohodností dat tedy s datovou integritou.
VÝSLEDKY A DISKUSIA Přestože se datová integrita definuje pro několik různě podrobných úrovní, nebudeme se těmito úrovněmi zabývat. Vybereme několik typů pravidel podle CASE nástroje (např. PowerDesigner firmy SYBASE) a pokusíme se přesně formulovat jednotlivá pravidla v logistických procesech. Pravidlo typu Definice: Jde o všechna pravidla, která nějakým způsobem popisují a specifikují podnikové artefakty. Například:
Logistika je systém tvorby, řízení, regulace a vlastního průběhu materiálového toku, energií, informací a přemísťování služeb.
Riziko je pravděpodobnost jakéhokoliv výsledku, odlišného od výsledku očekávaného.
Pravidlo typu Fakt: Jde o specifičtější stanovení, většinou typické pro daný podnik nebo problémovou doménu. Takových pravidel je podle mého názoru nejvíce. Například:
Rozeznáváme tři základní funkce skladování. Je to Přesun produktů, Uskladnění produktů a Přenos informací.
Proces Přesun zboží obsahuje následující 4 aktivity: Příjem zboží, transfer nebo ukládání zboží, Kompletace zboží podle objednávky, Překládka zboží a Expedice zboží.
Zákazník může být označen jako Přednostní (Zlatá karta), pokud v posledním roce jeho platby přesahovaly částku 100tis. Kč a v každém měsíci provedl alespoň jeden nákup.
Materiál lze klasifikovat podle směrnice číslo X Klasifikace manipulačních prostředků.
Každá objednávka musí mít přiřazeno specifické číslo v rámci podniku jedinečné.
Pravidlo typu Výpočet (vzorec): Jde o veškeré matematické operace a výpočty, které se v rámci podnikových procesů provádějí a zabezpečují, často souvisejí s pravidlem Faktu. Například:
(Za každý ujetý Km s nebezpečným nákladem musí zákazník připlatit částku 5 Kč je pravidlo Faktu.) Cena za dopravu = Počet km krát (normální cena + příplatek za nebezpečný náklad)
(Za každý den prodlení platí zákazník penále půl procenta z celkové částky faktury včetně ceny za dopravu je pravidlo Faktu.) Penále= (Cena zboží + Cena za dopravu) krát Počet dní prodlení krát 0,002 Pravidlo Omezení:
Jde o veškeré omezující parametry a podmínky pro to, aby bylo něco vykonáno určitým způsobem. Například:
Pokud zákazník není označen jako Přednostní, nemůže dostat peněžní poukázku v hodnotě 1000 Kč.
Pokud zákazník neobjedná v jednom roce ani jednu zakázku, nemá nárok na přidělení speciálního vánočního bonusu.
Jak tato pravidla modelujeme resp. implementujeme?
Mnohé z prvního typu pravidla tj. Definice lze implementovat rovnou v datovém slovníku u databáze. Ostatní prostě implementovat nelze. V každém informačním systému se předpokládá alespoň povrchní znalost prostředí a jednotlivé definice tedy každý uživatel zná. Touto formou se prezentují spíše pravidla, která nelze algoritmizovat. Pokud je definice typu „zákazník je osoba, která se prokáže občanským průkazem nebo pasem“, není to definice, ale fakt (druhý typ pravidel), který lze kontrolovat a omezit v informačním systému. Například tak, že povinně se u záznamu zákazníka musí vyplnit buď číslo OP nebo číslo pasu. Pravidlo faktu lze kontrolovat. Jde tedy o správné a opravdové pravidlo, protože jen ta pravidla, jejichž dodržení je kontrolovatelné a existuje sankce za jeho neplnění, jsou podniková pravidla v tomto smyslu. Definice sem patří jen pro úplnost, její dodržování je samozřejmě nesmyslné.
Pravidla typu Fakt tedy druhá skupina pravidel se řeší pomocí atributů a jejich datových typů včetně délky, přesnosti, povinnosti, defaultní hodnoty nebo maximální a minimální hodnoty. V neposlední řadě se řeší přípustné hodnoty, většinou pomocí číselníků. Kardinalita vztahu mezi entitami je pravidlo, které udává, kolik instancí, nebo záznamů jedné entity může nebo musí být asociováno s kolika záznamy nebo instancemi jiné entity. Lze říci, že všechny vztahy v diagramu entit jsou deklarativní pravidla entity, specifikující své záznamy. Ty vztahy, které nejsou znázorněny v diagramu entit, nejsou v podniku povoleny (další pravidlo). Asociace v diagramu entity tedy může být nějakým pravidlem omezena. Podíváme-li se na pravidla uvedená výše, lze je implementovat takto. Pravidlo funkcí skladování lze implementovat atributem Typ skladování, který má tři přípustné hodnoty, podobně aktivity, tam spíše doporučuji zvolit atribut Stav zboží, Stav objednávky. Pravidlo přednostního zákazníka by muselo být řešeno procedurálně, tedy naprogramováním výpočtu plateb za celý rok a kontroly, zda zákazník s určitým IČO má každý měsíc alespoň jeden záznam o nákupu. Implementace by se nedala řešit jako součást integritního omezení. Pravidlo jednoznačného čísla objednávky vyřešíme například pomocí příkazu COUNT nebo SET, tedy pomocí základních příkazů systému řízení báze dat.
Pravidlo typu Výpočet vždycky implementujeme jako proceduru podle zadání v modelu nebo v požadavku od uživatele. Atributy v entitách mohou být odvozeny nebo spočítány podle nějakého vzorce z jiných atributů té stejné entity, nebo jiné entity, může se pracovat s koeficienty, měnovými kurzy, s matematickými operátory, logickými operátory, funkcemi a podobně.
Pravidlo typu Omezení je přesně typ pravidla, který se týká kontrol a podle mého názoru může být takové pravidlo i faktem, hranice je velmi nevýrazná.
Možností je více a tento příspěvek je samozřejmě nemůže všechny zahrnout. Není také účelem našeho zkoumání zabývat se zde úplnými detaily a situacemi z praxe. Vše je v rukou analytika, návrháře a programátora. Na začátku však musí být v hlavní roli člověk z podniku, ať už manažer nebo koncový uživatel, který pravidla zná, ví, že to jsou pravidla, umí je precizně specifikovat a vyjádřit a posléze i klasifikovat. Za velký problém považuji to, že právě podniky tato pravidla nevedou ve zvláštní evidenci, jsou roztříštěna do jednotlivých směrnic a dokumentů a při vývoji informačních systémů a tvorbě funkčních a konečně i nefunkčních požadavků se na mnohá pravidla zapomene, naopak se v průběhu vývoje informačního systému vyskytnou ještě další pravidla a souvislosti, které původně nejsou za pravidla považovány a chybí řád, systém a jejich komplexní a cílená správa. ZÁVER Už zcela minimální a nezávazná spolupráce s praxí ukazuje, že převést desítky směrnic, předpisů, průvodců a dalších dokumentů, vůbec není jednoduché. Zatímco hlavním cílem našeho výzkumu bylo vyvinout prostředek pro správu všech pravidel v podniku, ze kterých by se pak vyčlenila pravidla, jejichž implementace je nepotřebná nebo nemožná, ukazuje se, že na začátku toho všeho musí být lidský a neinformatický přístup. Začít analýzu podnikovými pravidly a oddělit ta aplikační od ostatních, je však v rukou nejen analytiků. Převést aplikační pravidla do integritních omezení a procedur již nebude tak složité, protože znalosti a dovednosti z těchto ryze informatických oblastí jsou vyzkoušené a osvědčené. Jinou otázkou je správa podnikových pravidel za účelem sofistikovaného řízení podnikových znalostí a získání konkurenční výhody ve svém odvětví jak uvádí (RÁBOVÁ, I., MATIÁŠOVÁ, A. 2007): ANOTÁCIA Základem všech znalostí v podniku jsou podniková pravidla. Pravidla jsou základním podnikovým konceptem a v poslední době nabývají stále většího významu. Řídí cíle, zdroje i procesy v podniku. Jsou obsažena nejen v podnikových směrnicích, pokynech a příkazech ale také ve vládních zákonech a nařízeních. Mnoho z nich se implementuje do podpůrného aplikačního software. Článek pojednává o klasifikaci podnikových pravidel vzhledem k potřebě jejich automatizace. Těmto aplikačním pravidlům se příspěvek věnuje především, ale zabývá se také pravidly, která automatizovat nelze. Autorka se zde zamýšlí nad problematikou správného modelování a specifikace pravidel, které musí být do aplikace zahrnuty a to nejen z pohledu jejich nastavení a implementace, ale také kontroly jejich dodržování. Problematika bude zasazena do rámce logistických procesů a jejich analytických modelů odkud budou čerpány některé příklady, na nichž budou úvahy prováděny. KĽÚČOVÉ SLOVÁ Podnikové procesy, podniková pravidla, aplikační pravidla, logistika, integritní omezení, datová integrita.
LITERATÚRA [1] ERRIKSON, H., PENKER, M. (2000): Business Modeling with UML, Wiley Publishing, 2000, ISBN 0-471-29551-5 [2] RÁBOVÁ, I. (2001): Podniková pravidla - významný koncept podnikového modelování, Sborník konference Medzinárodné vedecké dni 2001, Nitra, 2001, str. 729–735, ISBN 807137-868-2 [3] RÁBOVÁ, I. (2005): Formalizace základních podnikových znalostí a UML, Acta Universitatis, 2005, sv. LIII, sv. 6, s. 165–171, ISSN 1211-8516 [4] RÁBOVÁ, I. (2007): Formální logika podnikových pravidel, Acta Universitatis, 2007, ISSN 1211-8516 [5] RÁBOVÁ, I., MATIÁŠOVÁ, A. (2007): Řízení podnikových pravidel, teorie a praxe, Sborník abstraktů, Informatika XXI, Luhačovice, 2007, ISBN 978-80-7302-131-3, str. 47. [6] RIORDAN, R. (1999): Vytváříme relační databázové aplikace, ComputerPress, 1999, ISBN 80-7226-360-9 [7] (ROSS, 2006): http://www.brcommunity.com/index.php [cit. 20.10.2005]
KONTAKTNÁ ADRESA Doc. Ing. Ivana Rábová,PhD. Ústav informatiky, Mendelova zemědělská a lesnická univerzita v Brně, Zemědělská 1, 613 00 Brno, ČR e-mail:
[email protected]
Recenzoval(a): doc. Ing. Klára HENNYEYOVÁ, CSc.