8 jätkusuutliku ja kvaliteetse tarkvaraprojekti edukomponenti

jätkusuutliku ja kvaliteetse tarkvara arendamine

Jätkusuutliku ja kvaliteetse tarkvara loomiseks on oluline jälgida nii tehnilisi kui ka protsessilisi elemente, sealhulgas ühe või teise funktsiooni vajadust ja tema käitumise põhjuseid. Siin on 8 põhielementi, mis aitavad tagada tarkvaraprojekti edu: 

1. Tehniline arhitektuur 

Tugev tehniline arhitektuur, mis on kohandatud süsteemi ärilisele eesmärgile, on hea tarkvara üks aluseid. Vali arhitektuur vastavalt valdkonna vajadusele, näiteks igasugused registrid, ala raamatupidamisregistrid vajavad üht arhitektuuri, ettevõtted nagu Bolt, Wolt ja riigiasutused teist ja IoT teenuste ettevõtted kolmandat.

2. Dokumentatsioon

Pane kõik süsteemi eesmärgid ja otsused kirja ja uuenda vastavalt muudatustele.Selge dokumentatsiooni puhul saad protsessi käigus näpuga järge ajada, et tarkvara käituks vastavalt oodatud ärilistele eesmärkidele. 

3. Clean code

Kood peab vastama “clean code” põhimõtetele – puhas, loetav, testitav ja funktsionaalne. Ilus kood jookseb ülevalt alla ja vasakult paremale. Ta võimaldab kiireid muudatusi, uute arendajate kergemat integreerimist projekti ning võib aidata välistada lausa terveid veaklasse.

4. Automatiseeritud testitavus

Tarkvara peab ise suutma otsustada, kas ta töötab vastavalt ärilistele lähteülesannetele. Lisaks ressursside kokkuhoiule võimaldab automatiseeritus avastada võimalikke vigu ja puudujääke juba varajases arenguetapis, et tagada tarkvara ootuspärane toimivus pikemas ajaperioodis ning erinevates keskkondades.

5. Turvalisus

Tarkvaraarenduse turvalisus koosneb kahest aspektist. Tehniline turvalisus tähendab turvaaukude ennetamist kui ka andmete kaitsmist volitamata juurdepääsu eest. Teine aspekt on seotud süsteemi lisatud andmete tundlikkusega, mis määrab, millise tasemega turvalisust vajame. Näiteks, kui süsteemis on mitme erineva tundlikkusastmega andmed, siis need peavad üksteisest eraldatud olema, et kohe ei saaks kõikidele andmetele ligi. Selliselt on üles ehitatud näiteks avalikud riigiasutuste platvormid.

6. Hooldus ja uuendamine

Broken windows theory, mitte ilmtingimata Windowsi pilkamine, väidab, et sõltumata keskkonnast, seisavad kõik aknad rikkumata kuni keegi esimese akna ära lõhub. Seejärel hakkavad ka teised aknad purunema. Kui tarkvaraprojekt hooletusse jätta, hakkab see mingil hetkel väga kiiresti lagunema. Ja kui sellel piisavalt kaua juhtuda lasta, siis uued tööriistad ei suuda nii vana projektiga enam abiks olla. Katkised projektid, mida saab arendada ainult vanade tööriistadega, ei ole enam atraktiivsed ei arendajatele ega koostööpartneritele. Seega on oluline, et arendusprotsessid, igasugune hooldus ja uuendamine, peavad toimuma kõikides faasides alates projekti algusest kuni järelprotsessideni, kui projekt on üle antud.

7. Riskihaldus

Süsteemi ehitamisega kaasnevad nii tehnoloogilised kui ka inimriskid. Tehnoloogiliselt kasutatavad komponendid peavad olema levinud ja püsivalt toetatud. Mis puudutab inimriski, siis kogu protsess peaks kõikides faasides ja ka tehniliselt toimuma selliselt, et kui projekti liikmed ajas vahetuvad, siis sellega ei kaasne lisakulusid ja muudatuste sisseviimine toimuks lineaarselt.

8. Protsessid

Püüa aru saada, missuguseid funktsionaalsusi on tarkvarasse vaja ja pane selle põhjal arendusprotsessid paika. Meeskonnaga läbiräägitud ja kokkulepitud protsessid ning neid toetavad CI/CD reeglid on üliolulised, et eelpool mainitud punktid oleksid täidetud ning neid päriselt ka rakendataks ja kasu oleks.

Raimo Seero, Uptime’i tehnoloogiajuht: “Hea tarkvara on tehnoloogiliselt hea, ilusa ja puhta koodiga, tehnilise arhitektuuri ja ajas pidevalt uuendatud komponentidega. Kuid kõige olulisem on tagada, et äriprotsessid oleksid õigesti määratletud ja täidetud. Isegi kui tarkvara näeb tehniliselt veatu välja, on protsessid hädavajalikud selleks, et mõista, kas tarkvara vastab äri vajadustele või mitte.

Uptime ja Äripäev on koostöös kokku pannud kahepäevase praktilise koolituse, kus kolme kogenud arendaja/arhitektiga arutame, miks ülalpool mainitud punktid on olulised kvaliteetse ja jätkusuutliku tarkvaraprojekti arendamisel ja kuidas tagada, et nendest ka kasu oleks.

Mis: koolitus “Kuidas kirjutada kvaliteetset tarkvara”
Millal: 20-21.02.2024
Kus: Äripäeva koolitused

Liitu uudiskirjaga