Friday, December 1, 2017

Erorile utilizatorului


Erorile utilizatorului sunt numeroase în interacțiunea sa cu programul și acestea se resimt acum în mediul online cel mai mult. Programele cele mai puternice sunt construite în așa fel încât:
- atenționează pe utilizator prompt că a greșit la introducerea datelor;
- efectuează automat corecții și cere acordul utilizatorului;
- propune valori introduse anterior de utilizator și acesta alege.
Am văzut programe care nu fac așa ceva și atunci când a terminat și utilizatorul apasă butonul SEND îi apar tot felul de mesaje de omul săracul de el se ia de cap. Eu cred că era mai bine dacă introducea data nașterii i se valida că nu este corect să scrie 34.15.-1900 căci luna are cel mult 31 de zile, anul are cel mult 12 luni, iar an negativ n-am prea pomenit. Dacă la introducerea datei i se oferă posibilitatea de a selecta din cele trei seturi de variante corelând chiar lunile era excepțional. Se știe că la  numărul cardului trebuie introduse 16 cifre, drept care la trecerea către un câmp următor, utilizatorul trebuie atenționat că are mai puțin de 16 cifre. dacă este tentat să introducă altceva decât cifre acest lucru să nu fie posibil. În plus, există o cifră de control ce se calculează, drept care i se va spune utilizatorului că cele 16 cifre ale lui nu sunt număr de card. Scriu toate acestea că am interacționat cu aplicații așa de proaste încât chiar am avut probleme, iar băncile nu iartă deși greșeala era le ele în curte.
Cel mai tare program în vremurile de demult era acela care nu-l ierta pe client și-i semnala orice eroare, mai ales că acesta pierdea timp. De fiecare dată trebuia să-și perforeze cartelele cu date corecte și să ducă încă și încă o dată programul la dispecerat pentru a-i fi rulat.
Să nu uităm că în FORTRAN era cartela FORMAT care spunea clar în ce coloane ale cartelei trebuie perforat câmpul. Dacă programatorul deplasa aiurea numărul mai la stânga sau mai la dreapta, nu se făceau conversiile de azi și erorile de citire a datelor curgeau gârlă. Acum se citesc datele ca șiruri de caractere, se fac validări, se fac alinieri, se fac conversii și micile erori se trec cu vederea prin mărinimia programatorului.
Pe vremuri componentele de validare erau esențiale și se testau:
- caracterul numeric;
- apartenența la un interval;
- apartenența la o mulțime;
- caracterul alfabetic;
- codurile identice;
- corectitudinea codului prin calculul cifrei de control;
- dacă numărul este pozitiv;
- dacă numărul este divizibil prin ceva;
- dacă numărul este prim.
La un moment dat programatorii scriseseră programe de validare și parametrizând câmpuri reuțeau să nu mai se obosească cu scrisul de secvențe. Cartelele se rulau cu acel program și rezulta noianul de erori. Programatorul uneori sau utilizatorul cel mai adeasea făceau corecțiile și se rula efectiv programul dacă nu erau erori.
Programul era de-a dreptul puer dacă mai făcea și teste în interior și semnala erori pe care o validare de doi bani oricât de sofisticată ar fi fost nu era în stare să le scoată în evidență. Să ne amintim de grafurile care aveau noduri ce nu se legau cu nimic. Să ne amintim de articolele care nu sunt utilizate în niciun fel. Se ne amintim de optimizările sau de calculul cu iterații care nu se mai sfârșesc. Toate acestea trebuie marcate prin erori ale programului. Mî gândeam la replica lui Gheorghe DINICĂ din filmul Filantropica:  mâna întinsă care nu spune o poveste nu primește pomană. Fii profesionist, ce dracu! Acela nu este un program, dacă nu se încheie cu mesaje proprii și nu semnalizează toate erorile.
Erorile utilizatorului sunt nenumărate, iar utilizatorul este cel care decide soarta programarul este bun sau prost. Utilizatorul dă vina pe alții, deci pe programator și atunci când el a definit incorect datele, iar programul nu-i arată erorile din date, din superficialitatea programatorului, care a crezut și crede că toți sunt ca el.





(01 decembrie 2017)

No comments:

Post a Comment