Jak předat projekt profesionálům, kteří vědí, co dělají, a dotáhnout jej do úspěšného konce?

Předání IT projektu profesionálům

Změna dodavatele IT řešení v průběhu vývoje je nefalšovanou noční můrou všech majitelů firem, které usilují o vlastní systém nebo aplikaci. Problémů s programováním, testováním a nasazením je již tak víc než dost, ale když k nim přičteme ještě komplikace při předávání projektu jinému týmu, jsou obavy zcela na místě. Vysoké náklady, časová náročnost, nároky na IT personál, technická složitost a právní aspekty – s tím vším a s mnoha dalšími výzvami je nutné se při předávce projektu vypořádat.

Jakkoli se vidina takto rozsáhlé akce může zdát děsivá, bylo by chybou domnívat se, že ji nelze zvládnout hladceprofesionálně. Skuteční IT odborníci si poradí s předáním technické dokumentace, sjednocením technologií, koordinací zaměstnanců a vypracováním a dodržením časového plánu. V dnešním článku se tedy podíváme na to, na co se při předání projektu připravit, s jakými úskalími počítat a kolik si na to celé připravit peněz.

Schůzka a předání projektu
Schůzka a předání projektu

Co je potřeba si před předáním ujasnit?

Klíčem k úspěšnému předání projektu je především efektivní komunikace a transparentnost

Vše začíná u klienta, který by měl otevřeně sdělit svou motivaci pro předání projektu, a hlavně svá očekávání (časová, finanční, technická atd.). Proč vyvíjený produkt existuje a jakou funkci má plnit? Jaké jsou dlouhodobé obchodní cíle klienta, jejichž dosahování má aplikace napomáhat? Nový tým by měl rozumět nejen tomu, na čem bude pracovat, ale také proč. Dále by klient neměl opomenout slabá místa systému. Je lepší otevřeně přiznat technologické a jiné nedostatky hned na začátku, aby s nimi mohli vývojáři počítat. A samozřejmě je důležité se dívat i do budoucna – slibuje si klient od spolupráce další vývoj, nebo pouze údržbu?

Z druhé strany musí od přebírajícího týmu jasně zaznít, že to nebude jednoduchý a pravděpodobně ani levný proces. Nemá cenu snažit se o přehnaný optimismus ani pokud jde o termíny a časový plán – předání i středně velkých projektů může trvat jeden až šest měsíců podle toho, zda klient poskytne veškeré potřebné informace a součinnost. Na místě je také varování ohledně rizik (viz následující část) – nekvalitní dokumentace, prodražení kvůli skrytým vadám a nekompatibilní technologie a mezery ve znalostech mohou kdykoli znamenat další komplikace.  

Jak předání projektu probíhá?

Abyste si mohli udělat bližší představu o průběhu předání IT projektu, rozdělili jsme pro vás celý proces do několika fází.

Vytvoření roadmapy („jízdního řádu“ předávky)

Ze všeho nejdřív si musíme vyjasnit nejen vzájemná očekávání, ale také se dohodnout na realistických termínech jednotlivých kroků předání. Výrazem roadmapa se tedy myslí harmonogram, který kromě časových údajů stanovuje rovněž odpovědné osoby na obou stranách a jejich povinnostikompetence. Pokud má být předání co možná nejhladší a bezproblémové, musí být všem účastníkům procesu po celou dobu jasné, kdy a co má být předáno či provedeno, kdo za co odpovídá, jaká je předpokládaná náročnost jednotlivých úkolů a jaká hrozí potenciální rizika (technická, organizační a jiná).

Na základě všech těchto údajů se následně definují milníky – pomyslné mety, jimiž může být například ověření přístupu ke všem klíčovým komponentám, úspěšné spuštění projektu v lokálním i testovacím prostředí nebo přebrání backlogu. 

Schůzka s vývojáři
Schůzka s vývojáři

Schůzky se stávajícími vývojáři

Po sestavení časového rozvrhu prací a definování odpovědností přichází na řadu schůzky vývojářů. Na nich budou mít členové původního týmu možnost seznámit nový tým s již hotovým kódem, předpokládanými use cases a všemi specifiky daného projektu, o kterých by měl nový tým vědět. Tyto meetingy představují vynikající příležitost pro Q&A (kladení dotazů a jejich zodpovídání) a předání veškerých informacívědomostí, které nejsou zaznamenány v projektové dokumentaci (což v praxi bohužel znamená většinu informací).

Předání projektové dokumentace

Jak jsme již naznačili v předchozím odstavci, projektová dokumentace bývá nejčastějším kritickým bodem předání projektu. Většina vývojářů a firem jí totiž zpravidla nevěnuje příliš velkou pozornost v naději, že nebude nikdy potřeba. Když má ovšem dojít na předání projektu někomu, kdo do vývoje nebyl zasvěcen od samého počátku, stává se takto nedostatečná projektová dokumentace doslova časovanou bombou.

