Vývoj softvéru na mieru a čo to všetko obnáša

Vývoj softvéru na mieru a čo všetko to obnáša

Softvér na mieru je niečo podobné, ako keď si dáte ušiť oblek alebo svadobné šaty. Viete, že na trhu nájdete niečo, čo by vám vyhovovalo, ale takisto viete aj to, že to nebude 100 %-ne to pravé riešenie. Softvér na mieru predstavuje niečo, čo vyrieši všetky vaše problémy v danej oblasti a pritom nemusíte robiť žiadne kompromisy. Ale ako to vlastne funguje? Ako sa dostať k softvéru na mieru a ako celý proces implementácie vyzerá? Dnes vám to popíšeme od nápadu až po implementáciu do produkčného prostredia.

Začiatok projektu

Všetko začína prvotným rozhodnutím, že softvér na mieru potrebujete. Takéto rozhodnutie padne väčšinou vtedy, keď sa snažíte vyriešiť nejaký problém a na trhu nemôžete nájsť žiadne riešenie. Problémy vo firmách nastávajú hlavne pri raste spoločnosti alebo pri automatizácii procesov, ktoré vás stoja drahocenný čas, ľudské zdroje a v neposlednom rade peniaze.

Keď už ste sa rozhodli pre softvér na mieru a vybrali ste si vhodného partnera, ktorý takýto softvér vyvinie, je potrebné si vytvoriť presný obraz, čo má takéto riešenie obsahovať. Plánovanie a zbieranie požiadaviek na softvér je rovnako dôležité, ako jeho samotný vývoj. Požiadavky musia byť definované presne a do detailu, aby sa počas vývoja nestalo to, že by ste ich museli meniť, čo by mohlo celú implementáciu do produkčného prostredia oddialiť.

Keď už sú systémové požiadavky jasne dané, začína softvérová firma s návrhom celého riešenia. V tomto štádiu sa riešia nové procesné mapy, ktoré popíšu celý nový proces a popíšu každú variantu, ktorá by sa v novom procese mohla vyskytnúť. Na to sa využívajú takzvané UML programy (Unified Modeling Language) ako napríklad Microsoft Visio, Gliffy, Astah a mnoho ďalších.

Foto: Príklad procesnej mapy

Po navrhnutí nového procesu, ktorý zákazník odsúhlasil sa prechádza na výber framework-u, ktorý bude pri vývoji použitý a aký programovací jazyk sa použije. Najznámejšie a v súčasnosti najpoužívanejšie sú TypeScript, Python, C++ a mnohé iné. Framework a programovací jazyk sú dôležité aj z pohľadu využitia nového softvéru na mieru. Riešenie môže byť vybudované len ako aplikácia na internom serveri, na Cloude a niekedy si klient vyžaduje takisto mobilné verzie riešenia, aby mohli byť dostupné odkiaľkoľvek.

Dôležitým prvkom prípravy na vývoj je UI a UX dizajn (User Interface a User Experience design). V rámci UI a UX sa pozeráme na celý proces, interakciu užívateľov s produktom a celkovú použiteľnosť riešenia. Pri UI a UX ide nielen o to, či je riešenie funkčné, ale aj aký dojem v používateľoch zanechá a či ho budú radi používať. Na trhu nájdeme viacero programov, ktoré sa zameriavajú na dizajn riešenia. Veľmi obľúbené sú napríklad Figma, Sketch, Craft či InVision Studio.

Foto: InVision Studio

Vývoj produktu

Keď už máme pokope všetky požiadavky, procesnú mapu, framework, programovací jazyk a grafický dizajn, môžeme začať so samotným vývojom. Vývoj majú na starosti IT Developeri, ktorý vytvárajú samotný kód a tým aj budujú navrhnutý softvér. Väčšinou sa jednotlivé časti softvéru rozdelia do mnohých samostatných častí, takzvaných komponentov, ktoré sa vyvíjajú osobitne, ale v konečnom dôsledku vytvárajú celok. To je aj príklad programovacieho jazyka TypeScript a frameworku React. Pri vývoji softvéru sa využíva nejaká metodika projektu, či už Waterfall, alebo veľmi obľúbený Scrum. Scrum je aj veľmi praktický, keďže sa skladá z jednotlivých Šprintov, ktoré trvajú zväčša od jedného do štyroch týždňov. Výhoda Scrum-u je v tom, že aplikáciu je možné vyvíjať postupne a niektoré časti kódu je možné umiestniť do produkčného prostredia pre užívateľov, kým na pozadí vyvíjate ďalšie komponenty. Do produkčného prostredia tak niektoré softvéry chodia ako tzv. MVP (Minimum Viable Product), ktoré sú už vyvinuté do takej miery, že ich užívatelia vedia používať, ale ešte stále neobsahujú všetky požadované súčasti. Počas vývoja produktu sa v pravidelných intervaloch stretáva objednávateľ so softvérovou firmou, aby si pozreli celkový “progress” a diskutovali o ďalšom postupe. Keď je vývoj na konci, je potrebné ho poriadne otestovať. Ako prví by sa do testovania mali pustiť ľudia zo softvérovej spoločnosti v rámci tzv. SIT (System Integration Testing). Ak je SIT úspešné, zmeny sa presúvajú do ďalšieho testovacieho prostredia, tzv. UAT (User Acceptance Testing), v ktorom už testujú vybraní používatelia, aby našli prípadné chyby, ktoré musia developeri opraviť. V rámci SIT a UAT by mali byť otestované všetky súčasti softvéru, dokonca aj samotné tlačidlá, či fungujú správne. Riadne testovanie so sebou prináša poctivú prípravu v podobe prípravy testovacích scenárov, kde je jasne stanovené čo sa ide testovať, ako sa to ide testovať a aký je požadovaný výsledok testovacieho scenára. V istých prípadoch sa používajú aj negatívne testovacie scenáre, ktoré majú otestovať, či napríklad softvér akceptuje údaje v nesprávnom formáte a či je schopný tento nesprávny formát alebo nevyhovujúce dáta akceptovať. AK ich neakceptuje, testovací scenár je tým pádom úspešný.

Implementácia do produkčného prostredia

V momente dokončeného vývoja a úspešných testov je čas na presun nového softvéru do produkčného prostredia. Tým pádom je už dostupný pre užívateľov a softvérová firma začína s konečným odovzdaním diela. S dielom sa odovzdáva aj príslušná dokumentácia a manuál, ako daný softvér má fungovať a ako ho majú používatelia používať. Po odovzdaní softvéru je jeho údržba buď v rukách objednávateľa, alebo ak to bolo dohodnuté, prípadná údržba a technická podpora je v rukách softvérovej firmy, ktorá ho vyvinula.

Služby Atlantis Technology

V rámci našich služieb ponúkame aj vývoj softvéru na mieru na rôznych platformách. Ak máte záujem o konzultáciu a prípadnú cenovú ponuku, neváhajte nás kontaktovať prostredníctvom nášho kontaktného formulára alebo emailom na info@atlantis-technology.sk.