Na následujícím příkladu si ukážeme, jak lze ke stejnému problému přistupovat ve firmách různé velikosti. Předem upozorňuji, že se jedná o modelový příklad, je jisté, že se v různých firmách bude řešit různými způsoby, které jsou závislé na způsobu řízení daných firem.
Problém: selhává komunikace mezi tím, kdo úkoly zadává, a těmi, kdo je mají plnit.
Tento problém, který trápí prakticky každou firmu, není záležitostí pouze IT jako takového. Nicméně může posloužit jako příklad toho, jak se s ním pomocí IT vypořádat
Příklad: Na konci roku rozesílá marketingové oddělení PF zákazníkům.
Zadání: Připravit seznam zákazníků pro rozeslání PF.
Problém: Je konec prosince, PF nejsou rozeslané, všechno se honí na poslední chvíli, zjišťuje se, kde nastal problém, selhala komunikace.
Procesy, jakými se podobné úkoly zadávají, jsou pochopitelně v každé firmě jiné. Počínaje letmým rozhovorem na chodbě "...víš o tom, že bude konec roku? Bylo by dobré rozeslat péefka..." a konče sofistikovaným zadáním v interním informačním systému s přesnou definicí odpovědností, termínů a dalších náležitostí. Ve spoustě případů jsou však problémy výše uvedeného typu způsobené pouze tím, že zadání nebylo zcela důsledné. Jednoduše řečeno: ano, na chodbě lze sdělit informaci o tom, že se mají udělat PFka, ale následně musí být toto zadání formalizováno.
Formalizace
Formalizace je jedním ze základních předpokladů úspěchu jakéhokoliv procesu. Musí být jasně definováno, jak uvedený proces funguje, tj.
• jaké jsou fáze procesu
• kdo je za jednotlivé fáze odpovědný
• jaké jsou vstupní předpoklady dané fáze
• jaké jsou výstupy dané fáze
• jak na sebe jednotlivé fáze navazují
První investicí do IT by tedy mělo být přesné popsání stávajících procesů a jejich ideálního průběhu.
V tomto konkrétním příkladu je pěkným způsobem formalizace SMART zadání (tj. Specifické, Měřitelné, Akceptovatelné, Reálné a Termínované). V našem případě:
Datum:
1.12.2003
Od:
Marketingový ředitel
Pro:
Support
Co:
Vyexportovat databázi zákazníků do formátu MS Excel. Požadované údaje jsou: titul, jméno, příjmení, firma, funkce, ulice, město, PSČ, obrat v roce 2003. Výstup uložit do \\office\marketing\pf2004\adresy.xls
Termín:
10.12.2003
Návaznosti:
Obchodní oddělení - kontrola seznamu
Nyní máme tedy zadání formalizované. Všichni vědí, co se má udělat, kdo to má udělat, jak a kdy to má odevzdat a kdo to má zkontrolovat. V pracovní skupině, která problém analyzovala, byli vedoucí všech zainteresovaných oddělení a všichni dospěli ke shodě. Nyní je na IT manažerovi, aby se pokusil zavést technologickou inovaci, která by formalizaci zadávání úkolů a následnou kontrolu plnění zefektivnila. Tato inovace se může podle velikosti firmy poměrně podstatně lišit.
"Rodinná" či malá firma
Předpokládejme pro zjednodušení, že jsme na začátku, máme malou firmu o několika málo lidech a jediný způsob zadávání úkolů funguje ústně, popř. neformálními e-maily či vzkazy na nástěnce. Malá firma s největší pravděpodobností nezaměstnává žádného IT manažera, všichni sdílí společné know-how. Také s největší pravděpodobností nebude chtít investovat do drahých řešení (ať už externí analýza či nákup informačního systému). Vhodnou investicí se tedy jeví využití již stávajících prostředků, které firma vlastní a používá, jako např.:
• strukturované e-maily s doručenkami, popř. s automatickým generováním úkolů z došlých mailů
• využití nástrojů kancelářského software (formuláře či seznamy úkolů) a odpovídající adresářová struktura
• předtištěné formuláře pro ruční vyplňování
V menší firmě by skutečně mohlo stačit jen popsat či formalizovat pravidla a dodržovat je, popř. jej podpořit stávajícím kancelářským softwarem.
Středně velká a velká firma
S rostoucí velikostí firmy už takové řešení ale nestačí a je nutno přistoupit k dalším krokům. Existuje několik možností, jak postupovat (opět připomínám, že prvním nezbytným krokem je problém dobře popsat).
• upravit (popř. rozšířit) stávající informační systém o nové funkce
• nasadit nový informační systém
V obou výše zmíněných případech je opět několik možností, jak dospět k výsledku:
• vlastními prostředky (tj. např. použitím vlastních programátorů)
• implementací systému "na zakázku" třetí stranou
• nalezením vhodného open-source řešení (či takového, které je z finančního pohledu "téměř" zdarma)
• zakoupením hotového komerčního řešení
Pokusím se teď sumarizovat výhody a nevýhody jednotlivých variant řešení:
Vlastními prostředky
Tento způsob je asi nejlákavější variantou pro firmy, které disponují programátorskou kapacitou. "Napíšeme si to sami, to bude nejlepší, ušetříme a bude to přesně podle toho, co potřebujeme". Existuje řada příkladů, kde se to takto skutečně povedlo, bohužel ale existuje i řada jiných, kde to tak docela neplatí. Zřejmě největším problémem je určit, co firmu taková varianta bude stát či stála.
Výhody:
• aplikace je ušita přesně na míru požadavkům
• možnost implementovat podporu i pro funkce, které budou realizovány až v některé pozdější fázi
• případné změny je opět možno realizovat vlastními prostředky
• téměř okamžitý support
Nevýhody:
• klasické problémy "kovářovy kobyly", tj. např. ne zcela dotažená aplikace (tlak na to, aby se aplikace začala používat co nejdřív, může "zakrnět" na úrovni pilotního provozu)
• rozsah nabízených funkcí je většinou menší než u "krabicového" softwaru
• není dostatečná dokumentace
• nebyla dobře zhotovená (nebo nebyla dokonce udělaná vůbec) prvotní analýza
• většinou není možno přesně stanovit (nebo dodržet) náklady na realizaci a provoz
Doporučené postupy:
• udělat předem řádnou analýzu (ve stejném nebo obdobném rozsahu, jako kdybyste řešení problému zadávali třetí straně)
• předem stanovit rozpočet, termíny a přidělit zdroje
• důsledně a průběžně kontrolovat postup prací a trvat na dodržování běžných procesů
• v rámci SW firmy se jeví jako ideální vést interní projekt se všemi náležitostmi, jako by se jednalo o projekt pro běžného zákazníka
Implementace systému "na zakázku" třetí stranou
Tato varianta je velmi podobná vlastnímu vývoji s tím rozdílem, že vlastní realizace je zadána třetí firmě. Hlavní výhodou takového řešení je to, že se dostávají plně pod kontrolu náklady a eliminují se problémy "kovářovy kobyly".
Výhody:
• aplikace je ušita přesně na míru požadavkům
• garantovaná technická podpora (často za příplatek)
• cenu je možné přizpůsobit finančním možnostem firmy
Nevýhody:
• řešení bývá dražší, než nasazení hotového systému
• předem je nutná důkladná analýza problému
• nutné dobré smluvní ošetření
• není zaručeno, že firma bude aplikaci dále rozšiřovat či podporovat
• „vyzrazení“ firemních postupů třetí straně
Doporučené postupy:
• důkladná analýza, ve srovnání s vlastním vývojem by měla být ještě podrobnější, aby z toho vyplývalo jasné zadání
• dobré smluvní ošetření celé zakázky - a to jak z pohledu její realizace (termíny, ceny), tak i následné technické podpory (je vhodné do smlouvy zařadit i odstavce týkající se případné možnosti převzetí zdrojových kódů v případě, kdy dojde k vypovězení smlouvy).
Nalezení vhodného open-source řešení
Dnes existují stovky a tisíce různých aplikací, jejichž použití je zcela zdarma nebo jen za symbolický poplatek. Je tedy celkem reálná šance, že někdo už napsal podobný systém, jako potřebujeme my a nabízí jej volně k užití. Problémem je zejména to, že je těch aplikací tolik. Pokud nemáte to štěstí a nenatrefíte na tu správnou po pár pokusech (ideální je, pokud máte předem tipy či reference od známých), tak to znamená, že budete muset procházet desítky až stovky stránek s popisem daných systémů, stahovat ty, které budou nejlépe odpovídat vašim požadavkům a zkoušet je v praxi. Z nich pak vyberete ten, který se vašim požadavkům blíží nejvíce.
Výhody:
• prakticky nulové náklady na pořízení
• množství nabízených funkcí bývá více, než u vlastní aplikace
• s ohledem na licenci je většinou možné aplikaci dále rozšiřovat
• možno aplikaci vyzkoušet v reálném provozu, aniž by se za to muselo platit
Nevýhody:
• díky obrovskému počtu podobných aplikací není jednoduché vybrat vhodný systém
• problematický support
• možné problémy s lokalizací (kódování češtiny, formát datumů, apod.)
• nejsou žádné záruky (další rozvoj, zpětná kompatibilita, odpovědnost za chyby)
• v některých případech je nutné upravit proces podle možností dané implementace
Doporučené postupy:
• získat tipy či reference od známých
• projít nejznámější zdroje open-source systémů a vyhodnotit jejich vlastnosti
• systémy, které nejvíce odpovídají požadavkům, zkusit v testovacím prostředí
• ten, který nejvíce odpovídá, tak nasadit a upravit firemní procesy podle možností vybraného řešení
Zakoupení komerčního řešení
Jednou z posledních možností je obrátit se na firmu, která se na uvedenou problematiku specializuje a nabízí již hotové řešení. Hlavní výhodou samozřejmě je uvedená specializace, tj. řešení je ověřené praxí a firma se většinou opírá o spoustu referenčních implementací. V takovém případě může být někdy dokonce výhodou to, že se proces přizpůsobí zakoupenému řešení. U větších řešení jsou pak také např. standardní napojení na další aplikace a informační systémy. Oproti open-source řešením jich také není tolik, takže je o něco jednodušší výběr. Opět je výhodné, pokud máte reference ze skutečné praxe.
Výhody:
• lze najít velmi sofistikované a specializované systémy (a to jak klasické "krabicové", tak např. i ASP modely - např. hostované e-shopy apod.) s velkým množstvím funkcí
• garantovaná technická podpora (často za příplatek)
• předpoklad dalšího rozvoje systému
• často možno aplikaci vyzkoušet v reálném provozu, aniž by se za to muselo platit (tzv. trial verze)
Nevýhody:
• cena řešení
• u některých řešení mohou nastat problémy s lokalizací (kódování češtiny, formát datumů, apod.)
• v některých případech je nutné upravit proces podle možností dané implementace
Doporučené postupy:
• získat tipy či reference od známých
• projít nalezené komerční systémy a vyhodnotit jejich vlastnosti
• systémy, které nejvíce odpovídají požadavkům, zkusit v testovacím prostředí
• ten, který nejvíce odpovídá, tak nasadit a upravit firemní procesy podle možností vybraného řešení
U složitějších procesů je pochopitelně možné kombinovat několik možností (např. vzít open-source systém a doprogramovat si jej vlastními silami k obrazu svému).
V příštím díle se podíváme na proces rozhodování, tj. jakým způsobem lze dospět k výběru toho správného systému, jaké parametry brát v úvahu, jakou váhu čemu přiřazovat apod.
Autor pracuje jako Development Manager ve společnosti Et netera, dodávající e-business řešení.