Případová studie
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
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.
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…
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é.
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.
Kompletní migrace uživatelských dat, tzn. analýza legacy zdrojových kódů a přenos všech uživatelských souborů.
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.
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.
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ávali co nejdříve „finální“ podobu. Ukázalo se, že i s hubenějším kitem si často na frontendu poradíme.
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.
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.).
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.
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ě :)
produktový manažer
vedoucí vývoje, vývojář
vývoj mobilní aplikace
frontend vývojář
backend vývojář
UI design
React.js
Typescript
React Native
Styled Components
Symfony
PHP
GraphQL