No izpētes līdz ierīcei – kā top datorprogrammas?

No izpētes līdz ierīcei – kā top datorprogrammas?

Ikviens civilizācijas labumus patērējošs cilvēks ik dienu izmanto vairākas, ja ne desmitiem datorprogrammas. Bieži vien pat neapzināmies, ka katrs nieciņš, uz ko palūkojamies savā viedtelefonā vai datora ekrānā, ir nopietna programmēšanas darba galarezultāts. Pat digitālais kalkulators un kalendārs, nemaz nerunājot par grāmatvedības vai biznesa vadības programmām.

Bet vai vispār kādreiz esat aizdomājušies, kā top datorprogrammas un cik daudz laika prasa to izstrāde? Ja nē, tad pavērsim priekškaru uz informācijas tehnoloģiju speciālistu darbu, kura rezultātā top un pilnveidojas arī mūsu Jumis.

Programma sākas ar izpēti

Kad ir identificēta problēma kāda uzdevuma veikšanā un secināts, ka piemērotākais risinājums varētu būt datorprogramma, sākas tās plānošana. Šajā procesā svarīga ir iespējamā ražojamā produkta priekšizpēte, klientu un viņu vēlmju apzināšana. Potenciālo lietotāju viedoklis ir ļoti svarīgs, jo īpaši gadījumos, ja programma tiek izstrādāta pēc pasūtījuma konkrēta uzņēmuma vai nozares vajadzībām. Šādiem produktiem parasti iepriekš tiek izstrādāta specifikācija, kurā sīki aprakstīta vajadzīgā funkcionalitāte. Savukārt masu patēriņa produktiem jāmēģina izdabāt pēc iespējas lielāka lietotāju loka vēlmēm, tādēļ šādu produktu ražošana parasti ir sarežģītāka un laikietilpīgāka. 

Nākamais solis ir lietojumprogrammas un infrastruktūras izpēte, jo katra produkta izstrādei ir nepieciešamas tehnoloģijas un programmas, uz kurām tiks balstīts jaunais produkts. Ja tas tiks piedāvāts kā mākoņpakalpojums, tad jārēķinās, ka uzņēmumam būs jāmaksā par mākoņresursiem, kuros glabāsies produkts. Ja mākonī tiks uzglabāti klientu dati, tad papildu izmaksas būs par katra klienta izmantotajiem mākoņresursiem.

Visas prasības jaunajam produktam tiek sadalītas divās lielās grupās – tās, kas attiecas uz aparatūru, un tās, kas attiecas uz programmatūru. Projektu sadala detalizētos uzdevumos un aprēķina kopējo projekta veikšanai nepieciešamo cilvēkstundu skaitu, kā arī nepieciešamās izmaksas. Pēc izstrādes programmu, tehnoloģiju izpētes seko to iegādes process.

Uzzīmē, tad programmē

Neviens produkts nevar tikt izstrādāts bez noteikta grafiskā dizaina, kas nozīmē, ka ar dažādu attēlu un simbolu palīdzību produktam tiek radīts vizuāls tēls, kuram ir sava oriģinalitāte un stilistika. Pie grafiskā dizaina pieder arī produkta logo izstrāde, kas nav mazsvarīgi mārketingā, jo tieši produkta logo ir tas, kuram potenciālais lietotājs pievērš uzmanību un izvērtē iespēju produktu iegādāties. Grafiskais dizains pēc būtības nozīmē produkta izskatu. Šis ir visdarbietilpīgākais un laikietilpīgākais process. Brīdī, kad tiek pieņemts lēmums par produkta izstrādi, sākas produkta specificēšana, proti, tiek apzināta visa produkta funkcionalitāte, katrai izstrādes darbībai – formai, funkcijai, pogas darbībai tiek rakstītas specifikācijas. Tā tiek veidota arī grafiskajam dizainam, jo tas ir saistīts ar produkta lietojamību. Ja produkts tiek izstrādāts konkrētam klientam, tad klients ir tas, kurš sagatavo visas specifikācijas, definē funkcionālās prasības, nosaka programmas lietojamību, sakarības, bet uzņēmums pēc šīm specifikācijām veic izstrādi.

Lai saprastu, kas ir jāizstrādā, parasti mēdz zīmēt grafisko skici, kurā iezīmē galvenās funkcionālās prasības. Pēc tam, kad tiek izvērtēts, kas ir jāuztaisa jaunajā produktā, tiek vērtēts, kā šis produkts vai produkta daļas tiks iesaistītas pamatprodukta funkcionalitātē. Piemēram, ja tiek veidots forums, kas tiks iekļauts mājaslapā, jāpēta, kā tas integrēsies kopējā mājaslapā, vai vizuāli tas neatšķirsies no pamatlapas. Pēc kopējā kopskata izveidošanas katrai izstrādājamajai funkcionalitātei, katrai formai, katram aprēķinam, katrai pogas darbībai tiek rakstītas specifikācijas, zīmēta vizualizācija. Rakstot specifikācijas, jāpamato katra funkcionalitāte, jāapraksta, katrs solis un izmantošanas iespējas. Visu izstrādes laiku specifikācijas tiek papildinātas, atkļūdošanas procesa laikā specifikācijas tiek papildinātas ar testēšanas laikā konstatēto nepilnību labojošiem aprakstiem.

Kļūdas jāmeklē un jālabo

Nākamais solis ir programmēšana jeb izstrādes process, kas ietver algoritma detalizēšanu un tā pierakstīšanu attiecīgajā programmēšanas valodā, kā arī datu struktūras izvēli un to kodēšanu. Arī šis ir laikietilpīgs un komplekss process, kas vienkāršam vērotājam no malas var šķist nesaprotamākais no visiem. 

Izstrādes produktiem nereti tiek veidots prototips – produkta agrīna versija, kas tiek izlaista un piegādāta noteiktam klientu lokam. Prototipa mērķis ir pārbaudīt produktu, tā funkcionalitāti un lietojamību pirms tā uzražošanas un nodošanas klientiem masveida lietošanai.

Visu testēšanas procesu būtībā var iedalīt divās grupās. Pirmā ir alfa testēšana jeb alpha test – jaunizstrādātas programmatūras vai aparatūras pirmais pārbaudes posms, ko veic paši izstrādātāji. Alfa testētāji parasti ir komandas cilvēki, kuri ir iesaistīti produkta izstrādes procesā, tie ir pieredzējuši lietotāji, kuri spēj pārbaudīt izstrādāto funkcionalitāti un formulēt testēšanas procesā atrastās kļūdas un problēmas. Tam seko beta testēšana jeb beta test, kurā iesaistīti reālie lietotāji. Tie strādā ar jauno produktu tā, it kā tas būtu pabeigts un realizēts.

Topošā programma tiek soli pa solim pārbaudīta, lai saprastu, vai viss darbojas tā, kā iecerēts. Ja testēšanas laikā tiek manītas kļūdas, tās tiek reģistrētas un noziņotas izstrādātājam, lai veiktu labojumus. 

Nevienu produktu nav iespējams izstrādāt bez kļūdām, tāpēc tiek veikta testēšana un konstatēto kļūdu labošana, ko sauc par atkļūdošanu. Šo soli var uzskatīt par pabeigtu, kad izstrādāju komanda piekrīt, ka projekts ir gatavs ieviešanai un nodošanai galalietotājiem. Realitātē gan pie patērētājiem parasti nonāk produkts, kurā vēl var sastapt kļūdas un iespējas pilnveidot funkcionalitāti. Taču tās laika gaitā tiek izlabotas ar programmas atjauninājumiem.


Dalies: