Stebėdami „AppGallery“ vartotojų atsiliepimus matome, kad dažnai žmonės net neįsivaizduoja, kokį ilgą kelią jų kūrėjai turi nueiti, kad rinkai pasiūlytų puikiai veikiančius produktus. Todėl noriu pasidalinti 5 programėlių kūrimo etapais, kuriuos turi įveikti jų autoriai ir parodyti gairių žemėlapį tiems, kas svajoja apie savo programėlės sukūrimą.
1. Idėja: kaip padėti vartotojams?
Kaip ir bet kurio produkto, taip ir programėlės kelionė prasideda nuo idėjos, kuri technologijų pasaulyje šiandien bene svarbiausias veiksnys, nusakantis produkto sėkmę. Ir Lietuvoje turime pavyzdžių, kai gera idėja leido pasiekti stebėtinus rezultatus. Štai, lengvaatletės Vlados Musvydaitės sukurta vaikščiojimo programėlė „#walk15“ šiandien skaičiuoja turint per 170 tūkst. vartotojų.
Kad gimtų naudinga ir vartotojų mėgstama programa, pradžioje būtina atrasti realų rinkos poreikį, kurį šis produktas galėtų patenkinti. Taip pradedamas tyrinėjimo ir planavimo (angl. research and planning) etapas. Jo metu apsprendžiami programėlės funkcionalumai – kokią problemą ji spręs ir kokią užduotį atliks, kokios funkcijos jai būtinos ir kuo ji bus išskirtinė. Produktų spektras šiandien – ypač platus, jam aprėpti programėlių parduotuvėje „AppGallery“ turime 17 kategorijų, mat programėlės kuriamos beveik kiekvienai gyvenimo situacijai.
Planavimo etape tiriami ir kiti aspektai, galintys turėti įtakos programėlės sėkmei – pradedant rinkos ir konkurentų analize, baigiant uždarbio strategija.
Galiausiai, nutariama ir kokioms platformoms produktas kuriamas. Įprastai išskiriamos dvi jų rūšys. Pirmoji vadinama vietine (angl. native) ir kuriama konkrečiai platformai, pavyzdžiui, operacinei sistemai „Android“.
Kitos vadinamos tarpplatforminėmis (angl. cross-platform) ir kuriamos kelioms platformoms vienu metu. Technologinių sprendimų ir įrenginių kupiname šiandienos pasaulyje ši programėlių rūšis bene populiariausia – kūrėjams neprasminga rištis prie vienos platformos, kai galima išnaudoti visą jų ekosistemą, pradedant telefonais, baigiant laikrodžiais. Daugiaplatformiškumo tendenciją pastebime ir iš nuolat augančio „AppGallery“ programėlių skaičiaus, ir kūrėjų įžvalgų.
2. Vartotojo patirtis: kaip atrodys programėlė?
Turint bendrą viziją ir programėlės paveikslą bei išsiaiškinus, kokiais veikimo principais ji bus paremta, imamasi jos dizaino – sprendžiama, kaip ją iš tiesų matys vartotojai. Šis etapas vadinamas vartotojo patirties (angl. User experience, UX) kūrimu.
Čia dėliojama programėlės architektūra, kuriami stiliaus ir dizaino sprendimai – pradedant mygtukų dydžiu, baigiant konkrečiais planavimo etape aptartais funkcionalumais. Galutinis tikslas – kad programėlė pirmą kartą įgytų realų fizinį rūbą ir būtų sukurtas jos prototipas, bandomoji versija.
Įprastai šiame etape pradedami ir testavimo darbai – programėlė duodama išbandyti ir „pačiupinėti“ su jos kūrimu nesusijusiems žmonėms, kad kūrėjai galėtų rasti klaidų ar neatitikimų, kurių iki šiol neįžvelgė. Taip randami vartotojams patogiausi sprendimai.
3. Vystymas ir testavimas: ar viskas veikia tinkamai?
Sukūrus veikiantį programėlės prototipą, pradedami jos vystymo (angl. development) darbai. Šis etapas apima faktinį programos kodavimą, taip pat – daugybę papildomų veiklų, pavyzdžiui, programėlių parduotuvių rekomendacijų patikrinimą, kad produktas būtų tinkamas viešinimui. Šie darbai vartotojų galvose dažniausiai ir laikomi „programėlės kūrimu“, vis tik dar prieš tai kūrėjai turi nueiti netrumpą kelią.
Kai programa jau veikia, kokybės užtikrinimo specialistai papildomai išbando ją įvairiuose scenarijuose, kad sumažintų klaidų tikimybę realiame gyvenime, kai ši pasieks vartotojų išmaniuosius. Be to, grįžtama prie pirmajame etape išgvildentos idėjos ir užtikrinama, kad kiekviena suplanuota funkcija yra ir galutinėje produkto versijoje bei veikia tiksliai taip, kaip turėtų.
4. Viešinimas: parduotuvėje – galutinis patikrinimas
Kai programėlė jau sukurta ir jos kūrėjų komanda pasiruošusi jos paleidimui, programą galima registruoti oficialiose parduotuvėse, pavyzdžiui, „AppGallery“. Čia savo darbą pradeda mūsų komanda, kuri papildomai padeda kūrėjams atrasti galimų saugumo ir funkcionalumo spragų.
Tokią papildomą patikrą savo programėlių parduotuvėje vadiname pilno ciklo sistema (angl. full-cycle security and protection system). Pirmiausia, identifikuojame kūrėjo tapatybę, patikriname reikiamas licencijas ir taip įsitikiname, kad programėlę pasiūlė tikras asmuo.
Vėliau vyksta keturių sluoksnių patikra ir programėlė skenuojama dėl kenkėjiško elgesio, saugumo ir privatumo apsaugos spragų. Galiausiai, pereinama prie žmogiškosios patikros, kai „Huawei“ specialistai testuoja programėlės veikimą, simuliuodami kasdienius scenarijus įvairiais įrenginiais.
Kai programėlė jau publikuojama „AppGallery“ ir vartotojas nusprendžia ją parsisiųsti, įsijungia nauji apsaugos algoritmai. Užtikrinama, kad vartotojo telefoną programėlė pasiektų specialiai užšifruotais kanalais, o jai veikiant, būtų vykdoma nuolatinė patikra, kurią atlieka dirbtinis intelektas. Apsauga užtikrinama ne tik pagal jau žinomas situacijas, bet ir tas, kurios gali nutikti ateityje, remiantis naujomis virusų grėsmėmis.
5. Palaikymas: darbas nesibaigia
Po parduotuvės patikrinimo programėlė tampa prieinama vartotojams – ją galima saugiai atsisiųsti. Vis tik kūrėjų darbas čia nesibaigia. Pirmiausia, būtina nuolat atlikti programėlės priežiūros (angl. maintenance) darbus, kad būtų užtikrintas sklandus jos veikimas. Todėl periodiškai teikiami programėlės atnaujinimai, taisomos atsiradusios klaidos, diegiami patobulinimai, o kartais ir papildomos funkcijos ar net gi keičiamas stilius.
Bet programėlė parduotuvėje gali egzistuoti dešimtmečius, tačiau taip ir nepasiekti vartotojų kišenėse esančių išmaniųjų telefonų, jei nebus pasirūpinta tinkama jos reklama. Tad produkto kūrėjai imasi ilgą laiką trunkančios reklaminės kampanijos, kuri didina programėlės žinomumą.
Paskutinė programėlės kūrimo stadija nėra baigtinė – atnaujinimai ir jos reklama vyksta tol, kol produktas yra viešai prieinamas vartotojams. Tiesa, ilgainiui palaikymo darbų intensyvumas gali sumažėti, tačiau jie atliekami nuolat.