Případová studie
Zefektivnění distribuce dokumentů, které ušetřilo stovky tisíc
Jakub Gräf | 6. 12. 2022
O projektu
V roce 2020 byl jedním z našich hlavních projektů portál a mobilní aplikace sousedé.cz, která spojuje správce nemovitosti, výbor a členy SVJ. Projekt měl za sebou kompletní přepsání (více o něm zde) a jeho obchod byl zaměřen převážně na SVJ (společenství vlastníků jednotek). Začalo se však stále více ukazovat, že jde o hodně rigidní trh. Rozhodli jsme se tak zaměřit i na správní firmy a bytová družstva. Bylo proto třeba najít vhodnou skladbu funkcí i pro tuto „novou cílovku“.
Prvním, s kým začaly „námluvy“, bylo jedno ze dvou největších bytových družstev v Liberci, které mělo ve správě okolo 180 objektů s 6 tisíci jednotkami. To by byl výrazný přírůstek placených domů! Jednou z jejich hlavních podmínek pro adopci systému byla pomoc s každoroční distribucí rozúčtování služeb.
Pro družstvo byla tvorba, tisk, kompletování, obálkování a odesílání rozúčtování a rozpisů několikatýdenní administrativní peklo, které se opakovalo každý rok. Zároveň to byl i citelný náklad. Celková částka se pohybovala kolem 600 tisíc korun ročně. Největší část představovala cena doporučeného dopisu, dále tisk a v neposlední řadě cena za lidskou práci.
Cílem tohoto projekt se tak stalo:
„Snížit náklady správních firem na distribuci dokumentů na vlastníky jednotek pomocí portálu Sousedé.cz.“
Náš proces
Vše standartně začalo analýzou. Potřebovali jsme pochopit, jak rozesílání funguje, koho se týká, a na jaké problémy můžeme narazit. Čím hlouběji jsme se do problematiky dostávali, tím se řešení stávalo složitějším. První výzvou bylo, jestli se vůbec budeme schopni dostat k potřebným datům.
Synchronizace dat
Družstvo, jako spousta dalších v ČR, používá software SSB 2000 od společnosti Starlit s.r.o. V tomto programu spravuje veškerá data o domech a vlastnících, používá jej pro tvorbu vyúčtování a další úkony spojené se správou nemovitostí. To byl pro nás zdroj dat. Starlit začal s tvorbou a prodejem programu v 90. letech minulého století a tomu odpovídala i technologie, ve které je napsaný. Microsoft Visual FoxPro je technologie starší než drtivá většina našich vývojářů. Jedná se o program vytvořený pro Windows a běží pouze lokálně. Družstvo vyřešilo problém se spoluprací a sdílením dat uvnitř firmy tím, že všechna data uložila na lokální síťový disk. Mimo lokální síť se k nim nebylo možné dostat.
Zprvu nepřekonatelný problém jsme se rozhodli vyřešit pomocí prostředníka. V družstvu měli firemní Microsoft 365, do kterého spadá i cloudové úložiště Sharepoint se slušnou synchronizací lokálně uložených souborů. Jeho hlavní výhodou, alespoň pro nás, bylo, že má API!
Všech 5 GB dat v podobě 40 tisíc pdf souborů a databáze SSB 2000 je tak neustále synchronizováno do Sharepointu. Z něj si přes API díky tzv. „delta query“ každou noc vybíráme nové a změněné soubory a stahujeme je do našeho portálu.
Luštění databáze
První výzva za námi. Data máme. Teď je rozluštit. Každý pdf soubor generovaný programem má dlouhý číselný název. Ten v sobě nese mimo jiné i krátkou část kódů představujících ID jednotky v databázi SSB 2000. Pak už stačí jen najít příslušného majitele a na něj napárované kontaktní informace. Brnkačka.
Až na to, že program využíval DBF databázi, což mimo jiné znamená, že název sloupce nemůže mít více než 8 znaků. Pro porovnání - my jsme zvyklí pojmenovávat sloupce v databázi například “first_name“, zde to bylo “A_rpc2”. A to příliš vypovídající není, obzvláště pokud hledáte ID entity nebo položky v číselníku. Luštění v podobě reverzního inženýrství nám zabralo nejvíce času z celého procesu tvorby této funkcionality, ale nakonec jsme dosáhli úspěšného řešení.
E‑mail, zlatý standard internetové komunikace
Bylo na čase vymyslet způsob, jakým dokumenty k vlastníkům dostaneme. Naše pozornost se jako první stočila k 1:1 chatu zabudovaného do portálu. Jeho využití s sebou neslo mnoho problémů, jako:
- právní uznatelnost doručení,
- jeho obecně malá využívanost v portálu,
- většina domů a tím i majitelů ještě nebyla registrovaná na portále.
Poslední bod v sobě samozřejmě nesl i jistou výhodu. Donutil by družstvo urychlit registraci svých domů a jejich vlastníků do portálu. To však v tak krátkém čase nebylo stihnutelné. Technické, právní a UX důvody nakonec převážily ty obchodní. Proto vyhrál starý dobrý standard internetové komunikace – e‑mail.
Výhodou je, že člověk mění doručovací adresu častěji než e‑mail. Nevýhodou, že e‑mailových účtů má dnes velká část lidí několik – pracovní, osobní i tzv. „spam e‑maily“. Ty jsou používané nejčastěji pro online registrace, aby člověk minimalizoval množství nevyžádané pošty na svých hlavních e‑mailových účtech. Na tomto i dalších projektech sledujeme v posledních letech vzrůstající trend využívání těchto tzv. „spam e‑mailů”. Tento fenomén by tak mohl výrazně snížit doručitelnost v případě, že bychom využili adresy, pod kterými se uživatelé registrovali do portálu.
Naštěstí mělo družstvo u drtivé většiny vlastníků „potvrzenou“ e‑mailovou adresu pro elektronickou komunikaci. V tomto případě cesta ke slovu „potvrzená” vedla přes fyzické formuláře podepsané a osobně předané na sekretariátu. Pro vlastníky asi menší příkoří, ale pro nás nyní velká pomoc.
Jak to vlastně celé funguje
Víme tedy, že dokumenty budeme posílat na e‑maily z družstevní databáze SSB2000. Teď bylo na čase vymyslet, jak to celé spojit do jednoho dobře fungujícího celku. Bylo jasné, že pro odesílání využijeme tzv. “Správní zónu“. Jednalo se o část aplikace sloužící správním firmám a bytovým družstvům, které potřebovaly hromadný přehled všech domů na sousedé.cz, které měly ve správě.
U návrhu jsme hodně pracovali s informacemi získanými úvodní analýzou. Proces nesměl být výrazně jiný, než byl doposud. Ani k tomu nebyl důvod. Ve správní zóně vznikla sekce „distribuce dokumentů“, v ní přehled jednotlivých domů a v detailu každého domu seznam dokumentů obohacený o tyto informace:
- jednotka,
- příjemce (vlastník jednotky),
- stav odesílání dokumentu,
- datum přidání.
Věděli jsme, že tvorba vyúčtování a distribuce probíhá po jednotlivých domech a často ji provádějí různí lidé. To nám dovolilo vyhnout se přehledu všech 40 tisíc stažených dokumentů, potenciálnímu výkonnostnímu problému. Také to výrazně zjednodušilo nároky na UI.
Pojďme se tedy podívat na celou flow:
- Pracovník družstva, říkejme mu třeba Karel, zpracoval vyúčtování a předpis plateb pro „svůj dům“ v programu SSB2000.
- Tyto dokumenty se do druhého dne nahrály do „Správní zóny“ na sousedé.cz.
- Karel si dokumenty v detailu vybraného domu seřadil podle data nahrání, zkontroloval, hromadně označil a odeslal. Před odesíláním jen nastavil data začátku a konce časového okna pro potvrzení přijetí dokumentů. To bylo zpravidla dva týdny.
- Při odesílání se dokumenty sloučily dle příjemce a jako jeden e‑mail odeslaly.
- Po vypršení nastavené lhůty spadly nedoručené dokumenty do sekce s příznačným názvem „Nedoručené dokumenty“.
- Odtud je Karel hromadně stáhnul a pustil se do odesílání „tradiční“ dopisní cestou. O tom, kolik bude mít na konci Karel práce, měla rozhodnout doručitelnost. To je vlastně celé, o co tu běží.
Doručitelnost je všechno, o co tu běží.
Interním cílem bylo dosáhnout v prvním kole rozesílání alespoň 50% doručitelnosti. To by ušetřilo znatelné náklady družstvu a představovalo by potvrzení konceptu. Následná optimalizace navíc představovala šanci dostat se ještě k lepším číslům. I 50 % bylo z našeho pohledu ambiciózní číslo. Rozhodli jsme se, jak je naším zvykem, nenechat věci na náhodě a jít štěstíčku trochu naproti.
- Odesílatelem je družstvo, nikoliv sousedé.cz. E‑mail s vyúčtováním bude rozesílán z e‑mailu BD, nikoliv z tradičního info@sousede.cz využívaného pro transakční e‑mailing.
- Slovo „vyúčtování“ musí zaznít už v předmětu. Vlastníci jej totiž v tuto dobu roku očekávají.
- Design e‑mailu musí být naprosto minimalistický a jednoznačný, aby i bez čtení bylo po rozkliknutí jasné, o co se jedná a jak se k dokumentům dostat. Nechceme žádnou hromadu textu s linkem na konci.
- Jeden e‑mail je málo. Při odesílání se ve Správní zóně kromě dokumentů volí i datum začátku a konce distribuce. Během něho jsou neotevřené e‑maily každé 3 dny odesílány znovu.
- Před odesláním BD v domech na nástěnku vyvěsí informaci o tom, že bude vyúčtování chodit elektronickou formou.
- Vše musí fungovat i na telefonu. 70 % našich otevřených transakčních e‑mailů je otevřeno na mobilním zařízení.
Zbývalo vyřešit poslední věc – definovat, co vlastně znamená doručený dokument a jak doručitelnost měřit. Nebylo možné posílat dokumenty v příloze, to bychom neměli jak měřit. Měření jakéhokoliv kliku v e‑mailu bylo také složité. Část e‑mailových klientů obsahuje antivirus, který linky testuje tím, že je proklikává. K potvrzení tak muselo dojít mimo e‑mail samotný. Proto jsme přišli s řešením, že se uživatel proklikne unikátním odkazem z e‑mailu na web, kde na něj bude čekat podobně vypadající přehled s tlačítkem ke stažení.
První stažení také muselo stáhnout všechny dokumenty najednou, aby nedošlo k tomu, že ty méně atraktivní zůstanou na ocet. Co se týče nákladů, není velký rozdíl, zda posíláte v doporučeném dopise jeden či více dokumentů.
Textace tlačítko také musí jasně říkat, co dělá. Tedy nejen, že stahuje dokumenty, ale zároveň závazně potvrzuje jejich přijetí. Právě to totiž kliknutí na tlačítko představovalo – současně se stažením dokumentů jsme ve formě datového podpisu do naší databáze uložili informaci o uživateli - typ zařízení, IP adresa, prohlížeč aj a dokumenty označili jako doručené.
Jak to celé dopadlo
V první vlně bylo cílem doručit alespoň polovinu odeslaných dokumentů a poté postupnými změnami dosahovat lepších výsledků. K výraznější optimalizaci však nedošlo a důvod byl k našemu překvapení jednoduchý – povedlo se nám hned v první vlně doručit přes 90 % všech dokumentů. Navíc, díky jednoduchému exportu již zkompletovaných sad dokumentů, jsme zefektivnili i distribuci zbylých nedoručených 10 %. Za první hromadné rozesílání jsme tak libereckému bytovému družstvu ušetřili okolo půl milionu korun. Celá funkcionalita je dnes využívána i na další typy dokumentů v průběhu celého roku.
Malou nevýhodou zůstalo samotné napojení na Starlit SSB 2000. I přesto, že funguje v tomto případě velice dobře, není snadno a rychle znovupoužitelné na další správní firmy. Celá implementace vyžaduje určité přizpůsobení tomu, jak je program využíván v dané firmě, což celý proces zpomaluje a prodražuje. I přesto se distribuce dokumentů stala hlavním pilířem rozhraní pro správní firmy a pomohlo nám do sousedé.cz přivést další domy. V tomto případě nikoliv po jednotkách, ale po desítkách.
O projektu
Na projektu se podíleli
Martin Tryzna
projektový manažer
Jakub Gräf
UX design
Tomáš Valoušek
integrace a vývoj
Jakub Janata
integrace a vývoj
Petr Vejvoda
frontend vývoj
Použité technologie
React.js
Typescript
React Native
Styled Components
Symfony
PHP
GraphQL