Obsah A.
B.
Úvodem ................................................................................................................... 9 A. 1.
Projektování informačního systému ............................................................... 10
A. 2.
O co jde při vývoji IS ..................................................................................... 16
A. 3.
Historie vývoje metodik, metod a technik ...................................................... 33
O Metodikách ....................................................................................................... 37 B. 1.
Metody a metodiky......................................................................................... 38
B. 2.
Základní postup vývoje IS (metodika MDIS) ................................................ 47
B. 2. 1.
Principy metodiky .................................................................................. 47
B. 2. 2.
Definice vybraných základních pojmů ................................................... 47
B. 2. 3.
Etapy vývoje informačních systémů ....................................................... 49
B. 2. 4.
Klíčové dokumenty ................................................................................ 71
B. 2. 5.
Konvence................................................................................................ 72
B. 3.
B. 3. 1.
Základní principy SDM.......................................................................... 75
B. 3. 2.
Fáze SDM............................................................................................... 80
B. 3. 3.
Přizpůsobování fází SDM ...................................................................... 92
B. 4.
Euromethod .................................................................................................. 100
B. 4. 1.
Principy Eurometody............................................................................ 100
B. 4. 2.
Struktura Eurometody .......................................................................... 105
B. 5.
Postup vývoje IS v metodikách SSADM a Systems Engineering................. 106
B. 5. 1.
SSADM ................................................................................................ 106
B. 5. 2.
Systems Engineering (SE) .................................................................... 109
B. 6.
Metodika SIV ............................................................................................... 113
B. 6. 1.
Náležitosti metodiky SIV ..................................................................... 113
B. 6. 2.
Model vztahů SIV ................................................................................ 115
B. 6. 3.
Postup metodiky SIV............................................................................ 117
B. 6. 4.
Popisné techniky SIV ........................................................................... 121
B. 6. 5.
Hodnoticí kriteria SIV.......................................................................... 123
B. 7.
C.
Metodika SDM............................................................................................... 75
Implementace metodiky ............................................................................... 125
B. 7. 1.
Postup zavádění metodiky do používání .............................................. 125
B. 7. 2.
Rozvoj metodiky .................................................................................. 127
O Metodách ........................................................................................................ 135 C. 1.
Principy metod analýzy ................................................................................ 136 5
Obsah C. 1. 1.
Princip abstrakce .............................................................................. 137
C. 1. 2.
Princip modelování........................................................................... 153
C. 2.
Metody strukturované (funkční a datové) analýzy a návrhu......................... 160
C. 2. 1.
Úvod..................................................................................................... 160
C. 2. 2.
Nástroje strukturovaných metod........................................................... 163
C. 2. 3.
Konzistence modelů ............................................................................. 196
C. 2. 4.
Techniky............................................................................................... 207
C. 3.
Objektově orientované metody analýzy a návrhu......................................... 221
C. 3. 1.
Objektově orientovaný přístup ............................................................. 221
C. 3. 2.
Principy objektového přístupu.............................................................. 224
C. 3. 3.
Metodika OOMT.................................................................................. 236
C. 4.
Hybridní metoda Procesní modelování PDIT .............................................. 249
C. 4. 1.
Postup procesního modelování............................................................. 258
C. 4. 2.
Používané nástroje................................................................................ 262
C. 5.
Metoda BSP ................................................................................................. 266
C. 5. 1. C. 6.
Metoda ISAC ............................................................................................... 278
C. 6. 1. C. 7.
D.
Postup BSP........................................................................................... 267 Fáze ISAC ........................................................................................ 279
Jackson System Development (JSD). ........................................................... 289
C. 7. 1.
Programový systém z pohledu JSD. ..................................................... 290
C. 7. 2.
Postup tvorby systému v JSD a základní pojmy................................... 295
C. 7. 3.
Grafické a jazykové prostředky používané JSD ................................... 323
C. 7. 4.
Příklad modelů JSD.............................................................................. 328
Přílohy................................................................................................................. 331 D. 1.
Charakteristika vybraných CASE na českém trhu ........................................ 332
D. 2.
Funkční model procesu vývoje IS podle metodiky MDIS............................ 359
D. 3.
Případová studie - školní informační systém ................................................ 369
E.
Seznam literatury.................................................................................................. 396
F.
Seznam použitých zkratek.................................................................................... 400
6
Předmluva
Předmluva Vážení čtenáři. Držíte v rukou knihu, která je určena širokému okruhu čtenářů. Původně vznikla pro studenty vysokoškolského oboru informatika a oborů příbuzných, zejména pro studenty oboru Informatika Vysoké školy ekonomické. Vzhledem k aktuálnosti zde diskutovaných témat je tato kniha určena též široké praxi oblasti vývoje informačních systémů. Předpokládáme, že jejími čtenáři též budou: • vedoucí pracovníci v informatice; • projektanti, analytici a konstruktéři informačních systémů; • a nakonec všichni profesionálové z oboru IS/IT. Kniha se orientuje na metody, techniky a nástroje vývoje informačních systémů jako prostředek dosažení příslušné kvality informačních systémů v podmínkách: • principiálně nejasných uživatelských požadavků na IS/IT; • stále se zrychlujícího vývoje technických a softwarových prostředků; • měnících se vnějších podmínek fungování IS/IT - podstaty a organizace věcné oblasti (tzv. business processes). Text analyzuje a hledá řešení alespoň pro takové problémy současné informatiky, jako jsou: • chybějící vazby funkcí IS/IT na prioritní, strategické potřeby podniku, či instituce; • zdlouhavý a často neúměrně nákladný vývoj informačního systému; • obtížná údržba a další rozvoj systému ve vztahu k měnícím se potřebám uživatelů a současně ve vztahu k velmi rychlým změnám v informačních technologiích (hardware a základní software) a možnostem integrace nových produktů do stávajícího systému; • obtížné dosažení potřebné úrovně tzv. vnitřní a vnější integrace IS/IT, tj. vazeb uvnitř systému a systému k okolí; • problematické ekonomické efekty vzhledem k vynaloženým nákladům, či dokonce malá úspěšnost projektů vývoje informačního systému; • neúměrnou složitost IS/IT a náročnost na řešitele i uživatele; • provozní otázky, jako např. doba odezvy, zajištění spolehlivosti atd. Cíle této publikace lze shrnout do tří hlavních bodů: 1. vymezit a klasifikovat metody, techniky a nástroje vývoje IS na základě zhodnocení dosavadních teoretických přístupů a získaných praktických zkušeností; 2. analyzovat základní principy metod a technik za účelem vytvoření obecného logického rámce této problematiky a snadného pochopení vývojových trendů; 3. seznámit s širšími souvislostmi metod a technik vývoje IS s vývojem informačních technologií a s technologickými nástroji pro jejich podporu.
7
Předmluva Na vzniku této knihy se autorsky spolupodílela řada lidí. Dík patří zejména kolegyni Ing.Ivě Stanovské, která je autorkou kapitol: B.4, B.5, C.5 a C6 a části kapitoly C.2.2, pojednávající o nástroji Structure Chart a mou spolupracovnicí na řadě metodických textů, které v této knize posloužily jako podklady a dále kolegům: • Doc.RNDr. Pavlovi Drbalovi, CSc., který poskytl výchozí text ke kapitole C.3, jakož i spoluautorům jeho díla, zejména pak Ing.Zdeňkovi Kadlecovi • Ing.Dušanu Chlapkovi, autorovi části kapitoly C.2.2, pojednávající o nástroji Entity Relationship Diagram a textu o technice normalizace dat z kapitoly C.2.4, jenž je rovněž spolupracovníkem na řadě podkladových metodických textů • Prof.Ing.Jiřímu Voříškovi, Csc. a Doc.Ing.Janu Pourovi, Csc. za podklady k některým částem kapitoly A.1 a za cenné a velice podrobné obsahové připomínky • Ing.Petrovi Hřebejkovi, jehož texty a pronikavá kritika obohatily části této knihy, týkající se klasifikací abstrakcí, nástrojů modelování a kriterií nástrojů CASE • Ing. Martinu Bergnerovi, spolupracovníkovi Petra Hřebejka na kriteriích CASE • studentům mnoha generací VŠE oboru informatika, kteří v rámci kursu CASE po dlouhá léta vytvářeli texty, které posléze posloužily jako podklad k příloze D1, zejména Martinovi Loušovi, který se ujal závěrečné edice této přílohy • Ing.Petrovi Širokému, CSc., který poskytl cenné podklady ke kapitole B.3 • Ing.Heleně Jilkové, Csc., jejíž texty též pomohly co podklady k některým částem kapitoly C.2.2 • Jiřímu Mácovi za ochotnou pomoc při technických úpravách výsledného tvaru a rovněž za pár obsahových připomínek • a konečně i mé ženě Haně za to, že se mnou trpělivě snášela dlouhé útrapy a existenční nejistotu, nutné to průvodní jevy vzniku této knihy.
Václav Řepa
8
Úvodem
A. Úvodem
9
Úvodem
A. 1. Projektování informačního systému Tato kniha pojednává o vývoji informačního systému. To je dostatečně široký pojem na to, aby bylo nutno jej přesněji vymezit. Problematiku vývoje informačního systému můžeme vidět z mnoha různých úhlů a v mnoha různých kontextech. V této knize převládá hledisko „technické“ a „ekonomické“ - je zde především popisováno proč a jak informační systém vyvíjet ve vztahu k jeho základním cílům, definovaným v tzv. „informační strategii“ organizace. Jsou zde popisovány existující metodiky, metody, techniky i nástroje pro vývoj informačního systému, jejich vzájemné souvislosti, vývojové následnosti, meze a oblasti jejich praktické použitelnosti (v „technickém“ smyslu) apod. Oproti tomu například hledisko sociální, nebo psychologické, či organizační zde nejsou příliš akcentována (to se týká v mnohem větší míře spíše problematiky řízení projektů, což považujeme za relativně samostatnou záležitost, která není přímým předmětem zájmu této knihy - viz dále). Oblast, jíž se tato kniha zabývá, bývala tradičně nazývána též oblastí „projektování informačního systému“. I když je toto označení již dávno přežité a dnes velice nepřesné (nejde tu jen o vytváření projektu vývoje IS, ale především o věcný obsah prací v něm1), síla tradice mu stále ještě zajišťuje místo na slunci. I v této knize (především v odkazech na další literaturu) je tento termín občas použit. Kde je tedy místo „vývoje IS“ v celkovém kontextu problematiky informačních systémů? Jan Pour v [POU1] klasifikuje v rámci celkového přehledu architektury informačního systému jednotlivé úlohy v aplikační vrstvě informačního systému podniku na:
1 V zájmu spravedlnosti je zde třeba dodat, že pojem „projektování“ vznikl nejspíše prostřednictvím analogie procesu vzniku IS do oblasti stavebnictví (vzniku stavebního díla). Bylo to v době, kdy bylo samozřejmé, že jistá skupina odborníků informační systém „projektovala“ (projektanti), jiná jej „vyráběla“ (programátoři). Pojem „projektování“ tak zahrnoval pouze „koncepční“ práce na vývoji IS, nikoliv ty následné „realizační“. Vývoj teorie, bohatě podněcovaný jejím praktickým používáním v souvislosti se stále lepší technologickou podporou „projektování“ (viz následující kapitolu) potom šel směrem ke komplexnějšímu pojetí celého procesu, kde i hranice mezi „koncepcí“ a „realizací“ IS již není zdaleka tak zřetelná a jednoznačná. A to z mnoha důvodů. Uveďme ty nejdůležitější: • ukázalo se, že celý proces vývoje IS je třeba brát iterativně - je třeba počítat s návraty z oblasti realizace IS do oblasti jeho koncepce a zpět, protože některé části koncepce je třeba ověřit prototypem, nebo i jen proto, že můžeme při realizaci zjistit chybu koncepce, kterou je třeba nejprve opravit a teprve potom pokračovat dál • vývoj technologické podpory vývoje IS pomalu odbourává „netvůrčí“ činnosti, které již nemusí vykonávat člověk - realizátor (programátor), ale program - generátor. Opačnou stranou téže mince je zdokonalování analytických (projektantských) metod a technik, které umožňuje mnohem více (nežli předtím) rozhodnutí ve věci obsahu budovaného IS činit již ve fázi jeho koncepčního návrhu - nenechávat je až na programátory. Má smysl za těchto okolností stále ještě hovořit o „projektantech“ (kteří již jen neprojektují, ale přímo i realizují) versus „programátorech“ (kteří v původním významu již skoro neexistují)?
10