Projektová dokumentace by měla ideálně obsahovat vysvětlení nejen toho, co kód dělat, ale také proč bylo zvoleno určité řešení, jak systém spustit ve zkušebnímprodukčním prostředí, jaké technologienástroje byly použity, jak fungují napojení na API a jaké chyby se zatím nepodařilo odstranit. Měla by zkrátka popisovat UX/UI návrhy, wireframy,  celkovou architekturu, datové modely, CI/CD procesy, fallbacky a další prvky vyvíjeného systému.

Co by měla obsahovat projektová dokumentace?
Co by měla obsahovat projektová dokumentace?

Realita je však tomuto ideálu často na hony vzdálená – pokud k projektu vůbec nějaká dokumentace existuje, většinou je sepsána pouze v jedné verzi bez dalších aktualizací (tudíž je zastaralá), těžko se v ní orientuje bez glosáře nejdůležitějších pojmů a nedá se z ní pochopit logika postupu původních vývojářů.

Asi není potřeba připomínat, že nekvalitní nebo zcela chybějící projektová dokumentace znamená další zpožděníprodražení předávky (někdy i značné).  

Předání zdrojového kódu

Pokud se novému týmu podaří vyjasnit si všechny nepřehledné body a jakž takž se v projektu zorientovat, přichází další náročná pasáž, kterou je předání samotného zdrojového kódu. To zahrnuje také poskytnutí přístupu k repozitářům (GitHub, GitLab, Bitbucket, …), popis spuštění projektu (lokálně a ve zkušebním/produkčním prostředí) a pokyny ohledně konfigurace. Nutno znovu zdůraznit, že bez kvalitní dokumentace může práce nového týmu v této fázi připomínat spíše archeologii, protože bude nutné se zdlouhavě probírat kódem a snažit se z něj „rozluštit“ věci, které by si jinak vývojáři mohli jednoduše přečíst v dokumentaci.

Předání přístupů a konfigurací

Ne, ještě nemáte vyhráno – další důležitou a často přehlíženou fází je předání přístupů a konfigurací. To zahrnuje v první řadě přístupy ke službám třetích stran, jako jsou analytické nástroje (Google Analytics, Mixpanel, …), push notifikace (Firebase, OneSignal, …) nebo třeba platební brány (Stripe, PayPal, GoPay, …). Dále se může jednat o přístupy k serverům (AWS, Azure, …) a databázím (PostgreSQL, MySQL, …). V případě mobilních aplikací je potřeba zajistit také předání přístupů k účtům na platformách Google PlayApple App Store, což nemusí být zejména u Applu vždy přímočaré.

Včasné předání všech potřebných přístupů je nezbytným předpokladem pro to, aby práce na vývoji mohly pokračovat bez zbytečných průtahů. Řada těchto služeb je vázána na konkrétní lidi, což může být problém tehdy, když se například některá z těchto osob rozhodne odjet po předání na několik týdnů na dovolenou.

Podpis smlouvy o úrovni poskytovaných služeb (SLA)

Pokud jste se prokousali předchozími fázemi až k podpisu SLA, gratulujeme! To nejtěžší máte patrně za sebou. Nyní zbývá ještě detailně ošetřit právní aspekty nové spolupráce – tedy dohodnout se na tom, jaké služby se přebírající společnost zavazuje poskytovat, jak bude probíhat údržba řešení, jaké jsou kontaktní osoby pro vzájemnou komunikaci a jak se bude eskalovat řešení problémů. SLA není pouhá formalita – je to základ stabilníproduktivní spolupráce do budoucna, který jasně definuje vztah mezi oběma stranami a stanoví jejich práva i povinnosti.

Nejčastější nástrahy při předávání projektů
Nejčastější nástrahy při předávání projektů

Nejčastější nástrahy při předávání projektů

Nyní již víte, jak by přibližně mělo předání projektu probíhat. A určitě už také tušíte, jaká úskalí taková akce skýtá. Podívejme se tedy podrobněji na hlavní překážky a problémy při předávání IT projektů.

Nepřesná nebo neúplná dokumentace

Znovu opakujeme: Největší slabinou většiny IT projektů je neúplná, nepřesná nebo jinak nedostatečná dokumentace. To znamená, že pro nový tým může být velmi obtížné zorientovat se v interních zkratkách a terminologii, ale také pochopit některá rozhodnutí, strukturu závislostí, chování kódu v určitých situacích a tak dále. Vývojáři pak zbytečně plýtvají čas na zpětné rozkrývání logiky rozhodování jejich předchůdců, dešifrování nesrozumitelných pasáží a na objevování principů, které by bývali mohli jednoduše vyčíst z kvalitní dokumentace.

Odlišné technologie

