pátek 24. září 2021

Analýza v mezinárodní firmě

Nedávno jsem změnil projekt a přešel z velké nadnárodní společnosti do "české" banky. Tedy ona ta banka je spíš rakouská, i když v názvu má , že je "česká". Pokud se ale týká prostředí, tak komunikačním jazykem je čeština, schůzky jsou v češtině, analýza se píše v češtině a kolegové jsou Češi a Slováci.

Na předchozím projektu bylo prostředí skutečně mezinárodní. To znamená projekty pro celou Evropu, kolegové z různých zemí a komunikace téměr výhradně v angličtině (schůzky, analýza, prezentace, veškerá dokumentace). Dokonce i emaily mezi kolegy, kteří jsou Češi jsme psali v angličtině. Důvod je ten, že pokud je potřeba email přeposlat, pak se není třeba zdržovat překladem.

Mezinárodní prostředí má samozřejmě dopad i do analýzy. U českého kolegy vývojáře se dá předpokládat, že pokud dostane zadání, že se číslo českého účtu má validovat (modulo 11), tak si s tím zřejmě poradí. Pokud potřebujete validovat maďarský účet a vývojář je třeba z Kazachstánu, tak je to třeba specifikovat mnohem podrobněji a popsat jaké části má maďarský národní formát účtu a jak přesně toto číslo účtu validovat.

Výhodou mezinárodního prostředí je, že se naučíte skutečně používat angličtinu. Tím myslím pohotově reagovat a být schopni bez přípravy úplně automaticky prezentovat své nápady. Z hlediska použití cizího jazyka je mezinárodní prostředí super. Jazykové vzdělávání, kde se konverzaci v cizím jazyce věnujete 1 hodinu týdně je super, ale mezinárodní prostředí znamená, že v angličtině fungujete 40 hodin týdně a to od nástupu na projekt až po finální rozloučení.  A to je hodně intezivní jazykové vzdělávání... Za mě jedna z největších výhod mezinárodní firmy. 

Bohužel takových projektů je poměrně málo. České softwarové firmy chtějí pracovat pro zahraniční zákazníky zejména v západní Evropě. Platit svým lidem českou sazbu a fakturovat za jejich práci německé firmě německou sazbu by bylo super. Ale pokud vím, tak se to moc nedaří. Takže příležitostí účastnit se mezinárodního projektu je málo. 

neděle 19. září 2021

Přepisujeme starou aplikaci - jak na to?

Máme existující aplikaci, který z technologických důvodů již nevyhovuje. Důvodem může být například nepodporovaná technologie na front endu, nebo nevyhovující uživatelské rozhraní. Cílem je tedy víceméně přepsat aplikaci 1:1. Zdrojové kódy původní aplikace jsou k dispozici, aplikace je plně funkční. Co chybí je analýza této aplikace, nebo jakákoliv jiná dokumentace. 

Co s tím? Jaký je správný postup analýzy? Začít popisovat uživatelské rozhraní jednotlivých obrazovek? Provést kompletní analýzu uživatelských požadavků a začít navrhovat jednotlivé obrazovky znovu od začátku? Nebo to vůbec není práce pro analytika a za předpokladu, že nejsou žádné změnové požadavky, není analytik vůbec potřeba?

Přepisu stávající aplikace jsem se zúčastnil už 2x. Pokaždé s kompletní analýzou uživatelských požadavků. Existující obrazovky byly použity víceméně jen pro inspiraci a kontrolu, zda se na nic nezapomnělo. Je jasné, že to není nejlevnější postup. Fakt, že aplikace již existuje, nehraje příliš podstatnou roli, zákazník platí kompletní analýzu. Výhodou je, že se nová aplikace může být podstatně lepší než původní aplikace. 

Nyní se účastním projektu, kde byl zvolen postup reverzní analýzy 1:1. To znamená, že analytici popisují existující obrazovky, u kterých se mění design (obsah zůstává) a snaží se popsat funkcionalitu na základě zkoušení, jak funguje stará aplikace a na základě toho, co najdou v kódu. Cílem je ve výsledku dostat stejnou aplikaci, ale realizovanou prostřednictvím novější technologie. Nevýhody tohoto postupu jsou následující:
  • Minimální kontakt s uživateli a jejich požadavky. Požadavky se v daném případě nezjišťují a pracuje se víceméně s předpokladem, že uživatelé chtějí to samé, co mají k dispozici nyní, jen je to třeba dodat pomocí novější technologie a s hezčím designem. 
  • Pokud původní obrazovka nevyhovovala, nic se nezmění, protože nová obrazovka bude hezčí, možná o něco přehlednější, ale z hlediska obsahu a funkcionality stejná, jako ta v původní aplikaci. 
  • Pro většinu analytiků je to nezajímavá a nepříliš kreativní práce.