Functionabilitatea

(Funcţionabilitatea) ©

Funcţionabilitatea trebuie văzută sub două aspecte şi anume:
- capacitatea produsului software de a executa prelucrările date în specificaţii,
- punerea în corespondenţă a funcţiilor cu module distincte, specializate.
Nu este deloc prea simplu să fie puse în evidenţă funcţionalităţile unui produs software, dar un proces de auditare bine executat va scoate în evidenţă dacă produsul face ceea ce trebuie, cum trebuie şi când trebuie sau dacă are minusuri. Ar fi prea romantic ca un produs software să facă şi alte lucruri ca bonusuri pe care le oferă dezvoltatorul în mărinimia lui.
Când se proiectează un produs software dacă au fost enumerate corect şi complet funcţionalităţile se definesc modulele care fac calculele şi după aceea folosind nişte matrice de punere în corespondenţă se definesc bazele de date şi rapoartele, astfel încât produsul să apară ca un întreg unitar şi nu ca un amalgam dezlânat.
Este rezonabil că dacă se cer 6 rapoarte, să existe 6 module unde se pregătesc pentru afişare cele 6 rapoarte şi nu să existe componente comune, chiar dacă apar elemente redundante. Să nu uităm că leneşul mai mult alergă şi apar situaţii în care dorim să modificăm un raport şi dacă lucrurile nu sunt clare, vom munci mult prea mult, comparativ cu situaţia în care ştiam că raportul respectiv este pregătit într-un singur modul.
Funcţionabilitatea are menirea de a specializa programatorii şi designerii în a face numai anumite tipuri de module. Dacă avem specializaţi programatori în validări, doar trebuie să enumerăm câmpurile şi ce validări trebuie făcute, iar în momentul al doilea, vom avea modulul scris ca la carte pentru validare. Dacă specializăm programatori în a afişa rapoarte, fără nici o dificultate aceştia vor scrie modulele care vor merge din prima, fără să aibă vreun cusur raportul afişat.
Am văzut nişte programatori de-a dreptul măreţi în a realiza interfeţe, care ştiau cum să folosească proceduri de bibliotecă pentru validare CNP, adresă e-mail şi cont IBAN, dar şi nume şi prenume. Aceştia aveau un talent special în a genera tot felul de sub-liste pe măsură ce se tasta denumiri de localităţi sau erau afişate coduri, denumiri folosite anterior de client, iar acesta fie le preluau, fie le schimbau. Totul era făcut pe bandă rulantă, ceea ce din punctul de vedere al calităţii şi productivităţii era nemaipomenit. Am apreciat tot timpul pe cei care dau nume modulelor legate de funcţiile lor de prelucrare. Un modul numit SORT_PERS ştim că va face sortarea de persoane, iar un modul numit VALID_STOC este destinat validării bazei de date a stocurilor, ceea ce pe programatorii noi veniţi în procesul de mentenanţă este de un ajutor nesperat.



                                                                                                                                                                                                    Înapoi