Dalším častým problémem při předávání projektů jsou rozdíly v technologiích používaných starým a novým týmem. Pokud se nový tým musí přeorientovat na jiný programovací jazyk (např. Java vs. Node.js), frontendový framework (AngularJS vs. React), CI/CD systém (Jenkins vs. GitLab CI), databázi (MySQL vs. PostgreSQL) nebo integrace třetích stran (SOAP vs GraphQL), hrozí nejen další prodlevy, ale také riziko chyb a zhoršení kvality kódu. Pokud novým vývojářům chybí znalosti nebo zkušenosti s kritickými částmi infrastruktury IT řešení, jako jsou CI/CD pipeliny, skripty pro nasazení nebo API třetích stran, může při provozu docházet k výpadkům dostupnosti, nedostatečnému zabezpečení, bottleneckům při dalším vývoji nebo neefektivním reakcím na incidenty.

Dobrou zprávou je, že s pomocí profesionálního partnera se nemusíte této výzvy vůbec obávat. Z vlastní zkušenosti víme, že všestranně zaměřený tým odborníků s dostatečně širokým portfoliem technologických znalostí se hravě zorientuje v různých prostředích a poradí si s širokou škálou technologických stacků. Experti z Think Easy mají bohaté zkušenosti s migrací projektů a technologické rozdíly dokážou kreativně využít k modernizaci či konsolidaci části stacku. To, co se na první pohled zdá jako překážka, se tak může stát příležitostí k technologické optimalizaci.

Ztráta pracovního tempa a ohrožení termínů

Pokud máte pro svůj projekt stanovený pevně daný termín, zdá se na první pohled změna dodavatele jako jedna z nejhorších věcí, která vás může potkat. Kromě toho, že samotný proces předání zabere klidně několik týdnů až měsíců, ztratíte také veškerou „setrvačnost“, může dojít k reorganizaci priorit, posunu dílčích deadlinů… Nový tým se musí s projektem nejprve seznámit a dostat se do plného pracovního tempa, což bude znamenat další prodlevy.

Jak s termíny?
Jak s termíny?

Ani v tomto případě ovšem není potřeba propadat panice. Opět platí, že pokud svůj projekt předáte schopnému a kreativnímu týmu, můžete na tom ve finále vydělat. Za prvé: Jestliže dosavadní vývoj stagnoval nebo jej provázely jiné problémy, může pro vás být svěží vítr v podobě inovativních nápadů nového týmu výhodou. Původní vývojáři mohli trpět „provozní slepotou“, která jim neumožňovala vidět překážky z jiné perspektivy a efektivně je řešit. I když se může dokončení projektu o něco protáhnout, kvalita kódu a celkového produktu může být nakonec vyšší.

Za druhé je potřeba zmínit, že firmy s bohatými zkušenostmi s přebíráním projektů (jako je Think Easy), se do vývoje zapojí rychleji a s vyšší jistotou než ty, které nemají na efektivní přebírání dostatečné know-how. Díky lepšímu nastavení interních procesů, adekvátní personální kapacitě a flexibilnímu plánování tak ani nemusí nutně dojít k ohrožení původních termínů. Vše zkrátka záleží na volbě vhodného partnera, kterému svůj projekt chcete předat.

Bezpečnostní rizika

Předání projektu mezi starým a novým týmem obnáší také potenciální bezpečnostní rizika. V první řadě je potřeba velmi jasně označit a odlišit od sebe jednotlivá prostředí (vývoj, staging a produkce), aby například někdo omylem nevymazal „živou“ databázi v domnění, že se jedná pouze o zkušební data. Chaos bývá také v přihlašovacích údajích, které jsou často roztroušené na více místech, nedostatečně zabezpečené nebo zastaralé. Pozor je potřeba si dát také na opětovné ověření a připojení pluginů a služeb třetích stran, jako jsou rozhraní API, SDK či platformy SaaS. A hlavně je nutné odebrat přístup původnímu týmu, který již na projektu nepracuje!

S opravdovými profesionály se nemusíte předání projektu bát!

Vstávají vám hrůzou vlasy na hlavě při pomyšlení, co všechno vás při předání projektu jinému IT týmu čeká? Bojíte se, že se vám rozpracovaný produkt rozsype pod rukama kvůli nekvalitní dokumentaci nebo nekompatibilním technologiím? Nemůžete si dovolit příliš velké prodražení ani zpoždění?

vlastní zkušenosti s vývojem nejrůznějších aplikací a softwarových řešení moc dobře víme, jaké nástrahy se s předáváním IT projektů jiné firmě pojí. Právě díky tomu však těmto výzvám dokonale rozumíme a dokážeme vás jimi bezpečně provést. Jakkoli je přebírání rozpracovaných projektů nevděčná práce, naši experti si poradí i s tímto úkolem a dotáhnou váš software do úspěšného konce. Pokud chcete předat rozpracovaný nebo již dokončený projekt nám, vyplňte náš kontaktní formulář a domluvte si s námi nezávaznou schůzku. Pro naše klienty jsme cílovým dodavatelem softwaru – rádi se staneme vaším dlouhodobým partnerem na cestě k vysněné aplikaci!