Un articol care l-am publicat pe TSM.
Ciclul de viaţă al produselor software este generat de nevoile de business ale consumatorilor. În sprijinul acestora vin producătorii de software cu soluţii specifice, proporţionale cu nivelul lor de pregătire şi cu tehnologiile disponibile pe piaţă. Evoluţia tehnologică foarte rapidă determină formarea unei rate de depreciere a produselor, astfel că un produs software se poate devaloriza în raport cu tehnologiile folosite. Chiar dacă funcţionalitatea business este conformă cu cerinţele consumatorilor, tehnologiile pot să nu mai reflecte exigenţele cotidiene. Calitatea unui produs software nu este reflectată doar de acurateţea cu care răspunde fluxului de date stabilit de business, ci şi de alţi factori calitativi definiţi de spectrul tehnologic existent pe piaţă la momentul evaluării. Mentenanţa unui produs, integrarea de noi funcţionalităţi furnizează o gamă de parametri adiţionali care contribuie la definirea ratei calitative, factori care sunt abstracţi din perspectiva utilizatorilor finali.
Nevoia creării unui cod robust – “building on green”
Cu aproape 20 de ani în urmă, J. B. (Joe) Rainsberger, un important promotor al programării orientate pe teste (Test Driven Development), relata un episod din perioada în care lucra ca dezvoltator la IBM. În preajma unui important milestone a început să întâmpine dificultăţi considerabile în finalizarea setului de funcţionalităţi ale proiectului la care lucra. Fiecare opţiune nou creată afecta alte funcţionalităţi deja existente. Arhitectura proiectului era atât de interactivă încât era foarte dificil să dezvolţi un nou atribut fără să modifici peisajul global. Din păcate, doar testarea manuală regresivă avea capacitatea de a scoate în evidenţă erorile apărute, ceea ce era complet inoportun şi lipsit de randament în acea situaţie.
La mulți ani de Ziua României! Numai bine îți doresc cu drag! 🙂
Multumesc, Alex. Sa fie multi ani frumosi si plini de glorie pentru tarisoara noastra 🙂
La mulți ani cu sănătate și bucurii! 🙂