Případová studie

Přepsání 10 let běžícího projektu od A do Z

Sousedé.cz vznikly před více než 10 lety. V roce 2019 se jeho noví majitelé rozhodli původní vize posunout zcela novým směrem. Sousedé.cz propojuje výbory SVJ, správce, správcovské firmy a vlastníky bytových jednotek. Cílem je, aby všechny informace o domě, bytech a jejich vlastnících byly přehledně na jednom místě. Pro všechny.

„Sousedy jsme vytvořili proto, že chceme posílit komunitního ducha vlastníků bytů a aktivně je propojit s jejich výbory a správci. Chceme ukázat, že provoz a péči o bydlení jde dělat efektivně, příjemně a otevřeně.“

Tomáš Síkora

jednatel a spolumajitel

Výzvy

Náš tým byl vybrán s jasným zadáním – vytvořit kompletně nové UX a UI. Následně přišel i požadavek na vyvinutí webové a mobilní aplikace na zelené louce s kompletní migrací uživatelské základny a jejími daty.

Scope jednotlivých funkcionalit

Definovaný tak, aby současní uživatelé měli všechny funkcionality a zároveň jsme projekt nevyvíjeli roky. Všichni to známe, „mazlit“ se dá do nekonečna…

Neúprosný deadline

Ostatně jako vždy :). Intenzivní vývoj začal v záři. První „vysněný“ termín pro spuštění byl listopad (premiéra filmu Vlastníci) – to se ukázalo jako nereálné.

Vývoj aplikace i webu najednou

Investoři identifikovali jako dobrou konkurenční výhodu mobilní aplikaci. Žádný z konkurentů na trhu aplikaci neměl. Po několika diskuzích jsme se domluvili, že vyvineme web i appku naráz.

Migrace

Kompletní migrace uživatelských dat, tzn. analýza legacy zdrojových kódů a přenos všech uživatelských souborů.

Proces

Na vývoji se podíleli 2 frontend vývojáři, 2 backend vývojáři a jeden vývojář mobilní aplikace.

Vývoj jsme řešili agilním způsobem. Protože jsme potřebovali často iterovat a mít pravidelnou kontrolu nad tím, jestli jsme on time, zvolili jsme týdenní sprinty.

Co považujeme za přínosné v plánování jednotlivých sprintů je, že jsme měli user stories rozděleny na „must have“ a „nice to have“. Must have se v rámci sprintů dařilo plnit, a tím jsme jako tým i investor měli dobrý pocit, že jsme plnili plán a práce nám šla od ruky. Nekonečně přetékající sprinty nejsou cestou.

Investor měl dedikovaný tým na projektu

Jako parametr úspěchu bereme i 100% focus na vývoj na straně týmu investora. Na dospecifikace jsme nemuseli čekat dny, ale minuty. Toto je z našeho pohledu klíčové pro úspěch každého většího IT projektu. Na straně partnera by měla být vždy osoba, která je na spolupráci s vývojovým týmem alokována a může rozhodovat.

Hubený UI kit

Vzhledem k tomu, že jsme scope nemohli moc ořezávat, bylo nutné mít rychle hotový UI kit, ze kterého jsme následně poskládali celou aplikaci. Zvolili jsme cestu menšího množství komponent, aby aplikace dostávaly co nejdříve „finální“ podobu. Ukázalo se, že i s hubenějším kitem si často na frontendu poradíme.

Stejný obsah sprintu pro mobilní i webovou aplikaci

Vývoj mobilní i webové aplikace probíhal najednou. Proto jsem se snažili, abychom ve sprintech měli stejné user stories jak pro web, tak i pro aplikaci.

Celý tým měl focus na stejnou funkcionalitu a členové týmu si mohli navzájem pomáhat bez toho, aby byli vytrháváni z kontextu.

Jak jsme vyřešili migraci

Nejlepším řešením bylo namapování původní struktury na nový model. Postup probíhal načtením skrz mysql adaptér ze staré databáze a vytvořením nových entit přes business logiku nové aplikace s maximálním zachováním zpětné kompatibility (cca 3GB dat za 5 hod.).

Výsledek

Co se povedlo?

MVP jsme spustili v rozumném čase.

Po spuštění jsme nebyli zavaleni nekonečným buglistem.

Majitelé i my jsme byli s výsledkem spokojeni a spolupracujeme na projektu dodnes.

Co bychom udělali příště jinak?

I když jsme pracovali s hubeným UI kitem, měli jsme začít s jeho programováním o kus dřív, aby byl pro hlavní část vývoje opravdu hotový!

Feature vs value driven product development. Protože už byl produkt definovaný z předchozí verze, přebírali jsme funkce bez hlubších výzkumů, zda-li jsou nutné. Příště bychom asi více zanalyzovali potřebu jednotlivých funkcionalit a následné některé vypustili a jiné posunuli o level výš.

Vývoj webové a mobilní aplikace zároveň – o tom někdy příště :)

O projektu

Projekt

Sousedé.cz

Obor

Správa SVJ a bytových družstev

Služby

#produkt

#vývoj

#design

#management

Předání projektu

leden 2021

Navštívit web

Na projektu se podíleli

Martin Tryzna

Martin Tryzna

produktový manažer

Martin Vik

Martin Vik

frontend vývojář

Tomáš Valoušek

Tomáš Valoušek

vedoucí vývoje, vývojář

Jakub Janata

Jakub Janata

backend vývojář

Petr Vejvoda

Petr Vejvoda

vývoj mobilní aplikace

Jakub Gräf

Jakub Gräf

UI design

Použité technologie

React.js

Typescript

React Native

Styled Components

Symfony

PHP

GraphQL

I jeden krátký telefonát může nastartovat zásadní změnu.