Metodický rámec budování IS/ICT Alena Buchalcevová Katedra informačních technologií VŠE Praha nám. W. Churchilla 4, 130 00 Praha 3 email:
[email protected] Abstrakt Článek popisuje metodický rámec pro budování informačního systému firmy MeFIS, který je vytvářen na Katedře informačních technologií VŠE v Praze a dále rozvíjen ve spolupráci s dalšími subjekty v ČR a výhledově i v zahraničí. Metodický rámec zahrnuje vzory metodik určené pro různé typy řešení (vývoj nového informačního systému, rozvoj informačního systému, nasazování typového aplikačního softwarového vybavení), pro různé problémové domény a různé typy projektů. Metodický rámec definuje i procesy vytvoření metodiky pro konkrétní projekt. Klíčová slova: metodika, meta-metodika, informační systém, metodický rámec, metodický vzor, proces, softwarové inženýrství, řízení, služba, model, rigorózní metodika, agilní metodika, kategorizace metodik
1. Úvod Klíčová role informačních systémů na úrovni organizací i celé společnosti je v kontrastu s velkým množstvím neúspěšných informatických projektů. Podle výsledků výzkumu společnosti Standish Group splňovalo v roce 2000 kritéria úspěšnosti (projekt dokončen včas, se všemi požadavky a za daných nákladů) jen 28% všech projektů na vývoj aplikací [Johnson,2001]. Příčin této skutečnosti je celá řada. Patří mezi ně zejména zvláštnosti software jako produktu a specifika jeho vývoje, rychlý vývoj informačních technologií, nedocenění úlohy lidí při budování informačního systému, nejasné požadavky, změny v průběhu vývoje a řada dalších. Složitost tvorby informačních systémů se již dlouhou dobu snaží řešit metodiky vývoje informačních systémů. Těchto metodik je ovšem velké množství a nejsou dostatečně a jednotně popsány ani rozumně kategorizovány. Většinou se jedná o metodiky zaměřené jen na určitou fázi budování informačního systému, na určitou věcnou oblast, na určitý typ projektu a podobně. Zároveň nejsou definována kritéria pro výběr vhodné metodiky pro určitý typ projektu ani postupy pro její přizpůsobení na konkrétní podmínky firmy a projektu.
2. Metodický rámec IS/ICT Výše zmíněné nedostatky v oblasti metodik zabývajících se vývojem a údržbou informačních systémů se pokouší řešit Metodický rámec IS/ICT (Methodology Framework for IS/ICT Systems) označovaný zkratkou MeFIS, který je vytvářen na Katedře informačních technologií VŠE v Praze. Metodický rámec je chápán jako uspořádaná skupina metodik, respektive metodických vzorů, které jsou zaměřeny jak na vývoj nového informačního systému, tak na rozvoj informačního systému i nasazování typového aplikačního softwarového vybavení.
SYSTÉMOVÁ INTEGRACE 3/2004
81
Alena Buchalcevová
2.1 Zdroje pro návrh metodického rámce Základním východiskem pro návrh metodického rámce MeFIS je metodika MMDIS (Multidimensional Management and Development of Information System), která je od roku 1992 vyvíjena na Katedře informačních technologií VŠE v Praze [Voříšek,1992], [Voříšek,1997], [Dohnal,Pour,1999], [Novotný,2003]. Základní principy této metodiky zůstávají i přes její více než desetiletou existenci stále v platnosti. Jde zejména o globální zaměření metodiky (pokrývá všechny fáze životního cyklu), důraz na architekturu budovaného IS/ICT a systémovou integraci a zejména multidimenzionalita, tj. řešení IS/ICT souběžně ze všech pohledů, které ovlivňují efektivitu IS/ICT. Metodiku MMDIS je však třeba rozšířit v kontextu současné úrovně informačních technologií a nejnovějších metodických přístupů. Výsledkem tohoto rozvoje je metodický rámec MeFIS. Metodický rámec čerpá také z řady dalších zdrojů. V současnosti se můžeme setkat se dvěma hlavními metodickými proudy, které jsou označovány jako rigorózní metodiky a agilní metodiky. Rigorózní metodiky vycházejí z přesvědčení, že procesy při budování IS/ICT lze popsat, plánovat, řídit a měřit, a proto se snaží podrobně a přesně definovat procesy, činnosti a vytvářené produkty. Příkladem rigorózních metodik jsou metodiky Object–oriented Process, Environment and Notation (OPEN), Rational Unified Process (RUP), Enterprise Unified Process (EUP). V rámci rigorózních metodik tvoří samostatnou kategorii metodiky pro hodnocení softwarových procesů (Software Process Assesment), z nichž nejznámější je Model zralosti (Capability Maturity Model). Změny technologií, ekonomického prostředí a požadavky na extrémně rychlé vybudování IS/ICT se odrážejí v potřebě změny tradičních přístupů a vzniku agilních metodik. Pojmem agilní metodiky se označuje skupina metodik, které prosazují myšlenku, že jedinou cestou, jak prověřit správnost navrženého systému, je vyvinout jej (nebo jeho část) co nejrychleji, předložit zákazníkovi a na základě zpětné vazby jej upravit. Mezi agilní metodiky patří například Dynamic Systems Development Method (DSDM), Adaptive Software Development (ASD), Feature–Driven Development (FDD), Extrémní programování (Extreme Programming, XP), Lean Development , Scrum , Crystal metodiky [Buchalcevová,2002]. Agilní metodiky mají také své nedostatky jsou vhodné jen pro určité typy projektů, nepostihují procesy probíhající na úrovni celé organizace a další. Mnohé myšlenky agilních metodik jsou ale přínosné, a proto jsou využity v návrhu metodického rámce. Jde zejména o zaměření na principy a praktiky, refaktorizace, zaměření na lidi a přímou komunikaci, účelnost dokumentace a další. I když jsou východiska, obsah, přístupy i použití rigorózních a agilních metodik na první pohled velmi rozdílné a jejich zastánci vystupují zpravidla antagonisticky, je možné oba přístupy určitým způsobem kombinovat a o to se snaží i navržený metodický rámec. Metodický rámec je v souladu s principy Modelem řízené architektury (Model Driven Architecture, MDA), jejíž snahou je oddělit Platformově nezávislý model (PIM) od Platformově specifického modelu (PSM), který může být automatizovaně generován. Cílem MDA je zachovat investice vložené do informačního systému po dobu delší než je životnost určité technologie.
2.2 Metodický rámec jako meta-metodika Ve světě se můžeme setkat s rámci (frameworks) pro metodiky či softwarové procesy, ale jejich pojetí je mnohem užší než pojetí metodického rámce MeFIS. 82
SYSTÉMOVÁ INTEGRACE 3/2004
Metodický rámec budování IS/ICT
Metodický rámec MeFIS definuje základní principy vytvoření metodiky, fáze a procesy probíhající při vytvoření a přizpůsobení metodiky a databázi metodických vzorů. Principy a procesy uplatňující se při vytvoření či přizpůsobení konkrétní metodiky představují meta-úroveň. Metodické vzory pak představují úroveň metodiky. Rozdělení metodického rámce na úroveň meta-metodiky a metodiky znázorňuje obrázek 1.
obrázek 1: Úrovně meta-metodiky a metodiky v MeFIS
2.3 Klasifikace metodických vzorů Základním východiskem pro definování metodického rámce je myšlenka, že metodika není jediná, ale každý projekt vyžaduje specifickou metodiku. Aby bylo možné takovou specifickou metodiku vytvořit poskytuje MeFIS metodické vzory (Methodology Patterns). V rámci metodického rámce MeFIS jsou definovány metodické vzory různých typů. Základním vzorem je obecný metodický vzor, od kterého jsou odvozeny vzory pro jednotlivé domény a typy projektů. Každý metodický vzor, kromě obecného, je zařazen v rámci definovaných klasifikačních kritérií. Tím je určen kontext daného vzoru, který umožňuje vyhledat odpovídající vzor a aplikovat jej pro konkrétní projekt. Základními kritérii pro klasifikaci metodických vzorů jsou : - doména, - typ řešení, - způsob řešení, - přístup k řešení. SYSTÉMOVÁ INTEGRACE 3/2004
83
Alena Buchalcevová
Kritérium „Doména“ zohledňuje odlišné postupy budování informačního systému pro různé předmětné oblasti. Specifikace domén vychází z aplikační architektury IS/ICT [Dohnal,Pour,1997] a je zachycena na obrázku 2.
obrázek 2: Domény IS/ICT Kritérium „Typ řešení“ zohledňuje, zda se metodika zaměřuje na vývoj nového řešení, rozšíření stávajícího řešení, integraci řešení, implementaci typového řešení a nebo užití řešení například formou formou Application Service Provision. Kritérium „Způsob řešení“ postihuje odlišnosti řešení realizovaného vlastními silami a nebo řešení, které realizuje externí dodavatel. Kritérium „Přístup k řešení“ zohledňuje základní paradigma, na kterém je metodika založena jako strukturovaný vývoj, rychlý vývoj aplikací (Rapid Application Development, RAD), objektově orientovaný vývoj a komponentový vývoj. Na základě těchto čtyř hlavních klasifikačních kritérií je vytvořena hierarchie metodických vzorů (obrázek 3).
84
SYSTÉMOVÁ INTEGRACE 3/2004
Metodický rámec budování IS/ICT
<
> KlasKriterium
<> ObecnyMetVzo r idVzoru ucel
KlasifDomen a kod vyznam 1 je prirazen DomenovyMetVzo r
KlasifTypResen i kod vyznam
1
KlasifZpusobRese ni kod vyznam
je prirazen je prirazen 1
je prirazen
SpecDomenovyMetVz or je prirazen
1
0..n
je prirazen
ProjektovyMetVzo r
ProjMetVzorPlatfSpecifick y
KlasifPristupkResen i kod vyznam 1
1
aplikuje 1..n
KlasifDulezitostVelikos t kod vyznam
SpecifikaPlatform y
obrázek 3: Hierarchie metodických vzorů Obecný metodický vzor je předkem všech vzorů, to znamená, že obsahuje prvky, které jsou společné pro všechny metodické vzory. Definuje základní řídící strukturu metodiky - členění na fáze a brány. Doménový metodický vzor je určen pro určitou doménu. Tento metodický vzor je specializací obecného metodického vzoru, to znamená, že dědí všechny prvky z tohoto vzoru, může měnit jejich chování a přidávat další prvky. Specifický doménový metodický vzor postihuje odlišnosti vývoje řešení pro určitou předmětnou oblast, dále odlišnosti budování nového řešení, rozvoje řešení, integrace či nasazení typového řešení a to v závislosti na tom, zda jde o vlastní či vytěsněné řešení. Zohledňuje i přístup k řešení, tj. strukturovaný přístup či objektově orientovaný. Využívá tedy všechna čtyři základní klasifikační kritéria – „Doména“, „Typ řešení“, „Způsob řešení“ a „Přístup k řešení“. Projektový metodický vzor je specifický pro určitý typ projektu. Projekty se liší podle důležitosti/kritičnosti budovaného systému (aplikace, služby), velikosti týmu, kvalifikace lidí v týmu a dalších charakteristik projektu. Tato hlediska jsou v MeFIS označována jako projektová klasifikační hlediska. Základními projektovými hledisky jsou „Kritičnost/důležitost systému“ a „Velikost týmu“. Projekt systému pro řízení vesmírné lodi se určitě liší od projektu vytvoření webové SYSTÉMOVÁ INTEGRACE 3/2004
85
Alena Buchalcevová
prezentace. Proto jsou definovány projektové metodické vzory určené pro různé kategorie aplikací rozlišené podle důležitosti. Metodický rámec je z hlediska architektury, prvků, základních principů a klasifikace metodických vzorů zaměřen na celou oblast IS/ICT včetně provozu informačních systémů. Je tak vytvořen základ pro další rozvoj tohoto rámce a doplňování specifických metodických vzorů.
3. Postup využití metodického rámce při vytvoření metodiky pro konkrétní projekt Při vytváření metodiky ve formě metodického vzoru i konkrétní metodiky pro určitý projekt je třeba respektovat určité principy. Tyto principy jsou označovány jako principy meta-metodiky a vycházejí z principů, které popsali A. Cockburn a J.Highsmith [Cockburn,1998], [Cockburn,1999], [Highsmith,2002]. Metodický rámec IS/ICT je v podstatě vzorem, který je třeba přizpůsobit na podmínky organizace. Zároveň je třeba tento metodický rámec udržovat, rozvíjet a využívat, to znamená na základě metodických vzorů vytvářet metodiky pro konkrétní projekty. Všechny tyto činnosti jsou součástí tzv. procesů meta-metodiky, tedy procesů jejichž předmětem je metodický rámec nebo jeho části (například metodické vzory). Obrázek 4 zachycuje procesy meta-metodiky definované v rámci MeFIS.
obrázek 4: Procesy meta-metodiky v MeFIS Asi nejdůležitější je proces „Vytvoření metodiky pro konkrétní projekt“, který je dále členěn na podprocesy:
86
SYSTÉMOVÁ INTEGRACE 3/2004
Metodický rámec budování IS/ICT
- výběr metodického vzoru, - prvotní návrh metodiky, - přizpůsobování metodiky v průběhu projektu. Aby bylo možné vyhledat vhodný metodický vzor, je třeba nejprve určit charakteristiky řešeného projektu, které jsou označeny jako atributy projektu. Některé atributy projektu slouží pro vyhledání příslušného doménového a projektového metodického vzoru, další se potom použijí pro vyladění metodiky na specifické podmínky projektu.
4. Závěr Návrh metodického rámce zahrnuje celkový koncept, charakteristiky, architekturu a klasifikaci metodických vzorů. Tento návrh je konkretizován ve formě zpracovaného projektového metodického vzoru zaměřeného na objektově orientovaný vývoj nového řešení v doméně obecný software. Pro tento metodický vzor jsou specifikovány principy, role, vybrané praktiky, náplň jednotlivých fází z hlediska různých dimenzí vyvíjeného systému a jednotlivé procesy. Tímto způsobem je dokumentován způsob zpracování metodických vzorů. Metodický rámec IS/ICT ( MeFIS ) je postaven na stejných principech, které se v současné době uplatňují při vývoji IS/ICT – objektově orientovaný přístup, rozlišování mezi typem a instancí typu, rozlišování jednotlivých úrovní abstrakce (konceptuální a platformově specifická) a modelování (meta-modelování). Součástí metodického rámce je i konceptuální model vytvořený v notaci UML a principy a procesy uplatňované na metodikách samotných, tedy principy a procesy metametodiky. Navržený metodický rámec je základem pro budování znalostní báze metodik v českém jazyce, které jsou přizpůsobené na podmínky budování IS/ICT v České republice a jednotně klasifikované. Další rozvoj metodického rámce se předpokládá v rámci grantového projektu, jehož návrh je podán na GAČR. Podrobný popis metodického rámce MeFIS, jakož i podrobná analýza významných současných rigorózních i agilních metodik a dalších metodických přístupů je náplní připravované knihy „Metodiky budování informačních systémů“, která vyjde letos v nakladatelství Grada v edici Management v informační společnosti.
Literatura [Beck,2002] [Bruckner,Voříšek,1998] [Buchalcevová,2002] [Buchalcevová,2003] [Cockburn,1998]
Beck, K.: Extrémní programování, Grada, 2002, ISBN 80-247-0300-9 Bruckner, T., Voříšek, J.: Outsourcing informačních systémů, Ekopress, 1998, ISBN 80-86119-07-6. Buchalcevová, A.: Agilní metodiky, In: Objekty 2002, ČZU Praha, 2002, ISBN 80-213-0947-4. Buchalcevová, A: Návrh metodického rámce IS/ICT, disertační práce, VŠE, Praha, 2003 Cockburn, A.: The Methodology Space, 1998. Dostupný z WWW: http://alistair.cockburn.us/crystal/articles/ms/methodolo gyspace.htm
SYSTÉMOVÁ INTEGRACE 3/2004
87
Alena Buchalcevová
[Cockburn,1999]
[Dohnal,Pour,1997]
[Dohnal,Pour,1999]
[Drbal,1997]
[Frankel,2003]
[Highsmith,2002] [Johnson,2001]
[Metagroup,2002]
[Novotný,2003]
[Pour,2001]
[Řepa,1999] [Voříšek,1992]
[Voříšek,1997]
[Voříšek,2000]
[Voříšek,2001]
88
Cockburn, A.: A Methodology Per Project, Humans and Technology Technical Report, TR 99.04,1999 Dostupný z WWW: http://crystalmethodologies.org/articles/mpp/methodolo gyperproject.html Dohnal, J.– Pour, J.: Architektury informačních systémů v průmyslových a obchodních podnicích, Ekopress, 1997, ISBN 80-86119-02-5. Dohnal, J. – Pour, J.: Řízení podniku a řízení IS/IT v informační společnosti, Praha: Vysoká škola ekonomická, 1999, ISBN 80-7079-023-7. Drbal, P. a spolupracovníci: Objektově orientované metodiky a metodologie, skripta VŠE, 1997, ISBN: 80-7079-740-1. Frankel, D. S.: Model Driven Architecture, Applying MDA to Enterprise Computing, OMG Press, 2003, ISBN 0-471-31920-1. Highsmith, J.: Agile Software Development Ecosystems, Addison-Wesley, 2002, ISBN 0-201-76043-6. Johnson, J.–Boucher K.D– Connors K.– Robinson J.: Collaborating on Project Success, Software Magazine, February/March 2001 Summary of Results 2003 Worldwide IT Benchmark Report, 2002. Dostupný z WWW: http://www.metagroup.com Novotný, O.: Aplikace metrik v referenčním modelu řízení podnikové informatiky. disertační práce, VŠE, Praha, 2003 Pour a kol.: Informační systémy a elektronické podnikání, Praha: Vysoká škola ekonomická, 2001, ISBN 80-245-0227-5. Řepa, V.: Analýza a návrh informačních systémů, Ekopress, 1999, ISBN 80-86119-13-0 Voříšek, J.: Design and Management Dimensions of Large Information Systems, Sofsem 92, International Conference on Software Engineering, Žiar, 1992, 311336. Voříšek, J.: Strategické řízení informačních systémů a systémová integrace, Management Press, Praha 1997, ISBN 80-85943-40-9. Voříšek, J.: Nová dimenze systémové integrace – integrace podnikových procesů a znalostí, In: Systémová integrace '2000, sborník mezinárodní konference, Praha, Vysoká škola ekonomická, 2000, s. 195-206, ISBN 80-245-0041-8. Voříšek, J.: Model "SPSR" – model řízení podnikové informatiky, In: Sborník mezinárodní konference Systémová integrácia 2001, Demanovská Dolina, TU Žilina, 2001, str.5-18, ISBN 8-7100-880-X.
SYSTÉMOVÁ INTEGRACE 3/2004