case/4/0, verze 4.3
case/4/0, verze 4.3 Dokumentace nástroje case/4/0, verze 4.3. se skládá z sedmi základních částí:
1. 2. 3. 4. 5. 6. 7.
Popis ovládání case/4/0 Popis metod, které case/4/0 používá Slovník používaných pojmů Rozdíly verze 4.3 oproti verzi 4.2 Upgrade systému z 4.2 na 4.3 Popis instalace case/4/0 Vzorového systému CD3 (na přiložené disketě)
Kapitola Ovládání case/4/0 je tématicky členěna podle hlavního menu aplikace a jednotlivých typů diagramů. Kapitola Metody case/4/0 je členěna podle Životního cyklu projektu. Používané pojmy jsou vysvětleny v lexikonu na konci příručky. Poznámky: 1. Tato příručka není doslovným překladem originální německé dokumentace. 2. Lokalizovaná verze case/4/0, verze 4.3 nemá český help, můžete použít help německý nebo anglický. Aby se Vámi zvolený helpový soubor automaticky volal, je třeba zkopírovat a přejmenovat soubory, ve kterých je uložen – pokud budete chtít používat anglický help, přejmenujte soubory c43M1 na c43M42 (metodický help), c43w1 na c43w42 (help k ovládání case/4/0) a scrp1na scrp42 (help ke Screen Painteru). Pokud německý, přejmenujte c43M49 na c43M42 (metodický help), c43w49 na c43w42 (help k ovládání case/4/0) a scrp49 na scrp42 (help ke Screen Painteru). 3. Zatím se nám bohužel nepodařilo přeložit do češtiny část Add-ins. Z české verze case se Vám budou spouštět add-ins nástroje ve verzi německé, pokud je budete chtít použít anglicky, použijte, prosím, anglickou verzi case/4/0 (Menu Volby, Nastavení, Uživatelsky definovaná nastavení, Kód země 1)
1
case/4/0, verze 4.3
1.Ovládání case/4/0....................................................................................................................5 1.1.Obecné vlastnosti case/4/0..........................................................................................................5 Otevření diagramu............................................................................................................................................5 Zvětšit/Zmenšit.................................................................................................................................................5 Kontextové menu..............................................................................................................................................5 Klávesnice.........................................................................................................................................................5 Seznam (listbox)...............................................................................................................................................5 Vybrat/Vytvořit prvek seznamu.......................................................................................................................5 Určit název........................................................................................................................................................6 Interní editor case/4/0.......................................................................................................................................6
Operace se stránkami ve stromových strukturách.........................................................................7 Vymaž zlom.......................................................................................................................................8 Operace s diagramy..........................................................................................................................8 Název okna........................................................................................................................................................8 Lišta ikon..........................................................................................................................................................8 Posunovat element/podstrom............................................................................................................................8 Vložit element ..................................................................................................................................................8 Vlastnosti diagramu (elementu).......................................................................................................................9 Zrušit diagram (element)..................................................................................................................................9 Vyměnit diagram..............................................................................................................................................9 Tisk diagramu...................................................................................................................................................9 Verze...............................................................................................................................................................10 Kopírovat diagram..........................................................................................................................................10 Text.................................................................................................................................................................11 Vše zavřít........................................................................................................................................................11 Zavřít diagram.................................................................................................................................................11
Akce vyvolávané na dvojité kliknutí (double click):....................................................................11 Dvojité kliknutí ve funkční struktuře.............................................................................................................12 Dvojité kliknutí v informačních tocích..........................................................................................................12 Dvojité kliknutí diagramu stavů a přechodů..................................................................................................12 Dvojité kliknutí v datových strukturách.........................................................................................................13 Dvojité kliknutí v ER-modelu........................................................................................................................13 Dvojité kliknutí v globálním datovém modelu..............................................................................................13 Dvojité kliknutí v modulové struktuře (C).....................................................................................................13 Dvojité kliknutí v modulové struktuře (COBOL)..........................................................................................14 Dvojité kliknutí v modulové struktuře (Visual Basic)...................................................................................14 Dvojité kliknutí v modulové struktuře (JAVA).............................................................................................14 Dvojité kliknutí v modulové struktuře (Internet)...........................................................................................15 Dvojité kliknutí v typové struktuře................................................................................................................15 Dvojité kliknutí v relačním modelu...............................................................................................................15 Dvojité kliknutí v struktuře dokumentace......................................................................................................16
1.2.Hlavní menu case/4/0, verze 4.3...............................................................................................17 Přihlášení k case/4/0.......................................................................................................................................17 Založení nového systému...............................................................................................................................17
1.2.1.Systém.....................................................................................................................................18 Otevřít.............................................................................................................................................................18 Kopie...............................................................................................................................................................18 Vyhodnotit .....................................................................................................................................................18 Exportovat ......................................................................................................................................................19 Importovat ......................................................................................................................................................19 Zálohovat .......................................................................................................................................................21 Obnovit ...........................................................................................................................................................21 Konfigurace.....................................................................................................................................................21 Ukončit............................................................................................................................................................22
1.2.2.Analýza systému ....................................................................................................................23 Funkční struktury............................................................................................................................................23 Informační toky...............................................................................................................................................23 Datové struktury..............................................................................................................................................25 2
case/4/0, verze 4.3 ER-model........................................................................................................................................................25 Globální datový model...................................................................................................................................25 Animace..........................................................................................................................................................26 Analýza systému/Centrální katalogy..............................................................................................................27 Katalog datových elementů............................................................................................................................27 Katalog událostí..............................................................................................................................................28 Katalog materiálů............................................................................................................................................29
1.2.3.Návrh systému........................................................................................................................30 Modulové struktury.........................................................................................................................................30 Typové struktury.............................................................................................................................................30 Relační model.................................................................................................................................................30 Databáze..........................................................................................................................................................30 Generovací funkce..........................................................................................................................................31 Dialogbox vlastnosti.......................................................................................................................................31 Typy souborů..................................................................................................................................................32
1.2.4.Dokumentace..........................................................................................................................33 1.2.5.Volby.......................................................................................................................................34 Fonty...............................................................................................................................................................34 Elementy Dialogu/Menu.................................................................................................................................34 Textové šablony..............................................................................................................................................35 Nastavení.........................................................................................................................................................35 Identifikátory...................................................................................................................................................35
1.2.6.Add-Ins...................................................................................................................................35 case/4/0 manager............................................................................................................................................36 Web Publisher.................................................................................................................................................38 Add-In Manager..............................................................................................................................................38
1.2.7.Help menu..............................................................................................................................39 Index................................................................................................................................................................39 Info..................................................................................................................................................................39
2.Metodika case/4/0.................................................................................................................40 2.1.Životní cyklus projektu............................................................................................................40 2.1.1. Studie proveditelnosti (předběžná analýza, průzkum)......................................................41 2.1.2. Analýza systému....................................................................................................................42 2.1.3. Návrh (konstrukce, design) systému...................................................................................42 2.1.4. Hardwarová studie...............................................................................................................43 2.1.5. Implementace........................................................................................................................43 2.1.6. Příprava realizace, zavedení a provoz.................................................................................43 2.2.Analýza systému (System Analysis, SA) .................................................................................45 2.2.1. Datový model.........................................................................................................................46 2.2.2. Funkční model......................................................................................................................46 2.2.3. Model řízení...........................................................................................................................46 2.2.4. Model struktury programového systému ...........................................................................46 2.2.5. Data Dictionary ....................................................................................................................46 2.3.Analýza systému v case/4/0......................................................................................................47 2.3.1. Funkční analýza....................................................................................................................47 Funkční struktury (FSD).................................................................................................................................47 Informační toky (IFD)....................................................................................................................................50
2.3.2. Datová analýza a model dat.................................................................................................52 Entity-Relationship model (ERM).................................................................................................................54 3
case/4/0, verze 4.3 Datové struktury (DSD)..................................................................................................................................58 Datové elementy ............................................................................................................................................59
2.3.3. Model řízení...........................................................................................................................60 Diagram stavů a přechodů (STD)...................................................................................................................60
2.3.4. Konzistenční pravidla pro spolupráci nástrojů SA/SD.....................................................61 2.4.Návrh systému...........................................................................................................................62 2.4.1. Základní pojmy.....................................................................................................................62 2.4.2. Části návrhu systému...........................................................................................................63 Design Asistent...............................................................................................................................................63 Relační model.................................................................................................................................................66 Typová struktura.............................................................................................................................................68 Modulová struktura.........................................................................................................................................68
2.4.3. Návrh software......................................................................................................................69 Příprava na návrh software s case/4/0............................................................................................................69 Návrh a rozvoj architektury software.............................................................................................................70 Detailní specifikace........................................................................................................................................71
2.5.Implementace v case/4/0...........................................................................................................72
3.Slovník pojmů.......................................................................................................................73 4.Novinky verze 4.3..................................................................................................................85
Screen Painter.................................................................................................................................................85 Web Publisher................................................................................................................................................85 Podpora jazyka Java ......................................................................................................................................85 Aktivní serverové stránky.............................................................................................................................85 Modelování v globálním datovém modelu....................................................................................................85 Efektivnější technologie pro ukládání textů..................................................................................................85 Nastavení systému..........................................................................................................................................85 Procedury Check a Optimize..........................................................................................................................86 Dokumentace metamodelu case/4/0...............................................................................................................86 OLE Automation rozhraní..............................................................................................................................86
5.Upgrade systémů z verze 4.2 na 4.3......................................................................................87 6.Popis instalace case/4/0 .......................................................................................................88 6.1.Spuštění instalace case/4/0........................................................................................................88 6.2.Lokální instalace case/4/0.........................................................................................................88 6.3.Distribuovaná instalace............................................................................................................88 6.4.Instalace krok za krokem.........................................................................................................89
4
case/4/0, verze 4.3
1.
Ovládání case/4/0
1.1. Obecné vlastnosti case/4/0 Tato kapitola bude rozdělena na dvě hlavní části. To, co je pro ovládání všech diagramů v case/4/0 shodné, bude popsáno v první části. V druhé části této kapitoly potom projdeme práci v case/4/0 od spuštění programu a výběru systému přes celé hlavní menu case/4/0 a jednotlivé funkce a typy diagramů, které case/4/0 nabízí.
Otevření diagramu
Po spuštění case/4/0 se Vám objeví jeho hlavní menu. Z lišty, na které jsou zobrazeny jednotlivé typy diagramů, se kterými můžete v case/4/0 pracovat, si zvolte ten typ, s kterým budete chtít dále pracovat. Dostanete seznam všech existujících diagramů daného typu. Můžete si buď vybrat existující diagram a stisknout tlačítko O.K, nebo stisknout tlačítko „Nový“ a zadat jméno nového diagramu daného typu.
Zvětšit/Zmenšit Touto volbou v systémovém menu Windows okna můžete stupňovitě měnit velikost zobrazení diagramu (Zoom). Pro každý stupeň lze určit font, který se má použít a také jeho velikost. K tomu slouží volba Fonty pod menu Volby.
Kontextové menu
case/4/0 verze 4.3 nabízí ke každému elementu kontextově orientované menu. Místo obvyklého statického menu po stisknutí pravého tlačítka myši dostanete dynamickou nabídku operací, které souvisejí vždy jen s vybraným elementem. Např. volba Jako funkce v IFD... se objeví jen u výkonných funkcí, ale ne u jiných funkcí. Přizpůsobování menu závisí také na tom, jakým způsobem lze daný element modifikovat: např. pokud je funkce částí podstromu, objeví se v kontextovém menu volba Odpojit - jinak ne. Klikněte pravým tlačítkem myši na libovolný element nebo na pozadí diagramu. Objeví se kontextové menu, ve kterém budou pouze ty volby, které jsou použitelné pro element, resp. diagram. Vyberte požadovanou volbu. Když chcete menu opustit bez provedení nějaké operace, klikněte levým tlačítkem myši na plochu diagramu anebo stlačte klávesu ESC.
Klávesnice case/4/0 je téměř nemožné ovládat bez myši. Přesto existují situace, kdy je lepší použít klávesnici. case/4/0 reaguje na jednotlivé klávesy takto: Mezera: Otevře kontextové menu elementu, na který ukazuje myš anebo kontextové menu diagramu, pokud myš neukazuje na žádný element. Kurzorové šipky: Pohybují kurzorem myši po ploše diagramu. Ve stromových diagramech kurzor přeskakuje po jednotlivých elementech; pro síťové diagramy můžete volbou Volby/Nastavení určit, o kolik pixelů se má kurzor pohnout na jedno stlačení klávesy. Enter: Když máte zapnutý některý z nástrojů z lišty ikon, můžete vkládat nové elementy na aktuální pozici kurzoru pomocí Enter. ESC: Zavře aktuální menu nebo dialogbox. V dialogboxu odpovídá klávese ESC tlačítko "Zruš". I když dialogbox nemá tlačítko "Zruš" (např. v katalogu dat), účinek ESC je stejný.
Seznam (listbox)
V různých situacích nabízí case/4/0 řadu možností, z kterých si máte vybrat. Používá na to prvek, který označujeme jako seznam nebo jako listbox. Vyberte ze seznamu požadovaný element pomocí klávesnice nebo myší. OK: Klikněte na toto tlačítko, když chcete potvrdit výběr. Cancel: Klikněte na toto tlačítko, tím zrušíte výběr.
Vybrat/Vytvořit prvek seznamu
Některé listboxy jsou doplněny i o možnost vytvořit nový prvek, který v listboxu ještě není. 5
case/4/0, verze 4.3 OK: Klikněte na toto tlačítko, když chcete potvrdit výběr. Nový: Klikněte na toto tlačítko, když chcete definovat nový název. Otevře se další dialogbox, ve kterém můžete zadat nový název. Cancel: Klikněte na toto tlačítko, tím zrušíte Váš příkaz.
Určit název
Při vkládání nových elementů do diagramů bude case/4/0 požadovat zadání označení pro element. Zadejte nový název. Můžete použít až 4 řádky po 12-ti znacích. Při víceřádkových názvech zalomí case/4/0 text na první možné mezeře nebo po 12. znaku.
Interní editor case/4/0
case/4/0 používá kromě MS - Wordu také interní editor pro psaní kódu. Tento editor je používán v různých částech case/4/0 v různém kontextu, nicméně jeho ovládání je vždy stejné. Má zabudovánu syntaktickou kontrolu. Při vyvolání tohoto editoru se objeví okno, v jehož horní části je menu textového editoru a pod ním ploca s textem. Nyní projdeme jednotlivé části menu:
Kód Import: Objeví se dialogové okno, které umožní označit soubor, který se má vložit do místa, kde je kurzor. Export: Objeví se dialogové okno, které umožní vložit jméno souboru, kam se má text z obrazovky uložit. Tisk: vytiskne aktuální obrazovku Uložit: Uloží aktuální stav kódu Uložit a ukončit: Uloží aktuální stav kódu a ukončí práci v textovém editoru case/4/0 Konec: Ukončí práci v textovém editoru case/4/0 bez uložení provedených změn
Editace
Všechny funkce u této volby jsou shodné jako u běžných textových editorů pro Windows, proto si myslíme, že by bylo zbytečné je zde obsáhle popisovat. Proto popíšeme pouze vyhledávání a nahrazování textových řetězců:
Najít
Zadejte hledaný textový řetězec a určete jaké volby mají být aktivní: Najdi: Zadejte textový řetězec, který chcete najít. Rozlišovat malá/velká písmena: Aktivujte tento checkbox, když se při hledání mají rozlišovat malá a velká písmena. Standardně je tato volba vypnutá. Hledání dozadu: Aktivujte tento checkbox, když chcete prohledávat text od aktuální pozice kurzoru směrem k začátku textu. Standardně se hledá směrem ke konci textu. Tento dialogbox můžete aktivovat také pomocí funkční klávesy F7.
Nahradit Zadejte hledaný textový řetězec spolu s nahrazujícím a určete, jaké volby mají být aktivní: Najdi: Zadejte textový řetězec, který chcete nahradit jiným. Nahraď: Zadejte textový řetězec, který má nahradit nalezený textový řetězec. Rozlišovat malá/velká písmena: Aktivujte tento checkbox, když se při hledání mají rozlišovat malá a velká písmena. Standardně je tato volba vypnutá. Nahraď všechno: Aktivujte tento checkbox, když chcete po nalezení řetězce pokračovat dál až do konce souboru. Standardně hledání končí po nalezení prvního výskytu řetězce nebo po dosažení konce textu. Nahrazení potvrdit: Aktivujte tento checkbox, když chcete, aby se case/4/0 vždy před nahrazením zeptal, zda chcete změnu vykonat. Standardně se nahrazuje bez potvrzování. Hledání dozadu: Aktivujte tento checkbox, když chcete prohledávat text od aktuální pozice kurzoru směrem k začátku textu. Standardně se hledá směrem ke konci textu. Tento dialogbox můžete aktivovat také pomocí funkční klávesy F8.
Extra Jdi na řádku…
vyhledá v aktuálním textu zadaný řádek
Kód asistent
Kód asistent umožňuje při psaní vlastního kódu využít v case/4/0 výsledků provádění existujících vyhodnocovacích a generovacích funkcí a vkládat jejich výsledky do otevřeného vlastního okna. Jazyk: Vyberte jazyk, ve kterém byla napsána funkce, kterou chcete využít. Můžete vybrat libovolný jazyk bez ohledu na to, v jakém jazyce vytváříte novou funkci.
6
case/4/0, verze 4.3 Komponenta: Zadejte, pro jaké typy elementů a generovací funkce vytváříte kód. Obsah seznamu generovacích funkcí se mění podle vybrané komponenty. Generovací funkce: tento seznam obsahuje všechny funkce, které existují v daném systému pro komponenty vybraného jazyka. Vyberte funkci, která se má provést. Provést: Provede požadovanou funkci a zapíše výsledky do dialogového pole nadepsaného „Generované řádky“. Pokud funkce potřebuje ke svému provedení parametry, objeví se dialogové okno, ve kterém je třeba tyto parametry zadat. Vložit: Vloží označené výsledky zobrazené v poli „vygenerované řádky“ do textu Vaší vytvářené funkce na místo kurzoru. Dejte pozor na to, abyste neměli kurzor v oblasti, do které nesmít zapisovat – potom by se nepřeneslo nic. Poznámka: Kód asistent nevkládá reference na funkce, ale pouze statický text výsledku použití funkce.
Možnosti V tomto menu se nastavuje, zda se mají uplatnit pravidla nastavená pro automatické odsazování řádek a zda se automaticky pracuje ve vkládacím nebo přepisovacím režimu.
Operace se stránkami ve stromových strukturách Přehled stránek Tímto povelem vytvoříte seznam všech stránek existujícího diagramu. Vyberte z kontextového menu diagramu volbu Přehled stránek. Dostanete dialogbox se seznamem všech existujících stránek diagramu. Vyberte ze seznamu stránku, kterou chcete vidět a klikněte na OK. case/4/0 ukáže vybranou stránku.
Vložit stránku
Tímto povelem můžete v diagramu vytvořit stránku. Zjemnění funkce nebo datové položky se přemístí na další stránku diagramu. Vyberte z kontextového menu elementu volbu Vložit stránku. case/4/0 přemístí na další stránku diagramu vybrané elementy a označí element na původním místě číslem nové stránky. Stromový diagram může mít maximálně 20 stránek.
Vyměnit stránku
Tímto povelem můžete přepínat mezi elementem a jeho stránkou. Vyberte z kontextového menu elementu volbu Vyměnit stránku. case/4/0 ukáže příslušnou stránku diagramu. Alternativa: Rychleji se můžete přepínat mezi stránkami pomocí dvojitého kliknutí na kořenový element stránky, resp. na element s referencí na stránku.
Vtáhnout stránku Tímto povelem můžete zrušit referenci na stránku a vtáhnout elementy ze stránky pod element v aktuálním diagramu. Vyberte z kontextového menu elementu volbu Vtáhnout stránku. case/4/0 zruší stránku a vloží její obsah do aktuálního diagramu. V případě, že struktura na stránce je tak rozvětvená, že pro ni není místo v aktuálním diagramu, dostanete odpovídající hlášení. Stránka zůstane nezměněna.
Vymazat stránku
Tímto povelem můžete vymazat stránku spolu s elementem. Vyberte v kontextovém menu elementu volbu Vymazat stránku. Objeví se varovné hlášení. Potvrďte povel tlačítkem OK, pokud chcete stránku skutečně vymazat. Element bude vymazán spolu s jeho stránkou. Vymažou se všechny elementy definované na stránce a samotný element s referencí na stránku. Pokud elementy mají reference v jiných diagramech, case/4/0 vymaže tyto reference také.
Spojit elementy ve stromové struktuře
Po vložení elementů do stromové struktury je můžete spolu spojit. Tím vyjádříte souvislosti mezi elementy na různých hierarchických úrovních systému. Vyberte z kontextového menu diagramu volbu Spojit. Myší vyberte element, který chcete připojit. Zopakujte to pro druhý element. Mezi vybranými elementy vznikne spojovací linie. Alternativa: Vyberte z lišty ikon na levém okraji diagramu symbol pro Spojit.Vyberte myší element, který chcete připojit. Zopakujte to pro druhý element. Mezi vybranými elementy vynikne spojovací linie a Vy můžete ihned začít spojovat další elementy. Když spojíte funkci s rodičovskou funkcí, bude funkce přidána také do odpovídajícího diagramu informačních toků. Ve stromových strukturách case/4/0 může existovat spojení jen mezi sousedními hierarchickými úrovněmi. Spojení na jedné úrovni a křižující se spojení nejsou možná.
7
case/4/0, verze 4.3
Zrušit spojení ve stromové struktuře
Tímto povelem můžete zrušit spojení mezi elementy stromové struktury. Vyberte z kontextového menu elementu volbu Odpojit. case/4/0 vymaže spojení mezi elementy. Povel oddělí spojení k nadřízenému elementu, ale spojení na elementy na nižší úrovni neporuší. Pokud existují pro rodičovskou funkci informační toky, bude odpojovaná dětská funkce z diagramu informačních toků odstraněna. Elementy v modulové struktuře, jejichž spojení k rodičovské funkci zrušíte, se nebudou brát do úvahy při generování kódu.
Vymaž zlom
Tímto povelem můžete odstranit zalomení toku nebo vztahu. Pokud Vám nevyhovuje přímé spojení mezi dvěma elementy v síťovém diagramu, "chyťte" myší linii toku nebo vztahu a posunujte ji. Když pustíte tlačítko myši, case/4/0 tok zalomí. Pokud chcete spojení mezi dvěma elementy v síťovém diagramu zase narovnat, ukažte myší na zlom a klikněte pravým tlačítkem myši. Objeví se volba Vymaž zlom a spojení se napřímí.
Operace s diagramy Název okna V názvu každého diagramového okna najdete následující údaje: Cesta/Název systému.csf/zkratka typu diagramu/název diagramu
Lišta ikon
Lišta ikon se nachází na levém okraji každého diagramu v case/4/0. Pro každý typ diagramu jsou zde nabídnuty jiné elementy a jiné možnosti jejich spojování. Kliknutím na některou ikonu můžete vkládat do diagramu elementy vybraného typu anebo vytvářet spojení mezi nimi. Lišta ikon Vám ulehčí práci: Když vyberete nástroj z lišty ikon, můžete vkládat do diagramu elementy daného typu tak dlouho, dokud nevyberete jiný nástroj nebo šipku. Poznámka: Volbu Vložit element v kontextovém menu musíte aktivovat vždy znovu po vložení jednoho elementu. Když otevřete diagram nebo se přepnete do jiného otevřeného diagramu, je aktivní symbol šipka. V tomto režimu můžete posunovat elementy - klikněte na element a nechte tlačítko stlačené. Tím jste vlastně "uchopili" element a můžete jím pohybovat po ploše diagramu. V závislosti na typu diagramu a typu elementu můžete dvojitým kliknutím na element vyvolat jiný diagram; např. kliknutím na řídící funkci v diagramu informačních toků vyvoláte diagram stavů a přechodů pro tuto funkci.
Posunovat element/podstrom
Pokud chcete posunovat elementy, klikněte levým tlačítkem myši na element a držte tlačítko, teď můžete s elementem posunovat po ploše diagramu. Pokud je element spojen s jinými elementy, posunují se i spojení. Pokud chcete posunovat celý podstrom, držte stlačenou klávesu CTRL a podobně jako v prvním případě klikněte na kořen podstromu a držte tlačítko myši stlačené. Teď můžete podstrom posunovat po ploše diagramu. Když se pokusíte přemístit element nebo podstrom na místo, které je obsazeno jiným elementem anebo je málo místa pro větve podstromu, dostanete varovné hlášení a element zůstane na svém původním místě. Pokud přesunete element, který je částí podstromu, na nižší hierarchickou úroveň, zruší se spojení mezi přesunutým elementem a rodičovským elementem.
Vložit element Při tvorbě a rozšiřování systému musíte v systémové analýze a návrhu systému do různých typů diagramů vkládat elementy a spojovat je. Elementy přitom reprezentují relevantní skutečnosti nebo procesy na různé úrovni zkoumané věcné oblasti. Vyberte z kontextového menu diagramu volbu Vložit element. Vyberte v další úrovni menu požadovaný element. V následujícím dialogboxu zadejte jeho název a vlastnosti. Element se vloží na to místo v diagramu, kde jste klikli při vyvolání menu. 8
case/4/0, verze 4.3
Alternativa: Vyberte z lišty ikon na levém okraji aktivního diagramu symbol pro požadovaný element. Kurzor myši změní tvar na symbol podobný vybranému elementu. Ukažte na místo, kam chcete vložit nový element a klikněte levým tlačítkem myši. Element se vloží do diagramu a Vy můžete ihned vložit další element tohoto typu.
Vlastnosti diagramu (elementu) V okně, které se zobrazí po vybrání volby „Vlastnosti“ v libovolném diagramu, můžete vidět a opravovat různá obecná nastavení elementu nebo diagramu, který jste měli vybraný. Postup: Na volné ploše diagramu nebo na nějakém vybraném elementu stiskněte pravé tlačítko myši (podle toho budete pracovat buď s celým diagramem nebo s vybraným elementem) a vyberte v menu volbu „Vlastnosti“. Vidíte a můžete měnit Název diagramu (elementu), Stavu diagramu (elementu), Zodpovědného uživatele a vkládat textový komentář. Možné stavy diagramu (elementu) se definují v menu Add-ins/Manager/ Typy objektů. Jednotliví uživatelé se definují v menu Add-ins/Manager/Uživatelé.
Zrušit diagram (element) Vyberete-li si v kontextovém menu volbu Zrušit, case/4/0 se Vás zeptá, zda má vybraný diagram (element) skutečně vymazat nebo ne. Po potvrzení jsou informace o daném diagramu (a všech jeho elementech) či elementu z databáze case/4/0 nenávratně ztraceny. Vzhledem k tomu, že zrušení jednoho elementu může mít poměrně rozsáhlé důsledky i v jiných diagramech, doporučujeme používat tuto funkci velmi uvážlivě. Například při zrušení funkce v diagramu funkčních struktur přijdete o celý diagram informačních toků, pokud k této funkci existuje. O tom, které další akce může zrušení nějakého elementu vyvolat, jste vždy informování ve varování, které case/4/0 vypíše.
Vyměnit diagram Tímto povelem se můžete přepnout do jiného otevřeného diagramu. Vyberte z kontextového menu diagramu volbu Vyměnit. Objeví se dialogbox, ve kterém bude seznam všech momentálně otevřených diagramů. Vyberte ze seznamu ten diagram, který chcete vidět a klikněte na OK. case/4/0 přesune vybraný diagram do popředí a aktivuje ho. Když chcete pracovat s diagramem, který ještě není otevřen, vyberte v hlavním menu case/4/0 požadovaný typ diagramu a potom dostanete seznam všech existujících diagramů daného typu.
Tisk diagramu
Tímto povelem můžete vytisknout aktuální diagram. Vyberte z kontextového menu diagramu volbu Vytisknout diagram a v následujícím dialogboxu zadejte požadované charakteristiky tisku. case/4/0 vytiskne diagram, přitom použije aktuální nastavení tiskárny. case/4/0 tiskne jen tu část diagramu, která je zobrazena. Když chcete tisknout stránky stromové struktury, musíte nejdřív každou stránku zobrazit a potom samostatně vytisknout. Vytiskne se pouze grafická část diagramu. Když chcete vytisknout i text, vyberte v kontextovém menu požadovaného elementu volbu Text/Edituj a vytiskněte text z MS - Wordu.
Dialogbox: Tisk diagramu
Určete, jakým způsobem se má vytisknout aktuální diagram: Tiskárna: Zde se objeví tiskárna, která je nastavená jako standardní. Když chcete změnit nastavení tiskárny, klikněte na tlačítko Tiskárna. Stránky: Zde je číslo, které udává, na kolik stránek se při tisku rozdělí aktuální diagram. Tuto hodnotu můžete ovlivnit tak, že pod Velikost nastavíte volbu Zoom a potom kliknete na Vzhled : V dalším dialogboxu pak můžete nastavit požadovaný počet stránek. Název: Zadejte název diagramu. Jako předvolba se objeví označení kořene diagramu. Orámovat: Vyberte tuto volbu, pokud chcete mít okolo diagramu rámeček. Následující tři volby jsou potřebné, když chcete diagram tisknout na více stránek: Značky rozstřihnutí: Když vyberete tuto volbu, na každé stránce budou značky a přerušované čáry, podle kterých budete stříhat stránku při lepení diagramu. Značky slepení: Vyberte tuto volbu, pokud chcete mít na stránce značku (krátkou svislou čárku), která označí místo, kde se napojuje další stránka. Číslovat stránky: Když je tato volba aktivní, bude v patě každé stránky označení stránky v rámci tisku jednoho diagramu. Pomůže Vám to při montáži celého diagramu. Když bude např. stránka při tisku rozdělená na 4 horizontální stránky, na první stránce najdete "Strana 1.1 z 1x4". Podle značek pak přilepíte stránku "Strana 1.2 z 1x4" atd. Zobrazení: Určete, jak má case/4/0 při tisku pracovat s barvami: 9
case/4/0, verze 4.3 barevně: Vytiskne diagram tak, že barvy bude na černobílé tiskárně simulovat pomocí odstínů šedi, na barevné vytiskne diagram barevně. černo-bíle: Vytiskne diagram v černobílém provedení. Velikost: Určete dimenze tisku: Normal: Vytiskne diagram ve standardní velikosti (ne jednu stranu velikosti A4). Zoom: Rozloží diagram na plochu, kterou definujete tak, že zadáte počet stran na šířku. Tiskni: Spustí tisk s aktuálním nastavením. Vzhled: Otevře dialogbox, kde uvidíte, jak bude vypadat vytisknutý diagram (preview). Zde můžete určit, zda se má diagram v ploše vycentrovat a jak velká má být plocha pro tisk. Tiskárna: Otevře dialogbox, ve kterém najdete parametry tisku (např. typ tiskárny, formát papíru atd.) a můžete je nastavit podle potřeby. Vždy se vytiskne ta část diagramu, kterou vidíte. Když potřebujete tisknout stránky diagramu, musíte se nejprve přepnout na stránku a vytisknout ji samostatně.
Verze
case/4/0 umožňuje svým uživatelům spravovat verze objektů (celých diagramů nebo jejich jednotlivých elementů), kterými mohou být: FSD, DSD, ERM, Modulové struktury, Typové struktury, Relační model, datové elementy, Moduly vyhodnocovacích a generovacích funkcí. Verze je určitý stav ve vývoji systému, který je třeba uchovat a který nemůže být později měněn. Ovšem pokud někdy během vývoje systému dojde ke stavu, kdy je třeba se vrátit ke starší verzi (protože další vývoj šel nepravou cestou), je možné využít volbu Obnovit verzi a vytvořit nový systém, který bude odpovídat stavu z minulosti, který potřebujete. Při vybrání této volby z kontextového menu můžete dostat informace o stávajících verzích, rušit je nebo definovat verze nové.
Dialogbox Verze
Seznam existujících verzí: v listboxu se Vám zobrazí seznam již definovaných verzí daného diagramu (elementu). Jméno zvolené verze se objeví v horním poli. Pokud chcete vytvořit novou verzi, zapište její název právě do tohoto pole a stiskněte tlačítko Enter. V tomto poli také můžete vybranou verzi přejmenovat. Poznámka: pokud objekt, který chcete verzovat, obsahuje nějaké reference na jiné objekty, tyto reference jsou také uloženy a jsou součástí verze. Nový: Pokud jste do vstupního pole napsali jméno nové verze, po stisknutí tohoto tlačítka bude nová verze uložena. Změň: Pokud jste změnili ve vstupním poli jméno verze, kterou jste předtím vybrali v listboxu, po stisknutí tohoto tlačítka se verze přejmenuje. Zruš: Zruší verzi označenou a vybranou v listboxu. Verze, která je součástí zmrazené konfigurace nejde zrušit. Popis: V další úrovni menu klikněte na Editovat, Kopírovat nebo Vymazat. case/4/0 potom nastartuje MS Word a umožní Vám uložit textový popis k dané verzi. Obnovit: Otevře se dialog, ve kterém můžete zadat jméno pro nový systém case/4/0, do kterého se zkopírují data, která jsou uložena ve verzi, kterou máte vybranou v listboxu. V novém systému se také automaticky založí uživatelé Administrator a Guest a uživatelé zodpovědní za objekty, které jsou ve verzi. Komentář: ke každé verzi můžete vložit textový komentář. case/4/0 automaticky udržuje a zobrazuje informace o tom kdy a kým byla daná verze vytvořena.
Kopírovat diagram Tímto povelem můžete zkopírovat do schránky aktuální diagram nebo texty zapsané u elementů. Ze schránky pak můžete vložit data do jiné MS Windows aplikace. Vyberte v kontextovém menu diagramu volbu Zkopírovat. V následující úrovni menu klikněte na volbu Grafiku nebo Text (podle toho, co chcete kopírovat) a case/4/0 zkopíruje odpovídající data do schránky. case/4/0 v této verzi nejenže kopíruje data do schránky, ale dokáže také vytvořit referenci na data, která jsou potom přístupná přes OLE spojení. Když v cílové aplikaci vložíte data pomocí volby Vložit jinak, vloží se diagram technikou OLE. Když použijete Vložit, vloží se diagram jen jako grafika, bez spojení na diagram v case/4/0.
Kopírovat diagram (grafickou část)
Tímto povelem můžete zkopírovat do schránky grafickou část diagramu pomocí OLE. Klikněte na Grafiku, case/4/0 zkopíruje do schránky grafickou část diagramu. case/4/0 kopíruje jenom tak velkou část diagramu, aby se tam vešly všechny elementy z diagramu. Grafika diagramu se do schránky vloží ve formátu WMF (Windows-Metafile-Format). 10
case/4/0, verze 4.3
Kopírovat texty
Tímto povelem můžete do schránky zkopírovat všechny texty, které jsou zapsány u elementů diagramu. Klikněte Text. case/4/0 zkopíruje do schránky odpovídající data.
Text Tímto povelem můžete ke každému elementu case/4/0 přidat komentář. case/4/0 používá jako textový editor produkt MS – Word verze 6.0c nebo 7.0a nebo vyšší. Spojení mezi case/4/0 a MS - Word se realizuje přes OLE-rozhraní. Texty, které k jednotlivým elementům vložíte, se ukládají do databáze case/4/0. Vyberte v kontextovém menu diagramu nebo elementu volbu Text. V další úrovni menu klikněte na Editovat, Kopírovat nebo Vymazat. case/4/0 potom nastartuje MS - Word. Když zavřete MS - Word pomocí ALT-F4 nebo dvojitým kliknutím na tlačítko systémového menu, case/4/0 označí element, ke kterému jste přidali text, symbolem knížky. Pokud k elementu už nějaký text existuje, objeví se v editoru a můžete jej editovat nebo vymazat. Změny se projeví ve všech diagramech, kde je element použit.
Editovat Tímto povelem můžete přidat text k vybranému elementu nebo k celému diagramu. Po odkliknutí této volby case/4/0 spustí MS - Word; v případě, že MS - Word byl spuštěn už dříve, bude jen aktivován. MS - Word teď obsahuje místo běžného dokumentu speciální textový objekt, který se sice zpracovává jako normální text, ale ukládá se ve speciálním formátu do databáze case/4/0. Po skončení editace textu vyberte v menu MS - Wordu pod Soubor volbu Zavřít a návrat do …, tím se text uloží a Vy se vrátíte zpátky do case/4/0. Text lze aktualizovat pouze tehdy, pokud není zpracováván jiným uživatelem. V čase editace textu je element označen symbolem rozevřené knihy. Jakmile je zpracování textu ukončeno, označení elementu se změní na symbol zavřené knihy. Pojmem "zpracování textu" označujeme stav, kdy je textový objekt otevřen v MS - Wordu. Ve víceuživatelském prostředí to může být provedeno i na jiné než na Vaší pracovní stanici. Přitom nezáleží na tom, zda byl objekt otevřen k editaci nebo jen za účelem čtení textu.
Kopírovat Tento povel umožňuje převzít text od jednoho elementu a jeho kopii přidat k jinému elementu. Když vyberete tuto volbu, zkopíruje se do schránky text, který je zapsán u elementu. Teď můžete vybrat jiný element, vyvolat kontextové menu, vybrat volbu Text/Edituj. Spustí se MS - Word a sem můžete pomocí Vložit nebo Vložit jinak pod menu Úpravy převzít text ze schránky. case/4/0 nekopíruje do schránky samotný text, ale referenci na text, který je pak dosažitelný přes OLE spojení. Když kopírujete data pomocí Vložit jinak, vloží se text jako OLE spojení (link). Když použijete Vložit, vloží se jen kopie textu, bez spojení na zdroj dat.
Vymazat Tímto povelem můžete vymazat text, který patří k elementu. Po odkliknutí této volby se objeví kontrolní otázka. Pokud vymazání potvrdíte, case/4/0 vymaže text u elementu a odstraní symbol knížky. Vymazat text je možné pouze tehdy, pokud je u elementu symbol zavřené knížky.
Vše zavřít
Tímto povelem zavřete všechna otevřená okna s diagramy. Vyberte z kontextového menu diagramu volbu Vše zavřít. case/4/0 zavře všechna otevřená okna s diagramy a aktivuje hlavní menu.
Zavřít diagram
Tímto povelem zavřete aktuální okno s diagramem. Vyberte z kontextového menu diagramu volbu Zavřít. case/4/0 zavře aktuální okno a aktivuje okno, které bylo aktivní předtím. Pokud není otevřeno žádné další okno, aktivuje hlavní menu. Na rozdíl od většiny Windows aplikací nedává case/4/0 žádnou kontrolní otázku, když chcete diagram zavřít. Každá změna v diagramu se totiž ukládá do databáze ihned po jejím provedení, žádná operace na uložení výsledků při skončení práce není tedy potřebná.
Akce vyvolávané na dvojité kliknutí (double click): V každém kontextovém menu diagramu nebo elementu je jedna funkce, která se aktivuje také pomocí dvojitého kliknutí na element nebo plochu diagramu. 11
case/4/0, verze 4.3
Dvojité kliknutí ve funkční struktuře Dvojité kliknutí na...
aktivuje funkci:
Plocha diagramu
Vlastnosti diagramu
Kořen
Pohled na informační toky
Výkonná funkce - se stránkou
Pohled na informační toky Vyměnit stránku
Dialogová funkce
Vlastnosti funkce
Řídící funkce
Vlastnosti funkce
Reference - na stavební kámen - na funkční strukturu
Pohled na stavební kámen Pohled na funkční strukturu
Blok - se stránkou
Vlastnosti bloku Vyměnit stránku
Podmínka
Vlastnosti podmínky
Dvojité kliknutí v informačních tocích Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu -u stavebního kamene
Přejít na vyšší úroveň Stavební kámen v informačních tocích
Výkonná funkce
Zjemnit
Reference na stavební kámen
Zjemnit
Dialogová funkce
Definice dialogu
Řídící funkce
Diagram stavů a přechodů
Port - u stavebního kamene
Rozložit Port Vlastnosti
Datová schránka, Datový tok
Pohled na datovou strukturu
Materiálová schránka, Materiálový tok
Pohled na definici materiálu
Událostní schránka, Událostní tok
Pohled na definici události
Entita, tok k entitě
Pohled na entitu v ER-modelu
Externí rozhraní
Vlastnosti
Interní rozhraní
Funkce v informačních tocích
Bod zlomu linie
Vymazat zlom
Dvojité kliknutí diagramu stavů a přechodů Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu
Pohled na informační toky
Stav
Změnit stav
Přechod stavu
Přiřadit akci
Počáteční stav
Změnit 12
case/4/0, verze 4.3 Bod zlomu linie přechodu
Vymazat zlom
Dvojité kliknutí v datových strukturách Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu
Jako Part v DSD ...
Kořen - odkazované datové struktury
Jako Part v DSD ...
Datová položka - se stránkou
Přiřadit datový element Vyměnit stránku
Reference - na datovou strukturu - na entitu
Pohled na datovou strukturu Přiřadit jinou entitu
Atributová položka
Přiřadit jiný atribut
Podmínka
Změnit
Dvojité kliknutí v ER-modelu Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu
Vložit entitu
Entita
Atributy entity
Kardinalita vztahu
Změnit
Hrana
Změnit
Bod zlomu hrany
Vymazat zlom
Dvojité kliknutí v globálním datovém modelu Dvojité kliknutí na .... Entita
aktivuje funkci: Atributy entity
Bod zlomu hrany
Vymazat zlom
Dvojité kliknutí v modulové struktuře (C) Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu
Výstupní soubory (Předloha modulu: Vytvořit modul)
Kořen
Výstupní soubory (Předloha modulu: Vytvořit modul)
Strukturní element - se stránkou
Vlastnosti Vyměnit stránku
Výkonná funkce
Code
Řídící funkce
Code
Dialogová funkce
Definice dialogu
Definice typu
Code
Proměnná
Code
Reference na - importovaný program
Pohled na strukturu modulu 13
case/4/0, verze 4.3 - typovou strukturu - relaci Element předlohy
Code Code Změnit (v předlohách)
Dvojité kliknutí v modulové struktuře (COBOL) Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu
Výstupní soubory (Předloha modulu: Vytvořit modul)
Kořen
Výstupní soubory (Předloha modulu: Vytvořit modul)
Strukturní element - se stránkou
Vlastnosti Vyměnit stránku
Entry
Code
Section
Code
Výkonná funkce
Code
Řídící funkce
Code
Dialogová funkce
Definice dialogu
Proměnná
Code
Interní program
Code
Reference na - typovou strukturu - relaci - importovaný program
Code Code Pohled na strukturu modulu
Element předlohy
Změnit (v předlohách modulu)
Dvojité kliknutí v modulové struktuře (Visual Basic) Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu
Výstupní soubory (Předloha modulu: Vytvořit modul)
Kořen
Výstupní soubory (Předloha modulu: Vytvořit modul)
Strukturní element - se stránkou
Vlastnosti Vyměnit stránku
Procedura
Code
Výkonná funkce
Code
Řídící funkce
Code
Dialogová funkce
Definice dialogu
Definice typu
Code
Proměnná
Code
Reference na - importovaný program - typovou strukturu - relaci Element předlohy
Pohled na strukturu modulu Code Code Změnit (v předlohách)
Dvojité kliknutí v modulové struktuře (JAVA) Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu
Výstupní soubory (Předloha modulu: Vytvořit modul) 14
case/4/0, verze 4.3 Kořen
Výstupní soubory (Předloha modulu: Vytvořit modul)
Strukturní element - se stránkou
Vlastnosti Vyměnit stránku
Procedura
Code
Dialogová funkce
Definice dialogu
Definice typu
Code
Proměnná
Code
Reference na - importovaný program - typovou strukturu - relaci Element předlohy
Pohled na strukturu modulu Code Code Změnit (v předlohách)
Dvojité kliknutí v modulové struktuře (Internet) Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu
Výstupní soubory (Předloha modulu: Vytvořit modul)
Kořen
Výstupní soubory (Předloha modulu: Vytvořit modul)
Strukturní element - se stránkou
Vlastnosti Vyměnit stránku
Procedura
Code
Dialogová funkce
Definice dialogu
Definice typu
Code
Proměnná
Code
Reference na - importovaný program - typovou strukturu - relaci Element předlohy
Pohled na strukturu modulu Code Code Změnit (v předlohách)
Dvojité kliknutí v typové struktuře Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu
Jako Part v typových strukturách ...
Kořen - odkazované typové struktury
Jako Part v typových strukturách...
Typová položka - se stránkou
Přiřadit datový element Vyměnit stránku
Reference - na datovou strukturu - na relaci
Pohled na typovou strukturu Přiřadit jinou relaci
Atributová položka Podmínka
Přiřadit jiný atribut Vlastnosti
Dvojité kliknutí v relačním modelu Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu
Vložit relaci
15
case/4/0, verze 4.3 Relace
Zpracovat atributy
Vztah resp. jeho popis
Zpracovat atributy
Hrana
Zpracovat atributy
Bod zlomu hrany
Vymazat zlom
Dvojité kliknutí v struktuře dokumentace Dvojité kliknutí na ....
aktivuje funkci:
Plocha diagramu
Vytisknout dokument
Kořen
Edituj text
Textový element - se stránkou
Edituj text Vyměnit stránku
Reference na jinou strukturu dokumentace
Pohled na strukturu dokumentace
Strukturní element
(žádná funkce)
16
case/4/0, verze 4.3
1.2. Hlavní menu case/4/0, verze 4.3 Přihlášení k case/4/0 Po dvojitém kliknutí na ikonu case/4/0 se zobrazí následující obrazovka:
Uživatel zadá své uživatelské jméno a heslo (uživatel Administrator se přihlašuje zatím bez hesla – později je dobré si ho nadefinovat a přihlašovat se s heslem) a vybere si v seznamu, který mu case/4/0 nabídne, systém, se kterým bude chtít pracovat. V tomto seznamu je posledních deset systémů case/4/0, s kterými se pracovalo. Pokud se bude chtít uživatel přihlásit k systému, který v seznamu není uveden, použije tlačítko „Další“, které mu umožní zadat cestu k systému, s kterým chce pracovat. Systém je možno otevřít buď pouze pro čtení (zatržením čtverečku „Read only“) nebo pro úplný přístup. Pokud bylo uživatelské jméno a heslo zadáno správně, objeví se hlavní menu case/4/0, v. 4.3. Při zadávání jména a hesla se rozlišují malá a velká písmena.
Založení nového systému Založení nového systému umožňuje tlačítko „Nový“. case/4/0 ukládá systémy do souborů, které jsou pojmenované stejně jako systém. Tzn., že pro název systému platí stejná omezení jako pro názvy souborů ve Windows. Název systému se zadává bez rozšíření za tečkou, to se doplní automaticky. Založím-li tedy systém CD3, automaticky se vytvoří soubor CD3.csf. V dalším kroku se case/4/0 zeptá na databázový jazyk nově zakládaného systému. Uživatel musí zvolit jednu z nabízených možností. Podle toho, který jazyk zvolí, budou v systému platit konvence pro vytváření technických názvů elementů. Pokud jednou pro systém databázový jazyk zvolíte, není ho již možné měnit. Poznámka: Zde zadaný databázový jazyk nemá nic společného s nastavením jazykové verze case/4/0 Poznámka: Není možné vzájemně exportovat a importovat soubory, které mají odlišný databázový jazyk Pokud se tedy podaří správně se přihlásit a vybrat si systém, zobrazí se hlavní menu case/4/0, které vypadá následovně:
Nyní projdeme postupně všechny možnosti, které hlavní menu nabízí:
17
case/4/0, verze 4.3
1.2.1. Systém Otevřít Tato volba Vám umožní vybrat pro práci jiný systém než ten, se kterým jste pracovali do této chvíle. Opět vyberete jméno systému a můžete zadat i své jiné uživatelské jméno a heslo. Po stisknutí tlačítka o.k. se nový systém stane aktivním, diagramy ze systému předchozího už nejsou přístupné.
Kopie Tato volba umožňuje vytvoření nového systému. Nový systém se ale nevytvoří prázdný, ale naplní se informacemi, které obsahuje kopírovaný systém. Postup: Musíte mít aktivní systém, který chcete kopírovat (např. CD2). Zvolíte funkci „Kopírovat“ v menu „Systém“ a zadáte adresář, ve kterém se má nový systém vytvořit a název nového systému (v našem případě CD3). case/4/0 vytvoří tento systém a zkopíruje do něj všechny diagramy a další informace ze systému CD2. Oba systémy budou identické.
Vyhodnotit
Touto volbou můžete vytvořit sestavy, ve kterých budete mít informace o všech elementech v systému a o vztazích mezi nimi. Po výběru této volby se objeví dialogbox, ve kterém bude seznam modulů a pro vybraný modul se zobrazí seznam jeho vyhodnocovacích funkcí. V dialogboxu máte možnost tyto funkce spouštět, editovat atd. Funkce jsou logicky sdružovány v modulech. Modul je tedy množina vyhodnocovacích funkcí, které k sobě logicky patří a vzájemně se také obvykle volají. Takže například v modulu funkcí, který se jmenuje ER Model, je 6 funkcí, které umožňují různé výpisy informací o datových modelech, jednotlivých entitách a atributech. Uživatel má možnost funkce v modulech přesouvat, aktualizovat, přidávat do modulu funkce nové či je odstraňovat. Vyhodnocovací funkce vytvoří výstup v ASCII nebo RTF (Rich-Text-Format) formátu. Jaký formát se použije, závisí na tom, jaký zadáte název výstupního souboru "RTF" bude RTF-soubor, každý jiný bude ASCII soubor.
Dialogbox: Vyhodnotit systém Zde můžete spravovat vyhodnocovací funkce, kterými se vytvářejí sestavy pro libovolné elementy, typy diagramů nebo pro celé systémy: List-box Moduly slouží pro výběr modulu, do kterého patří funkce, kterou chce uživatel použít Listbox Seznam funkcí - obsahuje seznam všech vyhodnocovacích funkcí ve vybraném modulu. Vyberte funkci, kterou chcete použít Tlačítko moduly - po jeho stisknutí se objeví další dialogbox, který umožňuje pracovat s jednotlivými moduly vyhodnocovacích funkcí.
Dialogbox: Moduly vyhodnocovacích funkcí
Stav: stejně jako pro všechny objekty, s kterými se v case/4/0 může pracovat i pro moduly vyhodnocovacích funkcí mohou být nadefinovány stavy, ve kterých se modul během svého života v systému může nacházet. Toto okno umožňuje definovat, v jakém z možných stavů se právě vybraný modul nachází. Přípustné stavy pro moduly je možné definovat v menu add-ins/manager/typy objektů Zodpovědný uživatel: každému modulu by měl být přiřazen člověk, který je za něj zodpovědný Tlačítko ... umožní vypsat informace o uživatelích. Definice uživatelů je přístupná v menu addins/manager/uživatelé Listbox Výběr modulu umožňuje vybrat modul, jehož vlastnosti chci vidět či definovat Název vybraného modulu se zobrazuje i ve vstupním poli nad listboxem, kde se modul vybírá. Nový: ve vstupním poli se napíše název nového modulu a stisknutím tlačítka nový se tento modul vytvoří. Změnit: ve vstupním poli je možné i změnit název vybraného modulu. Změna se provede stisknutím tlačítka změnit. Vymazat: vymaže se vybraný modul i všechny funkce, které obsahoval Verze: moduly vyhodnocovacích funkcí mohou být verzovány (viz kapitola 1.1. Obecné vlastnosti case/4/0, Verze) Komentář: k modulu vyhodnocovacích funkcí může být vložen vysvětlující komentář. Vložit: Můžete zapsat název nové vyhodnocovací funkce.
Dialogbox Vložit:
Jméno: Do tohoto pole se vkládá jméno nově definované funkce Komponenta: Říká, jaký typ elementů bude moci být touto funkcí vyhodnocován. Toto nastavení se dá definovat pouze při vkládání nové funkce, není možno ho později změnit. 18
case/4/0, verze 4.3 OLE-vyhodnocení: Aktivujte tento checkbox, když se má označená vyhodnocovací funkce objevit v seznamu funkcí v MS - Wordu po volbě Tools/Vyhodnocení case/4/0. Popis: k modulu vyhodnocovacích funkcí může být vložen vysvětlující komentář, popisující účel, způsob práce a produktivitu dané funkce. Tento text se zobrazuje v dialogovém okně Vyhodnocovací funkce. Vlastnosti: zobrazí se vlastnosti vybrané funkce
Dialogbox vlastnosti Jméno: V tomto poli můžete změnit jméno vyhodnocovací funkce Komponenta: Říká, jaký typ elementů je touto funkcí vyhodnocován. Toto nastavení se dá definovat pouze při definici nové funkce, nyní už není možné ho měnit. OLE-vyhodnocení: Aktivujte tento checkbox, když se má označená vyhodnocovací funkce objevit v seznamu funkcí v MS - Wordu po volbě Tools/Vyhodnocení case/4/0. Popis: k modulu vyhodnocovacích funkcí může být vložen vysvětlující komentář, popisující účel, způsob práce a produktivitu dané funkce. Tento text se zobrazuje v dialogovém okně Vyhodnocovací funkce. Přesuň: přesune funkci z jednoho modulu do jiného Vymazat: Vymaže funkci, která je označená v listboxu. Edituj: Otevře editor kódu pro editaci funkce, označené v listboxu. Proveď: spustí označenou vyhodnocovací funkci. Pro editaci a vytváření nových vyhodnocovacích funkcí musíte nejdřív zvládnout strukturu databáze case/4/0 a také generovací jazyk.
Exportovat
Touto volbou můžete vyčlenit část systému do nového systému. Po výběru této volby se objeví dialogbox, ve kterém můžete definovat část systému, kterou chcete exportovat. Pokud Vámi vybrané elementy netvoří konzistentní systém, case/4/0 při exportu automaticky přenese do nového systému chybějící elementy. Když vyberete exportovaný systém jako aktivní a budete chtít zpracovávat tyto elementy, budete dostávat varovná hlášení, že tyto elementy byly vygenerovány nástrojem v průběhu importu. Jakmile však provedete s elementem nějakou změnu, hlášení se již objevovat nebude. Exportovaný systém bude uložen do aktuálního adresáře.
Dialogbox: Exportovat systém
Tento dialogbox Vám umožňuje určit, z kterých komponent aktuálního systému chcete vytvořit nový systém: Komponenty: Vyberte ze seznamu postupně typy elementů, které chcete exportovat (například datové modely a funkční struktury). Název: Pro každý zvolený typ elementu označte ty elementy v seznamu existujících elementů daného typu, které chcete exportovat (to znamená, že nejprve mám v části okna Komponenty vybraný Datový model a označím všechny datové modely, které chci exportovat. Potom označím v Komponentách Funkční strukturu a vyberu ty funkční struktury, které chci exportovat). Pokud vyberete element, který obsahuje reference na jiný element, bude referencovaný element označen zkratkou "< REF". Exportovat verze: Pokud bude tento checkbox aktivní, budou se od vybraných elementů exportovat všechny existující verze Vybrat systém: Zadejte název systému, do kterého se mají označené elementy exportovat. Název musí být odlišný od názvů existujících systémů; v opačném případě case/4/0 neprovede export. Všechno: Označí všechny elementy v aktuálním seznamu. Nic: Zruší Váš výběr. V aktuálním seznamu pak nebude označen žádný element. Pokud Vámi vybrané elementy netvoří konzistentní systém, case/4/0 při exportu automaticky vygeneruje chybějící elementy jako prázdné struktury. Když vyberete exportovaný systém jako aktivní a budete chtít zpracovávat tyto doplněné elementy, budete dostávat varovná hlášení. Jakmile však nějakou změnu provedete, hlášení se už u elementu objevovat nebude. Označování elementů probíhá kumulativně. Tzn., že můžete nejdřív vybrat elementy jednoho typu a potom elementy jiného typu. V exportovaném systému se pak objeví všechny vybrané elementy, nejen elementy z posledního seznamu. Tlačítka Všechno a Nic mají vždy účinek pouze na aktuální listbox. Po provedení exportu můžete vyexportovaný systém vybrat pomocí Systém/Vybrat.
Importovat
Touto volbou můžete integrovat jiný systém do aktuálního systému. Po výběru této volby se objeví dialogbox pro výběr systému. Označte systém, který má být importován. case/4/0 automaticky provádí celou řadu kontrol konzistence. Pokud některá z těchto kontrol dopadne špatně, dostanete o tom zprávu formou chybového hlášení. Daný problém musíte vyřešit opravou v importovaném systému a potom provést import znovu. Pokud proběhnou všechny kontroly bez problémů, case/4/0 Vám to 19
case/4/0, verze 4.3 oznámí a zeptá se Vás, zda má skutečně provést import. Po odsouhlasení bude importovaný systém vtažen do aktuálního systému. Pokud by se při importu měly přepsat nějaké elementy v aktuálním systému (například pokud budou existovat dvě entity stejného názvu, ale různých atributů), dostanete o tom zprávu. Na aktuálním nastavení systému bude záviset to, jak bude dále import pokračovat – viz dialogbox nastavení importu. S výjimkou výše popsané situace case/4/0 vždy importuje celý systém. Není možné vybrat na import jen některé části zdrojového systému.
Dialogbox Nastavení importu Toto okno Vám umožňuje definovat, je-li při importu primární systém aktuální, importovaný, nebo zda vždy bude dotázán uživatel na to, který systém má přednost – které údaje mají být zachovány.
Přepsat elementy
Dotaz na uživatele - pokud vyberete tuto možnost, tak se v případě stejného názvu daného elementu (např. entity) v obou systémech zobrazí dialog, ve kterém musí uživatel rozhodnout o tom, zda má být element z původního systému při importu přepsán definicí elementů z importovaného systému anebo ne. Tento postup dává uživateli maximální možnou kontrolu nad výsledkem, ale může být časově náročný Vždy přepsat - pokud budou mít dva elementy stejné jméno, bude při výběru této volby vždy element z původního systému přepsán elementem ze systému importovaného bez jakéhokoli upozornění. Tento postup zrychluje provádění importu, ale zvyšuje nebezpečí přepsání správných elementů špatnými. Protože import je nevratný, doporučuje se zálohování systému před provedením importu.
Globální datový model Tímto přepínačem definujete, jak se bude při importu chovat Globální datový model. Ponechat starý diagram V importovaném systému zůstane diagram z aktuálního systému a přidá se k němu diagram z nového systému Přepsat starý diagram Do systému se naimportuje Globální datový model z importovaného systému, diagram, který byl v aktuálním systému je vymazán. Sloučit diagramy Globální datové modely z obou systémů se sloučí.
Management uživatelů a stavů
Tímto nastavením určujete, jak se bude case/4/0 chovat při importu z hlediska definovaných přístupových práv uživatelů, stavů elementů, definovaných skupin uživatelů a podobně. Máte následující možnosti: Ponechat stará data - všechna data v systému, do kterého se importuje (to znamená právě aktuálního systému), zůstanou nezměněna. Administrační data importovaného systému se ignorují. Sloučit data - case/4/0 zkombinuje administrační data z obou systémů. To znamená: Data, která jsou navíc v systému, který se importuje, se přidají do systému, do kterého se importuje. Členství ve skupině, které má uživatel v systému, který se importuje, ale ne v systému, do kterého se importuje, jsou také přidána do systému, do kterého se importuje Přístupová práva, které má uživatel nebo skupina uživatelů v importovaném systému, ale ne v původním systému, se do původního systému přidávají. Přepsat stará data - všechna administrační data v systému, do kterého se importuje, jsou zrušena a přepsána daty z importovaného systému. Buďte opatrní na shodná jména - u uživatelů jde o login ID, u skupin a stavů o jejich jména. Je možné, že uživatelské jméno v systému, do kterého se importuje, bude přepsáno stejným ID, ke kterému bude ale patřit jiné heslo. To se může stát v případě, kdy v obou systémech bude stejné ID uživatele (např. PN), ale pokaždé bude patřit někomu jinému - jednou Pavle Novákové a podruhé Petru Novotnému. Pokud by tito uživatelé měli stejné ID, ale jiné heslo, jeden z nich se k novému systému nepřihlásí.
Uložit jako defaultní nastavení: Umožňuje uložit toto nastavení a použít ho implicitně ve všech importech (samozřejmě s možností změny).
Dialogbox: Vybrat elementy na přepsání Listbox: Označte jeden nebo více elementů, pro které povolujete přepsání při importu. Pokud neoznačíte nic, zůstanou příslušné komponenty cílového systému nezměněny. Vše: Označí všechny komponenty v listboxu. Žádný: Zruší všechny volby v listboxu. Tento dialogbox se může při importu objevit vícekrát - vždy, když case/4/0 bude potřebovat Vaše rozhodnutí o tom, zda cílový systém změnit nebo ne.
Chyba při importu 20
case/4/0, verze 4.3 case/4/0 při importu komponent zjistil, že to, co má být importováno, už v systému existuje. Až opustíte tento dialogbox, import bude přerušen. V seznamu vidíte, které importované komponenty mohou narušit integritu cílového systému. Udělejte si poznámku o těchto komponentách, změňte je v systému, který chcete importovat a spusťte Import znovu.
Zálohovat
Tímto povelem vytvoříte komprimovanou záložní kopii aktivního systému. Kromě toho můžete vymazat nebo přepsat existující záložní kopie. Po volbě Systém/Zálohovat vyberte cílový adresář a zadejte jméno souboru, do kterého chcete uložit záložní kopii. case/4/0 k souboru automaticky přidává koncovku .csb. Systém, se kterým pracuje alespoň jeden další uživatel, nelze zálohovat!
Obnovit
Pomocí Systém/Obnovit nahradíte aktuální systém záložní kopií, kterou jste předtím udělali pomocí Systém/Zálohovat. Po volbě Systém/Obnovit vyberte záložní kopii, kterou chcete použít. case/4/0 se Vás zeptá, zda chcete aktuální systém nahradit záložní kopií a poté zkopíruje systém ze záložní kopie do právě aktuálního systému. Operace Systém/Obnovit nespadá pod funkci Rollback. Rollback je mechanismus, který chrání konzistentnost systému při editaci. Při výpadku počítače je tedy třeba tuto funkci provést celou znovu.
Dialogbox: Obnovit systém Vyberte záložní kopii, z které chcete obnovit systém. case/4/0 nakopíruje vybranou kopii na místo aktuálního systému. Po potvrzení příkazu pokračuje obnovení systému bez dalších otázek. Pokud systém na disku ještě fyzicky existuje, bude přepsán.
Konfigurace
Tato volba v menu umožňuje vytvářet a měnit konfigurace. Konfigurace je skupina elementů z jednoho systému vybraných uživatelem. Při vytvoření nové konfigurace definujete pouze její jméno a později do ní přidáváte prvky, které potřebujete – konfigurace umožňuje dát dohromady prvky systému, které spolu vytvářejí nějaký logický celek nebo určitý milník ve vývoji systému.
Dialogbox Konfigurace Stav: stejně jako pro všechny objekty, s kterými se v case/4/0 může pracovat i pro konfigurace mohou být nadefinovány stavy, ve kterých se modul během svého života v systému může nacházet. Toto okno umožňuje definovat, v jakém z možných stavů se právě vybraná konfigurace nachází Zodpovědný uživatel: každé konfiguraci by měl být přiřazen člověk, který je za ni zodpovědný Tlačítko ... umožní vypsat informace o uživatelích Konfigurace: zde se objeví jméno konfigurace označené ve spodním listboxu. Tím se konfigurace zvolí a dále se s ní pracuje. Listbox Výběr konfigurace umožňuje vybrat konfiguraci, jejíž vlastnosti chci vidět či definovat. Název vybrané konfigurace se zobrazuje i ve vstupním poli nad listboxem, kde se konfigurace vybírá. Nová- ve vstupním poli se napíše název nové konfigurace a stisknutím tlačítka Nová se tato konfigurace vytvoří. Změnit: ve vstupním poli je možné i změnit název vybrané konfigurace. Změna se provede stisknutím tlačítka Změnit. Kopírovat: tato volba umožňuje vytvoření nové konfigurace. Nová konfigurace se vytvoří s názvem, který byl zadán ve vstupním poli a s těmi samými elementy, které obsahuje konfigurace označená v listboxu. Pokud provedete kopírování, zkopíruje se do nové konfigurace pouze seznam elementů, ale ne data, která reprezentují a to bez ohledu na to, je-li kopírovaná konfigurace zmrazená nebo ne. Vymazat: vymaže se vybraná konfigurace Editovat: Otevře se dialogbox, ve kterém jsou zobrazeny elementy, které patří do zvolené konfigurace.
Dialogbox Edituj konfiguraci Elementy konfigurace: v tomto listboxu jsou vypsány všechny elementy, které patří do zvolené konfigurace a jsou setříděny podle typu Přidat - otevře dialogové okno, které umožní přidat do konfigurace další elementy. Umožní vybrat množinu elementů různých typů a přiřadit je do konfigurace jediným stisknutím tlačítka o.k. Tato volba není aktivní, pokud je konfigurace zmražena.
Dialogbox Elementy konfigurace: Typ: vyberte typ elementu, jehož výskyty budete chtít vložit do zvolené konfigurace. Obsah spodního listboxu se mění podle vybraného typu elementu.
21
case/4/0, verze 4.3 Elementy: obsahuje seznam všech elementů zvoleného typu. Označte elementy, které chcete přiřadit do konfigurace Všechny: označí všechny elementy ze seznamu. Stisknutí tohoto tlačítka označí pouze elementy zvoleného typu, na označení elementů jiných typů nemá vliv. Žádný: Zruší označení všech elementů daného typu. Stisknutí tohoto tlačítka zruší označení pouze pro elementy zvoleného typu, na zrušení označení elementů jiných typů nemá vliv. Pokud vkládáte elementy do konfigurace, uložíte tam pouze propojení mezi elementem a konfigurací. Samotný datový obsah uložen není. Data jsou do konfigurace uložena v okamžiku jejího uložení (zmrazení). Při uložení konfigurace je tedy použita verze dat aktuální při jejím uložení, ne při vložení dat do konfigurace. Vymazat: Označené elementy odstraní ze zvolené konfigurace. Odstraní samozřejmě pouze odkaz na elementy, nikoli elementy samotné. Tato volba není aktivní, pokud je konfigurace zmražena. Popis: Zavolá textový editor připojený k case/4/0 (v našem případě MS-Word) a umožní napsat popis zvolené konfigurace. Po skončení práce v textovém editoru je vložený text uložený v repository case/4/0. Zmrazit: Uloží aktuální verzi všech elementů přiřazených do zvolené konfigurace a zároveň blokuje konfiguraci proti pozdějším změnám. Jediné, co je možné změnit, je jméno konfigurace. V závislosti na množství elementů v konfiguraci a jejich vzájemných referencích může tento proces trvat i delší dobu. Po zmrazení konfigurace je toto tlačítko deaktivováno a je naopak přístupné tlačítko Obnovit. Obnovit: Otevře se dialog, ve kterém můžete vložit jméno nového systému case/4/0, do kterého se zkopírují data, která obsahuje daná konfigurace. Nový systém vytvořený tímto způsobem může být integrován s jiným systémem funkcí Import nebo může sloužit jako výchozí bod pro další vývoj. Tato volba je k dispozici pouze v případě, když je vybraná konfigurace zmražena.
Ukončit Tímto povelem skončíte práci s case/4/0 a vrátíte se do Windows nebo do poslední spuštěné aplikace. Pokud máte otevřené nějaké diagramy, case/4/0 se zeptá, jestli skutečně chcete skončit. Protože case/4/0 každou změnu ihned ukládá do databáze, není potřebné před skončením práce provádět žádnou operaci uložení.
22
case/4/0, verze 4.3
1.2.2. Analýza systému V menu Analýza systému najdete příkazy pro vyvolání jednotlivých typů diagramů. Kromě toho zde najdete příkazy na správu centrálních katalogů (datového, materiálového a katalogu událostí), které se používají na mnoha místech case/4/0.
Funkční struktury Vyberete-li si typ diagramu funkční struktura, objeví se dialogové okno, ve kterém si máte možnost vybrat z existujících diagramů či založit diagram nový. Zaškrtnutím políčka určíte, zda jde o standardní diagram funkční struktury či o stavební kámen (rekurentní strukturu). Po vybrání diagramu se tento diagram zobrazí v aktuálním okně. Další informace týkající se ovládání diagramu Funkční struktury se dozvíte v kapitole 1.1. Obecné vlastnosti case/4/0 (Operace se stránkami ve stromových strukturách, Operace s diagramy). Informace o tom, jak používat tento diagram po metodické stránce naleznete v kapitole 2. Metodika case/4/0 (Analýza systému v case/4/0, Funkční analýza, Funkční struktury (FSD))
Informační toky Vyberete-li si typ diagramu Informační toky, objeví se dialogové okno, ve kterém si máte možnost vybrat z existujících diagramů či založit diagram nový. Po vybrání diagramu se tento diagram zobrazí v aktuálním okně. case/4/0 také nabízí možnost detailní specifikace funkcí na nejnižší úrovni – pro řídící funkce se vytváří STD diagram (diagram stavů a přechodů), pro dialogové funkce můžete navrhnout menu obrazovku či dialogovou obrazovku (vytvořit její prototyp) za pomoci Screen Painteru a pro procesní funkci vytváříte její specifikaci tím, že definujete, jaké vstupy potřebuje funkce k tomu, aby vytvořila definované výstupy.
Specifikace chování funkcí Výkonné funkce
Specifikací výkonné funkce definujete, jak se bude tato funkce chovat v průběhu animace.
Dialogbox Specifikace chování
Délka zpracování: Zde vložte číslo udávající kolik časových jednotek trvá zpracování funkce. Chování: Zvolte buď Standardní nebo Definované. Standardní: Funkce čeká na všechny definované vstupní toky a poté, co přijdou, generuje všechny výstupní toky. Definované: Výstupní toky se generují na základě pravidel zadaných uživatelem. Pokud vyberete tuto volbu, musíte tato pravidla zadat v editoru. Klikněte na Definice. Definice: Otevře se editor zdrojového kódu pro specifikaci chování funkce. Vstupní a výstupní toky příslušející k dané funkci jsou vypsány v editoru pseudokódem. Vy musíte zadat podmínku, která musí být splněna, aby funkce mohla vygenerovat zvolený výstupní tok. Příklad: IN1 : "Požadavek na zařazení from Zákazník(<---)" IN2 : "Jistota from Zákazník(<---)" IN3 : "Registrační karta from Zákazník(<---)" IN4 : "Účtenka from Vystavení účtenky(<---)" CREATE "Registrační karta to Zákazník(--->)" IF (IN3 AND IN2) CREATE "Jistota to Hotovost(--->)" IF (IN2 AND IN3) CREATE "Registrační karta to Vystavení účtenky(--->)" IF CREATE "Pridej zákazníka to Zákazník(--->)" IF IN1
23
case/4/0, verze 4.3
Řídící funkce
Specifikací řídících funkcí je diagram stavů a přechodů, který je možné ke každé řídící funkci vytvořit. Metodika tvorby těchto diagramů je popsaná v kapitole 2.2.3. Model řízení.
Dialogová funkce
Specifikovat dialogovou funkci můžete v okamžiku, kdy zvolíte v kontextovém menu této funkce volbu „Editovat dialog“. case/4/0 v tomto okamžiku spustí Screen Painter, který Vám umožní vytvořit prototyp dialogové nebo menu obrazovky. Do těchto obrazovek můžete začlenit i ActiveX prvky. Pokud později budete chtít generovat kód Vaší aplikace, generovací funkce vytvoří odpovídající zdrojový kód. Návrh dialogové obrazovky Pokud chcete umístit na Vámi definovanou obrazovku nový dialogový element, nejprve klikněte na odpovídající položku v horní liště (všimněte si, že pro pohodlnější práci jsou jednotlivé elementy sdruženy do 5ti skupin a prvky v liště se mění podle toho, kterou skupinu zvolíte) a poté klikněte myší na tu pozici na obrazovce, kde chcete mít tento element zobrazen. Pokud chcete na jednu obrazovku vložit více elementů stejného typu, postupujte stejně jako v předchozím bodě, pouze stiskněte tlačítku Ctrl. Dokud bude toto tlačítko stisknuté, můžete na obrazovku umisťovat elementy. Pokud chcete pracovat s více elementy najednou, nejprve označte tyto elementy myší tak, že stisknete levé tlačítko myši a namalujete kolem těchto elementů obdélník. Všechny elementy, které jste zahrnuli do výběru, se označí. Potom můžete vybrat v levé části obrazovky z lišty akci, která se má s vybranými elementy provést. V této liště jsou buttony, které umožní uložení a aktualizaci definice dialogu (např, umístění, velikost, vzdálenost a zarovnání zvolených dialogových elementů. Pozor – většina těchto buttonů je aktivní pouze když máte označený více než jeden dialogový element. Seznam a detailní popis těchto akcí je v helpu Screen Painteru v kapitole Toolbar Functions. Pokud chcete mít elementy umístěné na obrazovce pravidelně, aktivujte grid mód screen painteru tím, že najedete myší nad tabulku vlastností, stisknete pravé tlačítko myši, zvolíte volbu Guide Settings, Layout guides – vyberete možnost Grid. Pokud chcete měnit vlastnosti nějakého dialogového elementu, nejprve klikněte myší na tento element, v pravé části okna se objeví tabulka s jeho vlastnostmi, a ty můžete měnit. Vlastnosti ovlivňují vzhled a chování elementu. Název vlastnosti a její hodnota jsou zobrazeny v tabulce, která má dva sloupce – v levém je jméno vlastnosti a v pravém hodnota. Normálně jsou zobrazeny všechny vlastnosti zvoleného elementu. Můžete ovšem označit najednou více než jeden element a potom se v tabulce objeví pouze vlastnosti, které mají tyto elementy společné. To umožňuje jednoduše definovat jednu vlastnost shodně pro všechny elementy na obrazovce. Seznam a krátký popis všech vlastností, které je možné definovat pro každý element je v helpu Screen painteru (kapitola Properties Overview). Každý dialogový element má své vlastní kontextové menu, ve kterém najdete specifické příkazy pro ovládání tohoto elementu. Návrh menu obrazovky Pokud vytvoříte v case/4/0 novou dialogovou funkci a u této funkce zvolíte „Editovat dialog“, automaticky máte možnost vytvářet dialogovou obrazovku. Pokud chcete vytvořit menu obrazovku, musíte v tabulce vlastností této dialogové obrazovky vybrat vlastnost „Menu“, kliknout na …, které se aktivuje a teprve potom máte možnost definovat menu obrazovku. Menu, které vytvoříte, je částí základního dialogu, ze kterého jste Menu designer zavolali a bude uloženo společně s tímto dialogem. V módu preview pak můžete simulovat interakci mezi dialogovými elementy a jim přiřazenými menu. Menu obrazovky vytvoříte pomocí kontextového menu, které se objeví, když na pozadí Menu Designer kliknete pravým tlačítkem myši. Příkazem „Insert Item“ vytvoříte položku menu. Pokud na této položce opět stisknete pravé tlačítko myši, získáte kontextové menu pro práci s touto položkou. Na menu obrazovce můžete vytvářet položky různých úrovní. První úroveň znamená vytvoření hlavního, horizontálního menu. Druhá úroveň vytvoří pull-down menu, které se rozbalí, pokud uživatel klikne na volbu v hlavním menu. Položku druhé úrovně menu vytvoříte, pokud na položku z hlavního menu kliknete pravým tlačítkem myši a vyberete volbu „Insert Item“. Další úrovně vytvoříte obdobně. Tyto úrovně budou později v Menu Designeru zobrazeny pomocí stromové struktury. Pokud použijete preview mód, uvidíte menu, jako by ho viděl koncový uživatel Vaší aplikace. V Menu Designer můžete použít „drag and drop“ techniku k přesunu menu elementů mezi úrovněmi. Pomocí příkazu „Insert Separator“ můžete vytvořit čáru, která od sebe oddělí jednotlivé položky menu a tím sdružovat k sobě patřící položky do skupin. Položka menu „Check Marked“: tento typ položky můžete v menu vytvořit tak, že nějakou z položek menu označíte myší a potom v tabulce vlastností kliknete na řádek Checked a hodnotu False změníte na True (výběrem z nabízených hodnot)
24
case/4/0, verze 4.3 „Check mark“ u položky menu ukazuje aktuální stav funkce, řízené touto položkou menu: označené funkce jsou právě aktivní. Mohou být deaktivovány kliknutím myši. Tato vlastnost může být použita pouze u těch položek menu, které mohou nabývat pouze dvou hodnot (např. aktivní/neaktivní). Vlastnosti položek menu se zobrazují a definují vpravo v tabulce vlastností. Můžete zde položku například přejmenovat, definovat identifikátor této položky, nebo říci, zda položka je: · aktivní: Po výběru této položky se zobrazí submenu nebo se provede definovaná akce (standardní nastavení položky bez zásahu uživatele) · uzavřená: Tato položka se v Preview módu vůbec nezobrazuje (vlastnost Visible). · neaktivní: Neaktivní položku není možné vybrat, její barva značí, že funkce je deaktivovaná (vlastnost Enable). Přiřazení „callbacks“ Definováním callbacků uživatel říká, jak se systém zachová poté, co provede nějakou akci v dialogu. Screen painter nabízí mnoho předdefinovaných callbacků, které odpovídají různým možnostem chování uživatele – callbacky se definují pro ovládací prvky v dialogové obrazovce, pro položky menu atd.
Dialogbox Callbacks
Callbacks: V seznamu možných callbacků pro zvolený element vyberte ten, se kterým chcete dále pracovat. Funkce: V této části okna se zobrazuje seznam funkcí, které je možné přiřadit zvolenému callbacku. Jsou to ty funkce, které jsou v diagramu informačních toků spojeny s danou dialogovou funkcí nějakým tokem. V modulové struktuře můžete přiřadit všechny funkce z daného modulu, stejně tak jako veřejné funkce a všechny importované moduly. Přiřadit funkci: Po kliknutí na tuto volbu se vzájemně propojí prvky označené v obou seznamech (callback s funkcí). Pokud jsou zvolené prvky již nějak přiřazené, je tato volba neaktivní. Přiřadit kód: Tuto volbu vyberte v případě, že chcete ke callbacku raději než funkci přiřadit nějaký kód. Poté, co vyberete tuto volbu máte možnost vytvářet nebo editovat kód. Pokud je již callbacku přiřazena nějaká funkce, je tato volba neaktivní Zrušit: Zruší již vytvořená propojení. Zavřít: Po spuštění tohoto callbacku se dialog zavře.Tato možnost je dostupná pouze v analýze systému. Další informace týkající se ovládání diagramu Informačních toků se dozvíte v kapitole 1.1. Obecné vlastnosti case/4/0 (Operace s diagramy). Informace o tom, jak používat tento diagram po metodické stránce a popis vazeb na ostatní typy diagramů naleznete v kapitole 2. Metodika case/4/0 (Analýza systému v case/4/0, Funkční analýza, Informační toky (IFD), Model řízení).
Datové struktury Vyberete-li si typ diagramu Datová struktura, objeví se dialogové okno, ve kterém si máte možnost vybrat z existujících diagramů či založit diagram nový. Po vybrání diagramu se tento diagram zobrazí v aktuálním okně. Další informace týkající se ovládání diagramu Datových struktur se dozvíte v kapitole 1.1. Obecné vlastnosti case/4/0 (Operace se stránkami ve stromových strukturách, Operace s diagramy). Informace o tom, jak používat tento diagram po metodické stránce a popis vazeb na ostatní typy diagramů naleznete v kapitole 2. Metodika case/4/0 (Analýza systému v case/4/0, Datová analýza a model dat, Datové struktury (DSD))
ER-model
Vyberete-li si typ diagramu ER-model, objeví se dialogové okno, ve kterém si máte možnost vybrat z existujících diagramů či založit diagram nový. Po vybrání diagramu se tento diagram zobrazí v aktuálním okně. Další informace týkající se ovládání ER-diagramu se dozvíte v kapitole 1.1. Obecné vlastnosti case/4/0 (Operace s diagramy). Informace o tom, jak používat tento diagram po metodické stránce a popis vazeb na ostatní typy diagramů naleznete v kapitole 2. Metodika case/4/0 (Analýza systému v case/4/0, Datová analýza a model dat,Entity-Relationship model (ERM))
Globální datový model Globální datový model slouží k zobrazení všech entit a vztahů existujících v daném systému. V tomto modelu není možné definovat nové entity ani vztahy, ty musí být definovány v jednotlivých ER-modelech. Aktuální stav globálního datového modelu se zobrazí tehdy, pokud v kontextovém menu tohoto diagramu vyberete volbu Vložit datový model nebo Vložit typ entity. V tuto chvíli Vám case/4/0 nabídne seznam všech ERmodelů (resp. entit), které existují v systému, ale nejsou zatím zobrazeny v Globálním datovém modelu. Na Vaše potvrzení se toto zobrazení provede. Kromě toho case/4/0 umí v globálním datovém modelu najít entitu, jejíž název zadáte a máte možnost si zvolit, zda se v Globálním datovém modelu mají či nemají zobrazovat kardinalita a parcialita jednotlivých vztahů. Na dvojité kliknutí myši nad entitou se zobrazí atributy dané entity, které můžete editovat nebo definovat nové.
25
case/4/0, verze 4.3
Animace
Animace v case/4/0 slouží pro ověření věcné správnosti analýzy systému – umožňuje zkontrolovat například tok dat mezi funkcemi a časově závislé chování funkcí. Animace vlastně znamená nadefinování scénáře, který popisuje, v jaké posloupnosti budou prováděny jednotlivé funkce systému, pokud dojde k nějaké události. Je možné zachytit časovou posloupnost prováděných funkcí, jejich vstupy a výstupy. Pokud se má ve scénáři zvýraznit provádění nějaké funkce, či označit tok, který funkci spouští, děje se tak zčervenáním dané funkce či toku. Předtím, než animaci spustíte, musíte nadefinovat diagram stavů a přechodů pro každou řídící funkci a definovat chování pro každou procesní funkci, které se ve scénáři vyskytují. Scénář se potom bude chovat právě podle této definice.
Dialogbox Výběr scénáře
V tomto okně můžete zvolit jeden z existujících scénářů nebo založit nový.
Dialogbox Scénář
Rozsah funkcí: Otevře se okno, ve kterém můžete vybrat ty diagramy informačních toků (resp. funkce) a stavební kameny, které budou zařazeny do animace. Externí události: Otevře se dialog box ve kterém můžete vybrat události, které vystupují z informačních toků, které jsou zařazeny do scénáře (tím že jste je vybrali ve volbě „Rozsah funkcí“). Zároveň můžete definovat časové charakteristiky zpracování události. Externí zpracování: Otevře dialog box, ve kterém můžete definovat chování událostí, které vstupují do funkce od zvoleného prvku externího rozhraní. Hodnoty schránek: case/4/0 nastavuje počáteční hodnoty prvků ve schránce na hodnotu 0. Zvolte tuto volbu, když chcete pro účel animace nastavit jinou hodnotu. Vlastnosti: Touto volbou můžete změnit název scénáře, vložit k němu komentář, definovat stav, ve kterém se nachází a zodpovědného uživatele. Kopie: Tato volba Vám umožní uložit aktuální scénář pod jiným jménem. Vymazat: Zruší aktuální scénář. Popis: Zavolá textový editor připojený k case/4/0 (v našem případě MS-Word) a umožní napsat popis aktuálního scénáře. Po skončení práce v textovém editoru je vložený text uložený v repository case/4/0. Start: Otevře okno animace (menu a lištu pro ovládání animace) a všechny diagramy informačních toků, které jste vybrali ve volbě Rozsah funkcí.
Dialogbox Animace
Start: Spustí průběh animace od inicializační události až do konce scénáře Stop: Zastaví průběh animace Krok: Provede jeden krok scénáře (např. vyvolání funkce, která je na řadě, zápis do schránky) a čeká na další pokyn Zpět: Provede „zpětný chod“ scénáře od místa, kde se nachází po počátek Konec: Konec dialogboxu Animace, návrat do okna Scénář
Dialogbox Možnosti Toto okno umožňuje definovat vlastnosti průběhu animace. Takt: Můžete vložit počet animačních cyklů, které mají proběhnout. Pokud ponecháte *, bude animace probíhat bez horního limitu Rychlost: Vyberte jednu ze tří možností rychlosti průběhu animace.
Okna Dialogbox Informační toky V tomto dialogu můžete určit, které diagramy informačních toků se mají během animace zobrazovat. Tento výběr může být užitečný v případech, kdy máte ve scénáři zahrnuty funkce z velkého množství diagramů a bylo by složité sledovat průběh animace. Všechno: Vybere všechny diagramy ze seznamu. Nic: Nevybere žádný diagram ze seznamu a máte možnost označovat diagramy jeden po druhém.
Dialogbox Řídící funkce V tomto dialog můžete určit, pro které řídící funkce bude zobrazen ve zvláštním okně během animace stav, ve kterém se funkce nachází. Definované stavy pro každou funkci závisí na diagramu stavů a přechodů, který může být pro každou řídící funkci vytvořen. Všechno: Vybere všechny řídící funkce ze seznamu. Nic: Nevybere žádnou funkci ze seznamu a máte možnost označovat funkce jednu po druhé.
Dialogbox Schránky
26
case/4/0, verze 4.3 V tomto dialog můžete určit, pro které schránky, které patří k aktivní animaci, bude zobrazena ve zvláštním okně během animace jejich aktuální hodnota. Inicializační hodnota stejně tak jako podmínky, za kterých se hodnota změní, jsou definovány v okně „Hodnoty schránek“. Všechno: Vybere všechny schránky ze seznamu. Nic: Nevybere žádnou schránku ze seznamu a máte možnost označovat schránky jednu po druhé.
Dialogbox Čas Pokud označíte tuto volbu v menu, bude v průběhu animace ve zvláštním okně zobrazen běh času.
Analýza systému/Centrální katalogy Katalog datových elementů
Zde máte přehled všech datových elementů definovaných v aktuálním systému. Můžete vybrat nějakou z funkcí pro centrální správu datových elementů. Když chcete do Návrhu systému převzít entity a datové struktury, musíte nejprve jejich atributům resp. datovým položkám přiřadit plně definované datové elementy. Jinak case/4/0 nemůže vygenerovat žádný kód. Datové elementy se dají vytvářet i jinde než jen v katalogu dat. Každá kombinace entity (nebo relace) a atributu se do katalogu dat dostane automaticky.
Dialogbox: Katalog dat Stav: stejně jako pro všechny objekty, s kterými se v case/4/0 může pracovat i pro datové elementy mohou být nadefinovány stavy, ve kterých se mohou během svého života v systému nacházet. Toto okno umožňuje definovat, v jakém z možných stavů se právě vybraný datový element nachází. Zodpovědný uživatel - datový katalog by měl být přiřazeného jednoho z účastníků projektu, který je za něj zodpovědný. Tlačítko ... umožní vypsat informace o uživatelích. Datový element: Zde se objevuje název elementu, který je označen v listboxu. Zde můžete název elementu změnit anebo zadat název nového elementu. Listbox: Vyberte ze seznamu ten datový element, který chcete zpracovat. Vybraný element se objeví ve vstupním poli Datový element. Nový: Založí nový datový element s názvem, který je zadán ve vstupním poli Datový element. Změnit: Element označený v listboxu přejmenuje názvem, který je zadán ve vstupním poli Datový element. Vymazat: Vymaže označený element. Optimalizovat: Otestuje, zda jsou všechny elementy někde v systému použity (tzn. existuje nějaká reference na element). Nepoužité elementy vymaže. Generalizace: Otevře dialogbox, ve kterém máte možnost přiřadit označenému elementu jiný, hierarchicky nadřazený element. Protože je možné volně definovat datové typy i obory hodnot, nemá case/4/0 žádné možnosti, jak testovat je-li vzniklá hierarchie dat přípustná nebo ne.
Dialogbox: Generalizace Zde dostanete přehlednou informaci o hierarchickém členění datových elementů. Kromě toho můžete tuto hierarchii editovat. V listboxu je označen element, který reprezentuje generalizaci elementu označeného v předcházejícím dialogboxu (tedy stojí na vyšším stupni hierarchie, je rozsáhlejší). Můžete označit jiný datový element, který má být generalizací. Pokud označíte záznam (Žádná generalizace), znamená to: · že element je na nejvyšším stupni jeho hierarchie, anebo · že element nepatří do žádné hierarchie. Hierarchizace datových elementů je plně závislá na znalosti sémantiky elementů, a proto case/4/0 nemůže nijak testovat přípustnost hierarchie. Datové elementy, které jsou nadřazené jiným elementům, se v seznamu označují pomocí znaku "+". Definice: Otevře dialogbox na definice (podmínky, obor hodnot atd.) označeného elementu.
Dialogbox: Definice datového elementu Zde můžete specifikovat vlastnosti datového elementu: Podmínka/Výčet: Můžete zvolit, zda povolené hodnoty daného elementu vyjádříte pomocí nějaké podmínky (Podmínka) nebo pomocí definice možných hodnot (Výčet). Podmínka: Zadejte podmínky, které mají být testovány při vstupu hodnot pro datový element. V závislosti na podmínce můžete v poli Hlášení specifikovat text chybového hlášení. Toto pole se deaktivuje, když vyberete volbu Výčet. Hlášení: Zde zadejte hlášení, které se má zobrazit, když při vstupu dat není splněna specifikovaná Podmínka. 27
case/4/0, verze 4.3 Formát: Specifikujte formát dat, která se má použít při vstupu dat. Inicializ.: Zadejte hodnotu, která se má použít jako předdefinovaná hodnota při vstupu dat. Pokud je volba Výčet vybraná, dbejte na to, aby hodnota zadaná jako předdefinovaná byla také ve výčtu hodnot. Jinak bude tlačítko OK deaktivované. Příklady hodnot: Pokud máte v listboxu označenu nějakou hodnotu, objeví se zde také a můžete ji editovat. Podle toho zda je vybraná volba Podmínka nebo Výčet, jde o vzorovou hodnotu nebo výčet hodnot. Hodnoty, které zde zapíšete, se objeví jako předdefinované hodnoty v listboxech dialogových obrazovek (listbox musí mít přiřazen tento datový element). Pokud je datový element hierarchicky podřízen jinému datovému elementu, můžete pomocí checkboxu před poli Podmínka, Hlášení, Formát, Inicial., Příklady hodnot a Dialogový element určit, že element má odpovídající záznamy dědit od nadřazeného datového elementu. Pokud neexistuje žádný nadřízený element, checkboxy nejsou dostupné.
Dialogbox: Výčet hodnot Zde můžete pro jednu vlastnost určit možné hodnoty typu "Výčet". Určete vzorové hodnoty, které má označený element dialogové obrazovky akceptovat: Příklady hodnot: Zadejte hodnotu pro element dialogové obrazovky. Listbox: V seznamu jsou Vámi definované vzorové hodnoty. Označte hodnotu, kterou chcete editovat nebo vymazat nebo přesunout. Přidat: Přidá hodnotu definovanou v Příklady hodnot na konec seznamu. Vložit: Vloží hodnotu definovanou v Příklady hodnot na označenou pozici v seznamu. Změnit: Záznam označený v seznamu přepíše názvem, který jste zadali ve vstupním poli Příklady hodnot. Vymaž: Vymaže záznam označený v listboxu. Pozice: Když chcete změnit pořadí v seznamu, klikněte nejdřív na hodnotu, kterou chcete posunout, potom na tlačítko, potom na místo, kam chcete hodnotu posunout a nakonec ještě jednou na tlačítko. Hodnoty, které jste zadali, představují úplnou množinu hodnot označené vlastnosti. Dialogový element: Přiřadí datovému elementu prvek dialogové obrazovky (např. vstupní pole). Sémantika: Otevře textový editor a umožní vložit vysvětlující text k datovému elementu, nebo text nebo grafiku zkopírovat do schránky. Verze: Otevře se dialog, ve kterém je možné definovat verzi vybraného datového elementu (viz kapitola 1.1. Obecné vlastnosti case/4/0, Verze) Zobraz: Vyberte požadovanou volbu. Abecedně: Elementy v seznamu budou tříděny abecedně. Hierarchicky: Ukáže datové elementy v hierarchickém uspořádání, tak jak jste je zadali pomocí Generalizace. Označený element přitom představuje nejnižší stupeň, který se v seznamu ukáže. Elementy, které jsou nadřazené jiným elementům, se v seznamu označují pomocí znaku "+". Dvojitým kliknutím na takový element se Vám zobrazí hierarchicky nižší elementy. Datové typy: tato volba umožňuje přiřadit datovému elementu existující datový typ nebo definovat nový. Pokud ještě datový element nemá definován žádný typ, pole zůstane prázdné.
Dialogbox: Datové typy
Ve vstupním poli se objeví název datového typu, který označíte v listboxu. Název můžete změnit nebo napsat název nového datového typu. Můžete zadat libovolný název, ale myslete na to, že při přechodu do Návrhu systému budete muset pomocí patřičných generovacích funkcí přeložit datové typy do cílového jazyka. Listbox: Vyberte ze seznamu datových typů ten, který chcete přiřadit nebo editovat. Vybraný datový typ se objeví ve vstupním poli. Nový: Založí nový datový typ. Změnit: Změní název datového typu Vymazat: Vymaže datový typ označený v listboxu. Komentář: - k události může být vložen vysvětlující komentář.
Katalog událostí Zde dostanete přehlednou informaci o všech událostech definovaných v rámci aktuálního systému. Události jsou potřebné v informačních tocích na řízení běhu funkcí.
Dialogbox: Katalog událostí 28
case/4/0, verze 4.3 Použijte nabízené volby na centrální správu událostí: Stav: stejně jako pro všechny objekty, s kterými se v case/4/0 může pracovat i pro události mohou být nadefinovány stavy, ve kterých se mohou během svého života v systému nacházet. Toto okno umožňuje definovat, v jakém z možných stavů se právě vybraná událost nachází. Zodpovědný uživatel: událost by měla být přiřazena jednomu z účastníků projektu, který je za ni zodpovědný. Tlačítko ... umožní vypsat informace o uživatelích. Listbox: Vyberte ze seznamu tu událost, o které potřebujete další informace anebo kterou chcete editovat. Nový: Otevře dialogbox na vložení nové události. Změnit: Otevře dialogbox, ve kterém můžete změnit název a typ události. Vymazat: Vymaže událost ze seznamu událostí. Optimalizovat: Otestuje, zda všechny události jsou někde v systému použity a odstraní nepoužité události. Popis: Otevře editor pro popis události. Verze: Otevře se dialog, ve kterém je možné definovat verzi vybrané události (viz kapitola 1.1. Obecné vlastnosti case/4/0, Verze) Typ: V tomto poli se ukáže typ události. Když chcete typ události změnit, klikněte na tlačítko Změnit. Komentář: k události může být vložen vysvětlující komentář.
Katalog materiálů Zde dostanete přehlednou informaci o materiálových tocích nebo schránkách.
Dialogbox: Katalog materiálu Použijte nabízené volby na centrální správu materiálů. Stav: stejně jako pro všechny objekty, s kterými se v case/4/0 může pracovat i pro materiál mohou být nadefinovány stavy, ve kterých se mohou během svého života v systému nacházet. Toto okno umožňuje definovat, v jakém z možných stavů se právě vybraný materiál nachází. Zodpovědný uživatel: materiál by měl být přiřazen jednomu z účastníků projektu, který je za něj zodpovědný. Tlačítko ... umožní vypsat informace o uživatelích. Listbox: Vyberte ze seznamu ten materiál, o kterém potřebujete další informace anebo který chcete editovat. Nový: Otevře dialogbox na vložení nového materiálu. Změnit: Otevře dialogbox, ve kterém můžete změnit název materiálu. Vymazat: Vymaže materiál ze seznamu materiálů. Optimalizovat: Otestuje, zda všechny materiály jsou někde v systému použity a odstraní nepoužité materiály. Popis: Otevře editor na popis materiálu. Verze: Otevře se dialog, ve kterém je možné definovat verzi vybraného materiálu (viz kapitola 1.1. Obecné vlastnosti case/4/0, Verze) Komentář: k události může být vložen vysvětlující komentář.
29
case/4/0, verze 4.3
1.2.3. Návrh systému V menu Návrh sytému najdete příkazy pro vyvolání jednotlivých typů diagramů.
Modulové struktury Vyberete-li si typ diagramu Modulová struktura, objeví se dialogové okno, ve kterém si máte možnost vybrat z existujících diagramů či založit diagram nový. Zaškrtnutím políčka určíte, zda jde o nějaký konkrétní modul či o předlohu modulů. Předloha modulu spolu s parametry modulu slouží k definování obecných vlastností modulové struktury pro danou aplikaci a podle této předlohy se všechny modulové struktury daného systému předgenerují - když budete zakládat nový diagram modulové struktury, máte možnost si vybrat ze seznamu existujících předloh a tím dopředu určíte úlohu modulu v sytému. Také musíte vybrat cílový jazyk, ve kterém bude case/4/0 generovat zdrojový kód modulu (na výběr je Visual Basic, C, Cobol a JAVA). Po vybrání diagramu se tento diagram zobrazí v aktuálním okně. Další informace týkající se ovládání diagramu Modulové struktury se dozvíte v kapitole 1.1. Obecné vlastnosti case/4/0 (Operace se stránkami ve stromových strukturách, Operace s diagramy). Informace o tom, jak používat tento diagram po metodické stránce naleznete v kapitole Metodika case/4/0 (Návrh systému v case/4/0, Modulová struktura)
Typové struktury Vyberete-li si typ diagramu Typová struktura, objeví se dialogové okno, ve kterém si máte možnost vybrat z existujících diagramů či založit diagram nový. Po vybrání diagramu se tento diagram zobrazí v aktuálním okně. Další informace týkající se ovládání diagramu Typové struktury se dozvíte v kapitole 1.1. Obecné vlastnosti case/4/0 (Operace se stránkami ve stromových strukturách, Operace s diagramy). Informace o tom, jak používat tento diagram po metodické stránce naleznete v kapitole Metodika case/4/0 (Návrh systému v case/4/0, Typová struktura)
Relační model
Vyberete-li si typ diagramu Relační model, objeví se dialogové okno, ve kterém si máte možnost vybrat z existujících diagramů či založit diagram nový. Po vybrání diagramu se tento diagram zobrazí v aktuálním okně. Další informace týkající se ovládání Relačního modelu se dozvíte v kapitole 1.1. Obecné vlastnosti case/ 4/0 (Operace s diagramy). Informace o tom, jak používat tento diagram po metodické stránce a popis vazeb na ostatní typy diagramů naleznete v kapitole Metodika case/4/0 (Analýza systému v case/4/0, Návrh systému v case/4/0, Relační model)
Databáze V dialogboxu, který se objeví po zvolení této volby v menu, je možné nadefinovat parametry souboru, do kterého se vygeneruje definice databáze podle relačních modelů a tuto definici skutečně také vygenerovat.
Dialogbox Databáze
Stav: stejně jako pro všechny objekty, s kterými se v case/4/0 může pracovat i databázi mohou být nadefinovány stavy, ve kterých se databáze během svého života v systému může nacházet. Toto okno umožňuje definovat, v jakém z možných stavů se právě vybraná databáze nachází Zodpovědný uživatel: každé databázi by měl být přiřazen člověk, který je za ni zodpovědný. Tlačítko ... umožní vypsat informace o uživatelích Vstupní textové pole: Vložte jméno databáze Listbox: zde je seznam všech databází definovaných pro daný systém Nová: Přidá novou databázi k již existujícím Upravit: aktualizuje název databáze vybrané ze seznamu Vymazat: Zruší databázi vybranou ze seznamu Relace: Otevře dialogové okno, ve kterém můžete ze seznamu tabulek (relací) existujících v daném systému vybrat ty, které chcete umístit do právě definované databáze Typové struktury: Otevře dialogové okno, ve kterém můžete ze seznamu typových struktur existujících v daném systému vybrat ty, které chcete umístit do právě definované databáze. To umožňuje konstrukci databázových „view“ na základě typových struktur. Soubory: Otevře dialogbox, ve kterém můžete definovat, do jakých souborů se mají ukládat výsledky generování jednotlivých generovacích funkcí Funkce: Otevře se dialogbox, ve kterém můžete přiřadit dané databázi generovací funkci, podle které se má struktura databáze generovat Kód: Otevře se editor zdrojového kódu, kde máte možnost prohlížení a oprav vygenerovaného kódu definice db Popis: Spustí se textový editor spolupracující s case/4/0, který umožní vložit textový popis k dané db
30
case/4/0, verze 4.3 Verze: Otevře se dialogbox, ve kterém můžete definovat a spravovat verze generované databáze (viz kapitola 1.1. Obecné vlastnosti case/4/0, Verze) Komentář: ke každé databázi může být vložen vysvětlující komentář.
Generovací funkce Tato volba umožňuje správu generovacích funkcích definovaných v aktuálním systému. Po výběru této volby se objeví dialogbox, ve kterém bude seznam modulů a pro vybraný modul se zobrazí seznam jeho generovacích funkcí. Funkce jsou logicky sdružovány v modulech. Modul je tedy množina generovacích funkcí, které k sobě logicky patří a vzájemně se také obvykle volají. Uživatel má možnost funkce v modulech přesouvat, aktualizovat, přidávat do modulu funkce nové či je odstraňovat. Samozřejmě může také jednotlivé funkce editovat a spouštět.
Dialogbox: Generovací funkce
Listbox Moduly slouží pro výběr modulu, který chce uživatel použít. Listbox Seznam funkcí obsahuje seznam všech generovacích funkcí ve vybraném modulu Jazyk: Vyberte si jeden z možných jazyků pro generování zdrojového kódu. Seznam funkcí v modulu je vždy závislý na výběru jazyka
Dialogbox: Moduly generovacích funkcí Stav: stejně jako pro všechny objekty, s kterými se v case/4/0 může pracovat i pro moduly generovacích funkcí mohou být nadefinovány stavy, ve kterých se modul během svého života v systému může nacházet. Toto okno umožňuje definovat, v jakém z možných stavů se právě vybraný modul nachází Zodpovědný uživatel: každému modulu by měl být přiřazen člověk, který je za něj zodpovědný Tlačítko ... umožní vypsat informace o uživatelích Listbox Výběr modulu umožňuje vybrat modul, jehož vlastnosti chci vidět či definovat Název vybraného modulu se zobrazuje i ve vstupním poli nad listboxem, kde se modul vybírá. Nový: ve vstupním poli se napíše název nového modulu a stisknutím tlačítka nový se tento modul vytvoří. Změnit: ve vstupním poli je možné i změnit název vybraného modulu. Změna se provede stisknutím tlačítka změň. Vymazat: vymaže se vybraný modul i všechny funkce, které obsahoval Verze: Otevře se dialogbox, ve kterém můžete definovat a spravovat verze modulu generovacích funkcí (viz kapitola 1.1. Obecné vlastnosti case/4/0, Verze) Komentář: k modulu vyhodnocovacích funkcí může být vložen vysvětlující komentář. Vložit Můžete zapsat název nové generovací funkce.
Dialogbox Vložit: Jméno: Do tohoto pole se vkládá jméno nově definované funkce Komponenta: Říká, jaký typ elementů bude moci být touto funkcí generován. Toto nastavení se dá definovat pouze při vkládání nové funkce, není možno ho později změnit. Popis: k modulu generovacích funkcí může být vložen vysvětlující komentář, popisující účel, způsob práce a produktivitu dané funkce. Tento text se zobrazuje v dialogovém okně Generovací funkce. Vlastnosti: zobrazí se vlastnosti vybrané funkce
Dialogbox vlastnosti Jméno: V tomto poli můžete změnit jméno vyhodnocovací funkce Komponenta: Říká, jaký typ elementů bude moci být touto funkcí generován. Toto nastavení se dá definovat pouze při vkládání nové funkce, není možno ho později změnit. Popis: k modulu generovacích funkcí může být vložen vysvětlující komentář, popisující účel, způsob práce a produktivitu dané funkce. Tento text se zobrazuje v dialogovém okně Generovací funkce. Přesuň: otevře se dialogbox, ve kterém můžete přesunout funkci z jednoho modulu do jiného Vymazat: Vymaže funkci, která je označená v listboxu. Edituj: Otevře editor kódu pro editaci funkce, označené v listboxu. Pro editaci a vytváření nových vyhodnocovacích funkcí musíte nejdřív zvládnout strukturu databáze case/4/0 a také generovací jazyk. Generovací funkce jsou umístěny lokálně pro aktuální systém a nejsou dostupné pro ostatní systémy. Pokud chcete použít funkce definované v jiném systému, postupujte následujícím způsobem: • Vyberte systém, který obsahuje potřebné generovací funkce a exportujte tento systém do nového systému prostřednictvím příkazu Systém/Export • Vyberte znovu původní systém a importujte do něj něj nově vytvořený systém (který obsahuje potřebné funkce) příkazem Systém/Import.
31
case/4/0, verze 4.3
Typy souborů
Zdrojový kód generovaný case/4/0 se ukládá do souborů. V tomto dialogovém okně se specifikují pro každý generovací jazyk a potřebný typ souboru příslušná přípona názvu souboru a adresář, do kterého má být soubor uložen.
Dialogbox Typy souborů
Jazyk: Vyberte ze seznamu jazyk, pro který budete definovat typ souboru Typ souboru: Vložte popis typu souboru („Header File“) Přípona: Vložte příponu, kterou má case/4/0 používat pro souboru daného typu Listbox: Obsahuje seznam popisů typů souborů společně s jejich příponou Nový: Přidá definici nového typu souboru (vložte typ souboru a příponu) Upravit: Změní definici typu souboru či příponu pro vybraný prvek v listboxu Vymazat: Zruší vybraný prvek listboxu Funkce: Otevře dialogbox, ve kterém můžete přiřadit generovací funkci vybranému prvku v listboxu. Toto přiřazení funkce se použije jako default pro generování kódu z modulové struktury, kde může být toto přiřazení změněno, pokud to je potřeba. Adresář: Otevře se dialogbox, ve kterém je možné specifikovat adresář, který bude case/4/0 používat pro ukládání generovaných souborů daného typu
32
case/4/0, verze 4.3
1.2.4. Dokumentace Dokumentace nabízí nástroje na vytváření jasné a úplné systémové příručky. Rozdělení textů do kapitol umožňuje stromový diagram, podobný jako znáte např. z funkčních struktur. Typická dokumentace systému je složena z výsledků Analýzy a Návrhu sytému. Dokumentace neobsahuje žádnou další úroveň menu. Po volbě Dokumentace, se objeví dialogbox se seznamem všech struktur dokumentace pro aktuální systém. Můžete vybrat jednu z nich nebo definovat novou. K jednotlivým položkám dokumentace (prvkům stromové struktury) můžete vkládat text (postupem popsaným v kapitole Obecné vlastnosti case/4/0/Text). Kromě toho můžete do takto vznikajících dokumentů vkládat existující diagramy a výsledky vyhodnocovacích funkcí. Postup: Soubor připojeného textového editoru (MS - Word) musí používat jednu z šablon dodávaných s case/4/0 case42w6.dot nebo case42p6.dot pro anglickou verzi case/4/0 a MS- Wordu, nebo czase3w8.dot pro lokalizovanou verzi case/4/0 a českou verzi MS-Wordu, verze 8. Potom se Vám volba Nástroje menu MS Wordu rozšíří o možnosti Vkládat diagramy case/4/0 nebo Vkládat výsledky vyhodnocovacích funkcí. Takto vzniklé soubory se ukládají do databáze case/4/0 k tomu systému, ke kterému patří.
33
case/4/0, verze 4.3
1.2.5. Volby V menu Volby můžete nastavit celou řadu parametrů pro Vaši konkrétní konfiguraci.
Fonty Zde můžete určit druh a velikost písma, které se má použít v diagramech a při výměně dat s MS - Wordem.
Dialogbox: Fonty Použití: Vyberte tu oblast, pro kterou chcete nastavit font. Změnit: Otevře dialogbox, ve kterém můžete vybrat font a jeho velikost pro oblast, kterou jste označili v boxu Použití. Implicitní: Nastaví písmo, které má case/4/0 předdefinované. Změna se vykoná jen pro oblast, kterou jste označili v boxu Použití. Normální zobrazovací úroveň: Vyberte z listboxu stupeň zobrazení (velikost), který se má standardně použít po otevření diagramu. Pokud někdy při práci s case/4/0 budete potřebovat jiný stupeň zobrazení, než jste si zvolili jako „Normální zobrazovací úroveň“, vyberte ze systémového menu Windows okna (tlačítko v levém horním rohu okna) povel Zvětšit resp. Zmenšit.
Elementy Dialogu/Menu Zde můžete ke standardním prvkům dialogových obrazovek a menu přidat i svoje vlastní, které budete do systému importovat z nějaké externí knihovny. Kromě toho máte možnost určit, které elementy mají být v které části programu dostupné.
Dialogbox Prvky uživatelského rozhraní Vstupní pole: Tato část okna obsahuje jméno elementu vybraného v listboxu. Můžete zde také zadat jméno nového elementu či existující změnit. Listbox: Seznam obsahuje jméno dialogových a menu elementů existujících v case/4/0. Element který vyberete můžete zrušit či změnit jeho název. Nový: Přidá element definovaný ve vstupním poli do seznamu. Elementy definované uživatelem nebudou v Screen Painteru zobrazeny, ale budou reprezentovány prázdným boxem. Pomocí vhodných generovacích funkcí můžete docílit, aby se při generování kódu vytvořil kód pro přilinkování nebo vytvoření externích elementů. Změnit: Změní jméno prvku označeného v listboxu Vymazat: Zruší prvek vybraný v listboxu. Prvky, které jsou součástí case/4/0 nemohou být zrušeny. ActiveX: Otevře se dialog, kde se nabízejí pro použití v case/4/0 všechny ActiveX nebo OCX dialogové elementy, které máte nainstalovány na Vašem počítači.
Dialogbox ActiveX prvky
V tomto dialogu můžete vybrat prvky ze seznamu OCX nebo ActiveX komponent, instalovaných na Vašem počítači a přidat je do seznamu dialogových elementů case/4/0. Použitelné prvky: V tomto seznamu jsou zobrazeny názvy všech prvků, které jsou dostupné na Vašem počítači jako OCX nebo ActiveX komponenty. Jména zobrazená v tomto seznamu jsou ta, která tyto komponenty používají k registraci ve Vašem sytému. Cesta: Zobrazuje cestu a název souboru, který obsahuje komponentu označenou v seznamů Použitelných prvků. V mnoha případech to bude soubor s příponou ".OCX" v systémovém adresáři Windows. Symbol: Ukazuje ikonu, která patří ke komponentě. Tato ikona bude později použita v menu ScreenPainteru – přes tento button budete moci tento element vložit do Vámi definované obrazovky. Prosím uvědomte si, že seznam elementů ukazuje pouze komponenty dostupné v tomto momentě na Vašem počítači. Které elementy jsou dostupné závisí na mnoha faktorech, např. na verzi Vašeho operačního sytému, instalovaném software, atd. Tento seznam může být naprosto rozdílný počítač od počítače. Obzvlášť v případě víceuživatelského použití case/4/0 je velmi důležité zajistit, aby všechny pracovní stanice, ze kterých bude navrhováno GUI prostřednictvím ScreenPainteru, byly vybaveny všemi komponentami, které byly dostupné na tom počítači, na kterém byla prováděna definice dialogových elementů ve fázi inicializace projektu. Rozsah: Definuje oblast, ve které bude označený prvek dostupný Nedovoleno: Zakazuje použití elementu Pouze Design : Umožňuje použít element pouze v oblasti Design systému Globálně: umožňuje použití elementu v celém case/4/0 Vlastnosti: Otevře dialogbox, ve kterém můžete spravovat a editoval vlastnosti elementu vybraného v listboxu 34
case/4/0, verze 4.3 Callbacky: Otevře dialogbox, ve kterém můžete spravovat dostupné typy callbacků.
Textové šablony Pod šablonou chápeme záznam, ve kterém jsou typografické charakteristiky, které mají mít i texty vytvořené podle šablony. Zde můžete vybrat a editovat textovou předlohu, kterou má použít editor připojený k case/4/0, když budete přidávat text k elementu nebo k diagramu.
Dialogbox Textová předloha V seznamu všech textových předloh vyberte tu, kterou chcete editovat. Standardně budou všechny textové předlohy generovat text podle stejných charakteristik, uložených ve „Standardní předloze“. Pokud změníte nějakou z předloh funkcí Edituj, bude tato funkce označena šipkami. Upravit: Spustí textový editor propojený s case/4/0 a umožní definovat předlohu vybranou v seznamu Dle standardu: Vrátí všechny změněné předlohy do standardního nastavení. Pokud budete chtít změnit standardní nastavení, editujte „Standardní předlohu“. Potom budou vlastnosti této předlohy zděděny do všech ostatních textových předloh.
Nastavení Zde můžete nastavit mnoho všeobecných charakteristik case/4/0, např. vlastnosti editoru kódu nebo rastr, po kterém se mají posunovat elementy dialogových obrazovek ve ScreenPainteru. Většina změn v nastavení se projeví okamžitě po opuštění tohoto dialogboxu. V několika málo případech je třeba case/4/0 ukončit a spustit znovu. Na takový případ budete vždy upozorněni. Nastavení jsou rozdělena do dvou skupin – Nastavení systému a Uživatelsky definovaná nastavení. V pravé horní části okna můžete přepínat, kterou skupinu nastavení chcete měnit. Podle toho, kterou skupinu zvolíte, se změní obsah listboxu v levé části okna. Uživatelsky definovaná nastavení změní chování programu pouze na tom počítači, kde jsou změněna (příklad – pokud si hned v prvním parametru nastavíte, že chcete zobrazovat pouze data a události, neuvidíte v Informačních tocích Materiálové toky a schránky. Ale všichni ostatní, kteří budou k tomuto systému přistupovat z jiných počítačů, si mohou nastavit, že oni Materiál na svých obrazovkách vidět chtějí). Naproti tomu Nastavení systému jsou účinná pro celý systém a tedy pro všechny, kteří budou s tímto systémem pracovat (například bude-li druhý parametr – OLE server pro text nastaven na Word pro Windows 97, budou tuto verzi editoru používat všichni. V listboxu se objevují jednotlivé parametry, které můžete nastavit (seznam se mění podle Vámi zvolené skupiny). Když některý z názvů parametru označíte kurzorem, objeví se v pravé dolní části obrazovky Hodnota, kterou můžete pro ten který parametr nastavit a vysvětlující text k danému parametru.
Identifikátory
Touto volbou otevřete dialogbox, ve kterém můžete určit, zda se při označování podmínkových elementů mají použít symboly nebo textové zkratky. Přitom si můžete vybrat mezi standardními zkratkami nebo můžete definovat vlastní.
Dialogbox: Identifikátory
Zde můžete určit, zda se při označování podmínkových elementů v Analýze systému a Návrhu systému mají použít symboly nebo textové zkratky. Použij ikony: Vyberte tento checkbox, když se mají používat symboly. V tomto případě jsou elementy Typ, Identifikátor a Standardní hodnota deaktivované. Typ: Označte v seznamu podmínku, pro kterou chcete určit zkratku. Identifikátor: Zde jsou aktuální zkratky pro podmínku označenou v seznamu Typ. Můžete zadat jakoukoliv jinou zkratku. Standardní hodnota: case/4/0 definuje standardní zkratku pro každý typ podmínky. Klikněte na toto tlačítko a zkratky pro všechny podmínky se nastaví na standardní hodnoty. Tyto změny budou viditelné až při dalším otevření diagramu. Pokud máte otevřený nějaký diagram, který obsahuje podmínky, musíte jej nejprve zavřít a znovu otevřít.
1.2.6. Add-Ins Toto menu obsahuje seznam nástrojů, které spolupracují s case/4/0. Obsah tohoto menu je závislý na tom, které nástroje pomocí Add-In manžera k case/4/0 připojíte. Nicméně tři nástroje jsou součástí instalace v této verzi case/4/0 – je to case/4/0 manager (nástroj na definování uživatelů, skupin uživatelů a jejich přístupových práv k systémům v case/4/0) a Web Publisher (nástroj na generování HTML stránek, které budou obsahovat data z Vašich systémů z case/4/0). Poslední volbou v menu je právě Add-In manager, prostřednictvím kterého si můžete případně k case/4/0 připojit další nástroje. 35
case/4/0, verze 4.3
case/4/0 manager
Tento nástroj Vám umožňuje: • definovat, kteří uživatelé mohou pracovat s daným systémem • definovat skupiny uživatelů • přiřazovat skupinám uživatelů a uživatelům přístupová práva k jednotlivým stavům, ve kterých se mohou všechny objekty v case/4/0 vyskytovat • kopírovat přístupová práva mezi všemi systémy • definovat stavy objektů Definovat jednotlivé stavy objektů a přístupová práva můžete buď na začátku práce na systému, nebo i kdykoli během ní. Také je můžete kdykoli změnit. Typy pro použití: • Nejprve nadefinujte skupiny, do kterých přiřadíte pracovníky na projektu s obdobnými úlohami. Jakmile máte jednou nadefinována práva pro skupinu, je jednoduché přidat do ní uživatele, který zdědí všechna přístupová práva skupiny. • Pokud už máte nějaký systém, jehož práva, skupiny a uživatelé by se dali použít jako základ pro další systém, využijte funkce Systém/Přidat. Oba systémy se potom zobrazí v Systém managerovi a vy můžete prostřednictvím „Drag and Drop“ uchopit stavy, uživatele a skupiny a zkopírovat je z jednoho systému do druhého. Pokud case/4/0 managera spustíte, objeví se okno, na kterém je zobrazeno, ke kterému systému jste přihlášeni a dále se objeví seznam uživatelů, skupin a typů objektů (rozbalení seznamu dosáhnete kliknutím na znak „plus“. Pokud na nějakém řádku tohoto okna kliknete na pravé tlačítko myši, dostanete kontextové menu. Při založení nového systému jsou automaticky založeni i dva uživatelé – Administrator, mající všechna práva a Guest, mající práva pouze na čtení diagramů.
Kontextové menu na řádku zobrazujícím zvolený systém:
Změň přihlášení: Můžete se přihlásit jako jiný uživatel Odhlaš: odhlásíte se od systému
Kontextové menu na řádku „uživatelé“: Založení nového uživatele
Pokud chcete definovat nového uživatele pro práci se systémem, stiskněte pravé tlačítko myši na záložce Uživatelé. Nabídne se Vám menu, kde máte možnost definovat nové uživatele a obnovit zobrazení přístupových práv. Volba na obnovení zobrazení je zde proto, že provedené změny se nezobrazují automaticky, ale musíte si o to tímto tlačítkem „požádat“.
Dialogbox Definice uživatele U každého uživatele mohou být definovány tyto jeho vlastnosti: Login: Jméno, kterým se uživatel přihlašuje k danému systému Jméno: Jméno a příjmení uživatele E-Mail: e-mail Místnost: číslo místnosti, kde se uživatel nejčastěji vyskytuje Telefon: Telefonní číslo Administrátor: Pokud zaškrtnete tuto volbu, dáte uživateli práva administrátora – to znamená všechna přístupová práva k systému Typ: case/4/0 zajišťuje automaticky, aby alespoň jeden uživatel každého systému měl práva administrátora. Pokud byste chtěli poslednímu administrátorovi v systému jeho práva odebrat, case/4/0 system manager Vám tuto změnu neumožní a informuje Vás příslušnou hláškou. Heslo: uživatelské heslo pro přihlášení se k systému. Uživatelské heslo není pro systémy case/4/0 povinné. Popis: možnost vložit další informace o uživateli
Dialogbox Práva uživatele
Tento dialogbox Vám umožňuje definovat přístupová práva každému uživateli. V tabulce, které se objeví, jsou zobrazena pouze individuální práva každého uživatele. Práva, která vyplývají z členství v nějaké skupině, jsou zobrazena u té které skupiny. Zobraz všechny stavy: Pokud toto políčko zaškrtnete, objeví se tabulka se všemi objekty a všemi jejich stavy definovanými v systému bez ohledu na to, má-li k nim zvolený uživatel přístupová práva nebo ne. Když není políčko zaškrtnuté, objeví se pouze ty objekty a stavy, ke kterým má uživatel definována nějaká přístupová práva. Omez na typy objektů: Zobrazí pouze práva uživatele k jednomu objektu, který je vybraný ze seznamu. Tabulka: Zobrazuje přiřazená práva 36
case/4/0, verze 4.3 Stav: Tento sloupec zobrazuje seznam typů objektů, pro které má uživatel definovaná přístupová práva. Pokud jsou tato práva definována různě pro různé stavy typu objektu, tabulka obsahuje pro každý stav samostatný řádek. Práva: Vypisuje přístupová práva pro definované stavy každého typu objektu. Pokud je v políčku tabulky znak „√" (zelené odškrtnutí), uživatel má přidělené dané přístupové právo; "" (červený křížek) znamená, že toto právo nebylo přiděleno Obnovit: Pokud nějak změníte vlastnosti obrazovky, musíte použít toto tlačítko, aby se změny projevily.
Dialogbox Skupiny
Zde se můžete podívat, do jakých skupin je vybraný uživatel zařazen.
Kontextové menu na řádku konkrétního uživatele Můžete si nechat zobrazit vlastnosti tohoto uživatele (včetně přístupových práv a příslušenství ke skupinám) nebo uživatele zrušit.
Kontextové menu na řádku „Skupiny“ Založení nové skupiny - Dialogbox Založení skupiny Pro novou skupinu musíte vložit její název a můžete vložit další popis.
Dialogbox Práva skupiny Tento dialogbox Vám umožňuje definovat přístupová práva pro každou skupinu. Zobraz všechny stavy: Pokud toto políčko zaškrtnete, objeví se tabulka se všemi objekty a všemi jejich stavy definovanými v systému bez ohledu na to, má-li k nim zvolený uživatel přístupová práva nebo ne. Když není políčko zaškrtnuté, objeví se pouze ty objekty a stavy, ke kterým má uživatel definována nějaká přístupová práva. Omez na typy objektů: Zobrazí pouze práva uživatele k jednomu objektu, který je vybraný ze seznamu. Tabulka: Zobrazuje přiřazená práva Stav: Tento sloupec zobrazuje seznam typů objektů, pro které má uživatel definovaná přístupová práva. Pokud jsou tato práva definována různě pro různé stavy typu objektu, tabulka obsahuje pro každý stav samostatný řádek. Práva: Vypisuje přístupová práva pro definované stavy každého typu objektu. Pokud je v políčku tabulky znak „√" (zelené odškrtnutí), uživatel má přidělené dané přístupové právo; "" (červený křížek) znamená, že toto právo nebylo přiděleno Obnovit: Pokud nějak změníte vlastnosti obrazovky, musíte použít toto tlačítko, aby se změny projevily.
Dialogbox Uživatelé Zde se můžete podívat, jací uživatelé jsou do vybrané skupiny zařazeni či zařadit další (tím, že na jejich jména kliknete myší). Zařazeni do skupiny jsou ti uživatelé, jejichž jméno je modře podbarveno.
Kontextové menu na řádku konkrétní skupiny
můžete si nechat zobrazit vlastnosti této skupiny (včetně přístupových práv a uživatelů, patřících do skupiny) nebo skupinu zrušit.
Kontextové menu na řádku konkrétního typu objektu: Dialogbox Vlastnosti
Obecné: zde se zobrazí jméno zvoleného typu objektu, které samozřejmě nemůžete měnit, protože patří k základním vlastnostem case/4/0.
Dialogbox Přístupová práva V tomto okně se zobrazí přístupová práva jednotlivých uživatelů i skupin ke zvolenému typu objektu. Zobraz uživatele: Tato tabulka zobrazí ty uživatele, kteří mají k danému typu objektu definovaná individuální přístupová práva. Zobraz skupiny: Tato tabulka zobrazí skupiny, které mají definovaná přístupová práva k danému typu objektu. Tabulka: Zobrazuje, kteří uživatelé a skupiny mají přístupová práva k typu objektu: Stav/Uživatel: Tento sloupec ukazuje stavy, pro které jsou definována přístupová práva. Pro každý stav následující řádky ukazují uživatele nebo skupiny, kteří mají práva k typu objektu v daném stavu. Práva: Vypisuje přístupová práva pro definované stavy každého typu objektu. Pokud je v políčku tabulky znak „√“ (zelené odškrtnutí), uživatel nebo skupina má přidělené dané přístupové právo; "" (červený křížek) znamená, že toto právo nebylo přiděleno Obnovit: Pokud nějak změníte vlastnosti obrazovky, musíte použít toto tlačítko, aby se změny projevily
Dialogbox Vytvoř stav 37
case/4/0, verze 4.3 Zde můžete definovat nový stav typu objektu se všemi jeho vlastnostmi. Jméno: Vložte název stavu Počáteční stav: Toto políčko zaškrtněte, mají-li být v tomto stavu automaticky všechny nově založené výskyty daného typu objektu. Popis: Můžete vložit vysvětlující text
Dialogbox Přístupová práva V tomto okně se zobrazí přístupová práva jednotlivých uživatelů i skupin ke zvolenému typu objektu ve vybraném stavu. Pozor – práva k tomuto typu objektu v jiném než zvoleném stavu se nezobrazí. Zobraz uživatele: Tato tabulka zobrazí ty uživatele, kteří mají k danému typu objektu definovaná individuální přístupová práva. Zobraz skupiny: Tato tabulka zobrazí skupiny, které mají definovaná přístupová práva k danému typu objektu. Tabulka: Zobrazuje, kteří uživatelé a skupiny mají přístupová práva k typu objektu: Stav/Uživatel: Tento sloupec ukazuje stavy, pro které jsou definována přístupová práva. Pro každý stav následující řádky ukazují uživatele nebo skupiny, kteří mají práva k typu objektu v daném stavu. Práva: Vypisuje přístupová práva pro definované stavy každého typu objektu. Pokud je v políčku tabulky znak „√" (zelené odškrtnutí), uživatel nebo skupina má přidělené dané přístupové právo; "" (červený křížek) znamená, že toto právo nebylo přiděleno Obnovit: Pokud nějak změníte vlastnosti obrazovky, musíte použít toto tlačítko, aby se změny projevily
Kontextové menu na řádku stavu konkrétního typu objektu
Vlastnosti: vše, co se týká stavů jednotlivých objektů závisí na definici uživatele – to znamená podle Vašeho uvážení můžete definovat počet stavů, ve kterých se budou moci objekty ve Vašem systému nacházet, stejně tak jako jejich názvy. Jeden ze stavů pro každý objekt může být Počáteční, to znamená, že v tomto stavu se budou objekty nacházet po jejich založení v systému. Práva: Vypisuje přístupová práva pro definované stavy každého typu objektu. Pokud je v políčku tabulky znak „√" (zelené odškrtnutí), uživatel nebo skupina má přidělené dané přístupové právo; "" (červený křížek) znamená, že toto právo nebylo přiděleno
Web Publisher Web-Publisher slouží k jednoduchému vytvoření dokumentace systému z case/4/0 ve formátu HTML. Systém: Zobrazuje systém, se kterým se bude pracovat. Pro výběr jiného systému použijte tlačítko Browse. Elementy: Ze seznamu, který se rozbalí po kliknutí myší na šipku vpravo vyberte kategorii prvků, s kterými budete chtít pracovat. V závislosti na tom, kterou kategorii vyberete se ve spodním seznamu objeví seznam elementů patřících do této kategorie. Potom můžete vybrat elementy, pro které chcete HTML stránky vytvářet. Výstupní adresář: Zobrazuje adresář, do kterého budou uloženy HTML soubory vygenerované WebPublisherem. Defaultně je zde připravena cesta, která je nastavena v HTML Base setting v inicializačním souboru case/4/0. Tuto cestu můžete samozřejmě změnit, pokud kliknete na Browse. Generovat: Začne generovat HTML soubory podle toho, co jste vybrali v seznamu elementů. Generovat vše: Začne generovat HTML soubory pro všechny elementy ze zvoleného systému. Tato funkce vytvoří kompletní dokumentaci systému v HTML formátu. Pro velké systémy může být časově poměrně náročná.
Add-In Manager
Po zvolení této položky v menu se objeví obrazovka, na které bude seznam všech přídavných aplikací instalovaných pro case/4/0. Pokud budete chtít instalovat další přídavnou aplikaci pro case/4/0, použijte k tomu právě add-in manager. Pokud bude nějaká situace ve Vašem projektu vyžadovat specifické funkce, můžete prostřednictvím add-in managera integrovat do case/4/0 nástroj, který Vám umožní tento požadavek splnit. Poznámka: Pokud budete chtít, aby volby v submenu Add-ins měly definovány horké klávesy, můžete si to sami nastavit – pokud spustíte Add-In managera, je třeba ve volbě Andern do řádku Menupunkt umístit symbol „ ~ “ před písmenko, které chcete mít podtržené) Dostupné Add-Ins: Informuje Vás, jaké doplňkové aplikace máte nainstalované. Seznam odpovídá položkám menu Add-Ins. Vytvoř: Použijte tento knoflík, když chcete přidat novou aplikaci. Vložte název položky do menu a příkazový řádek pro spuštění dané aplikace. Změň. Můžete změnit vlastnosti připojené aplikace. Zruš: Zrušíte danou položku ze seznamu aktivních aplikací i z menu.
38
case/4/0, verze 4.3
1.2.7. Help menu V tomto menu můžete vyvolat buď samotný Help nebo volbou Info můžete zjistit číslo verze Vaší instalace case/4/0, Copyright.
Index
Použijte tuto volbu, když chcete vyvolat úvodní obrazovku Helpu. Odtud můžete postupně projít základy práce s case/4/0 a najít popisy k elementům, diagramům a operacím v case/4/0. Když se chcete odkudkoliv z Helpu vrátit do úvodní obrazovky Helpu, klikněte na tlačítko Contents vlevo na horním okraji okna Helpu.
Info
Touto volbou můžete zjistit číslo verze Vaší instalace case/4/0, Copyright. Kromě toho dostanete informaci o držiteli licence a - pokud se to týká Vaší instalace - také o licenčním serveru, který Vám poskytuje case/4/0 jako použitelný zdroj.
39
case/4/0, verze 4.3
2.
Metodika case/4/0
2.1. Životní cyklus projektu Schéma životního cyklu projektu je na následujícím obrázku.
Studie proveditelnosti
Uživatel
Plán, rozpočet
Zadavatel, "investor"
Požadavky uživatele Předběžná analýza
Podrobná analýza Připomínky, návrhy Podrobná specifikace
Fyzikální požadavky
Konstrukce (design) systému
Připomínky, návrhy Připomínky, návrhy
Hardwarová studie Návrh modulů
Uživatel
Poznatky a zkušenosti
Omezující podmínky Implementace
Software
Nasazení a provoz
Obr. 1 Životní cyklus projektu Schéma vývoje projektu je s určitými obměnami definované ve všech metodologiích vývoje systému. Ať už popisované etapy vývoje ponesou jakýkoliv název, jejich obsah se podstatně nemění. Začínáme s určitou množinou uživatelských požadavků, pokračujeme stanovenou cestou směrem k výslednému systému, ale přitom narážíme na problémy, pro jejichž vyřešení se musíme vrátit o něco zpět; navíc uživatelé přidávají další a další požadavky, a to všechno se stále opakuje a systém se postupně zlepšuje. Po určitém čase se vnější podmínky změní natolik, že vyvolají potřebu úpravy systému. Komplikované na tom je, že tyto změny se odrazí vždy jinak. Systém musíme začít upravovat na té úrovni, kde došlo ke změně. Přitom nejkomplikovanější a nejdražší jsou ty změny, které musí projít celým životním cyklem – tedy změny uživatelských požadavků. A to je hlavní příčina neustálého zdůrazňování významu analytické fáze vývoje projektu. Výsledkem analýzy je tzv. specifikace systému. Je to dokument, který popisuje projektovaný systém z hlediska funkcí, dat, podmínek činnosti, možností řešení a jiných hledisek. Slouží jako základní dokument pro spolupráci všech profesních skupin zúčastněných na projektu. Z toho vyplývá, že specifikaci systému vytvářejí spolu uživatel, analytik a programátor. Jak vypadá spolupráce těchto lidí? Pokusme se nejdřív definovat kdo je kdo. Uživatel buď informace ze systému čerpá anebo je pro systém poskytuje, nejčastěji však obojí. Jeho úloha při vývoji systému je však stejně důležitá, uživatel často bývá zdrojem prvních impulsů, které vedou k zahájení projektu. To je pozitivní rys uživatele. Negativní je, že uživatel většinou nedokáže hned napoprvé úplně přesně formulovat svoje požadavky. Teprve až získá představu o možnostech, které mu systém může nabídnout (např. mu ukážeme prototyp), uživatel začne hýřit nápady "co ještě by to mohlo dělat". S tím je třeba naprosto vážně počítat při konkrétních zakázkách. Přitom dále platí, že míra nejasnosti uživatelských požadavků je přímo úměrná velikosti uživatele. Relativně snadno se dají zjistit veškeré požadavky na IS v podniku s 450 zaměstnanci, ale je to téměř nemožné 40
case/4/0, verze 4.3 u 15 tisícového giganta. Obvykle se to řeší tak, že požadavky na funkce systému řešitel akceptuje pouze do určité etapy vývoje a další jsou pak předmětem nové zakázky. Předpokladem pro toto řešení však je, že vztah mezi uživatelem a řešitelem je jasný a rovnocenný. Postavení týmů, které vyvíjejí IS pro vlastní společnost je většinou komplikovanější. Analytik je v podstatě mezičlánkem schopným komunikovat stejně dobře s uživatelem i s programátorem, jehož hlavním úkolem je popsat funkce, které požaduje uživatel, takovým způsobem, který bude vyhovovat programátorovi. Programátor provádí pouze další transformaci, a sice převod obecně formulovaného zadání už do podoby stravitelné pro konkrétní výpočetní systém. Aby se věci trochu zkomplikovaly, musíme říct, že je stále běžnější, že v některých podnicích, především malých, je uživatel, analytik, programátor i správce dat jedna a táž osoba. Teď se vraťme k obrázku 1 a popišme jej podrobněji. Tento diagram byl vytvořen v case/4/0, kde se používá pro vyjádření toků dat mezi jednotlivými částmi systému - funkcemi. V kruzích jsou názvy hlavních činností, které je třeba v průběhu vývoje systému vykonat a šipky vyjadřují toky dat (informací) mezi těmito činnostmi. V tomto případě datové toky budou mít formu ucelených dokumentů, ve kterých budou shrnuty výsledky jednotlivých hlavních činností (etap).
2.1.1. Studie proveditelnosti (předběžná analýza, průzkum)
Prvotním impulsem je vždy požadavek budoucího uživatele. Nemusí být vždy explicitně vyjádřený, předpokládáme spíše typickou situaci - tedy podnik, který má vlastní pracovníky pro vývoj IS a klade požadavky. Prvním krokem je tedy průzkum. Musíme zformulovat požadavky, v hrubých obrysech načrtnout řešení, odhadnout náklady a rozhodnout o tom, zda vůbec má smysl zahajovat řešení. Nesnažte se získat najednou příliš mnoho. Definujte si jak bude váš projekt vypadat v cílovém stavu a zároveň si naplánujte, po jakých krocích budete k tomuto stavu směřovat. Naplánujte si pilotní projekt, který bude obsahovat jen několik nejdůležitějších funkcí a snažte se ho udělat co nejdřív. Je vysoce pravděpodobné, že to nebude ono a budete ho celý kompletně předělávat. Nechte si mezi jednotlivými etapami časovou rezervu asi 30% (to by mělo stačit i na úplné přepracování). Cílem první etapy je posouzení proveditelnosti projektu, hrubý odhad jeho ekonomické efektivnosti, určení možných rizik a hrubý návrh řešení. Závěrečná dokumentace úvodní etapy by mohla být rozdělená např. na části: • rámcový plán projektu • časový plán projektu • zdroje požadované pro řešení (finance, personál, technika aj.) • odhad investiční náročnosti • odhad ekonomické efektivnosti Analýza současného stavu Názory na tento krok jsou různé. Tradičně bývá jedním z bodů studie proveditelnosti, ale je možné proti tomu namítnout, že řešitel po analýze současného stavu zůstane v zajetí staré koncepce, starých řešení problémů a nevědomky tak omezí svoje tvořivé schopnosti. Pokud se rozhodneme pro tuto analýzu, měli bychom mít stále na paměti, že cílem tohoto kroku není samoúčelné vytvoření dokumentace starého systému, ale objevení jeho slabých míst. Měli bychom vykonat tyto činnosti: • získat nezbytné znalosti o zkoumaném systému • identifikovat nedostatky systému • navrhnout změny, nové funkce a kritéria provozu nového systému Katalog uživatelských požadavků Nejspolehlivějším způsobem pro naplnění následujících bodů jsou rozhovory s budoucími uživateli. Dobře svému partnerovi vysvětlete o co vám jde, klaďte jednoduše formulované otázky a rozhodně si dělejte poznámky. Musíte získat minimálně: • specifikace požadovaných výstupních informací • poznámky o těch zvyklostech uživatele, které mohou mít vliv na vlastnosti systému • požadavky obsluhy (operátorů) na vlastnosti systému Návrh řešení Měli bychom vlastně v rychlosti projít všechny kroky, které nás čekají v dalších etapách vývoje. Jednotícím hlediskem pro všechny následující body je proveditelnost. • popis účelu systému • identifikace uživatelů a hranic systému (popis okolí systému, tzv. kontextový diagram) • závěry z analýzy katalogu požadavků uživatelů • návrh hlavních funkčních celků • seznam událostí 41
case/4/0, verze 4.3 • odhad velikosti datové základny • představa o technickém řešení Výsledkem etapy je model prostředí systému, který v první řadě definuje vztahy mezi systémem a jeho okolím a také první vazby uvnitř systému. Návrh řešení bude dokumentem, ze kterého budou řešitelé čerpat při dalším řešení, pokud se ovšem neukáže projekt jako nevýhodný. Dokumentace z první etapy bude předložena k posouzení a poslouží jako podklad k rozhodnutí o dalším osudu projektu.
2.1.2. Analýza systému
Tato etapa je klíčovým místem vývoje produktu. Chyby v prvních návrzích, jako nepříznivé rozdělení dat nebo pozdější výběr nevhodného databázového systému, jsou později jen velmi těžce odstranitelné. Systémové analýze bude proto později věnována samostatná část. Cílem této etapy je dokončení první části modelu systému, tzv. modelu prostředí a rozpracování modelu chování systému. Model prostředí zatím máme z první etapy zpracovaný jako popis vztahů mezi systémem a objekty z jeho okolí. Tento model bude doplněný a zjemněný tak, abychom získali dokonalý obraz zasazení systému do existujícího reálného prostředí. Model chování systému je popis systému jako takového, popis, který se později stane výchozím dokumentem pro konstrukci (design) systému. Strukturu výsledků 2. etapy je možné rozčlenit např. takto: Popis funkcí systému Funkční popis systému je vlastně modelem toho, co má systém dělat, za jakých podmínek má jednotlivé činnosti vykonávat, odkud kam posílá výsledky apod.. Základem úlohy jsou slovní popisy: • vstupních a výstupních datových toků v termínech, které jsou běžné pro uživatele • činnosti jednotlivých funkcí, tzn. způsob transformace vstupních datových toků na výstupní; přitom použijeme všechny znalosti, které jsme získali při tvorbě katalogu uživatelských požadavků • formulace omezujících podmínek, které např. klade vedení • formulace podmínek, za kterých se mohou vykonávat jednotlivé činnosti Datová analýza Cílem je vytvořit statický model reality, tj. popsat objekty, které nás zajímají, jejich vlastnosti a jejich vzájemné vztahy. Můžeme zvolit různé techniky, my se zaměříme na entitně-relační model (dále ER model), který později s výhodou použijeme při definici struktury dat relační databáze. Kvantifikace systému Zjistíme přibližné velikosti datových struktur, odhadneme mohutnost datových toků mezi systémem a jeho okolím a uvnitř systému mezi jeho hlavními funkčními složkami. Podle výsledků kvantifikace budeme později určovat, jaké technické vybavení zvolit pro realizaci systému. Hrubý návrh konceptu testování Vzhledem k znalosti závislostí v datové i funkční struktuře systému je možné připravit po logické stránce koncept testování, tzn. připravit např. seznamy tvrzení o vlastnostech systému, o integritě dat, apod., které budeme experimentálně ověřovat při testování. Ekonomické zhodnocení Vyšší úroveň vědomostí o projektovaném systému umožní upřesnit odhad ekonomické efektivnosti. Ekonomické hledisko by vlastně mělo být přítomné v dokumentaci každé etapy. Největší objem práce se koncentruje ve funkční a datové analýze. Práce na datové a funkční struktuře mohou probíhat paralelně a vzájemně se ovlivňovat. Analýza systému končí sestavením MODELU SYSTÉMU (modelu funkcí, dat a řízení). Model systému je úplná strukturovaná specifikace systému, která se po schválení stává do určité míry dogmatem závazným pro další práci.
2.1.3. Návrh (konstrukce, design) systému Cílem je navrhnout programovou strukturu systému. Postupy pro navrhování programových modulů sice existují, ale zkušenosti a intuice projektanta zde mají nezastupitelnou úlohu. 3. etapu je možné rozčlenit do následujících kroků: Modulární konstrukce Výsledky analýzy slouží jako vstup pro návrh modulární konstrukce systému. Jde o jeden z nejtěžších kroků při vývoji systému. Stručně řečeno, funkce definované při tvorbě funkční struktury rozdělíme do modulů tak, aby se do jednoho modulu dostaly funkce, které spolupracují při plnění určitého úkolu nebo které si často vyměňují data. Přitom se snažíme navrhnout systém po vrstvách, tzn. na jednu úroveň postavit moduly, které plní úkoly přibližně stejné složitosti (v rozpětí od hlavního řídícího modulu až třeba po mikroeditor pro 42
case/4/0, verze 4.3 obsluhu pole ve vstupní masce). Dostaneme tak opět stromovou strukturu, i když už nemáme tak striktně formulovaná pravidla pro její tvorbu. Formy vstupu a výstupu Návrh dialogu s uživatelem, návrh obrazovek, minimalizace tiskových výstupů. Vnitřní organizace a ochrana dat Řešení transformace ER diagramu do relačního modelu, normalizace relací do 3.normální formy, řešení a optimalizace rozdělení datové základny. Plán testů pro jednotlivé programy, pro integrační programy a pro systém. Systémová příručka Všechny výše uvedené aspekty konstrukce systému jsou shrnuty ve výsledném dokumentu této etapy - v systémové příručce, která je vlastně detailním technologickým a datovým popisem systému, kompletním implementačním modelem systému.
2.1.4. Hardwarová studie Po dokončení analýzy systému máme dostatek znalostí na zahájení práce na specifikaci technických prostředků. Dalším významným zdrojem informací budou také výsledky konstrukce systému. Starou bolestí informačních systémů u nás je předčasný nákup hardware. Považujeme to opět za jeden z pozůstatků minulosti a doufáme, že dnešní podmínky umožní volit optimální technické prostředky.
2.1.5. Implementace
Až v této etapě vývoje začneme "programovat" v tom smyslu, že budeme psát zdrojové kódy a používat kompilátor. Tato práce by měla být tou nejjednodušší v celém projektu, protože největší kus práce specifikaci systému - už máme za sebou. Členění výsledků 5.etapy: Zadání pro jednotlivé programy Zadání vytvoříme z popisu struktury modulů, z popisů funkcí na nejnižších úrovních funkční hierarchie a z datových struktur použitých v modulu. Programování Pečlivé zpracování podkladů z předcházejících etap podmiňuje rychlost splnění této úlohy. Všeobecným trendem je přesunout těžiště prací do analytické části a fázi programování zkrátit na minimum. Příprava testů Získání testovacích dat transformací části dat ze současného systému a doplnění o testovací data, která nahradí položky zatím nesledované. Doplnění plánu testů o nové poznatky. Testování jednotlivých programů Jde o odzkoušení reakcí programů na všechny běžné typy vstupních dat. Metody pro verifikaci programů (ověření, potvrzení správnosti podobně jako u matematických vzorců) většinou nemají řešitelé k dispozici a ani se v širším měřítku nepoužívají. Verifikace je nevyhnutná jen v mimořádných případech, kde by selhání programu mohlo mít neodhadnutelné účinky. Typickým příkladem jsou např. programy pro řízení technologických zařízení ve výrobě, ty ale nejsou předmětem našeho hlavního zájmu. Integrační testy Bude prověřená spolupráce jednotlivých modulů a později i celých subsystémů. Při kvalitní práci v předcházejících etapách se výsledky testů projeví nanejvýš v drobných úpravách zdrojových kódů programů. Provozní test Hlavní formou provozního ověření bývá realizace pilotního projektu. Pilotní projekt většinou obsahuje jen ty funkce, které tvoří jádro systému. U plošně nasazovaných systémů jde především o ověření způsobu sběru dat a distribuce výsledků.
2.1.6. Příprava realizace, zavedení a provoz
Fázi nasazování informačního systému neřeší žádná známá metoda. Předpokládáme tyto kroky v přípravě realizace:
43
case/4/0, verze 4.3 Organizační opatření u uživatele a u provozovatele systému Půjde především o personální změny. Uživatel musí rozhodnout, kteří pracovníci budou vyškoleni pro práci s novým systémem a kteří budou přeřazeni. Formulujeme tento krok velmi tvrdě, protože v praxi se v souvislosti s automatizací prakticky vždy najde dostatek důvodů pro rozšíření oddělení a přínos automatizace se snižuje. Provozovatel musí vyčlenit personál pro zajištění provozu, prostory pro instalaci techniky, zahrnout náklady na provoz do plánu. Vybavení provozní infrastruktury V dostatečném předstihu vypište konkurz na dodavatele techniky. Takto většinou dostanete výhodnější podmínky. Dodavatelům raději uložte konečný termín dodávky o měsíc dřív než skutečně potřebujete. Náhradní řešení provozu při výpadku Posuďte sami charakter vašeho systému a zvolte jednu ze dvou cest: • systém skutečně musí být neustále v provozu a je nezbytné mít 100% zálohu, • krátkodobý výpadek nenaruší chod organizace. V druhém případě porovnejte sliby obchodníků v otázce rychlosti servisu se zkušenostmi jejich jiných zákazníků a potom také se svými požadavky. Uživatelská příručka Nepodceňujte význam uživatelské dokumentace ani kvalitu helpu. Nespoléhejte příliš na účinnost školení, zvlášť pokud je mezi školením a zavedením systému několikatýdenní rozdíl. Školení Pokud je pro nasazení systému potřebné vyškolit vysoký počet uživatelů (řekněme více než sto), stojí za zvážení možnost školit uživatele pomocí výpočtové techniky určené na realizaci. Speciální školící program ("tutoriál"), bude distribuovaný na všechny budoucí pracoviště, kde se s jeho pomocí uživatelé postupně naučí s novým systémem pracovat. Tradiční organizace školení by při vysokém počtu pracovníků byla podstatně nákladnější, než příprava tutoriálu. Transformace dat ze starého systému V této fázi půjde jen o aktualizaci stavu databází, protože způsob transformace byl vyřešený už ve fázi testování. Plán zavedení Plán je důležitý zejména při zavádění rozsáhlejšího systému, např. v několika závodech. Pokud má systém svého předchůdce, je nutné přesně a závazně stanovit postup pro přechod na nový systém. Nejpřijatelnější je asi cesta postupného přebírání funkcí. Zavedení Poslední etapa celého projektu by měla obsahovat: Zkompletování dokumentace Zahrňte do dokumentace i poslední úpravy systému a dejte jí jednotnou grafickou podobu. Nikdy neodevzdávejte nový systém s dokumentací, která má v příloze listy s opravami. Odevzdání systému Dbejte na vypracování řádného protokolu. Převzetí musí potvrdit i vedení uživatele. Podpora uživatele při zavedení systému. Pokud je to možné, buďte v prvních dnech nasazení systému přímo na uživatelově pracovišti. Bez ohledu na školení a příručky budete muset zodpovídat hodně dotazů. Výsledek: funkční systém v rukou uživatele.
44
case/4/0, verze 4.3
2.2. Analýza systému (System Analysis, SA) Už asi dvacet let se hovoří o softwarové krizi. Je způsobená nedostatkem vhodných, účinných a lidsky zvládnutelných metodologií pro vývoj software. I když v literatuře najdeme množství teoretických prací o projektování systémů, do praxe pronikají velmi těžce a pomalu. V posledních letech se však situace mění. Dochází k posunu od náhledu na programování jako umění směrem k inženýrskému pojetí. Z množství metod se filtrují ty nejúčinnější a s jejich postupem se začíná sjednocovat i terminologie. Metodologie je souhrn postupů a metod, který stanovuje CO, KDO a KDY má dělat při projektování, implementaci a řízení informačního systému. Metodologie se skládají z více než 60% z manažerských disciplín a z disciplín systémového inženýrství (v širším slova smyslu) a zbytek tvoří metody, techniky a nástroje pro návrh a implementaci IS. Mezi nejrozšířenější metodologie patří např. britská SSADM, francouzská MERISE, holandská SDM, CASE*Method od Oracle a samozřejmě také Yourdon Structured Method, kterou podporuje case/4/0. Co je potom metoda? Metoda stanovuje CO je třeba dělat v určité fázi projektu např. model dat, funkční model, moduly... Jako příklady metod uveďme třeba Jackson System Development nebo Yourdonovu Structured Analysis/Structured Design. Pod technikou budeme rozumět způsob, JAK vytvořit to, co nám doporučuje metoda. Např. pro datový model můžeme použít Chenův ERA model, funkční analýzu budeme provádět technikou TopDown. Nástrojem je to, ČÍM realizujeme techniku, čím vyjádříme výsledek, např. diagram toků dat (IFD) nebo entitně relační diagram (ERD).
Yourdon Structured Analysis (SA)
Mezi nejznámější a nejpoužívanější metodologie patří Yourdon Structured Analysis/Structured Design. Její podstatou, stejně jako většiny jiných metod, je modelování, vytváření obrazu reality specifickými prostředky. Cílem modelování je zachytit všechny objektivní jevy a skutečnosti tak, abychom získali esenci toho kousku reality, který jsme si vybrali k popisu. Tzv. esenciální model obsahuje vše potřebné pro to, abychom mohli začít s implementací do konkrétního SW a HW prostředí. Yourdon také definoval vlastnosti nástrojů modelování. Nástroj musí: 1) být grafický: Toto sice splňuje i tužka s gumou, ale Yourdon má na mysli hlavně počítačem podporované systémy návrhu software. 2) podporovat TOPDOWN princip: Co je TOPDOWN ? Většina analytiků to sice intuitivně chápe, ale přesto se pokusme formulovat několik jednoduchých pravidel: • systém se dělí na podsystémy DISKRÉTNĚ • strukturu lze vyjádřit STROMEM • vše SPOLEČNÉ jednotlivým subsystémům je obsaženo ve VYŠŠÍ ÚROVNI Dělení pokračuje až po úroveň, kdy se jednotlivé části dají bez problémů pochopit. Výhodou TOPDOWNu je hlavně to, že máme jistotu, že diskrétním dělením dostaneme nezávislé subsystémy, kterými se pak můžeme zabývat odděleně. Má to obrovský význam pro týmovou práci. 3) minimalizovat redundance: Ve většině metod se tento požadavek řeší tzv. Data Dictionary, což je jakási encyklopedie systému, která soustřeďuje veškeré údaje o datovém a funkčním modelu a o modelu řízení. Usnadňuje to údržbu dat zejména v dynamických projektech. 4) poskytovat možnost do určité míry předvídat chování systému: Ideálně tuto možnost splňují nástroje, které podporují tvorbu prototypu. Nejběžnější je podpora tvorby uživatelského rozhraní. V case/4/0 je navíc unikátní možnost animace informačních toků. 5) být snadno čitelný: Tzn. používat symboly snadno pochopitelné pro uživatele, analytika i programátora. Souvisí to i s požadavkem na grafiku. Všem těmto pravidlům nástroje pana Yourdona samozřejmě vyhovují. V dalších kapitolách rozebereme SA/SD podrobněji, včetně technik, které používá. Nástroje SA/SD jsou spolu natolik svázané, že jsme se v následujícím textu nemohli vyhnout použití i takových pojmů, které jsou podrobně vysvětleny až později. SA/SD můžeme chápat z širšího pohledu jako samostatnou metodu, ale po určitém přiblížení zjistíme, že jde spíše o několik vhodným způsobem spojených metod. Pana Yourdona můžeme považovat více za koordinátora rozvoje této metody než za jejího tvůrce. SA/SD pokrývá všechny fáze vývoje systému: • analýzu požadavků • specifikaci (popis) systému • konstrukci (design) systému • implementaci Pro popis systému SA/SD vytváří čtyři nezávislé modely: 1. Datový model sytému 2. Funkční model systému 3. Model řízení systému 45
case/4/0, verze 4.3 4. Model struktury programového systému První tři spolu tvoří výstupy systémové analýzy, poslední je výsledkem konstrukce (designu) systému. Každý z těchto modelů představuje jiný úhel pohledu na systém. Zde je jedna ze silných zbraní SA/SD. Ustavičným střídáním úhlu pohledu na vytvářený systém získáváme stále nové poznatky a také neustálou kontrolu nad konzistentností návrhu. Nejprve stručně přiblížíme obsah jednotlivých modelů a později je popíšeme podrobněji.
2.2.1. Datový model Datový model je vyjádřením statického pohledu na realitu. Zachycuje objekty, které nás zajímají, a vzájemné vztahy mezi nimi. Existuje více typů datových modelů, vzpomeňme si např. na československý HIT, nejpoužívanější je však entitně-relační model (dále ERA).
2.2.2. Funkční model Funkční model představuje dynamický pohled na systém. Vyjadřuje činnost systému tak, že si všímá míst, kde je potřeba nějakým způsobem transformovat data do jiné formy a označuje je jako funkce. Všímá si, která data jsou pro funkci vstupní, která výstupní. Pro funkční modelování se v SA/SD používají diagramy struktury funkcí (funkční stromy), diagramy datových toků (Data Flow Diagrams - IFD) a podrobné slovní popisy funkcí (Process Specification - specifikace funkce (procesu)). Specifikace funkce (procesu) je volným textem podrobně popsaná každá funkce systému. Všechny varianty operací jsou rozepsané na základě různých událostí nebo splněných podmínek. Alternativně je možné použít také rozhodovací tabulky nebo pseudokód procesu.
2.2.3. Model řízení
Model řízení se skládá ze dvou částí. První je diagram stavů a přechodů (State Transition Diagram). Je to popis všech stavů systému spolu s popisem podmínek přechodu mezi jednotlivými stavy. Každý přechod systému z jednoho stavu do druhého je uskutečněn nějakou akcí, která začne až po splnění daných podmínek nebo po zaregistrování daných událostí. Rozdíl mezi podmínkou a událostí je vlastně pouze ve formulaci. Podmínka je statické vyjádření události. Tento diagram se trochu vymyká z pojetí ostatních metod SA/SD, protože nectí TOPDOWN princip. Diagram přechodů a stavů musí být doplněn o druhou část modelu řízení - o řídící toky v IFD. Řídící toky a řídící funkce umožňují přímo v IFD zapsat, jak se k sobě mají chovat výkonné funkce, která z nich, kdy a za jakých podmínek má být aktivní.
2.2.4. Model struktury programového systému Tento model je už nástrojem části SA/SD zvané Návrh systému. Je to souhrn modulů a vazeb mezi nimi. Diagram více připomíná strom než síť - je hierarchický, ale spoje jsou povolené i mezi nestejnými úrovněmi nebo větvemi. Pravidly pro návrh modulární struktury programu nebo také programování "ve velkém" se budeme zabývat později.
2.2.5. Data Dictionary
Pojem Data Dictionary (dále jen DD) je více známý jako část SŘBD, která slouží pro ukládání popisu struktury datové základny. Tuto funkci plní DD také v SA/SD. Navíc jsou zde uloženy také informace o všech ostatních prvcích systému. V našem oboru se dnes DD označuje spíš jako systémová encyklopedie. Identifikace se provádí názvem prvku. DD je prostředek, který integruje všechny nástroje SA/SD. Nepředpokládá se, že by v dnešní době někdo chtěl udržovat DD v aktuálním stavu manuálně. Je to natolik pracné, že by pravděpodobně velmi brzy ztroskotal. Když svěříte správu nad DD do "rukou" case/4/0, uvolníte si ruce od sledování konzistenčních pravidel pro spolupráci nástrojů SA/SD a můžete se soustředit na tvůrčí problémy.
46
case/4/0, verze 4.3
2.3. Analýza systému v case/4/0 case/4/0 metodicky vychází z Yourdonovy metody, kterou si v určitých částech upravuje či doplňuje. Tento manuál uvádí přehled jednotlivých nástrojů case/4/0 a jejich správné metodické použití tomu, kdo Yourdonovu metodu zná. Rozhodně nemůže nahradit metodická školení těm, kteří nemají o uvedených metodách alespoň základní znalosti.
2.3.1. Funkční analýza
Výsledkem funkční analýzy bude tzv. funkční model. Smyslem funkčního modelu je vyjádřit CO má systém dělat, jaké činnosti má provádět.
Funkční struktury (FSD) Diagramy funkční struktury (Function Structure Diagram, FSD) vytváříme při funkční analýze většinou jako první. Je to znázornění hierarchie funkcí, rozkladu systému na jeho části podle TOPDOWN principu. Přitom se používají dva přístupy: 1. Na jednu hierarchickou úroveň položíme funkce, které pracují s objekty přibližně stejné složitosti. Tento způsob zvolíme při široce koncipovaném systému, kdy nám množství funkčních, časových a jiných závislostí nedovolí použít druhý přístup. 2. Přístup podle bodu 1 rozšíříme o dynamické hledisko. Budeme uvažovat o postupnosti vykonávání funkcí a v tomto pořadí je ukládat do FSD zleva doprava. Dále budeme uvažovat o podmínkách řízení sekvence vykonávání. Můžeme je popisovat a) textově s použitím terminologie uživatele b) s využitím Jacksonovy notace (celkem dobře se dá vystačit se symboly pro sekvenci, selekci a cyklus)
Obchodní firma
1. Marketing
2. Příprava kontraktu
3. Péče o zákazníky
6. Účetnictví
4. Nákup zboží 2
3.1 Předplacené služby
3.2 Pohotovostní servis
Obr. 2 Příklad funkční struktury V názvu funkce by se měl objevit nějaký slovesný tvar. Nejvhodnější je názvy funkcí tvořit jako holé věty. Podmět reprezentuje objekt, se kterým funkce pracuje a přísudek charakterizuje tuto činnost, např. "Přijmi objednávku", "Vystav fakturu". Přitom je vhodné používat terminologii z předmětné oblasti - nezapomínejme, že našim diagramům musí porozumět i uživatel, se kterým budeme konzultovat výsledky analýzy. case/4/0 rozeznává tři typy funkcí: • výkonné funkce (transformační), které mění obsah nebo strukturu dat nebo materiálu, • dialogové funkce, které slouží na komunikaci uživatele se systémem, dávají uživateli možnost řídit chod systému pomocí menu a dialogových obrazovek, • řídící funkce, které koordinují aktivity výkonných a dialogových funkcí • • •
Pravidla vytváření funkční struktury
Každá funkce se v systému může objevit pouze jednou. V případě, že zadáte už existující název funkce, case/4/0 vypíše chybovou zprávu. Výjimkou z uvedeného pravidla jsou tzv. stavební kameny, které můžete používat libovolně často. Funkční struktura je vyjádřena stromem. V stromové struktuře jsou zavedeny hierarchické úrovně. Funkce, které jsou spojené spojnicí mezi dvěma sousedními hierarchickými úrovněmi, nazýváme rodičem a potomkem (dětskou funkcí).
47
case/4/0, verze 4.3 • • • • •
Dodržujte dekompoziční pravidlo 7+/-2. Počet 7 dětských funkcí vychází z toho, že člověk není schopen vnímat více než 7 objektů ve vzájemných souvislostech. Odchylka +2 nebo -2 není dogmatem, ale doporučenou hranicí. Dialogové ani řídící funkce nemohou mít potomky, musí být vždy na listové úrovni stromu. K jedné dialogové funkci patří právě jedna dialogová obrazovka nebo menu. K jedné řídící funkci patří právě jeden diagram stavů a přechodů (STD). Řízení běhu funkcí lze vyjádřit pomocí podmínek. Funkce, které jsou připojené pod podmínku, se budou vykonají pouze tehdy, je-li podmínka splněna. kořen funkční struktury
Výkonná funkce
Obr.3
listová funkce
rodičovská funkce
dětská funkce 1
dětská funkce 2
Ř ídící funkce
Dialogová funkce
Typy funkcí
Podmínky ve funkční struktuře
Pro řízení běhu funkcí můžete použít: Loop: Funkce přiřazené pod LOOP budou vykonány n-krát, pričemž velikost n je známa. Iteration: Závisející smyčka: Pokud podmínka platí, bude funkce, přiřazená pod podmínkou, vykonávána stále znovu. Repeat: Nezávisející smyčka: Funkce přiřazená pod podmínkou bude vykonávána tak dlouho, dokud nebude splněno kritérium pro přerušení. Exclusive Alternative: Výlučná podmínka: Funkce přiřazené pod podmínkou budou vykonány, pokud platí jedna anebo druhá (anebo další) podmínka (ale ne obě zároveň). Inclusive Alternative: Nevýlučná podmínka: Funkce přiřazené pod podmínkou budou vykonány, pokud podmínka platí (může být splněno i více podmínek současně). If:
Pokud je podmínka splněna, bude funkce vykonána.
Parallel: Slouží k vyjádření toho, že dvě nebo více funkcí běží paralelně. Paralelně běžící funkce by měly mít společného rodiče. To umožní vložit množství paralelně běžících funkcí do jedné sekvence funkcí. Break: Když je podmínka splněna, vede to k tomu, že funkce přiřazené pod Break nebudou už vykonávány. To znamená, že pod Break podmínku není možné umístit podstrom.
Stránky ve funkční struktuře Pokud je funkční struktura tak široce rozvětvená, že se nevejde na pracovní plochu diagramu, můžete použít stránkování. Pozor: všechny stránky jsou součástí jednoho diagramu! Mezi elementy se stránkami jsou reference vyjádřeny pomocí čísla navazující nebo předcházející stránky, tak jako na následujícím obrázku. F
F1
F2
F3 2
Obr.4a
Funkční struktura F (strana 1)
48
case/4/0, verze 4.3
1 F3
F31
Obr.4b
F32
Funkční struktura F (strana 2)
Part
Part je reference na podstrom funkční struktury, která už existuje jako samostatný diagram. Party umožňují odložit podstromy funkce (nebo datové položky nebo typové položky) do samostatných diagramů. Diagramy budou mít jméno prvku, který je kořenem odloženého podstromu. Na rozdíl od elementu stavební kámen může být Part - stejně jako funkce - referencován pouze v jediném diagramu struktury funkcí. Part datové nebo typové struktury však lze použít vícekrát. F
F1
F2
F3
Obr.5a Funkční struktura F s referencí na funkční strukturu F3 F3
F31
Obr.5b
F32
Funkční struktura F3
Blok
Blok umožňuje umístit na jednu logickou úroveň ve funkční struktuře i více elementů, než dovoluje pravidlo 7+/-2. F
F1
Obr.6
F2
F3
blok
F9
F5
F6
F7
F8
F10
F11
Funkční struktura F
Stavební kámen
Stavební kámen (Standardbaustein, Recurrent Structure) opětovně použitelná komponenta systému. Stavební kámen je v systému definován pouze jednou, ale je mnohokrát použit. Může se skládat i z více hierarchických úrovní. Komunikace funkcí stavebního kamene s jeho okolím se vyjadřuje pomocí informačních toků. 49
case/4/0, verze 4.3
Informační toky (IFD)
Diagram informačních (datových) toků je pro funkční specifikaci nepostradatelným nástrojem. Dá se říct, že je to základní kámen SA/SD. IFD je zdánlivě velmi jednoduchá technika. Obsahuje pouze několik stavebních prvků: • datové toky, které spojují následující prvky • funkce (někdy nazývané také procesy nebo transformace) • Data Store, což je označení pro libovolný systém uchovávání dat (jako český překlad jsme zvolili slovo "schránka") • terminátory, prvky z okolí systému, které do systému sice nepatří, ale jsou buď zdrojem nebo cílem datových toků V case/4/0 je tato množina ještě rozšířena o: • událostní toky (toky, které vyjadřují fakt, že nastala nějaká událost) • materiálové toky • událostní schránky (pro uložení zprávy o tom, že nastala nějaká událost) • materiálové schránky • dialogové funkce • řídící funkce Externí rozhraní
Dialogová funkce 2
Datový tok jednosměrný Skrýt Zobrazit
Výkonná funkce 1 Řídící funkce
Událostní tok
OK Zrušit
Dialogová funkce
Datový tok jednosměrný
Zapnout
Obousměrný tok
interní rozhraní k F11
Výkonná funkce 2 Mazání inf.ze schránky Materiálový tok Čtoucí tok
Entita
Entita
Obr.7
Událostní schránka
Zápis do schránky
Datová schránka
Událostní schránka
Materiálová schránka
Prvky IFD diagramu
Spojením IFD a TOPDOWN principu dostáváme dobrou techniku na vyjádření chování systému. IFD na nejvyšší úrovni se nazývá kontextový diagram. Hovoří o tom, kde jsou hranice systému, jak je systém zasazen do reálného světa. Jedinou funkcí je zde systém jako celek, který je datovými toky spojen se všemi terminátory systému, tzn. že kontextový diagram obsahuje přehled všech vstupů a výstupů, které systém potřebuje pro komunikaci se svým okolím. Zatím, na této úrovni, jsou vstupy a výstupy charakterizované velmi obecně. K upřesnění dojde později. Dostáváme se k tomu, že je potřebné přesněji charakterizovat datové toky. Datový tok je orientovaný, pojmenovaný a bývá strukturovaný. Orientace znamená, že tok někde vzniká a někde má svůj cíl. Obousměrné datové toky se používají pro vyjádření operace aktualizace dat. Datový tok spojuje většinou funkci s nějakou schránkou. Je to přirozenější spojení než on-line spojení dvou funkcí. Většinou data, která jsou výstupem jedné funkce, zpracovává jiná funkce asynchronně, tzn. že na nějaký čas je musíme nějakým způsobem uchovat. Zatím je lhostejné, jestli v souboru, databázi, paměti nebo jinde, prostě ve schránce. Přímé spojení dvou funkcí je méně časté, vzniká tu totiž problém synchronizace práce funkcí. Správné pojmenování datového toku je mimořádně důležité pro srozumitelnost a čitelnost diagramů. A také největším problémem při tvorbě IFD. Tady nepomůže žádná metoda, pouze dokonalá znalost věcné problematiky, kde má vytvářený systém sloužit. Problémy mohou vznikat i potom, co jsme názvy pracně vymysleli, a sice z nedostatečné obecnosti pojmenování. Sklon používat konkrétní názvy mají především odborníci na věcnou problematiku, které určil uživatel na spolupráci s analytiky pro první fáze vývoje systému. Na druhé straně analytici mají sklon se 50
case/4/0, verze 4.3 vyjadřovat nesrozumitelně. Obecné názvy jsou zavedené proto, aby formulovaný model byl pružný a použitelný i při menších změnách reality. Správný název datového toku musí plnit tři důležité funkce: • umožňuje pochopit význam IFD i uživateli a tím usnadňuje komunikaci mezi uživatelem a řešitelem, • symbolizuje strukturu toku, • slouží jako identifikátor v Data Dictionary. To co jsme uvedli pro názvy datových toků, plně platí i pro funkce, schránky a terminátory. Funkcí rozumíme v IFD nějakou transformaci dat, tedy výstupní datový tok je jiný než vstupní. Synonyma pro funkci jsou proces nebo transformace. Funkce vždy musí mít vstup i výstup, ve funkci nemohou žádná data vznikat ani se bez efektu ztrácet. IFD má hierarchickou strukturu. Na nejvyšší úrovni je kontextový diagram, o kterém jsme už mluvili. Hned pod ním je IFD úrovně 0, potom IFD úrovně 1, atd. Důvodem pro toto členění je srozumitelnost diagramů. Uvádí se, že člověk je schopen najednou obsáhnout maximálně 7 objektů (s tolerancí +/- 2 objekty) s jejich vzájemnými vztahy, uvažovat o těchto objektech a vztazích a dělat patřičné závěry. Hierarchie IFD vznikne tak, že každá funkce je podrobněji rozepsaná na nižší úrovni. Přitom se musí dodržet pravidlo o korespondenci úrovní. Toto pravidlo hovoří o tom, že všechny vstupy a výstupy funkce musí být zaznamenané i na nižší úrovni popisu funkce. Při vytváření této hierarchie se funkce číslují. Pokud je to možné, očíslují se funkce v tom pořadí, jak to odpovídá hlavnímu toku dat. Někdy to má smysl, někdy ne. Druhým důvodem pro zavedení číslování je snadnější identifikace úrovně. 1 4. Nákup zboží
4.1 Vystavit objednávku dodavateli
4.2 P říjem zboží na sklad
4.3 P říjem došlé faktury
Obr. 8 Funkční struktura Obchodní firma (strana 2)
Dodavatel Došlá faktura
Dodací listy Zboží 4.2 P říjem zboží na sklad
Objednávka
4.3 P říjem došlé faktury
Zboží
Objednávka
Objednávky dodavatelům
Dodací listy
Dodací listy
4.1 Vystavit objednávku dodavateli
Objednávka
Dodací listy
Zboží P řijatá faktura
Stav zboží na skladě
Skladové karty
Faktury
Obr. 9 Informační toky 4. Nákup zboží Členění končí až tehdy, kdy je možné funkci popsat jiným způsobem - popisem vnitřního chování funkce (algoritmem). Na obrázku 8 je strom funkcí, pro který jsme se na obrázku 9 pokusili znázornit hierarchii IFD. Všimněte si korespondence úrovní ve FSD a IFD.
51
case/4/0, verze 4.3 V souvislosti s názvy jsme hovořili o významu srozumitelnosti diagramů. Přispívá k tomu i grafické uspořádání prvků, estetická stránka diagramu. Doporučuje se uspořádat funkce tak, aby to odpovídalo logice zpracování, stejně jako při číslování funkcí. Poslední skupina pravidel pro tvorbu IFD je nekompromisní. IFD rozhodně NESMÍ obsahovat: • "černé díry", tj. funkce, do nichž data pouze vstupují, • samogenerující funkce, tj. funkce, které mají pouze výstupy, • neoznačené toky a funkce, • schránky, z nichž se pouze čte nebo pouze zapisuje. Uvedeme jeden zajímavý doporučovaný postup tvorby IFD (Event Partitioning Approach). Nebere za základ funkční strukturu, kterou vytvořil řešitel v jednom z prvních kroků funkční analýzy a která nemusí být optimální, ale vychází ze seznamu událostí, který je víceméně objektivní: 1. Pro každou událost vytvořit proces 2. Každý proces pojmenovat podle reakce na událost 3. Ke každému procesu doplnit vstupy a výstupy a případně schránky (Jaká data funkce potřebuje? Co je jejím výstupem?) 4. Kontrola konzistence, tj. vyvažování výsledku s kontextovým diagramem. Všechny vstupy v kontextovém diagramu se musí objevit také ve funkčním modelu, a totéž platí pro výstupy. Pozn.: Až sem se dělal kompletní, úplný model, což trochu odporuje TOPDOWN principu a požadavku na přiměřenou složitost. 5. Kompozice meziúrovně (resp. nového IFD úrovně 0) přístupem Information Hiding (skrývání schránek): • mezi funkcemi vyhledat lokální schránky, • tento DS se svými funkcemi tvoří funkci vyšší úrovně (vytvoření diagramu vyšší úrovně), • rozpustit původní diagram do subdiagramu. To je vlastně postup zdola, ale vyvažování vstupů a výstupů na jednotlivých úrovních musí probíhat i při tomto postupu. Pravidla vyvažování jsou v kapitole o souvislostech mezi modely SA/SD. Smyslem tohoto kroku je podívat se na systém zase z jiného úhlu pohledu a najít tak další možnosti jak ještě model systému zlepšit. Co je to Information Hiding? Jestliže jsme dobře provedli bod 1), máme nakreslenou plachtu s mnoha a mnoha symboly pro označení funkcí. Aby jsme se v tom vyznali, měli bychom respektovat pravidlo o 7 +/- 2 funkcích v jednom diagramu. Některé funkce tedy necháme sestoupit o úroveň níž a prohlásíme je za jednu funkci vyšší úrovně.
♦
case/4/0 podporuje klasickou dekompozici shora dolů. Zatím nemá automatizovanou podporu pro přesunování funkcí mezi hierarchickými úrovněmi. Uvedený postup je však možné v prvním přiblížení funkčnímu modelu vykonat i ručně, s tužkou a papírem.
Shrnutí pravidel pro tvorbu IFD 1) pro všechny prvky IFD používat výstižné názvy 2) očíslovat funkce 3) nepřekračovat únosnou složitost IFD Výjimky: kontextový diagram a úroveň 0, které musí být úplné 4) dbát na estetické uspořádání IFD 5) vyvarovat se nelogických konstrukcí
2.3.2. Datová analýza a model dat
Základní problém datové analýzy lze formulovat takto: Jak popsat data uložená v systému a vztahy mezi nimi, jak přesně zachytit význam datových položek, jak zajistit aby reprezentace dat v systému byla dostatečně pružná i pro zodpovězení dotazů, které při analýze nebyly formulované. Data mají popisovat vlastnosti objektů nebo jevy reálně existující v našem světě. Formalizované postupy pro popis významu dat jsou definované. Na této úrovni se hovoří o sémantickém modelu, který má popisovat data nezávisle na jejich uložení. Sémantické datové modely umožňují datově orientovaný pohled na realitu. Popisují reálné typy objektů (jako osoby, produkty, výsledky obchodu apod.) a jejich souvislosti (nenahrazují však popis informačních toků). Jaké výhody sémantický model přináší? 1. Obohacením pohledu na systém o nové hledisko získáme další poznatky o projektovaném systému. 2. Mezi programem a realitou se vytvoří rozhraní, které ulehčí přenášení změn v realitě do programu. Vložením sémantického datového modelu mezi program a realitu vytvoříme předpoklady pro použití formálního aparátu pro transformaci sémantického schématu do logického (v našem případě relačního). 3. Sémantický datový model je nejdůležitější dokument pro návrh databáze. 52
case/4/0, verze 4.3 4. Na druhé straně mezi sémantickým datovým modelem a realitou jsou vztahy natolik jednoduché, že údržbu modelu můžeme svěřit uživateli. Potom datový model vlastně vystupuje jako jeden z prostředků komunikace mezi uživatelem a projektantem. 5. Jeho formální prostředky jsou blízké lidskému pohledu. Výsledek sémantického modelování se většinou označuje jako konceptuální datový model. Jak se propracovat k tomuto modelu? Podle zkušeností se většinou nejdřív dělá funkční model, ale může to být i naopak, případně se oba modely dělají paralelně. Sémantický model se většinou dělá jenom intuitivním způsobem, při kterém se snažíme za použití abstrakce zachytit ty skutečnosti, které jsou důležité pro náš systém. Praktický postup pro jeho vytvoření by mohl vypadat např. takto: 1. Analýza existujících informačních elementů. Nejprve musíme určit věcnou oblast, které se budeme věnovat. Musí to být dostatečně malý výsek reality, takový abychom jej s našimi prostředky a schopnostmi zvládli. Snaha dosáhnout najednou příliš mnoho obvykle nekončí dobře. Např. formuláře, spisy, kartotéky, soubory, databáze se za spolupráce s uživatelem shrnou do přehledu, z kterého se bude vycházet v dalších krocích. 2. Analýza a popis důležitých typů objektů. Důležité objekty hledáme ve zpracovaném přehledu informačních elementů za pomoci uživatele. Rozhodně doporučujeme vytvořit s uživatelem jakýsi workshop a spolu s určením relevantních typů objektů udělat hned také popis významu typu objektu, tj. definovat jeho smysl a obsah. Ušetříme si tím spoustu práce a nepříjemností při pozdějších dohadech o obsahu entit. 3. Analýza a popis identifikačních atributů. Každý objekt má nějakou vlastnost (atribut), která jej odlišuje od ostatních objektů stejného typu. Např. všechna auta mají SPZ a každá z nich je jiná. Tzn. že konkrétní auto odlišíme od jiných podle SPZ a SPZ nám poslouží jako identifikační atribut. Později se identifikační atribut stane primárním klíčem. 4. Analýza a popis důležitých typů vztahů. Postavíme proti sobě dva typy objektů a zkoumáme vztah mezi nimi. Jestliže použitím vztahu dokážeme zodpovědět nějakou důležitou otázku, bude vztah zahrnutý do modelu. V tomto kroku také určíme kardinalitu a parcialitu. 5. Přezkoušení hrubého datového modelu. Opět ve spolupráci s uživatelem zjišťujeme, zda: • vyhovují identifikační atributy • zda je vhodné datový model rozdělit (většinou při více než 20 typech objektů začneme vytvářet několik pohledů na realitu podle specializace různých uživatelů, přitom se tyto pohledy mohou překrývat) • zda je možné zodpovědět všechny požadované dotazy • zda všechny typy objektů, které jsme zahrnuli do modelu, jsou použité v některé z navrhovaných funkcí Tímto sice najdeme jen hrubé nekonzistentnosti, ale zato je můžeme odstranit s podstatně menšími náklady než při pozdějších fázích vývoje. 6. Odstranění redundantních vztahů. Tady pomůže pouze dokonalá znalost věcné problematiky, není možné použít žádná formální pravidla. Kritéria pro výběr vztahů do modelu se mohou rozdělit do dvou skupin. V první budou vztahy vyjadřující existenční závislost objektů. Vznikne (zanikne) jeden - a totéž v závislosti na něm provede druhý. Ve druhé skupině budou kritéria nepřímo určena funkčním modelem. Jestliže nemáme žádný požadavek na spojení informací o dvou objektech do jednoho formuláře, potom je zbytečné zatěžovat databázi udržováním takového vztahu. Do úvahy je však třeba vzít i další rozvoj systému. 7. Analýza a popis důležitých atributů a jejich přiřazení k typům objektů. Už při definici atributů bychom měli dodržovat určitá základní pravidla, která nám později usnadní normalizaci: • opakované skupiny atributů nejsou přípustné • atribut je jednoznačně přiřazen k jednomu typu objektu (výjimkou je klíčový atribut) • atribut může záviset pouze na klíči V sémantickém datovém modelu většinou vynechávají atributy, jejichž hodnoty se dají odvodit (vypočítat) z hodnot jiných atributů. Tyto atributy způsobují redundance dat a pokud se s nimi počítá při implementaci, bývá to jedině z technicko-zpracovatelských příčin. 8. Analýza a popis integritních podmínek. Sémantická datová integrita znamená korektnost a úplnost dat. Některá omezení může implicitně obsahovat už samotný datový model, např. kardinalitu vztahů. Ostatní je třeba popsat explicitně. 9. Přezkoušení detailního datového modelu. Po dokončení kroků 7 a 8 korektním způsobem by měl být datový model úplný, konzistentní a bez redundancí. Můžeme ho ještě přezkoušet z uživatelského hlediska. Doporučujeme tento test vykonat zvlášť důkladně, pokud jsme datový a funkční model vyvíjeli nezávisle. Konceptuální (tj. implementačně nezávislé) schéma, je vlastně idealizovanou datovou základnou. Hovoří pouze a jen o tom, co má být obsahem datové základny, tedy o objektech (entitách), o jejich vlastnostech (atributech) a o vztazích mezi objekty. Při tvorbě konceptuálního schématu příliš mnoho zdrojů informací nemáme. Pomůže nám, jestliže máme vysoké odborné znalosti o věcné oblasti, kterou se chystáme popsat. Hlavním zdrojem informací však musí být uživatelské požadavky. Uživatel formuluje dotazy v termínech, které zná. Přitom se zabývá pouze těmi vztahy, které ho zajímají. Řešitel potom stojí před úkolem syntetizovat poznatky z uživatelských specifikací. Jsou autoři, kteří tvrdí, že data jsou primární, důležitější než funkce (J.Martin). Do jisté míry data jsou skutečně stabilnější než funkce, ale přeceňování datové stránky vede k problémům. 53
case/4/0, verze 4.3 Zpracovali jsme tedy konceptuální schéma. Ověřme si, jestli splňuje všechny následující požadavky: 1. KS musí mít důsledně odfiltrované všechny implementační vlivy, nesmí být ovlivněno tím, jestli si na našem počítači něco nemůžeme dovolit. 2. KS musí být úplné. Musí obsahovat všechny podstatné vlastnosti reality. Neformální poznámky na okraji papíru nebo dokonce jen v mysli projektanta jsou hrubým hříchem a docela jistě se to časem v systému projeví. 3. KS musí být srozumitelné, jednoduché a přehledné, a to nejen pro projektanty, ale také pro uživatele. Je to zdánlivě trochu v rozporu s požadavkem na úplnost KS. Zdánlivě proto, že když uživateli předložíte k posouzení KS, který se Vám podle Vašeho názoru podařilo krásně zjednodušit, řekne Vám, že je to špatně, protože tam není toto a tamto.
Entity-Relationship model (ERM)
Jedním z možných a zřejmě nejčastěji používaným způsobem pro modelování reality je entitně-relační model [Chen,1976]. Tento model si všímá pouze tří věcí: • které objekty nás zajímají, • jaké jsou vztahy mezi těmito objekty, • jaké vlastnosti (atributy) objektů resp. vztahů potřebujeme znát. Rozlišujeme přitom dvě třídy objektů - entity a atributy. Správný výběr entit je velmi důležitý. Doporučuje se opět použít pohled shora na modelovanou realitu. Pomalu při zkoumání sestupujeme na podrobnější úrovně, až najdeme takové věci nebo skutečnosti, o kterých můžeme mluvit bez složitého popisování. ERA model (Entity - Relationship - Attribute) byl zformulován v roce 1976. Od té doby se mnohokrát modifikoval. Základními prvky ERA modelu jsou objekty (entity), vztahy a vlastnosti (atributy). V case/4/0 budeme používat spíš název ER-model. dodává Dodavatel
CN
CN
Druh zboží
Dodací podmínky
Obr. 10
Příklad ER-modelu
Entity
Entity představují něco, co je předmětem našeho zájmu. Při tvorbě KS musíme mít stále na mysli, že je rozdíl mezi typem entity a jednotlivými výskyty entity. Při modelování reality pracujeme s typy entit. Každý typ entity musí mít v KS své místo. Nemyslí se tím pouze poloha v obrázku, ale také vymezení polohy entity v prostoru a čase. Entita musí mít svoji definici, vyčerpávající popis, ze kterého se dozvíme jaké objekty tento typ entity reprezentuje, jak entita vzniká a jak zaniká. V popisu musí být také časové hledisko, tzn. od kdy do kdy entita v systému existuje. Většinou to závisí na nějaké události nebo na čase, případně může být entita závislá na existenci jiné entity, tzv. základní entity. Určit "definiční obor" pro typ entity, která má reprezentovat hmotné objekty, je poměrně jednoduché. Mnohem složitější to bývá pro abstraktní entity, např. úkoly, události. Dále musíme definovat množinu vlastností entity (atributů). Entita se v diagramech ERM, i ve všech jiných diagramech case/4/0, zobrazuje jako obdélník se zaoblenými rohy. Entita
Vztahy Druhou nejdůležitější částí ERA modelu jsou vztahy mezi entitami. Nejde o to, najít veškeré vztahy mezi entitami, ale vystihnout ty, které jsou důležité pro splnění uživatelských požadavků. Tady je další vazba mezi datovým a funkčním hlediskem. Musíme vědět, s jakými dotazy se uživatelé budou na datovou základnu obracet a minimálně tyto musíme umět zodpovědět. Minimálně proto, že dobrý projektant se snaží uživatele předběhnout a přemýšlí i o tom, co si může uživatel ještě vymyslet.
54
case/4/0, verze 4.3
1
Entita1
vztah Entita2 CN
Vztah má několik důležitých charakteristik:
Násobnost Nejjednodušší a nejpoužívanější je binární vztah. Spojuje dvě entity. Tzv. n-ární vztah spojuje obecně n entit. poslal
Dodavatel
CN
pøišla od
1
Došlá faktura
Obr. 11 Binární vztah učí
Učitel
P ředmět
CN
CN
CN
Učebna
Obr. 12 N-ární vztah Poněkud problematické však bývá vyjádření n-árního vztahu při implementaci datové základny. N-ární vztah je sice možné nahradit patřičným počtem binárních vztahů, ale je tu nebezpečí ztráty informací. Vhodným způsobem pro vyjádření n-árního vztahu v relační struktuře je zavedení nové entity, tzv. vazební, která bude nositelem informací o n-árním vztahu. Na vztah se prostě díváme jako na abstraktní objekt, o kterém nás zajímá to a to - tedy nadefinujeme atributy vztahu. Tím, že se na vztah díváme jako na entitu, máme zároveň vyřešený problém, kam umístit atributy tohoto vztahu.
Kardinalita
Kardinalitu 1:1 má vztah, který na obou stranách může mít pouze jediný výskyt entity. Vztahy s kardinalitou 1:N jsou asi nejčastější. Typické je použití vztahu 1:N pro vyjádření jednoho hierarchického stupně. Dodavatel
poslal CN
přišla od 1
Došlá faktura má N
CN dodává
patří k 1
CN Položka faktury
Druh zboží
Obr. 13 Příklady vztahů s různou kardinalitou Pro určení správných charakteristik vztahu mezi entitami je vhodné vyměnit pořadí entit a pokusit se číst vztah znovu. Pokud vám vyjde poněkud kostrbatá věta (i s pomocí pádů a předložek), pokuste se najít vhodnější pojmenování vztahu. U vztahu 1:N si ověřte, jestli nejde o M:N vztah.
♦
V case/4/0 máte několik možností, jak označit vztah. Pokud se vám podaří najít takové označení vztahu, které bude "čitelné" z obou stran vztahu, přiřaďte označení ke kosočtverci, který reprezentuje vztah. Viz obr. 5 : Dodavatel_dodává_Druh zboží Druh zboží_dodává_(kdo:) Dodavatel Pokud to nejde, přidejte označení k jednotlivým stranám vztahu, jako např: Dodavatel_poslal (žádnou, jednu nebo N)_Došlých faktur Došlá faktura_přišla (od právě jednoho)_Dodavatele Nezapomeňte spolu s označením vztahu interpretovat také kardinalitu vztahu. 55
case/4/0, verze 4.3
Podobně jako u n-árního vztahu nastávají určité problémy s M:N vztahem při implementaci. Také řešení je podobné - pomocí vazební entity. Toto řešení můžeme naznačit už v konceptuálním schématu.
Odvoditelnost Pro přehlednost a srozumitelnost asi není vhodné snažit se zachytit úplně všechny vztahy, které se dají vypátrat mezi objekty v modelované realitě. Je třeba najít ty, které se nedají odvodit z jiných vztahů. Takové vztahy nazveme přímé. Abychom je mohli spolehlivě určit, musíme mít solidní znalosti o věcné problematice, o které má hovořit datová základna. Odvozené - nepřímé vztahy se do schématu dostanou také, ale jejich potřebu může odůvodnit jedině funkční analýza.
Parcialita Zatím jsme hovořili o vztazích mezi typy entit, hovořili jsme vlastně o typu vztahu. Konkrétní výskyt vztahu je závislý na výskytu entit, které spojuje. Jestliže pro vztah dvou entit (binární vztah) vždy platí, že při výskytu jedné entity musí nutně existovat i výskyt druhé entity, je to vztah totální. Jednoduše vztah se musí vyskytovat vždy bez ohledu na jakékoliv podmínky. Mezi entitou OSOBA a entitou OBEC můžeme vztah BYDLÍ vyhlásit za totální. Vztah PRACUJE mezi entitou OSOBA a entitou PODNIK však totální není. Nemůžeme říct, že by každá osoba musela zaručeně pracovat v nějakém podniku. Je to vztah parciální. Tento je navíc zajímavý tím, že je parciální jednostranně. Když ho budeme číst ze strany podniku, v PODNIKu PRACUJE OSOBA, bude se tvářit totálně. Z druhé strany se bude tvářit parciálně: OSOBA PRACUJE v PODNIKu (může ale nemusí).
1
Osoba
Obec N
C
N
Podnik
Obr. 14 Vyjádření parciality vztahu
♦
case/4/0 vyjadřuje parcialitu vztahu spolu s jeho kardinalitou. Pokud se v označení kardinality vyskytuje "C", znamená to parciální vztah. Někdy se používá i termín podmíněný vztah (C: Condition, podmínka). Mezi dvěma entitami může dokonce existovat více vztahů. Např. PODNIK může VÝROBEK VYRÁBĚT, PRODÁVAT, KUPOVAT. Toto musí být jasně definováno v konceptuálním schématu. Složitější vztahy často mívají atributy.
Asociativní vztah Asociativní vztah se používá pro vyjádření závislosti mezi existencí vztahu a výskytem entity anebo pro připojení entity ke vztahu, který má mít vlastní atributy. Taková připojená entita je potom vlastně nositelem atributů vztahu. Typicky se asociativní vztahy připojují na M:N vztahy.
Entita1
CN
vztah Entita2 CN
Asociativní vztah
Entita3
Obr. 15 Asociativní vztah
56
case/4/0, verze 4.3
Vztah klasifikace
Pro generalizaci a specializaci má case/4/0 speciální typ vztahu. Nejdříve ale musíme definovat pojmy: Nadtyp entity Nadtyp entity je entita, která je generalizací více jiných entit (které nazýváme podtypy). Podtyp entity Podtyp entity je entita, která je specializací jiné entity (kterou nazýváme nadtypem). Jestliže příslušnost objektu k jednomu podtypu entity vylučuje jeho příslušnost k jiné entitě, hovoříme o exkluzivním vztahu. Nejsou-li podtypy párově disjunktní, hovoříme o inkluzivním vztahu klasifikace.
Nadtyp entity
vztah klasifikace
Podtyp 1
Podtyp 2
Podtyp 3
Obr.16 Vztah klasifikace
Atribut
Atributy jsou všechny podrobnosti, které nás zajímají o daném objektu (entitě) nebo vztahu. Pokud nám dá příliš velkou námahu vymyslet nějaké pro nás zajímavé vlastnosti (atributy), je lepší další energii vložit do zkoumání, zda takové entity potřebujeme vůbec navrhovat v novém systému. Atribut by pokud možno měl mít nějakou hodnotu pro každý výskyt entity. Pokud zaručeně má pro každý výskyt jinou hodnotu, je to atribut identifikační (rodné číslo, výrobní číslo, SPZ, apod.). Jestliže nutně nemusí mít hodnotu, je to parciální atribut (číslo pasu, telefonní číslo). Pokud atribut má pro jeden výskyt entity více hodnot, je to opakovaný atribut (např. jazykové znalosti pracovníka). Na výše uvedených obrázcích zároveň vidíte základní symboly používané v case/4/0 pro vytvoření konceptuálního diagramu. V literatuře se objevují i další rozšíření, ale většinou se ukáže, že pro přehlednost konceptuálního diagramu není možné zakreslovat všechno. V case/4/0 se atributy graficky neznázorňují vůbec. V konceptuálním schématu by měly být i definiční obory hodnot atributů a v žádném případě nesmí chybět verbální popis modelu. Pro každý typ entity by především měl existovat popis procesu vzniku a zániku entity (objektu).
♦
case/4/0 standardně poskytuje tyto informace o atributech:
Atributy v ER-modelu erm Entita A
atribut1 atribut2 atribut3
Entita A_atribut1 Entita A_atribut2 Entita A_atribut3
SHORT TEXT( ) DATETIME
Informace je rozdělena na tři sloupce: název atributu, jeho datový element (viz dále) a datový typ. Podrobnější výstupy o ER-modelu najdete v příkladu "Půjčovna CD".
Vztah konceptuálního schématu dat a IFD V podstatě jde o to, aby nároky na data, které mají funkce navrhované v IFD, byly pokryty navrhovaným datovým modelem. Je třeba ověřit úplnost a účelnost datového modelu, tzn. přesvědčit se, že datový model obsahuje všechny potřebné entity a atributy, a že struktura (vztahy) také vyhovuje. Je pravděpodobné, že pohled na datový model z hlediska požadavků funkcí přinese doplnění nebo naopak redukci datového modelu. Úvahy o vztahu datového modelu a funkcí mohou být prvním podkladem pro návrh dekompozice databáze. Přitom máme na mysli jednak dekompozici na samostatné projekční celky, a jednak skutečné rozdělení datové základny při realizaci. Rozvoj SŘBD už došel k podpoře distribuce a nabídnul nám silnější prostředky pro projektování systémů distribuovaného zpracování dat. Základním principem pro distribuci je, že entity nejčastěji využívané nějakou skupinou funkcí, mají být v jedné lokální databázi.
Implementace datové základny Konceptuální schéma naprosto nebere do úvahy, v jakém prostředí má být systém provozován. Zabývá se pouze obsahovou stránkou věci.
57
case/4/0, verze 4.3 Implementační fáze má za úkol navrhnout, jakým způsobem použít konkrétní technické a programové prostředky, které máme k dispozici, případně jaké prostředky použít, aby implementace přinesla co nejmenší omezení konceptuálního schématu. Možnost vybrat si prostředí podle navrženého konceptu je samozřejmě lepší, ale ne vždy je to možné. Vůbec nejhorší, ale často viděnou variantou je udělat jako první krok k novému systému nákup hardware. Postup při implementaci by mohl vypadat asi takto: Výběr implementačního prostředí Hardwarem se nebudeme zabývat, ale v dalších kapitolách se zmíníme o operačních systémech a relačních databankách. Samozřejmě není vyloučeno použití souborové organizace, ovšem řešitel musí počítat s většími problémy při programování, musí si vytvořit funkce, které dnes běžně umí databázové systémy. Vytvoření logické struktury datové základny V našem případě se budeme zabývat pouze transformací ERA modelu do relační struktury, i když jsou i jiné možnosti, např. použít typ lineární nebo stromové struktury. case/4/0 provádí transformaci do relační struktury automaticky. Vytvoření fyzické struktury datové základny Složitost tohoto kroku je dalším z argumentů pro volbu nějakého databázového systému. Odpadne tak nutnost mít podrobné znalosti o principech fyzického ukládání dat. Po vypracování návrhu na logické úrovni už zbývá jen udělat popisy datových struktur ve vybraném jazyce, vytvořit testovací databázi a ještě dolaďovat logickou a fyzickou strukturu. Testovací databáze bude sloužit i pro testování algoritmů jednotlivých funkcí a později také pro testování nových verzí nebo nových aplikací. Testovací databázi doporučujeme naplnit takovým množstvím dat, které se už řádově bude přibližovat skutečnému stavu. Hlavním přínosem je možnost otestovat funkce i z časového hlediska a vyhnout se nepříjemnostem při nasazení. Pokud máme v úmyslu databázi distribuovat, vše se značně komplikuje o otázky správného rozdělení databáze, překrývání jednotlivých částí, spolupráce subsystémů. Rozdíl mezi optimálním a chybným návrhem může být řádový. Optimalizačním kritériem jsou většinou náklady na zpracování a čas.
Logická struktura dat je implementace konceptuálního schématu. Můžeme ji chápat jako abstrakci vztahů mezi daty. Nejde ještě o fyzickou strukturu, ale už jsou tu určité implementační charakteristiky (musím už vědět, jestli bude použitá lineární, stromová, nebo relační struktura dat). Nehovoří se však zatím o podrobnostech jako velikosti pamětí apod.. Rozhoduje se o tom, jaké potřebujeme přístupy, jakou dobu odezvy, jaký způsob aktualizace a frekvence aktualizace, objem aktualizace. Dále se uvádí charakteristiky dat: • počet výskytů (kolik bude potřeba paměti) • četnost vztahů (kolik materiálů může být na kolika skladech) • proměnlivost dat a vztahů (vliv na způsob implementace datové základny) Při tvorbě logického schématu už musíme uvažovat také o tom, jestli hardware, který plánujeme použít, bude vyhovovat kapacitou paměti a zhruba musíme odhadnout i požadavek na výkon.
Fyzická struktura dat
Je to skutečná struktura uložení dat v počítači. Každou logickou strukturu lze fyzicky realizovat několika způsoby. Tímto se zabývat nebudeme, přenecháme to příslušnému databázovému systému. Když projdeme tyto tři úrovně návrhu (konceptuální, logickou a fyzickou), otestujeme, zda jsme schopni zodpovědět všechny dotazy požadované uživatelem. Případně se vrátíme a změníme fyzickou strukturu dat, maximálně můžeme něco doplnit v logickém schématu. Pokud jsme nuceni vrátit se do konceptuálního schématu, je to důvod k zamyšlení nad vlastní prací, to už je zásah do obsahu datové základny.
Datové struktury (DSD) Datové struktury (Data Structure Diagram, DSD)popisují logickou strukturu datových toků nebo datových schránek z IFD diagramu. Zobrazují se ve formě stromové struktury. Datové struktury mohou obsahovat: • datové položky • reference na jiné datové struktury (Part) • reference na atributy entity (atributové položky) • reference na celé entity • podmínky výskytu položek Pro datovou strukturu platí vše, co platí pro stromové struktury. Použití Partů a stránek najdete v části, která pojednává o funkčních strukturách.
Pravidla vytváření datových struktur
58
case/4/0, verze 4.3 • • • • • •
Datové struktury popisují data z hlediska funkcí - jaké potřebují vstupy, jaké mají produkovat výstupy. Neplatí zde požadavek na jedinečnost elementů. Jednu datovou položku můžete použít v téže datové Účtenka struktuře i několikrát, jeden atribut můžete několikrát referencovat pod různými názvy položek. Datová položka, ke které je přiřazen datový element, je označena zkratkou "Attr". Používáme pro ni také pojem atributová položka. Přiřazení atributu můžete kdykoliv odstranit, čímž se z atributové položky stane "obyčejná datová položka". Samotný atribut se nezmění. Celková Datum Položky, které mají referenci na atribut položky) nebo na DPH entitu, nelze dále dekomponovat N položek(atributové částka na Z toho vystavení účtence (case/4/0 nedovolí další dekompozici). Datová položka, která má přiřazen datový element, musí být listovou položkou (case/4/0 nedovolí další dekompozici). Dokud v datové struktuře potřebujete mít na jedné hierarchické úrovni více položek, než se vejde na pracovní plochu diagramu (resp. na stránku A4), použijte tzv. strukturní elementCelková podobně jako element Obsah jednotková počet Sazba DPH částka za blok u funkčních struktur. položky cena jednotek položku
Podmíněně se vyskytující položky Podobně jako lze podmínkami řídit běh funkcí ve funkčních strukturách, je možné specifikovat, za jakých podmínek se položka ve struktuře objeví a za jakých ne. V datové struktuře je podmínka umístěna nad položkou (položkami), jejichž výskyt podmiňuje. Pro grafickou specifikaci rozdílných podmínek můžete použít tuto řadu symbolů: # Loop (FOR count = 1 .. n DO ...) o Exkluzivní varianta (XOR: a nebo b, ale nikoliv obě) Inkluzivní varianta (OR: a nebo b, nebo obě) ! If (IF podmínka THEN ...)
Vztah mezi datovými strukturami a informačními toky Pokud v IFD vytvoříte datový tok nebo schránku, case/4/0 automaticky založí novou datovou strukturu, která má stejný název jako tok nebo schránka.
Obr.17
Datová struktura Účtenka
Datové elementy
Datové elementy v case/4/0 slouží na zjednodušení správy datového slovníku. Datové elementy zastřešují jak datové struktury, tak i ER-modely. Datový element označuje třídu stejných veličin, které existují nezávisle na způsobu použití a v kontextu zkoumané věcné problematiky mohou být jednoznačně interpretovány. Věcná interpretace datového elementu je jeho sémantikou. Datový element má v rámci systému jednoznačný název a je zapsán v datovém katalogu. Na datový element se může odkazovat: • datová položka • atribut entity • dialogový element se vstupním polem • • •
Pravidla pro datové elementy
Datový element může existovat i nezávisle na datových položkách, typových položkách, atributech či dialogových elementech. Datový element lze vymazat pouze tehdy, pokud se na něj neodkazuje žádný z výše uvedených elementů. Atribut má vždy přiřazen nějaký datový element. Při vytvoření atributu case/4/0 automaticky vytvoří nový datový element a přiřadí ho k atributu. Toto přiřazení můžete případně změnit. 59
case/4/0, verze 4.3 • •
Datové položky v datových strukturách mohou, ale nemusí mít přiřazen datový element. Toto přiřazení musíte vykonat ručně. Když změníte definici datového elementu, změní se i vlastnosti všech elementů, které se odkazují na datový element a "dědí" od něj vlastnosti.
2.3.3. Model řízení Diagram stavů a přechodů (STD) Základním nástrojem modelu řízení je diagram stavů a přechodů (State Transition Diagram - STD), který obsahuje sled stavů, ve kterých se systém může nacházet a určuje, za jakých podmínek může dojít k změně stavu. Model řízení je včleněn do IFD. IFD obsahují rozšíření o řídící toky a řídící funkce. Ke každé řídící funkci je možné vytvořit STD diagram a tím detailně popsat její chování v systému - sled volání funkcí, jak se k sobě mají funkce navzájem chovat, kdy, na základě jaké splněné podmínky, se aktivizuje nějaký proces. Řídící toky a řídící funkce (procesy) se v case/4/0 používané notaci IFD označují ostře žlutou barvou. Diagram stavů a přechodů je síťový diagram, jehož uzly popisují stavy, ve kterých se může systém nebo jeho část nacházet, a jehož orientované hrany symbolizují přechody mezi stavy. Diagram přechodů a stavů zobrazuje, co se děje "uvnitř" řídící funkce. Je přiřazen řídící funkci z informačních toků. Definujme používané pojmy: Řídící funkce Řídící funkce koordinuje aktivity výkonných a dialogových funkcí a reaguje na očekávané i neočekávané události v systému. Její úlohou je aktivovat, zastavovat a ukončovat výkonné funkce a dialogové funkce. Přechod stavu Pod stavem rozumíme chování systému, které se nemění po určitý časový okamžik. Jinými slovy jde o situaci, kdy navenek nelze pozorovat žádnou změnu chování systému. Když dojde k nějaké události, určená funkce systému aktivuje výstupní událostní tok. To vede ke změně stavu systému. Tento způsob přechodů zobrazuje diagram stavů a přechodů, který je přiřazen jedné řídící funkci. Přechod je popsán podmínkami, které musí být splněny, aby mohlo dojít k přechodu. Přechod stavu lze popsat i akcemi, které se musejí vykonat, aby systém dosáhl druhého stavu. Podmínka odpovídá událostnímu toku, který vstupuje do řídící funkce. K akci vždy patří odcházející tok. Startovací akce Startovací akce (inicializace) je akce, kterou se systém dostane do počátečního stavu. Stav Pod stavem rozumíme chování systému, které se nemění po určitý časový okamžik. Jinými slovy jde o situaci, kdy navenek nelze pozorovat žádnou změnu chování systému. Když dojde k nějaké události, určená funkce systému aktivuje výstupní událostní tok. To vede ke změně stavu systému. Počáteční stav Počáteční stav je stav v diagramu stavů a přechodů, ve kterém se systém nachází bezprostředně po "zapnutí". V diagramu stavů a přechodů může být pouze jeden počáteční stav. Konečný stav V diagramu stavů a přechodů může existovat jeden nebo více konečných stavů, tzn. stavů, z kterých není možné dostat se do dalšího stavu. Dosáhne-li systém nebo část systému konečný stav, znamená to, že se bude trvale chovat tak, jak je nadefinováno pro konečný stav. Animace bude při dosažení konečného stavu fakticky ukončena, i když taktování času poběží dále. Podmínka v diagramu stavů a přechodů Ke každému přechodu v diagramu stavů a přechodů musí existovat podmínka, která musí být splněna, aby došlo k přechodu z jednoho stavu do dalšího. Jako podmínky se používají události (jedna nebo více) definované v systému. Více událostí můžete do jedné podmínky spojovat pomocí logických operátorů AND nebo NOT. Notace používaná pro STD: Stav
Podmínka Akce
Další stav
Obr.18 Diagram stavů a přechodů funkce R
60
case/4/0, verze 4.3
2.3.4. Konzistenční pravidla pro spolupráci nástrojů SA/SD
Konzistenčních pravidel je zdánlivě mnoho, ale brzy přijdeme na to, že většina z nich hovoří o stejné věci, jenže pokaždé z jiného úhlu pohledu. Chyby se dělají tak, že na něco zapomeneme anebo v rámci daných pravidel není možné definici provést, což znamená, že něco je špatně. Potom se musíme vrátit o úroveň výš a tam všechno zkontrolovat.
1) vztahy mezi IFD a DD
• •
každý datový tok a každá schránka musí být definován v DD, jestliže tam není, je NEDEFINOVANÝ, každý datový tok a každá schránka definovaný v DD,musí být v systému také použit, jestliže použit není, je to DUCH systému,
• •
každý odkaz na data v specifikaci funkce (procesu) musí představovat jednu z těchto možností: název datového toku nebo schránky spojeného se specifikovaným procesem, případně komponenty toku nebo schránky, ovšem jedině tak, jak je tato komponenta uvedena v DD, lokální data specifikovaného procesu (i lokální data musí být definované v DD)
• • • •
2) vztahy mezi specifikací funkce (procesu) k IFD + DD
3) vztahy IFD ke specifikací funkce (procesu)
každý proces (funkce), který už není rozepsán na nižší úroveň IFD, musí být popsán ve specifikaci funkce (procesu), každý specifikovaný proces musí být obsažen v některém IFD na nejnižší úrovni každému výstupnímu datovému toku z procesu v IFD musí ve specifikaci procesu odpovídat Zápis a každému vstupnímu zase Čtení,
4) vztah DD + IFD ke specifikaci funkce (procesu)
•
každý datový prvek v DD musí být použit ve specifikaci funkce (procesu) nebo v IFD, případně při popisu jiného datového prvku
•
každá schránka v IFD musí být v ERD zastoupen jako objekt (entita) nebo vztah, anebo kombinace obojího (asociativní objekt, kombinace vztahu a entity) datové prvky v DD popisují jak data v ERD, tak data v IFD, to znamená, že data popsaná v DD musí být v IFD i ERD, Specifikace funkce (procesu) musí obsahovat operace CREATE a DELETE pro každý objekt a vztah uvedený v ERD, datové elementy (atributy) každého objektu musí být nastaveny některým procesem v IFD a také některým použity,
• • •
• • •
5) vztahy ERD + IFD ke specifikaci funkce (procesu)
6) vztahy mezi IFD a Diagramem stavů a přechodů (STD)
každá řídící funkce v IFD musí mít svůj STD, každá podmínka v STD odpovídá vstupnímu řídícímu toku v IFD a naopak, každá akce v STD odpovídá výstupnímu řídícímu toku v IFD a naopak.
61
case/4/0, verze 4.3
2.4. Návrh systému 2.4.1. Základní pojmy case/4/0 používá pro návrh systému podobné prostředky, které používá v Analýze systému - tedy opět stromové a síťové diagramy. Nástroje pro návrh systému v case/4/0 umožňují plynule přejít z analýzy ke konstrukci (designu) systému. Nejvýznamnějším nástrojem pro tento přechod je Design Asistent. Pod návrhem systému budeme chápat metody, které nám nabízí case/4/0 pro návrh software: • návrh "ve velkém", tedy návrh báze dat a rozdělení systému na implementovatelné jednotky, moduly • návrh "v malém", tedy detailní specifikaci algoritmů na řešení odborných a technických úloh. Návrh software se skládá z: • návrhu databáze podle logického datového modelu ze systémové analýzy, • návrhu architektury softwarového systému. Tento krok zahrnuje rozklad funkcí specifikovaných v systémové analýze na implementovatelné jednotky. Kromě toho se zde budeme zabývat vývojem technologických, vícenásobně použitelných prvků procedurálního návrhu, tzn. detailní specifikace všech komplexních automatizovatelných funkcí. Specifikace bude sloužit jako předloha pro implementaci. Tento krok má za cíl především návrh algoritmů. Při vývoji software se setkáte se dvěma druhy problémů: 1. Problém složitosti návrhu Při zpracování dat se většinou používají poměrně jednoduché algoritmy. Složitost software je většinou daná vysokým počtem funkcí, rozhraní a rozmanitostí zpracovávaných dat. Při technickém návrhu už často nestačí jeden člověk - jednoduše není schopen udržet si o všem přehled. Vyskytují se podobné jevy jako při odborné specifikaci • neúplnost nebo redundance • skryté nekonzistentnosti a chyby • nepřehlednost návrhu • špatná udržovatelnost 2. Problémy s nestabilním zadáním a rámcovými podmínkami Celá řada příčin může vést ke změnám v zadání pro design. Např. • změněné nebo nové požadavky na systém, které mohou vyplynout ze změněné odborné specifikace • technické změny v implementačním prostředí, např. nový hardware, nový systémový software, nebo třeba jen jeho nové verze. Řešení těchto problémů je zase založeno na principech abstrakce, strukturování, hierarchizace, a modularizace. Modularizace v Návrhu systému znamená, že automatizovatelné funkce z úrovně transakcí v systémové analýze se sloučí s daty, která používají a vytvoří jeden modul. Takto vytvořené moduly nazýváme úlohově orientované. Funkce v nich obsažené patří pod jednoho rodiče ve funkčním stromu a všechny slouží k řešení jedné úlohy (transakce). Koncept úlohově orientovaných modulů vychází z předpokladů: • Specifikace zpracovaná v systémové analýze obsahuje na úrovni transakcí veškeré poznatky odborné povahy, které o novém systému shromáždili členové analytického týmu • Funkce na úrovni transakcí odpovídají modulům o složitosti několik stovek řádků kódu. Takové moduly jsou ještě přehledné a lehce udržovatelné. Každá funkce na úrovni transakcí má dvě kvalitativní charakteristiky, které lze prověřit pomocí informačních toků: • vysokou funkční vazbu • slabé datové spojení u všech dětských funkcí jednoho rodiče. Návrh "v malém", procedurální návrh odborných funkcí uvnitř modulů, se provádí pomocí postupného zjemňování. Tuto metodu popsal Wirth (1971) a je orientovaná na úlohy, které má systém vykonat. Z praktického hlediska má tato úloha tyto důležité vlastnosti: • Je jednoduchá, takže nepotřebuje žádný formální aparát. • Je všeobecně platná, tzn. že je stejně dobře použitelná i pro rozdílné případy. Cílem zjemňování je detailní specifikace algoritmů odborných funkcí. Pro statický popis dynamického chování funkcí se použije všeobecně známá metoda - strukturované programování. Konstrukty strukturovaného programování jsou sekvence, selekce a iterace, které budeme popisovat pomocí symbolů pro podmínky za použití stejné notace, kterou jsme použili v systémové analýze ve funkčních strukturách.
62
case/4/0, verze 4.3
verbální formulace problému grafický specifikační jazyk System Analysis grafický návrh software
programovací jazyk
společný jazyk bránící chybám při překladu
strojový kód
Obr. 19 Úrovně jazyka pro specifikaci systému
Procedurální návrh je možno provádět také pomocí jiných metod, např. Nassi-Schneidermanových diagramů nebo pomocí pseudokódu. Naši zobrazovací techniku (podmínkové boxy) jsme zvolili ze dvou důvodů: • Principy strukturování a hierarchizace jsou shodné s tím, co jsme poznali ve funkčních strukturách. Takto máme možnost zjednodušit formální aparát pro specifikaci systému (tím, že nebudeme zavádět další formalizmus) a vytvořit lehce čitelný a udržovatelný dokument. • Při změně specifikačního jazyka je nutný překlad, resp. transformace do nového jazyka. Při tom se nelze vyhnout riziku ztráty nebo zkreslení informací. Navíc máme možnost přejít ze systémové analýzy do návrhu prakticky plynule. Výsledek si můžeme představit jako jeden velký strom, jehož nižší větve představují algoritmy odborných funkcí z funkční struktury. Výjimku z uvedeného postupu tvoří technologické moduly. Prakticky je nelze vyvíjet postupem top-down. Vzhledem k tomu, že u technologických modulů klademe důraz na vícenásobnou použitelnost, doporučujeme spíš postup bottom-up.
2.4.2. Části návrhu systému
Pro rozvoj návrhu software máte v návrhu systému k dispozici čtyři druhy diagramů: • Modulová struktura pro specifikaci stavebních prvků software jako data, funkce a uživatelské rozhraní. Modulovou strukturu si můžete představit jako seznam všech prvků, ze kterých se modul skládá. Zobrazuje se jako stromová struktura. • Implementační strom slouží pro detailní specifikaci složitých algoritmů, může být vytvořen pro každou funkci modulu. Používá Jacksonovu notaci, kterou už známe z funkčních struktur. • Typová struktura je technický protějšek pro logickou datovou strukturu ze systémové analýzy. Slouží pro specifikaci dat, které používají funkce v modulu. • Relační model slouží pro návrh databáze, vychází z Coddovy teorie.
Design Asistent
Návrh systému bezprostředně navazuje na analýzu systému. Aby nedocházelo k nežádoucímu úbytku informací při přechodu od analýzy k návrhu, je v case/4/0 nástroj pro automatický převod výsledků analýzy Design Asistent. Ne vždy však lze přechod k návrhu zcela automatizovat, proto case/4/0 nabízí tři alternativy postupu: • Pomocí grafického editoru vytvoříte modulovou strukturu a potom pomocí speciálních příkazů explicitně určíte elementy z analýzy, např. funkce, které se mají převzít do modulové struktury. • Jestliže častěji používáte moduly s podobnou strukturou, můžete je vytvářet pomocí tzv. předloh. Do modulových předloh můžete soustředit např. podnikové standardy (struktury, programy) a specifikovat je až do úrovně kódu. Při generování pak stačí určit, které konkrétní výsledky analýzy se mají použít pro generování modulu. Budeme také hovořit o vytváření dalších instancí předlohy. • Přechod k návrhu je možné zcela přenechat na case/4/0. Nástroj Design Asistent generuje moduly z informačních toků. Z ER-modelu dokáže vygenerovat návrh databáze ve formě relačního diagramu. Datové struktury převede na typové struktury. Předpoklady pro úspěšný návrh software "na jedno tlačítko" jsou, že musíme znát základní koncept, podle kterého se vytváří architektura každého strojově tvořeného softwarového systému, a rovněž musí existovat detailní plány, tedy modulové předlohy, podle kterých se vygenerují jednotlivé prvky softwarového systému.
Architektura software a Design Asistent Design Asistent v case/4/0 vychází ze softwarové architektury, která je založena na rozdělování a klasifikaci typických výkonů softwarového systému: 63
case/4/0, verze 4.3 •
Prezentace - tento pojem zahrnuje všeobecnou schopnost k zobrazování grafiky, menu, dialogových elementů apod. • Uživatelské rozhraní aplikace - sem patří schopnosti vyjádřit výsledky jádra aplikace pomocí grafiky, menu, dialogových elementů apod. • Jádro aplikace - vykonává abstraktní zpracování (tedy pro uživatele neviditelné). • Přístup k datům - zde se skrývá práce s daty, která požaduje jádro aplikace. • Databáze - zde najdeme schopnosti pro technické ukládání dat, pro práci s daty na fyzické úrovni. Takto definovaný softwarový systém umožňuje vybrat si z celé řady strategií pro rozdělení systému.
Prezentační vrstva
Prezentační vrstva
Uživ. rozhraní aplikace
Uživ. rozhraní aplikace
J ádro aplikace
J ádro aplikace
J ádro aplikace
J ádro aplikace
P řístup k datům
P řístup k datům
Databáze
Databáze
Oddělená prezentační vrstva
Oddělené aplikační rozhraní
Prezentační vrstva
Prezentační vrstva
Uživ. rozhraní aplikace
Uživ. rozhraní aplikace
J ádro aplikace
J ádro aplikace
J ádro aplikace
J ádro aplikace
P řístup k datům
P řístup k datům
Databáze
Databáze Oddělené ukládání dat
Oddělená správa dat
Prezentační vrstva Uživ. rozhraní aplikace Oddělené aplikace
J ádro aplikace
J ádro aplikace
P řístup k datům
P řístup k datům
Databáze
Databáze
Hranice počítačů
Obr. 20 Principiální možnosti rozdělení systému
Jakým způsobem bude rozdělen konkrétní systém, je už věcí projektanta. Pro nás je teď podstatný fakt, že Design Asistent automaticky rozděluje softwarový systém tak, jak jsme ukázali na předcházejícím schématu. Design Asistent rozlišuje mezi moduly: • modul uživatelského rozhraní • zpracovatelský modul 64
case/4/0, verze 4.3 • modul pro přístup k datům Design Asistent je schopen tyto tři typy modulů generovat z informačních toků vyvinutých při systémové analýze. Potřebuje na to ale modulovou předlohu, která určuje, jaká data a funkce patří k modulu a které další moduly budou použity. Navíc může mít každý element předlohy přiřazenu generovací funkci, která popisuje, jaký kód má být pro element vytvořen. case/4/0 standardně obsahuje předlohy pro jazyky C, COBOL, Visual Basic a JAVA. Můžete však vytvořit i zcela nové, vlastní generovací funkce. Prezentační vrstva a vrstva databanky je ve většině softwarových systémů řešena pomocí komerčního software. Z toho také vychází case/4/0 a předpokládá, že pro COBOL programy použijete Micro Focus COBOL, Micro Focus Dialog System a Embedded SQL pro IBM DB2, resp. že použijete Microsoft C/C++ a pro prezentační vrstvu Microsoft Foundation Library a v přístupových modulech použijete Microsoft ODBCInterface. Pokud používáte jinou technologii, např. Progress, neznamená to, že nebudete schopni plně využít možnosti case/4/0. Komponenty pro návrh v case/4/0 můžete konfigurovat pro libovolný prezentační a databázový software.
Principy práce s Design Asistentem
Návrh software si můžeme představit jako úlohu převodu odborně specifikované funkce a dat na prvky softwarového systému. Proto se Design Asistent nasazuje na dokument, ve kterém se nacházejí odborné specifikace - na informační toky. Objasněme si principy na příkladu. Na obrázku je část modelu systému, který popisuje obchod s nábytkem. Informační tok se nazývá Výběr druhu zboží a obsahuje dialogovou funkci Druh zboží. Dále obsahuje dvě výkonné (transformační, zpracovatelské) funkce, které mají názvy Stanovit nabídku a Stanovit množství zboží na skladě. Tyto funkce čtou z entit ER-modelu. Stanovit nabidku zbozi
Seznam druhu zbozi
Druh zbozi
Vybrany druh zbozi
Stanovit mnozstvi zbozi na sklade
Druh zbozi
Zbozi na sklade Mnozstvi
Druh zbozi
Zbozi na sklade
Obr. 21 Příklad - Obchod s nábytkem
Vidíme, že Design Asistent bude muset vytvořit všechny tři typy modulů - modul uživatelského rozhraní, modul zpracovatelský a modul pro přístup k datům. V tom případě pracuje Design Asistent tak, že každou entitu nejprve otestuje, zda už je převedena na relaci, tedy na tabulku v návrhu databáze. Pokud tomu tak není, Design Asistent automaticky vytvoří návrh databáze ve formě relačního modelu. Po tomto kroku je Design Asistent připraven vytvořit pro každou entitu v informačním toku jeden modul pro přístup na odpovídající relaci. Všechny datové struktury, vstupy a výstupy funkcí popsané v informačních tocích převede na typové struktury. Všechny výkonné funkce, které se nacházejí v informačním toku, přenese do jednoho zpracovatelského modulu. Pro každou dialogovou funkci vytvoří jeden modul uživatelského rozhraní. Nakonec Design Asistent prověří, jakým způsobem jsou jednotlivé prvky v informačních tocích použity a tuto informaci přenese do modulů. Tento postup ilustruje následující obrázek. Prezentační vrstva
Uživ. rozhraní aplikace Dialogový modul “Druh zboží”
J ádro aplikace
Zpracovatelský modul s funkcemi: Stanovit nabídku zboží, Stanovit množství zboží
J ádro aplikace
P řístup k datům Databáze
Dva moduly na přístup k datům: jeden pro přístup k relaci “Druh zboží” a jeden pro Zboží na skladě”
65
case/4/0, verze 4.3 Obr. 22 Design Asistent - princip práce
Relační model
Jedním z cílů návrhu systému je převést ER-model ze systémové analýzy na návrh databáze. Předtím je však potřebné zodpovědět následující otázky: • Do jaké technicky realizovatelné struktury máme převést entity ER-modelu? • Jakým způsobem vyjádříme vztahy mezi entitami tak, aby přístupové cesty zůstaly zachovány? Jako odpověď nabízí case/4/0 relační model, který, už podle názvu slouží pro návrh relačních bází dat. Nebudeme se věnovat teorii relačních modelu, k tomu doporučujeme doplňkovou literaturu. My zde vystačíme s tabulkovou představou relačního modelu. O relacích budeme někdy hovořit jako o tabulkách a o atributech jako o sloupcích tabulky. Tabulky přitom musí mít dvě základní charakteristiky: • Pořadí řádků ani sloupců v tabulce není podstatné. • Řádky v tabulce se neopakují, tzn. na každém řádku jsou ve sloupcích jiné hodnoty. Pro identifikaci řádku potřebujeme klíč, což je atribut nebo kombinace atributů, pro které platí, že v žádném časovém okamžiku se v tabulce nenachází dva řádky se stejnými hodnotami atributů, které tvoří klíč. V případě kombinace atributů jde o minimální kombinaci, tzn. že není možné žádný atribut z kombinace vypustit, aniž by kombinace ztratila svou identifikační schopnost (tj. aniž by došlo k porušení prvního pravidla). Vztahy se v relačním modelu zobrazují šipkami mezi relacemi. Relace v relačním modelu má dva názvy, a to sémantický název, který můžeme vytvořit libovolně, a technický název, který musí odpovídat konvencím implementačního prostředí. Standardně se v relačním modelu jako technický název použije sémantický název, který lze později upravit. Relační model může obsahovat vztahy 1:1, 1:N a M:N, resp. 1:C, C:C, 1:NC, C:NC, M:NC a MC:NC. Relační model sice může obsahovat M:N vztahy, ale žádný relační systém je nedokáže implementovat přímo. Proto je potřebné M:N vztahy rozkládat na 1:N vztahy. Pokud na vytvoření relačního modelu použijete Design Asistent, rozklad M:N vztahů z ER-modelu se provede automaticky. Jakým způsobem se ale vztah v relačním schématu realizuje? K odpovědi potřebujeme definovat další pojem cizí klíč. Cizí klíč je atribut F nebo kombinace atributů F1, ... Fn relace R1, pro kterou platí, že v relačním modelu existuje relace R2, ve které existuje ke každému atributu F resp. kombinaci F1,...Fn jedna identická hodnota primárního klíče relace R2. Mezi primárním a cizím klíčem se testuje identita pouze pomocí hodnot, což také znamená, že primární a cizí klíč mohou mít rozdílné názvy. ER-model
Objednávka
obsahuje
patří k
N
CN
objednává
Relační model
Položka objednávky
Položka objednávky
Objednávka
Obr. 23 Příklad vztahu v ER-modelu a v relačním modelu.
Všimněte si rozdílu ve vyjadřování kardinality vztahů v ER-modelu a v relačním modelu. Pravidla pro referenční integritu jsou speciální výrazy, které popisují, jak se má systém chovat, aby vždy byla zaručena shoda mezi cizím a primárním klíčem. Rozlišujeme mezi integritními pravidly pro operaci DELETE a pro operaci UPDATE. Co se má stát s hodnotou cizího klíče relace, když v jiné relaci má být vymazán řádek s odpovídající hodnotou primárního klíče? case/4/0 nabízí čtyři možnosti, tři z nich představují standardní řešení, která většina RDBMS dokáže provést automaticky a poslední možností je formulace vlastního pravidla. Standardní pravidla referenční integrity • DELETE/cascades: řádky v tabulkách, které obsahují cizí klíč s hodnotou odpovídající primárnímu klíči, který se má vymazat, se vymažou také.
66
case/4/0, verze 4.3 •
DELETE/restricted: pokud existují řádky v tabulkách, které obsahují cizí klíč s hodnotou odpovídající primárnímu klíči, který se má vymazat, operace DELETE se neprovede. • DELETE/nullifies: všechny cizí klíče s hodnotou odpovídající primárnímu klíči, který se má vymazat, se nastaví na NULL hodnotu (což je třeba interpretovat jako "žádná hodnota" a nikoliv 0). Co se stane s hodnotou cizího klíče relace, když se v jiné relaci změní hodnota odpovídajícího primárního klíče, charakterizují tato pravidla: • UPDATE/cascades: řádky v tabulkách, které obsahují cizí klíč s hodnotou odpovídající primárnímu klíči, který se má změnit, se změní také. • UPDATE/restricted: pokud existují řádky v tabulkách, které obsahují cizí klíč s hodnotou odpovídající primárnímu klíči, který se má změnit, operace UPDATE se neprovede. • UPDATE/nullifies: všechny cizí klíče s hodnotou odpovídající primárnímu klíči, který se má změnit, se nastaví na NULL hodnotu. Poslední možností je definovat vlastní pravidla pro DELETE a UPDATE, forma definice je volná. Poznámka k definici primárního a cizího klíče: Všechny části primárního klíče by měly být označeny klauzulí "NOT NULL". Takto principiálně zajistíte, aby nemohly existovat primární klíče se stejnou hodnotou. Klauzule NOT NULL je významná také pro cizí klíče, i když jinak než u primárního klíče. Myslete na zajištění integrity při opracích DELETE a UPDATE! Pokud nepovolíte DELETE nebo UPDATE s nulováním (nullifies), a máte cizí klíč složený z několika atributů, doporučujeme nastavit NOT NULL buď u všech atributů složeného cizího klíče nebo u žádného. Jinak může dojít ke kolizi s integritními pravidly (viz. výše). Diskuse na toto téma je obsáhlá, doporučujeme např. knihu Date, Relational Database Writings 1985-89, Addison Wesley, 1990. case/4/0 povoluje také překrývající se klíče, viz. Obr. 24.
Cizí klíč, vztahující se k relaci R1
A
F1
F2
F3
Cizí klíč vztahující se k relaci R2
Primární klíč
B
P1
P2
P3
Cizí klíč
Obr. 24 Překrývající se klíče
Doporučujeme Vám však zacházet s touto možností opatrně, protože může dojít k nežádoucím vedlejším efektům (viz Method.pdf, str.230). Kromě primárního a cizího klíče nabízí case/4/0 také možnost definovat další indexy. Indexy však definujte pouze nad atributy, ke kterým bude systém velmi často přistupovat, resp. podle kterých bude provádět výběry z tabulek. Pro relační model analogicky platí většina konzistenčních pravidel pro ER-model. Pokud potřebujete získat přehled o všech vztazích relace, můžete si vygenerovat kontextový relační model pro zvolenou relaci. Do vytvořeného diagramu se pak dostanou všechny vztahy relace, bez ohledu na to, ve kterém diagramu jsou definovány.
67
case/4/0, verze 4.3
Typová struktura
Funkce často pracují také s daty, která nelze vyjádřit formou entit. Taková data jsme popisovali pomocí datových struktur. Datové struktury ale často nelze použít v programovém systému, protože ne vždy obsahují názvy a datové typy, jaké vyžaduje cílový jazyk. Navíc datové struktury mohou obsahovat reference na atributy entit, což nejsou prvky z navrhované databáze. Proto je potřebné při návrhu systému přepracovat i datové struktury a zohlednit softwarově-technické aspekty. Výsledkem je typová struktura. Typová struktura popisuje technickou strukturu dat, která se mají používat v softwarovém systému. Popis má podobu hierarchického rozkladu do typových položek, atributových položek, relací a podmínek. Podmínky přitom slouží na přesnější specifikaci výskytu elementů. Typová struktura se zobrazuje jako stromová struktura. Pravidla syntaxe typové struktury • Ke každému elementu typové struktury je možno kromě sémantického názvu (který se zobrazuje v diagramu), přiřadit také technický název, který zodpovídá pravidlům cílového jazyka. • Podmínky typu LOOP označují v datové struktuře opakované skupiny položek. V typové struktuře můžete opakované skupiny upřesnit tak, že zadáte počet opakování. Přitom máte k dispozici tyto alternativy - zadat pevný nebo variabilní počet opakování. • V datových strukturách se vyžaduje jednoznačnost názvů elementů. Totéž platí v typových strukturách pro sémantické názvy. Můžete ale přiřadit stejně pojmenované elementy pod jednoho rodiče. V tom případě se však musí lišit jejich technické názvy. • Pro typové struktury platí stejná konzistenční pravidla jako pro datové struktury a navíc platí, že technický název nelze změnit, pokud by změna měla způsobit to, že pod jedním rodičem budou dva elementy se stejným technickým názvem. Pokud je sémantický název atributové položky identický s názvem přiřazeného atributu v relačním modelu, potom se změna názvu atributu v relačním modelu automaticky projeví také v sémantickém názvu atributové položky v typové struktuře. Totéž platí pro technické názvy atributové položky a atributu v relačním modelu. Pokud je v typové struktuře referencována celá relace pod stejným názvem jako v relačním modelu, platí pro změny názvů analogická pravidla jako u atributové položky. Jestliže se sémantické názvy relace, resp. atributové položky v typové struktuře liší od originálních názvů v relačním modelu, potom změny názvů vykonané v relačním modelu nemají na typovou strukturu žádný vliv.
Modulová struktura
Pro systémovou analýzu je charakteristické abstrahování komplexní úlohy na jednotlivé pohledy, z nichž každý zkoumá systém z jiného hlediska, např. hierarchie funkcí nebo dat. Návrh software jako hlavní úloha návrhu systému, tyto rozdělené aspekty zase spojuje pomocí definicí modulů. Modulová struktura je tedy grafická reprezentace modulu, která ve formě stromové struktury zachycuje, z čeho se modul skládá. Popisuje tedy všechny funkce a data, jakož i speciální funkce pro obsluhu uživatelského rozhraní a rovněž všechny další použité (volané) moduly. Pravidla syntaxe modulové struktury • Kořen modulové struktury nese název modulové struktury. Pro modulovou strukturu by se měl použít sémantický název, který umožní intuitivní pochopení účelu modulu. Pokud je sémantický název nepřípustný z hlediska cílového jazyka, lze dodatečně definovat technický název. • Každý element modulové struktury musí mít sémantický i technický název. Dva elementy téhož typu mohou mít stejný technický název pouze tehdy, jsou-li jejich technické názvy odlišné. • Strukturní elementy je možné používat libovolně. Při generování kódu se tyto elementy ignorují. Všechny elementy pro vytváření modulových struktur jsou podrobně popsány v originální dokumentaci nebo v kontextovém helpu. Vytváření modulové struktury se principiálně skládá z tří kroků: • Zapouzdření funkcí a dat • Definice vnějších a vnitřních aspektů zapouzdření • Optimalizace zapouzdření ve smyslu obecných požadavků na vlastnosti modulu Ve smyslu postupu konstrukce doporučujeme (stejně jako při použití Design Asistent) koncipovat systém po vrstvách. Vrstvená architektura zaručuje snadnou přizpůsobitelnost aplikace technickým změnám (HW a SW prostředí). Vrstvená architektura přirozeně vede k hierarchické organizaci modulů. Pod organizací modulů chápeme způsob, jakým se moduly navzájem volají. I když case/4/0 umožní i síťovou organizaci modulů, vyvarujte se toho, aby schéma volání modulů vytvářelo cyklický graf. Konzistenční pravidla pro modulové struktury • Sémantický i technický název modulu můžete kdykoliv změnit. Změny se projeví všude, kde je modul použit. • Element, který obsahuje referenci na modul, přejmenovat nelze. • Modulovou strukturu nelze vymazat, pokud je použita v jiném modulu. 68
case/4/0, verze 4.3 • •
Element s referencí na modul můžete vymazat kdykoli. "Veřejné funkce", které jsou použity v jiném modulu, nelze označit jako Privátní. Pod použitím rozumíme to, zda v referencujícím modulu byla funkce zpracována volbou "Importovat funkci...". Totéž platí i pro všechny typy elementů, které popisují data.
Implementační strom (pro jazyky C a COBOL)
Modulová struktura může obsahovat reference na typové struktury nebo na relace. case/4/0 přitom pro tyto prvky generuje kód. Uživatelské rozhraní lze navrhnout pomocí grafických nástrojů a case/4/0 vygeneruje kód pro menu a dialogové obrazovky. Zbývají pouze funkce. Pro grafickou specifikaci funkce slouží implementační strom. Popisuje algoritmus funkce pomocí grafického pseudokódu. Slouží při konečné implementaci jako programovací rámec, který automaticky obsahuje řídící konstrukce a řádky komentáře. Pseudokód je založen na tvrzení, že pro strukturované programování postačují základní konstrukty - sekvence, selekce a iterace. Pravidla pro tvorbu implementačního stromu • Kořen stromu nese název diagramu a je vždy identický s názvem funkce z modulové struktury, jejíž algoritmus specifikuje. • Názvy bloků v implementačním stromu nemusí být jednoznačné a převezmou se do vygenerovaného zdrojového kódu jako komentáře. • Element CALL může obsahovat pouze volání lokální funkce aktuálního modulu nebo Veřejné funkce z importovaného modulu. CALL použije technický název funkce. • Implementační strom nemůže existovat bez reference na funkci modulu. Doporučení pro tvorbu implementačních stromů: • Vytvářejte implementační stromy se zřetelem na přehlednost a využívejte mechanizmu stránkování. • Názvy bloků a podmínek formulujte verbálně a dbejte na srozumitelnost, zároveň tak vytváříte "on-line" dokumentaci zdrojového kódu. • Zjemňujte implementační strom tak dlouho, až bude obsahovat bloky o velikosti asi 10 - 20 řádků kódu. Znamená to, že grafická reprezentace bude představovat "model" zdrojového kódu "zmenšený" v měřítku 1:20. Snadno pak porozumíte tomu, co funkce vlastně dělá a nemusíte tolik listovat a číst. • CALL elementy neschovávejte do kódu, ale vizualizujte je. • Graficky zobrazte také všechny řídící konstrukce důležité pro pochopení algoritmu. Kód Modulové struktury a grafický pseudokód funkcí ve formě implementačního stromu může case/4/0 dále zpracovávat a vygenerovat z grafických elementů kód (tam, kde je to možné). case/4/0 přitom používá generovací funkce, napsané v generovacím jazyce case/4/0. Kódování programu se potom redukuje na dopisování mezer ve vygenerovaném zdrojovém kódu.
2.4.3. Návrh software
Návrh software je kreativní činnost, pro kterou lze pouze rámcově stanovit pravidla a měřítka kvality. Návrh software můžeme rozdělit do těchto kroků: • Příprava na návrh software • Návrh a rozvoj architektury software • Návrh relačního modelu • Návrh typových struktur • Návrh hierarchie modulů • Návrh modulových struktur • Detailní specifikace • Vývoj implementačních stromů • Revize algoritmů
Příprava na návrh software s case/4/0
Máme už přehled o tom, co všechno může case/4/0 generovat. Generování můžete do značné míry řídit pomocí vlastních předloh modulů. Je to sice náročná práce, převést podnikové standardy do vlastní sady modulových předloh, odměnou je však značné zvýšení produktivity. Soubor modulových předloh můžete vždy importovat do nového systému v case/4/0. Modulová předloha je stromový diagram, který obsahuje všechny elementy, které se mají objevit v modulu. Tyto elementy označujeme jako elementy předlohy a přiřazujeme jim generovací funkce. Element předlohy vlastně "rezervuje místo" v modulu pro konkrétní relaci, typovou strukturu nebo funkci. Elementy předlohy vypadají po grafické stránce stejně jako typ elementu, který v předloze zastupují, jedinou výjimkou je barva, elementy předlohy jsou šedé. Když budete chtít podle předlohy vygenerovat modul, case/4/0 bude požadovat informace, které konkrétní reference chcete použít místo elementů předlohy. Při přípravě předlohy můžete kombinovat příkazy cílového 69
case/4/0, verze 4.3 jazyka s voláním generovacích funkcí, které si připravíte. Následuje příklad předlohy pro funkci SELECTALL (pro COBOL). Předloha: SELECTALL SECTION. EXEC SQL. DECLARE CALL DB2ID("Relation") CURSOR FOR SELECT * FROM CALL DB2ID("Relation") END-EXEC. EXEC SQL OPEN CALL DB2ID("Relation") END-EXEC. CALL ESQLDB2StoreCursor("Relation",7,"","") EXIT. Výsledek (po určení parametru předlohy): SELECTALL SECTION. EXEC SQL. DECLARE ARTIKEL CURSOR FOR SELECT * FROM ARTIKEL END-EXEC. EXEC SQL OPEN ARTIKEL END-EXEC. IF SQLCODE=0 THEN SET ARTIKEL-OK TO TRUE MOVE CURSOR-ALL TO ARTIKEL-CURSORNO ELSE SET ARTIKEL-ERROR TO TRUE MOVE SQLCODE TO ARTIKEL-ERROR-CODE END-IF. EXIT.
Návrh a rozvoj architektury software Návrh relačního modelu První krok při tvorbě relačního modelu podporuje case/4/0 přímo - z ER-modelu můžete vygenerovat relační model. Přitom lze z ER-modelu: • Převzít kompletní ER-model • Převést vybrané entity na relace • Nechat pracovat Design Asistent při průchodu z informačních toků k modulovým strukturám. Dalším krokem pak budou technické úpravy relačního modelu: • úprava technických názvů • definice klíčů • definice indexů • prověrka realizace vztahů (cizích klíčů) • zjednodušování složených klíčů • určení pravidel integrity • odstranění případných redundancí, normalizace • případně i spojování relací • ladění modelu databáze z hlediska výkonnosti
Návrh typové struktury
Tento krok je úzce spjat s návrhem modulů. Teprve tam zjistíte, jaká data funkce modulu potřebují a budete schopni určit přesné technické charakteristiky typové struktury. Můžete také použít Design Asistent, který převede logické datové struktury na typové struktury, ruční optimalizaci se ale nevyhnete. Pravidla pro vytváření typových struktur • Změny v typové struktuře nemají žádný vliv na datovou strukturu, ze které typová struktura vznikla. • Reference na entitu v datové struktuře se převede na referenci na relaci v typové struktuře. Pokud přejmenujete relaci, která má referenci v typové struktuře, změna se v referenci neprojeví, ale reference existuje i nadále. • Sémantické názvy elementů datové struktury se použijí jako technické názvy elementů typové struktury.
Návrh hierarchie modulů
Při návrhu architektury zohledněte pravidla naznačená v úvodu - vysoká modulová vazba a slabá spřaženost modulů a rozdělitelnost. Vytvářejte moduly orientované na úlohy. Použijte principy naznačené v kapitole o Design Asistentu. Hierarchizaci provádějte v těchto krocích: • návrh základních výkonných modulů 70
case/4/0, verze 4.3 • •
návrh dalších výkonných, dialogových a přístupových modulů, návrh technologických modulů test vazeb mezi moduly
Návrh modulové struktury
V tomto kroku navrhujeme vnitřní strukturou modulů: • definice parametrů pro volání funkcí • definice uživatelského rozhraní • doplnění potřebných dat do modulové struktury • test spřaženosti modulů • zúžení datového rozhraní mezi moduly (počet předávaných parametrů) • minimalizace použití globálních dat
Detailní specifikace
Detailní specifikace probíhá ve dvou fázích: • Vývoj implementačních stromů - určete algoritmicky složité funkce a vytvořte pro ně implementační strom. Hlavními kritérii pro algoritmus jsou jednoduchost, přehlednost a srozumitelnost. Definujte data, jejichž potřeba se objevila při rozvoji algoritmů. • Revize algoritmů - vykonejte revizi např. pomocí vyhodnocovacích funkcí. Můžete spustit test na kontrolu připojení všech elementů v implementačních stromech a kontrolu správnosti použití podmínkových prvků (z hlediska syntaxe).
71
case/4/0, verze 4.3
2.5. Implementace v case/4/0 Implementaci lze shrnout do těchto kroků: • Příprava implementace - sem patří doladění generátoru case/4/0, definice výstupních souborů apod. • Generování databáze - standardně je case/4/0 připraven na generování SQL popisů s příkazy pro vytvoření tabulek, atributů, indexů. • Implementace modulů - výsledkem práce v case/4/0 jsou do značné míry připravené zdrojové texty programů. Tyto soubory už zpracujeme v jiném prostředí, např. Visual C++. Odladěné zdrojové texty pak můžeme importovat zpět do repository case/4/0.
72
case/4/0, verze 4.3
3.
Slovník pojmů Analýza systému
Analýza systému zahrnuje metody case/4/0 pro analýzu současného stavu a pro odbornou specifikaci nových uživatelských požadavků.
Animace
Pod animací rozumíme schematické znázornění průběhu procesů, které jsou popsány pomocí informačních toků. V case/4/0 se používá animace pro kontrolní účely. Můžete ji nalézt na dvou místech: Při zobrazení oběhu informací a dat v informačních tocích a při testování dialogových obrazovek a menu. Informační toky, které se mají při animaci zobrazovat, definujete v tzv. scénáři.
Atribut (entita) Atribut vyjadřuje vlastnost objektu z reality. Atribut je plně definován názvem, oborem hodnot a svým věcným významem (sémantikou).
Atribut (relace)
Pokud relace existuje jako tabulka, představují atributy nadpisy sloupců tabulky.
Atributová položka (datová struktura)
Atributová položka obsahuje referenci na atribut entity definované v ER-modelu. Atributová položka může vzniknout také tím, že přiřadíte atribut už existující datové položce.
Atributová položka (typová struktura) Atributová položka obsahuje referenci na atribut entity definované v ER-modelu. Atributová položka může vzniknout také tím, že přiřadíte atribut už existující typové položce.
BASIC sub procedura
Tato procedura provádí speciální úlohu bez návratu hodnoty – na rozdíl od Funkce v Basic modulové struktuře.
Blok Blok je grafický element, který slouží k členění stromu v diagramu funkční struktury. Elementy připojené na blok jako na "rodiče" považuje case/4/0 za elementy na stejné logické úrovni jako elementy na jejichž úrovni je nakreslen blok. Takto lze obejít omezení devíti funkcí na jedné úrovni ve stromové struktuře. Bloky nepodléhají přísným konzistenčním kontrolám case/4/0 a mohou mít libovolný, i nejednoznačný název.
Call
Pomocí Call elementu můžete v implementačním stromu volat jinou funkci z aktuálního nebo i z jiného modulu.
Cíl Tímto termínem označujeme cíl informace v informačních tocích.
Datová položka Datová položka patří k elementům v datové struktuře. Může představovat elementární položky. Pokud je dále zjemňována, dostává charakter skupiny dat. Elementární položky jsou dále definovány přiřazením datového elementu. Datový element je v rámci systému jednoznačný.
Datová struktura Datová struktura popisuje logickou strukturu datového toku nebo datové schránky z informačních toků. Struktura je vyjádřena hierarchicky, rozkladem na datové položky, atributové položky, na reference na entity a na podmínky výskytu položek. Datová struktura je zobrazena jako stromová struktura.
Datový element Datový element označuje třídu stejných veličin, které existují nezávisle na způsobu použití a v kontextu zkoumané věcné problematiky mohou být jednoznačně interpretovány. Věcná interpretace datového elementu je jeho sémantikou. Datový element má v rámci systému jednoznačný název a je zapsán v datovém katalogu.
Datový typ Pod pojmem datový typ rozumíme v case/4/0 obor hodnot, který se má v programovacím jazyku vyjádřit pomocí předdeklarovaných datových typů. Předdeklarované datové typy (nebo standardní datové typy) v programovacím jazyku jsou: celá čísla, dekadická s pevnou nebo pohyblivou čárkou a s rozdílnou přesností, logické hodnoty, alfanumerické znaky, směrník, atd.
73
case/4/0, verze 4.3
Definice typu
V C-modulech mohou být potřebná i data, která nejsou popsána pomocí typových struktur nebo relací. Lze je definovat pomocí elementu Definice typu. Definice se pak objeví v generovaném C-kódu před prototypem funkce. Symbol: Obdélník s popisem „Type“. K definici proměnné v C- a COBOL-modulech lze použít element Variable. Definice se pak objeví v generovaném C-kódu za prototypem funkce. V COBOL-modulu lze explicitně určit přiřazení sekce. Symbol: Obdélník s popisem „Var“.
Design-Asistent
Design-Asistent umožňuje převzít výsledky Analýzy systému do Návrhu systému. Pro aktuální informační toky vytváří podle předlohy modulovou strukturu, z datové struktury typovou strukturu a z datového relační model.
Dětská funkce
Funkce F může být na nižší hierarchické úrovni rozložena na další funkce, které samy mohou být ještě rozděleny atd. Takové dílčí funkce nazýváme dětskými funkcemi a jejich bezprostředné nadřízenou funkci rodičovskou funkcí F. Funkce na nejnižší úrovni podstromu nazýváme "listy" nebo "listové elementární funkce".
Diagram stavů a přechodů Diagram stavů a přechodů je síťový diagram, jehož uzly popisují stavy, ve kterých se může systém nebo jeho část nacházet, a jehož orientované hrany symbolizují přechody mezi stavy. Diagram stavů a přechodů zobrazuje, co se děje "uvnitř" řídící funkce. Je přiřazen řídící funkci z informačních toků.
Dialogová funkce Dialogová funkce slouží pro komunikaci uživatele se systémem. Dává mu možnost řídit chod systému pomocí dialogových obrazovek a menu. Je součástí modulových struktur a obsahuje kód potřebný pro vytváření a správu obrazovek. Dialogové obrazovky a menu se vytvářejí Screen Painterem, který můžete vyvolat povelem Editovat dialog v kontextovém menu dialogové funkce.
Element předlohy
Element předlohy je obdélník v předloze modulu, který se při vytváření modulové struktury (podle předlohy) nahradí referencí na modul, typovou strukturou nebo relací.
Entita Entita je objekt reálného světa nebo našich představ. Je popsána pomocí vlastností. Entity se nacházejí v ERmodelech. Odkaz na entity z ER-modelu můžeme najít v diagramech datových struktur nebo informačních toků. Datová struktura může obsahovat atributy entity. V informačních tocích se používá entita stejně jako datová schránka.
Entry
Entry je sekundární místo vstupu v COBOL podprogramu, který se volá pomocí CALL z COBOL hlavního programu. Entry lze použít pouze v COBOL modulových strukturách.
ER-model ER-model (Entity Relationship Model) z Analýzy systému je statickým modelem objektů z reality a vztahů mezi nimi. Formou síťového diagramu zobrazuje: · všechny relevantní entity · a vztahy mezi entitami. ER-modelu odpovídá na úrovni Návrhu systému tzv. relační model, který zohledňuje implementační omezení vyvíjené databáze.
Externí rozhraní (terminátor)
Externí rozhraní jsou funkce, organizační jednotky nebo osoby, které nepatří do zkoumané věcné oblasti, ale jsou zdrojem nebo cílem informací, materiálu a událostí, které zpracováváte v diagramu Informační toky.
File Section Deklarace pro databázi (struktura její datové věty), se kterou program pracuje.
Focus V dialogové obrazovce může v jednom časovém okamžiku být pouze jeden element, který přijímá vstupy od uživatele. Element, který se nachází v tomto stavu, má Focus. Focus může být přesunut na jiný element kliknutím myši nebo pomocí kombinace kláves (hotkeys).
Form V case/4/0 můžete Form použít pouze v modulové struktuře pro BASIC. Pokud ve fázi Analýzy systému vytvoříte dialogovou nebo menu obrazovku, můžete ji jako Form vložit do Modulové struktury v Návrhu systému. 74
case/4/0, verze 4.3
Funkce
V case/4/0 můžete vytvářet výkonné, dialogové a řídící funkce.
Funkce Callbacku
Funkce Callbacku jsou funkce, které jste pomocí Screen Painteru přiřadili událostem na jednotlivých elementech dialogové obrazovky. Když nastane určitá událost na elementu dialogové obrazovky, vykoná se příslušná funkce Callbacku.
Funkce v BASIC modulové struktuře
Tato funkce je procedura, která provádí nějaký speciální úkol a vrací hodnotu – na rozdíl od BASIC SUB procedury
Funkce v C modulové struktuře Funkce v modulové struktuře obsahují kód pro elementární úlohy v rámci jednoho modulu. Při generování kódu budou přeneseny do funkcí cílového jazyka.
Funkční struktura
Struktura funkcí (funkční struktura) znázorňuje hierarchický rozklad systému. Funkční struktura je zobrazena jako stromový diagram. V diagramu může být kromě funkcí zobrazena také řada podmínek, kterými se řídí vykonávání funkcí.
Generovací funkce
Generovací funkce je krátký program v generovacím jazyku case/4/0, který pro jednotlivé elementy určuje, jakým způsobem se má vytvořit kód. Generovací funkce můžete spravovat po volbě Generovací funkce v hlavním menu Návrhu systému.
Generovací jazyk
Generovací jazyk case/4/0 je procedurální programovací jazyk s jehož pomocí můžete vytvářet krátké programy, generovací a vyhodnocovací funkce. Spravovat tyto programy můžete v hlavním menu pod Systém volbou Vyhodnotit a v menu Návrh systému pod Generovací funkce.
Generovací modul
Sdružuje generovací funkce, které mají společný cílový jazyk a např. pracují nad společnými daty. Příklad – jeden modul tvoří globální generovací funkce pro vygenerování struktury databáze a všechny funkce, které volá.
Globální datový model
Celkový datový model všech entit a jejich vztahů, které se objevují v ER-modelech jednoho systému (bez redundantních zobrazení). Je udržován case/4/0 automaticky. Jeho elementy nelze sice editovat, pro zlepšení přehlednosti je můžete posunovat.
Hierarchie
Systém je budován hierarchicky, jestliže u jeho elementů hraje roli místo a pořadí. Elementy v jednom řádku tvoří jednu úroveň hierarchie. Pořadí může být dané významem, vlastnostmi nebo časovými souvislostmi mezi elementy. Stromové diagramy, které jsou použity pro funkční, datové, typové struktury, struktury dokumentace a implementační stromy, jsou vybudovány silně hierarchicky. Tzn., že každý stromový diagram začíná jediným elementem (kořenem) a rozšiřuje se směrem dolů. Spojení mezi elementy, které jsou na stejné hierarchické úrovni, není možné. Totéž platí pro dětské elementy, které jsou současně na různých úrovních.
Implementační strom Implementační strom pomocí grafického pseudokódu popisuje algoritmus funkce z modulové struktury. Přiřazením vhodných generovacích funkcí lze potom vytvořit "kostru programu".
Index Index I pro atribut A resp. kombinaci atributů A1, ..., An relace R slouží k rychlejšímu přístupu na R s hodnotami atributů A resp. A1, ..., An. Index nazýváme jednoznačný, jestliže neexistuje žádná dvojice řádků z relace R, pro kterou má atribut A resp. kombinace atributů A1, ..., An identické hodnoty.
Informace Informace je účelná znalost, tedy znalost, která je potřebná na vykonání předepsané činnosti nebo k dosažení stanoveného cíle. Informace vznikne interpretací a vyhodnocením přijatých dat.
Informační tok
75
case/4/0, verze 4.3 Informační toky popisují cestu informací, materiálu a zpráv o událostech mezi funkcemi, místy uložení (schránkami) a rozhraními. V case/4/0 je zobrazen jako síťový diagram.
Integritní pravidla
Pravidla pro integritu vztahů jsou speciální výroky o vztazích v relačním modelu. Umožňují zajistit, aby hodnota cizího klíče vždy odpovídala hodnotě primárního klíče.
Interní rozhraní Interní rozhraní se používají v diagramech informačních toků. Je to funkce z funkční struktury, která nemá tutéž rodičovskou funkci jako ostatní funkce v diagramu informačních toků, ale přitom je zdrojem nebo cílem informací, které v diagramu zpracováváte.
Kardinalita Kardinalita je charakteristikou vztahu mezi entitami nebo relacemi, která určuje počet možných objektů na každé straně vztahu. Kardinalita vztahu může být typu 1:1, 1:C, 1:N nebo N:M. Písmeno C v označení kardinality označuje podmíněnost vztahu (Condition) - vztah může ale nemusí existovat.
Klíč Klíč může být v ER-modelu tvořen z atributů a vztahů . Entita je pomocí klíčů jednoznačně identifikována. Určení více klíčů je povoleno. Rozlišují se jednoznačným názvem. Zde je formální definice pro klíč: A1, ..., Am jsou atributy entity E a B1, ..., Bn vztahy, které má E s jinými entitami E1, ... , En. Kombinace atributů a/nebo vztahů A1, ..., Am, B1, ..., Bn tvoří klíč entity E, pokud jsou splněny následující podmínky: Pro každý výskyt entity E mají atributy A1, ..., Am vždy právě jednu hodnotu. Pro každý výskyt entity E existuje pro typ vztahu B1, ..., Bn vždy právě jeden vztah, který ji spojuje s výskyty entit E1, ... , En . Pro i=1, ..., m existuje ai - hodnota atributu Ai a pro j=1, ..., n existuje bj - vztah typu Bj. Potom kombinace a1, ..., am, b1, ..., bn identifikuje výskyt entity E. Identifikace znamená: Pro libovolnou množinu (a 1, ..., am) hodnot atributů A1, ... , Am a libovolný výskyt entity E 1, ... , E n existuje nejvýše jeden výskyt entity E, který má hodnoty atributů a je přes vztahy b1, ..., bn typu B1, ..., Bn spojený s odpovídajícími výskyty entit. Zmenší-li se kombinace A1, ..., Am, B1, ..., Bn o nějaké atributy nebo typy vztahu, ztratí se schopnost identifikace. Po celou dobu existence výskytu entity E, nesmí se změnit ani hodnota jeho atributů A 1, ..., Am, ani vztahy typu B1, ... , Bn k výskytům entit E1, ... , En .
Konečný stav
V diagramu stavů a přechodů může existovat jeden nebo více konečných stavů, tzn. stavů, z kterých není možné dostat se do dalšího stavu. Dosáhne-li systém nebo část systému konečný stav, znamená to, že se bude trvale chovat tak, jak je nadefinováno pro konečný stav. Animace bude při dosažení konečného stavu fakticky ukončena, i když taktování času může běžet dále.
Konfigurace Konfigurace je skupina elementů z jednoho systému vybraných uživatelem. Při vytvoření nové konfigurace definujete pouze její jméno a později do ní přidáváte prvky, které potřebujete – konfigurace umožňuje dát dohromady prvky systému, které spolu vytvářejí nějaký logický celek nebo určitý milník ve vývoji systému.
Kontextový ER-model Kontextový ER-model ukazuje pro vybranou entitu všechny vztahy, které k ní směřují, a také všechny entity, s nimiž je přímo spojena. Kontextový ER-model obsahuje údaje ze všech existujících diagramů ER modelů.
Kontextový relační model
Kontextový relační model ukazuje pro vybranou relaci všechny vztahy, které k ní směřují, a také všechny relace, s nimiž je přímo spojena. Kontextový relační model obsahuje údaje ze všech existujících diagramů relačních modelů.
Kořen
Každý stromový diagram v case/4/0 (např. funkční struktury) obsahuje kořen. Je to element, který stojí osamoceně na nejvyšší úrovni stromu a má stejný název jako celý diagram. Pomocí kontextového menu kořene vyvoláte stejné volby jako pro celý diagram.
Linkage Section
Definice dočasných konstant a proměnných pro podprogramy. Data v Linkage Section se používají jako parametry, pokud je aktuální modul volán jiným modulem.
Lišta ikon 76
case/4/0, verze 4.3 Lišta ikon se nachází na levém okraji každého diagramu v case/4/0. Pro každý typ diagramu jsou zde nabídnuty jiné elementy a jiné možnosti jejich spojování. Kliknutím na některou ikonu můžete vkládat do diagramu elementy vybraného typu anebo vytvářet spojení mezi nimi.
Local Storage Section Jako Working Storage Section, ale s následujícími rozdíly: 1. 2.
Data v Local Storage Section jsou při rekurzivním volání programu lokální pro instanci, se kterou byla aktivována. Definice alespoň jedné proměnné v Local Storage Section je předpokladem pro možnost volat program rekurzivně.
Manuální funkce Manuální funkce je činnost, kterou nelze vytvořit pomocí prostředků výpočetní techniky a která bude vykonávána bez podpory výpočetní techniky. Takový postup může být užitečný při analýze současného stavu, manuální funkce může být definována v diagramu informačních toků nebo ve funkční struktuře.
Modul Modul je část strukturovaného softwarového systému, která • má samostatný název, • lze ji vyvolat, ale není schopna běhu sama o sobě a • má popis funkčnosti, vstupů a výstupů, takže jeho účel je intuitivně zřejmý. Modularita softwarového systému slouží k redukování složitosti. Umožňuje dosáhnout přehlednosti, srozumitelnosti a udržovatelnosti i u velkých systémů.
Modulová struktura
Modulová struktura je grafická reprezentace modulu (pro COBOL). Je to stromová struktura, která ukazuje, z čeho se modul skládá: všechny funkce a data, volání dalších modulů, prvky uživatelského rozhraní.
Nadtyp entity Nadtyp entity je entita, která je generalizací více jiných entit (které nazýváme podtypy). Generalizace se v ERmodelu provádí vztahem klasifikace.
Návrh systému
Návrh systému zahrnuje metody case/4/0 pro návrh software, přičemž primárně jsou podporované jazyky C a COBOL. Pod Návrhem systému rozumíme návrh ve velkém, tzn. rozklad systému na implementovatelné jednotky, moduly, a dále návrh v malém, tzn. specifikaci algoritmů k řešení úloh.
Normalizace
Při návrhu databáze mají zásadní význam pro stabilitu systému principy • minimalizace redundancí a • jednoznačnosti datové základny. Důležitým krokem při návrhu takové datové základny je normalizace relací relačního modelu. Relace lze považovat za tabulky. Vlastností tabulky je, že v ní nesmí být žádné opakující se skupiny, tzn. k jedné hodnotě primárního klíče se v tabulce nachází právě jedna hodnota atributu. O relacích s touto vlastností hovoříme, že jsou v první normální formě. Relace je v druhé normální formě, pokud je v první normální formě a neobsahuje žádný atribut, který závisí pouze na části složeného primárního klíče. Relace je ve třetí normální formě, pokud je ve druhé normální formě a neobsahuje žádný atribut, který závisí ještě na jiném atributu než na primárním klíči. Relace je ve čtvrté normální formě, pokud je ve třetí normální formě a neobsahuje žádné párové vícehodnotové závislosti.
Obor hodnot
Množina konkrétních hodnot, kterých může nabývat datový element v reálném světě, označujeme jako obor hodnot.
OLE (object linking and embedding) Microsoft Windows (Verze 3.1 nebo vyšší) má možnost vytvořit datové spojení mezi různými uživatelskými aplikacemi. Přitom se pracuje s daty jako s objekty, které jsou vloženy (embedding) v cílové aplikaci (client) anebo je vytvořeno spojení (link) k zdrojové aplikaci (server), přes které se data aktualizují. case/4/0 pracuje ve spojení s vybraným textovým editorem jako OLE-Client, ale i jako OLE-Server. To znamená: při zpracování textu může být text přiřazen elementu v case/4/0 jako popis a může být aktualizován i mimo case/4/0. case/4/0 zase vkládá do textového dokumentu diagramy.
Operační organizace 77
case/4/0, verze 4.3 Modelování výkonných procesů vyjádřenou pomocí strukturování vztahů mezi výstupy a informacemi označujeme jako operační organizaci. Konstrukci a koordinaci úloh označujeme jako strukturální organizaci.
Parametr předlohy
Parametr předlohy se definuje v předloze modulu.Vloží se do kódu elementu předlohy v editoru kódu. Při vytváření modulové struktury bude nahrazen konkrétní hodnotou.
Part Part je reference na část stromové struktury, která existuje jako samostatný diagram. Party umožňují odložit část funkční, datové nebo typové struktury do samostatných diagramů. Diagramy budou mít jméno prvku, který je kořenem odloženého podstromu. Na rozdíl od elementu stavební kámen může být Part - stejně jako funkce -použit pouze v jediném diagramu struktury funkcí. Part datové nebo typové struktury však lze použít vícekrát.
Počáteční stav Počáteční stav je stav v diagramu stavů a přechodů, ve kterém se systém nachází bezprostředně po "zapnutí". V diagramu stavů a přechodů může být pouze jeden počáteční stav.
Podmínka v datové struktuře
Výskyt datové položky v datové struktuře může záviset na nějaké podmínce. V datové struktuře je podmínka umístěna nad položkou (položkami), jejichž výskyt podmiňuje. Pro grafickou specifikaci rozdílných podmínek můžete použít tuto řadu symbolů: # Loop (FOR count = 1 .. n DO ...) o
Exkluzivní varianta (XOR: a nebo b, ale nikoliv obě)
Inkluzivní varianta (OR: a nebo b, nebo obě)
!
If (IF podmínka THEN ...)
Podmínka v diagramu stavů a přechodů
Ke každému přechodu v diagramu stavů a přechodů musí existovat podmínka, která musí být splněna, aby došlo k přechodu z jednoho stavu do dalšího. Jako podmínky se používají události (jedna nebo více) definované v systému. Více událostí můžete do jedné podmínky spojovat pomocí logických operátorů AND nebo NOT.
Podmínka ve funkční struktuře Vykonávání funkcí (a také výskyt datových položek v datových strukturách) může záviset na určité podmínce. Ve funkční struktuře je podmínka umístěna nad funkcí (funkcemi), jejíž vykonávání řídí. Pro grafickou specifikaci rozdílných podmínek můžete použít celou řadu symbolů: # Loop (FOR count = 1 .. n DO ...) *
Iteration (WHILE podmínka DO ...)
+
Repeat (REPEAT ... UNTIL podmínka)
o
Exkluzivní varianta (XOR: a nebo b, ale nikoliv obě)
Inkluzivní varianta (OR: a nebo b, nebo obě)
!
If (IF podmínka THEN ...)
||
Parallel (pro paralelně vykonávané funkce)
^
Break (Podmínka přerušení)
Podmínka v implementačním stromu Vykonávání bloků funkcí v implementačním stromu může záviset na podmínkách, které se použijí při generování zdrojového kódu pro vytvoření řídících struktur. V implementačním stromu jsou k dispozici následující podmínky: # Loop (FOR count = 1 .. n DO ...) *
Iteration (WHILE podmínka DO ...)
+
Repeat (REPEAT ... UNTIL podmínka)
o
Exkluzivní varianta (XOR: a nebo b, ale nikoliv obě)
Inkluzivní varianta (OR: a nebo b, nebo obě)
!
If (IF podmínka THEN ...)
78
case/4/0, verze 4.3 ||
Parallel (pro paralelně vykonávané funkce)
^
Break (Podmínka přerušení)
•
Case (Přepínač)
INPUT, OUTPUT a WAIT pro specifikaci meziprocesní komunikace.
Podmínka v typové struktuře Výskyt typové položky v typové struktuře může záviset na nějaké podmínce. V typové struktuře je podmínka umístěna nad položkou (položkami), jejichž výskyt podmiňuje. Pro grafickou specifikaci rozdílných podmínek můžete použít tuto řadu symbolů: # Loop (FOR count = 1 .. n DO ...) o
Exkluzivní varianta (XOR: a nebo b, ale nikoliv obě)
Inkluzivní varianta (OR: a nebo b, nebo obě)
!
If (IF podmínka THEN ...)
Podstrom Podstrom je množina všech elementů stromové struktury, které jsou přiřazeny pod jeden rodičovský element (a také rodič). Operace, které v case/4/0 můžete provádět s celým podstromem, jsou Vymazat podstrom a Posunovat podstrom. Kromě toho můžete přeměnit podstrom na Part.
Podtyp entity Podtyp entity je entita, která je specializací jiné entity (kterou nazýváme nadtypem). Specializace se v ERmodelu provádí vztahem klasifikace.
Port
case/4/0 automaticky přebírá do dětského informačního toku (zjemnění) všechny elementy, které jsou spojeny se zjemňovanou funkcí na vyšší úrovni. Aby bylo zřejmé, že tyto elementy pocházejí z vyšší hierarchické úrovně, hovoříme o nich jako o Portech. Port je "místo kontaktu" toku a transformační funkce (místo, kde tok ústí do funkce) nebo stavebního kamene. case/4/0 založí Port automaticky pro tok mezi stavebním kamenem a jiným elementem. Do zjemnění stavebního kamene nebo funkce můžete vložit i další Porty.
Primární klíč entity
Jako primární klíč entity označujeme klíč, který skutečně má být použit k identifikaci.
Primární klíč relace
Primární klíč relace je atribut P nebo kombinace atributů P1, ... , PN, které mají tyto vlastnosti: V každém časovém okamžiku neexistují dva řádky relace (tabulky) se stejnou hodnotou P nebo P 1, ... , PN. V případě kombinace atributů musí být tato kombinace minimální, tzn. že žádný atribut P1, ... , PN nemůže být vypuštěn z kombinace bez toho, aby kombinace neztratila svou identifikační schopnost.
Procedura (BASIC) Procedura je posloupnost příkazů kódu v BASICU, které se vykonávají jako samostatná jednotka. Procedura se může odkazovat buď na BASIC funkce nebo na BASIC Sub procedury.
Proměnná (variable) V C-modulech mohou být potřebná i data, která nejsou popsána pomocí typových struktur nebo relací. Lze je definovat pomocí elementu Definice typu. Definice se pak objeví v generovaném C-kódu před prototypem funkce. Symbol: Obdélník s popisem „Type“. K definici proměnné v C- a COBOL-modulech lze použít element Variable. Definice se pak objeví v generovaném C-kódu za prototypem funkce. V COBOL-modulu lze explicitně určit přiřazení sekce. Symbol: Obdélník s popisem „Var“.
Předloha modulu Předloha modulu je speciální modulová struktura, která slouží jako vzor pro modulové struktury specifické pro projektovaný systém. Modulové struktury, které se na základě předlohy vygenerují, budou pracovat s aktuálními hodnotami prostřednictvím parametrů předlohy.
Předloha systému Předloha systému je speciální systém pod case/4/0, který se používá jako předloha při vytváření nového systému. Všechny diagramy a elementy se zkopírují do nového systému a mohou být dále měněny a doplňovány podle specifických požadavků uživatele.
Přechod stavu 79
case/4/0, verze 4.3 Pod stavem rozumíme chování systému, které se nemění po určitý časový okamžik. Jinými slovy jde o situaci, kdy navenek nelze pozorovat žádnou změnu chování systému. Když dojde k nějaké události, určená funkce systému aktivuje výstupní událostní tok. To vede ke změně stavu systému. Tento způsob přechodů zobrazuje diagram stavů a přechodů, který je přiřazen jedné řídící funkci. Přechod je popsán podmínkami, které musí být splněny, aby mohlo dojít k přechodu. Přechod stavu lze popsat i akcemi, které se musejí vykonat, aby systém dosáhl druhého stavu. Podmínka odpovídá událostnímu toku, který vstupuje do řídící funkce. K akci vždy patří odcházející tok.
Přejmenovat Elementy diagramu můžete kdykoliv přejmenovat. Integritní kontroly v case/4/0 zařídí, aby přejmenovaný element, který je použit i v jiných diagramech, byl přejmenován i tam. Toto neplatí jedině pro bloky, u kterých nejsou nasazeny žádné konzistenční kontroly.
Relace Relace slouží k návrhu tabulek databáze. Její formální definice zní: Relace na (i na nedisjunktním) oboru hodnot D1, D2, ... , Dn se skládá z hlavičky a těla. Hlavičku tvoří pevná, konečná množina atributů A1, A2, ... , An, přičemž pro každé i=1, ... ,n existuje Di která patří k oboru hodnot Ai. Tělo relace tvoří variabilní množina záznamů (řádků) ve formě ((A1:v1), (A2:v2), ... , (An:vn)), přičemž pro každé i=1, ... ,n vi existuje pevně daná hodnota z oboru hodnot Di pro Ai . Relace se vytvářejí v relačním modelu. Ten najdete pod Návrhem systému.Relace je možné vygenerovat z entit a vztahů z ER-modelu vytvořeného ve fázi Analýzy systému.
Relační model Relační model z fáze Návrhu systému slouží k návrhu databáze. Zobrazuje se ve formě síťového diagramu relací a vztahů mezi nimi. Na úrovni Analýzy systému odpovídá relačnímu modelu ER-model.
Rodičovská funkce
Funkce F může být na nižší hierarchické úrovni rozdělena na dílčí funkce (dětské). Funkční rozklad je v case/4/0 vždy interpretován jako "složený z". Hovoříme o zjemnění funkce. Funkci F nazýváme rodičovskou funkcí těch dílčích funkcí, které představují přímé zjemnění F a jsou s F bezprostředně spojeny.
Role pro funkci
Role, kterou můžete definovat pro funkci v Předloze modulu je vyhodnocena Design Assistentem a ovlivní vygenerování modulové struktury, kterou Design Assistent vytvoří na základě odpovídající předlohy.
Rollback Rollback je technika pro zvýšení bezpečnosti databáze. Transakce jsou jím chráněné proti hardwarovým i softwarovým chybám. V každé zapisující transakci se neustále sleduje stav systému a po skončení transakce se provede test na konzistenci. V případě chyby se automaticky obnoví výchozí stav, takže data uživatele zůstávají stále v konzistentním tvaru. Protože udržování integrity má při práci s Repository case/4/0 vysokou prioritu, je Rollback-mechanizmus v case/4/0 stále aktivní a nemůže být uživatelem vypnut.
Rozhraní Rozhraní jsou v informačních tocích použita jako zdroje nebo cíle informací, materiálu nebo událostí. Interní rozhraní je funkce z funkční struktury, která nemá tutéž rodičovskou funkci jako ostatní funkce v diagramu informačních toků, ale přitom je zdrojem anebo cílem informací, které v diagramu zpracováváte. Externí rozhraní jsou funkce, organizační jednotky nebo osoby, které nepatří do zkoumané věcné oblasti, ale jsou zdrojem anebo cílem informací, které zpracováváte v diagramu Informační toky.
Řídící funkce Řídící funkce koordinuje aktivity výkonných a dialogových funkcí a reaguje na očekávané i neočekávané události v systému. Její úlohou je aktivovat, zastavovat a ukončovat výkonné funkce a dialogové funkce.
Scénář
Scénář je jednotka, kterou case/4/0 umí animovat. Skládá se z jednoho nebo více diagramů informačních toků, které spolu popisují jednu transakci.
Section Section je úsek programu uvnitř Data Division COBOL programu. Ještě se rozlišují Working Storage Sections, Local Storage Sections, File Sections a Linkage Sections. V COBOL modulové struktuře můžete Sections vytvářet a také jim přiřazovat elementy, které reprezentují data (proměnné, reference na relace a na typové struktury).
Schránka
Schránka je prostředek na pasivní uložení informace, události nebo materiálu, který nelze ihned zpracovat. Ze schránky lze se její obsah vyjme v nezměněné podobě. Schránka se v diagramu informačních toků kreslí jako 80
case/4/0, verze 4.3 obdélník s otevřenou pravou a levou stranou. Barva pro datovou schránku je zelená, pro materiál modrá a pro událostní schránku ostře žlutá (jako řídící funkce). Struktura datové schránky se definuje v datových strukturách. Upozornění: Také entitu lze použít v roli schránky.
Síťový diagram case/4/0 nabízí dva rozdílné typy diagramů: stromové a síťové diagramy. Síťové diagramy dovolují umístit elementy diagramu na libovolné místo na ploše diagramu. Jsou velmi dobře použitelné pro "zviditelnění" dynamických vztahů mezi elementy. case/4/0 používá síťové diagramy v DeMarcově notaci pro znázornění informačních toků. Síťové diagramy dále najdeme při zobrazení ER-modelu (podle Chena) a relačního modelu (podle Codda). Protože ve stromových a síťových diagramech jsou použity rozdílné notace, rozeznává case/4/0 typ elementu podle jednotné barevné symboliky - např. výkonná funkce je vždy světle žlutá. Takto můžete daný typ elementu lehce identifikovat v obou typech diagramů.
Specifikace chování
Chování výkonné funkce během animace se řídí pravidly, která formálně popisují, které vstupy musí existovat, aby výkonná (transformační) funkce produkovala určitý výstup. Tato pravidla nazýváme pravidla chování. Pro specifikaci chování existuje speciální editor.
Spojení
Jakmile jste vložili do diagramu nějaké elementy, můžete je spolu spojit. Tím se stanou zřetelnější souvislosti mezi elementy systému.
Stavební kámen Stavební kámen je označení pro vícekrát použitelnou část systému. Skládá se z množiny funkcí, popisu jejich struktury, popisu jejich interní komunikace a popisu rozhraní k okolí. Stavební kámen je v case/4/0 specifikován pouze jednou. Nejprve je vytvořena samostatná funkční struktura a ta se později může transformovat na stavební kámen. Potom je možné stavební kameny používat v diagramech Informační toky. Na rozdíl od Partů může být stavební kámen použit ve více diagramech informačních toků. Prosím dávejte pozor na rozdíl s vícenásobnou instancí: Funkce je vícenásobnou instancí, pokud je vícekrát použita v průběhu jediné transakce.
Stránka Stránka je odkaz na další část diagramu, která je zobrazena na vlastní stránce. Stránky pomáhají udržovat složité stromové diagramy přehledné. Stránka je část diagramu a slouží k udržování přehlednosti ve složitých stromových diagramech. Všechny elementy stromových struktur, které lze zjemňovat, mohou být kořenem na nové stránce (obrazovce) diagramu. Pod takovým kořenem se pak nachází zjemňující elementy. Při vytvoření stránky dostane zjemňovaný element značku - číslo nově vzniklé stránky. Současně dostane tento element na nové stránce (kde je jako kořen) číslo předcházející stránky. Název zjemňovaného elementu bude zároveň názvem stránky. Tento název spolu s číslem stránky uvidíte v seznamu, který vyvoláte volbou Přehled stránek v kontextovém menu stromového diagramu. Stránky mohou být zřetězeny, tzn. že na jedné stránce mohou být odkazy na další stránky. Pro jeden stromový diagram můžete definovat maximálně 20 stránek. Stránky jsou grafickým prostředkem pro zlepšení čitelnosti diagramů. Nejsou to samostatné diagramy! Dávejte pozor na rozdíl s elementem Part : Part je reference na jiný, samostatný diagram, který je použit jako část aktuálního diagramu. Party mohou být - na rozdíl od stránek - zpracovávány paralelně na více pracovních stanicích.
Stromová struktura
case/4/0 nabízí dva základní typy diagramů, odlišující se strukturou: stromové struktury a síťové struktury. case/4/0 používá pro stromovou strukturu Jacksonovu notaci. Tyto diagramy vyjadřují nadřízenost a podřízenost elementů a v omezeném rozsahu také sled vykonávání funkcí. case/4/0 používá tuto strukturu ve funkčních strukturách, datových strukturách, modulových strukturách, typových strukturách a pro definici struktury dokumentace. Z důvodu přehlednosti nedovolí case/4/0 vytvořit libovolně velké diagramy, maximálně 9 sloupců v 8 hierarchických úrovních (včetně nejvyšší úrovně, kořene stromu). Každá stromová struktura však může být libovolně rozšiřovaná pomocí Partů a stránek. Protože stromové a síťové struktury používají jinou notaci, case/4/0 rozeznává elementy pomocí jednoznačné barevné symboliky - např. výkonná funkce je vždy světle žlutá. Takto můžete daný typ elementu lehce identifikovat v obou typech diagramů.
Struktura dokumentace
Diagram struktury dokumentace slouží ke snadnějšímu vytváření systémové dokumentace k systémům vytvořeným pod case/4/0. Texty můžete rozdělit do kapitol a kapitoly uspořádat pomocí stromové struktury, kterou znáte z case/4/0 např. jako funkční struktury.
Strukturní element 81
case/4/0, verze 4.3 Strukturní element je element pro grafické členění stromové struktury. Je to prázdná značka bez zvláštního významu pro problémovou oblast, použitá jako uzel pro větvení stromu. Užitečný je ve chvíli, kdy na jednu úroveň stromového diagramu chci vložit více než 9 elementů.
Symbolika barev Pro elementy v case/4/0 platí jednotná barevná symbolika - např. výkonná (transformační) funkce je zobrazena světle žlutou barvou. Takto můžete prvky snadno identifikovat ve všech typech diagramů.
Systém
Všechny výsledky které se v case/4/0 zpracují v rámci jednoho projektu, spravuje case/4/0 jako ucelenou jednotku, kterou označujeme jako systém case/4/0.
Šipka Šipka v liště ikon slouží k výběru různých elementů a na posunování více elementů společně po ploše diagramu. V síťovém diagramu můžete namalovat obdélník kolem elementů, pokud je vybrána šipka a podržíte stisknuté levé tlačítko myši. Elementy, které jsou v obdélníku společně se označí, a vy jimi můžete posunovat najednou. Pokud je při výběru šipky zapnutá jiná volba z lišty ikon, výběrem šipky ji vypnete.
Technický název Technický název elementů a stromových struktur v Návrhu systému bude použit při generování zdrojového kódu jako identifikátor. Dbejte prosím na dodržování konvencí cílového jazyka (délka, diakritika, speciální znaky atd.).
Textová předloha Textová předloha obsahuje definice znaků, odstavců, stylů apod., které lze použít v editoru pro formátování textů z case/4/0.
Textový element
Textový element slouží pro grafickou reprezentaci textů uložených v diagramu Struktura dokumentace. Jednoduchým přesunutím elementu v diagramu lze přemístit i veškeré texty skryté pod elementem.
Tok Tok v diagramu informačních toků reprezentuje přenos informací, zpráv o událostech a materiál. Rozlišujeme tři typy toků, které můžete identifikovat pomocí barvy: datový tok (šedý), událostní tok (žlutý) a materiálový tok (modrý). Datové toky mohou mít směr přenosu: Jednosměrný tok představuje odeslání informace, přitom něco vybere (nebo změní) ze zdroje informace,resp. přinese novou informaci do cíle. Obousměrný tok představuje odeslání a následné vrácení informace. Tok vybere informaci ze zdroje, přenese k cíli a před jejím vrácením bude informace v cíli změněna. Čtecí tok představuje takový přenos informace, při kterém se na zdroji nic nezmění ani nezmizí (nevymaže). Pro materiál a data jsou použitelné toky jednosměrné a obousměrné, pro události pouze jednosměrné. Materiálový a datový tok nazýváme časově kontinuální, pokud je schopný poskytovat funkci informace nebo materiál stále (na rozdíl od diskrétního toku). Popis časově kontinuálního toku má rámeček ve tvaru šestiúhelníku.
Tuple
Když si relaci představíme jako tabulku, tuple je řádek této tabulky.
Typ
Druh dat, které musí obsahovat datový element (numerické, alfanumerické, logické atd.), je určen jeho typem.
Typová položka
Položky resp. skupiny položek, které nejsou obsaženy v relacích nebo atributech, mohou být zobrazeny v typových strukturách jako typová položka. Elementární typová položka může být blíže specifikovaná přiřazením datového elementu. Typová položka z fáze Návrhu systému odpovídá datové položce z fáze Analýzy systému.
Typová struktura Typová struktura popisuje technické struktury dat, které se mohou použít v modulových strukturách jako definice dat. Typové struktury se zobrazují jako stromové struktury a mohou obsahovat typové položky,atributové položky, reference na relace a podmínky. Typová struktura z fáze Návrh systému odpovídá datové struktuře z fáze Analýza systému.
Událost
Událost je změna stavu nebo podmínek, na kterou systém musí reagovat - například překročení limitních hodnot při zpracování dat. Protože většinou nelze zjistit přesný časový bod, ve kterém k události došlo, musí 82
case/4/0, verze 4.3 se v systému zařídit, aby za všech okolností mohla být ihned spuštěna funkce, která má reagovat na vstupující událost.
Verze
case/4/0 umožňuje svým uživatelům spravovat verze objektů (celých diagramů nebo jejich jednotlivých elementů), kterými mohou být: FSD, DSD, ERM, Modulové struktury, Typové struktury, Relační model, datové elementy, Moduly vyhodnocovacích a generovacích funkcí. Verze je určitý stav ve vývoji systému, který je třeba uchovat a který nemůže být později měněn. Ovšem pokud někdy během vývoje systému dojde ke stavu, kdy je třeba se vrátit ke starší verzi (protože další vývoj šel nepravou cestou), je možné využít volbu Obnovit verzi a vytvořit nový systém, který bude odpovídat stavu z minulosti, který potřebujete. Při vytvoření konfigurace se automaticky vytváří verze těch elementů, které do konfigurace patří.
Vícenásobná instance
Když je potřebné v jedné transakci vícekrát vykonat určitou funkci, můžete si ji označit volbou Vícenásobná instance. Tato skutečnost ale není v diagramech vidět, funkce se tam "dvojitě" neobjeví. Dávejte prosím pozor na rozdíl se stavebním kamenem: Stavební kámen je komponenta systému, která je vícekrát použita v různých transakcích.
Vyhodnocovací modul Sdružuje vyhodnocovací funkce, které mají něco společného – např. pracují nad společnými daty. Příklad – jeden modul tvoří globální vyhodnocovací funkce, která kontroluje konzistenci všech modulových struktur a všechny funkce, které volá.
Výkonná (transformační) funkce Výkonná (transformační) funkce mění (transformuje) obsah nebo formu (strukturu) dat nebo materiálu.
Vymazat Elementy můžete z diagramu kdykoliv vymazat. Měli byste ale nejdřív zvážit následky takového činu: jednotlivé diagramy se na sebe vzájemně odkazují a vymazání jednoho elementu může mít značný vliv na integritu celého systému. Jestliže case/4/0 nedovolí element vymazat, znamená to, že element je ještě někde použit a vymazání by způsobilo nekonzistence v systému.
Vztah v ER modelu Vztah charakterizuje spojení dvou entit. Je definován kardinalitou (tj. maximálním možným počtem objektů, které se mohou ve vztahu vyskytovat) a atributy (definice primárního a cizích klíčů). Pokud má vztah nějaké vlastnosti, které se dají vyjádřit formou atributů, musíte je uložit do nové – asociativní entity. Tato entita bude spojena šipkou se symbolem vztahu. Tento typ vztahu nazýváme asociativní vztah. Asociativní vztah spojuje asociativní entitu a normální vztah. Vztah „může být“ mezi entitami je vyjádřen vztahem klasifikace (nadmnožina/podmnožina, nadtyp/podtyp, …). Entity, které vytvářejí nadmnožinu se nazývají SUPER entity, SUB entity jsou ty vytvářející podmnožinu. Tento vztah může být buď exkluzivní (každý výskyt SUB entity patří právě to jednoho typu super entity) nebo inkluzivní (výskyt SUB entity může patřit do více typů super entity)
Vztah v relačním modelu Vztah charakterizuje spojení dvou relací. Je definován kardinalitou (tj. maximálním možným počtem objektů, které se mohou ve vztahu vyskytovat) a atributy (definice primárního a cizích klíčů). Dvě relace A a B mají vztah 1:1, pokud ke každému řádku z A existuje právě jeden řádek z B a naopak. Dvě relace A a B mají vztah 1:C, pokud ke každému řádku z A neexistuje žádný nebo existuje jeden řádek z B. Ke každému řádku z B ale musí existovat právě jeden řádek v A. Dvě relace A a B mají vztah 1:N, pokud ke každému řádku z A existuje jeden nebo více řádků z B. Ke každému řádku z B ale musí existovat právě jeden řádek v A. Pokud ke každému řádku z A existuje jeden nebo více řádků z B a naopak, potom A a B mají vztah N:M.
Vztah klasifikace
Množinu vztahů „může být“ mezi entitami nazýváme vztahem klasifikace. Je vytvořen specializací entity, resp. generalizací skupiny entit. Entity vzniklé specializací označujeme jako podtyp (subtyp) entity, jejich zevšeobecněním je odpovídající nadtyp (supertyp) entity. Jestliže příslušnost objektu k jednomu podtypu entity vylučuje jeho příslušnost k jiné entitě, hovoříme o exkluzivním vztahu. Nejsou-li podtypy párově disjunktní, hovoříme o inkluzívním vztahu klasifikace.
Záložní kopie
Povelem System/Zálohovat z hlavního menu se aktivní systém zálohuje. Záložní (komprimovaná) kopie systému v case/4/0 se vytvoří jako soubor s příponou .csb.
Zdroj 83
case/4/0, verze 4.3 Původce informace v informačním toku označujeme jako zdroj.
Zjemnění/Zjemnit Pod zjemněním rozumíme vývoj další, hlubší hierarchické úrovně a zjemňovat můžeme výkonnou funkci nebo stavební kámen. Funkce je rozložena podle kritéria "složen z". V informačních tocích bude pomocí zjemnění vytvořen další diagram, který ukazuje interní strukturu funkce. Spojení k elementům, s nimiž je výkonná funkce nebo stavební kámen spojen pomocí toků na nadřazené úrovni, se v nižší úrovni zobrazují jako Porty.
84
case/4/0, verze 4.3
4.
Novinky verze 4.3 Screen Painter
Místo Dialog Designera najdete v této verzi case/4/0 novinku - ScreenPainter. Kromě toho, že s ním můžete navrhovat dialogové a menu obrazovky „in an up-to-date fashion“ (jak se píše v originální dokumentaci), můžete do svého uživatelského rozhraní vkládat ActiveX řídící prvky. Jak zabezpečit správný převod obrazovek ze starších verzí, se dozvíte v souboru readme, který se nainstaluje do adresáře case/4/0, a to v kapitole 5.2, "Dialog definition in converted systems".
Web Publisher case/4/0 umožňuje od této verze vytvářet dokumentaci Vašich systémů v HTML formátu. Tento add-in je založen na skupině vyhodnocovacích funkcí, které Vám umožní vytvořit dokumenty v HTML formátu podle Vašich požadavků. Pouze připomínáme, že pokud převedete nějaký systém do verze 4.3 ze starších verzí, nebo pokud založíte systém nový, nebude potřebnou sadu vyhodnocovacích funkcí obsahovat, ale musíte je do něj naimportovat z nějakého jiného systému – to znamená provést import vyhodnocovacího modulu "Web Publishing" z nějakého vzorového systému (např. query.csf) do systému Vašeho. Poznámka: Pro každý element ve vygenerovaném diagramu jsou vytvořeny hyperlinky pro odskok na související stránky. Pro správné umístění a fungování těchto odkazů je nutné zkontrolovat, jestli máte správně definované nastavení: v hlavním menu case/4/0, volba Volby/Fonty/ OLE přenos diagramu - tento font by měl být nastaven na "Arial, 8 bodů". Zároveň se musíte ujistit, že nastavení velikosti fontu v tabulce nastavení v Řídícím panelu Windows je "Small Fonts".
Podpora jazyka Java
case/4/0 můžete nyní použít k vývoji systémů v jazyce Java. V tomto případě modulová struktura představuje třídy jazyka Java. Funkce pro generování jazyka Java jsou uloženy v sytému java.csf. Tyto funkce generují Java kód pro Sun's JDK 1.1, včetně AWT tříd.
Aktivní serverové stránky
Z dialogových funkcí navržených prostřednictvím case/4/0 můžete nyní vytvářet Aktivní serverové stránky (*.ASP). Tyto stránky mohou být zobrazovány nějakým standardním WWW browserem jako normální HTML stránky. Generovací funkce, které jsou pro to potřeba najdete v systému internet.csf. Tento modul obsahuje kromě uvedených generovacích funkcí také vzorový modul, který ukazuje, co může být tímto použitím dosaženo. Poznámka: Pozor, zdrojový jazyk HTML je redefinicí jazyka BASIC, který je podporován case/4/0. Z tohoto důvodu můžete vzorový systém internet.csf importovat pouze do těch Vašich systémů, ve kterých používáte jiné jazyky než Visual Basic. Poznámka: Mějte na paměti, že výstupní soubory generované case/4/0 těmito dodávanými generovacími funkcemi mohou být použity pouze na web serveru s MS Internet Information Server 3.0 (nebo vyšším). Pokud budete vytvářet kompletní Internetovou aplikaci, uvědomte si, že generovací funkce vytváření VBScript kód pro všechny dialogové elementy zobrazované webovským browserem. Tento kód musí být interpretován klientem, což nyní umožňuje pouze MS Internet Explorer 4.0. Pokud máte nějakou jinou infrastrukturu, budete muset poměrně zásadně pozměnit dodávané generovací funkce.
Modelování v globálním datovém modelu Globální datový model neslouží nyní pouze k zobrazování všech entit v systému a vztahů mezi nimi, ale umožňuje i vkládání nových elementů.
Efektivnější technologie pro ukládání textů
Místo, které zabírají systémy case/4/0 na hard disku závisí ve velké míře na počtu a rozsahu textových popisů elementů vytvořených MS Wordem. V této verzi case/4/0 je poprvé pro tyto interní textové popisy použita technika komprese, která redukuje místo potřebné na disku zhruba na polovinu.
Nastavení systému
Možná nastavení case/4/0, která najdete ve volbě Volby/Nastavení jsou rozdělena do dvou kategorií – systémová nastavení a uživatelem definovaná nastavení. Uživatelem definovaná nastavení (např. jazyk, použitý textový editor, ….) se mohou lišit stanici od stanice, systémová nastavení jsou shodná pro všechny, 85
case/4/0, verze 4.3 kteří pracují na jednom projektu. (jedná se např. o standardní název primárních klíčů, znakovou sadu pro generování kódu a další). Tato systémová nastavení se nedefinují a nejsou uložena na jednotlivých stanicích, ale centrálně pro celý systém.
Procedury Check a Optimize Tyto procedury, které znáte z předchozích verzí case/4/0, byly upraveny pro nový databázový formát case/4/0.
Dokumentace metamodelu case/4/0 Interní datový model, popisující uspořádání dat v databázi case/4/0 je nyní kompletně zdokumentován. Dokumentace existuje v HTML formátu a je přístupná přes volbu Repository, kterou najdete ve skupině case/4/0 ve startovacím menu Windows.
OLE Automation rozhraní OLE Automation rozhraní představené ve verzi 4.2 bylo dále rozšířeno, ve verzi 4.3 je možno i zapisovat do databáze case/4/0.
86
case/4/0, verze 4.3
5.
Upgrade systémů z verze 4.2 na 4.3
Databázový formát byl ve verzi 4.3 oproti verzi předchozí částečně pozměněn. Z tohoto důvodu je nutné provést upgrade systémů, který je ale tentokrát velmi jednoduchý. Ve chvíli, kdy se pokusíte otevřít systém, vytvořený verzí 4.2 ve verzi 4.3, objeví se následující hláška:
Nyní se musíte rozhodnout, jestli se má systém převést do struktury databáze pro verzi 4.3. Pokud zvolíte Ano, case/4/0 provede nutné změny v systému a otevře jej v nové verzi - a vy jej v této verzi můžete používat (pozor - cesta zpět není možná a Vy už nikdy nebudete mít k systému přístup pomocí starších verzí case/4/0). Poznámka: automatický upgrade na verzi 4.3 umí převést systémy pouze z verze 4.2. Pokud chcete převést starší systémy, musíte to provést postupně (V4.1 ⇒ V4.2 ⇒ V4.3).
87
case/4/0, verze 4.3
6.
Popis instalace case/4/0
6.1. Spuštění instalace case/4/0 V menu Windows START zvolte volbu SPUSTIT a zadejte d:\setup (pokud d: je označení Vaší CD-ROM mechaniky), nebo v Průzkumníku dvakrát klikněte na soubor setup.exe, který najdete v hlavním adresáři instalačního CD case/4/0. Potom se řiďte instrukcemi, které se budou postupně objevovat na obrazovce a jsou detailně popsány v poslední části této kapitoly – Instalace krok za krokem.
6.2. Lokální instalace case/4/0 Pokud máte zakoupenou licenci case/4/0 pro pracovní stanici, měli byste nyní zasunout HW klíč dodaný s case/4/0 do paralelního portu Vašeho PC (pokud máte k dispozici HW klíč od verze 4.2, můžete dále pracovat s klíčem od této verze): • Klíč zasunujte pouze do vypnutého počítače. • Pokud máte na paralelní port Vašeho počítače připojenu tiskárnu, zasuňte do paralelního portu počítače HW klíč a na něj připojte tiskárnu. V tomto případě musí být při práci s case/4/0 tiskárna vždy zapnuta, jinak se může stát, že case/4/0 nebude schopen HW klíč najít. case/4/0 je nyní připraven pro používání. Pokud máte k dispozici jednu nebo více floating licencí case/4/0, můžete nástroj používat v síti. To znamená, že máte možnost používat Vaše licence flexibilně podle toho, který člen týmu právě potřebuje s nástrojem pracovat. Aby toto bylo možné, je nutné nainstalovat na pracovní stanici nebo na síťový server software pro licenční server, dodávaný společně s case/4/0. case/4/0 verze 4.3b nepracuje se staršími verzemi licenčních serverů. Všechny potřebné informace a soubory pro instalaci licenčního serveru naleznete v adresáři \LicServ na instalačním CD-ROM case/4/0.
6.3. Distribuovaná instalace Pokud budete chtít nainstalovat více klientských stanic case/4/0 v rozsáhlé síti, může být užitečné připravit instalaci centrálně na serveru a nechat běžet instalaci jednotlivých stanic automaticky. Toho můžete dosáhnout, provedete-li během instalace tyto dva kroky:
Krok 1: Příprava serveru 1. Spusťte instalační program case/4/0 (setup.exe)z nějaké pracovní stanice, která má povolení k zápisu do zvoleného instalačnímu adresáři na serveru. 2. Vyberte "File Server Installation". 3. Během instalace zvolte předem určený instalační adresář na serveru jako adresář, kam se mají uložit soubory case/4/0. Pamatujte na to, že tento adresář musí být přístupný ze všech klientských stanic, na které budete instalovat case/4/0. 4. Instalaci dokončete. Po dokončení instalace na serveru musíte vybrat patřičná nastavení pro soubory case43w.ini a client.ini, které byly nainstalovány na server: • V souboru client.ini definujete, zda instalace bude na stanici probíhat bez potvrzovacích otázek, kam na stanici se uloží procedury a zda se má předem nadefinovaná verze souboru case43w.ini zkopírovat na stanici. Možné varianty jsou vysvětleny v samotném souboru client.ini. • V souboru case43w.ini můžete předdefinovat nastavení, podle kterých se bude case/4/0 na stanicích chovat (např. dostupné systémy, jazyk uživatelského rozhraní case/4/0, atd.). Tato nastavení jsou potom platná pro všechny stanice, které nainstalujete během dalšího kroku a pomáhají tak udržet standardizované pracovní prostředí pro celý projekt.
88
case/4/0, verze 4.3 Pokud dokončíte tuto přípravu, můžete začít další krok instalace (pro každou stanici):
Krok 2: Instalace stanic 1. Ze stanice spusťte instalační program, který naleznete v instalačním adresáři na serveru (setup.exe). 2. Pokračování instalace je určeno nastaveními v souboru client.ini.
6.4. Instalace krok za krokem Vzhledem k tomu, že instalace probíhá pouze v německém nebo anglickém jazyce, popíšeme zde vzorovou (lokální) instalaci krok po kroku:
Krok 1 Pokud spustíte instalaci z instalačního CD (postup popsán výše), objeví se nejprve následující okno:
V tomto okně si můžete vybrat, zda bude instalace probíhat německy (první volba) nebo anglicky (druhá volba). Poslední ikona spustí instalaci nástroje Adobe Acrobat Reader verze 3.0, který je nutný pro prohlížení originální dokumentace dodávané společně s touto verzí case/4/0. Poznámka : pro účely této dokumentace bude dále použita a vysvětlena anglická verze instalace.
Krok 2
89
case/4/0, verze 4.3
Toto okno upozorňuje na nutnost ukončení všech ostatních programů před pokračováním instalace – pokud tedy máte spuštěny některé další programy, ukončete je a pokračujte tlačítkem Next v instalaci.
Krok 3
Toto okno popisuje obecné licenční podmínky, které platí pro každého uživatele licence. Jejich překlad jste obdrželi a podepsali jako součást Obecných podmínek užívání case/4/0 a předávacího protokolu, takže v tomto okně můžete tlačítkem „Yes“ potvrdit, že s nimi souhlasíte a tím pokračovat v instalaci.
Krok 4
90
case/4/0, verze 4.3
Toto okno slouží k zvolení režimu instalace – zaškrtnutí první volby znamená instalaci na stanici, druhá volba spustí instalaci na server. Po zvolení režimu instalace pokračujte tlačítkem Next.
Krok 5 Tento krok je realizován pouze při instalaci v prostředí systému Windows NT a při předchozí volbě instalace na stanici. Zaškrtnutí první volby znamená licencování z klienta, tzn. že HW klíč musí být umístěn na stanici, ze které se bude aplikace spouštět, druhá volba znamená licencování ze serveru, tzn. že HW klíč musí být umístěn Windows NT serveru.
Krok 6 91
case/4/0, verze 4.3
V tomto kroku zvolíte adresář, do kterého se má case/4/0 nainstalovat. Pokud si přejete instalovat case/4/0 do adresáře, který se nabízí implicitně, stačí pokračovat v instalaci tlačítkem Next. Pokud si ho přejete změnit, použijte tlačítko Browse a v následujícím okně určete adresář, kam se má case/4/0 nainstalovat.
92
case/4/0, verze 4.3
93
case/4/0, verze 4.3
Krok 7 Proběhne instalace case/4/0, na jejím závěru se case/4/0 zeptá, jestli si chce uživatel přečíst soubor readme.wri, který obsahuje aktuální informace o poslední verzi case/4/0 (jeho překlad je součástí dokumentace – kapitola 4 Novinky verze 4.3). Poslední hláška říká, že je nyní možné case/4/0 spustit.
94