Arendaja distsipliin

Joel Edenberg

Agiilsed arendusmeetodid on väga levinud ja kõigile teada. Kuid näiteks raamistikud, nagu Scrum ja Kanban, keskenduvad protsessidele ja vaatavad olukorda kõrgemal tasemel, kui seda on arendaja kirjutatud kood. Madalam tasemel agiilsete võtete kasutamisel tuleks vaadata aga näiteks Extreme Programming (XP) poole.

Koodi kirjutamise poolel stabiilsema kvaliteedi hoidmiseks on vaja distsipliini. Mingid tegevused või sammud, mis tehakes alati selleks, et tagada muudatuste kvaliteet. Mõistlik oleks enne muudatuste avalikustamist kontrollida järgnevate küsimuste vastused üle.

Kas kood on testitud piisaval määral?

Kas lisatud loogika töökindlus on tõestatud testidega ning arendajana oled kindel, et uuendus täidab soovitud eesmärki.

Kas kood on puhastatud (refactor)?

Kas lisatud loogika sobitub olemasoleva arhitektuuriga. Kui uus lahendus läheb vastuollu olemasoleva struktuuriga võiks kaaluda ka arhitektuuri parandamist. Samuti võiks veenduda, et koodi vormistus jälgib kokkulepitud standardeid.

Kas koodi eesmärk on arusaadav?

Võimalusel võiks koodist saada aru, et miks midagi tehakse. Kui aga põhjust ei saa koodis arusaadavalt esitada, siis alternatiividena võiks kasudata "miks" küsimusele vastamiseks ka koodis kommentaare või üldisemate teemade korral ka GIT commit sõnumis selgitust.

Kas kasutajakogemus on arusaadav?

Tarkvaral on alati kasutaja. Veebilehe korral võib selleks olla lõppkasutaja. Serveritarvkara korral võib selleks olla kasutajaliides või mõni teine arendaja, kes peab uut teenust kusagil mujal edasi kasutama. Alati võiks mõelda, et kas konkreetse kasutaja jaoks on lisatud täienduse kasutamine arusaadav ja intuitiivne. See on väga suur ja lai valdkond, aga kasvõi korraks sellele mõeldes, saab mõnikord ootamatult lahendust oluliselt parandanda.

Kas turvalisusele on mõeldud?

Enamike rakenduste puhul ilmeslt ei ole vajalik teha turvaaudit. Küll aga oleks mõistlik alati korraks mõelda, et kas antud teenus võib lubada ka mingil kujul keelatud tegevusi. Näiteks kas lisatav veebiteenus nõuab autoriseerimist. Või kas kasutaja sisendina etteantud andmeid peaks enne salvestamist puhastama.

Pikemalt
- 27.01 Algorütm: Mis asi see agile siis ikkagi on