Start pagina | Aantekeningen |  NederlandsHulpbronnen | Zoek
Home page | CommentsNetherlandsResources | Search
 
 
 


C'Era Una Volta Il Programmatore...

Sembra l'inizio di una favola ma non lo e'. Mi e' capitato di dare un'occhiata agli annunci di ricerca del personale ultimamente, tutti che cercano "Project Integrator" o "Senior Software Manager" (compiti: sviluppo software). E mi e' capitato di pensare... ma che fine ha fatto il povero vituperato "programmatore"?

Fino a qualche tempo fa (sto' parlando di fine anni '80 e inizio anni '90), tutti i manuali ed i corsi di sviluppo software spiegavano coscenziosamente che lo sviluppo di un programma si compone di 4 fasi separate: per prima cosa si fa la Raccolta dei Requisiti, dove qualcuno (il Capo Progetto?) parla con gli utenti per sapere cosa vogliono che il software faccia, poi viene la fase di Analisi, dove qualcun'altro (l'Analista) si mette a pensare molto intensamente a come fare si che il software faccia cio' che gli utenti vogliono, poi viene la fase di Codifica, dove uno o piu' Programmatori (ah! questa vituperata parola) scrivono il programma mettendo in pratica cio' che l'Analista ha deciso, dopo di che si passa alla fase di Debug e Documentazione, dove tutti gli errori vengono risolti e si scrive il Manuale Utente.

Ora, tutti quelli che hanno fatto i programmatori per un po' sanno benissimo che questa bella favoletta non funziona in realta'. I "Requisiti" sono un miraggio irraggiungibile, gli utenti sanno benissimo cosa vogliono (fare niente ed in fretta), ma non possono dirlo e non hanno la piu' pallida idea di cosa il software dovrebbe fare, l'Analista non puo' analizzare il niente che il Capo Progetto non gli ha dato, quindi la scrittura del codice e' della serie "hodge podge", aka: tu scrivi quello che ti pare e poi vedremo come metterlo a posto, chiaramente, se questo e' l'inizio, possiamo immaginare come sara' la fase di 'debugging'...

Ok, e' il momento di revisionare le cose, via la noiosa procedura tanto cara alla 'vecchia scuola' ed arriva la modernizzazione: Extreme Programming! RAD! Continous Revisioning Process! Che gia' a sentirli uno si spaventa... Se poi scopre quello che significano...

Extreme Programming... che uno si immagina di saltare dall'aereo con il laptop ed aprire il paracadute solo quando il programma funziona... invece che e'? Invece dei "Requisiti di Sistema" ci sono le "User Cases"... che si somigliano sospettosamente... invece dell'Analisi c'e' il Relase Planning... invece del debugging ci sono le "Iterations"...

Poi c'e' il RAD (Rapid Application Development), che secondo me e' un refuso ed era RSD (Rapid Screw-up Deployment), dove, invece di far scrivere il codice ad un programmatore che sa quello che sta facendo, si usa un'accrocchio precostituito, che non funziona uguale, ma fa' tanto high-tech a vederlo.

Poi viene il Continous Revisioning Process, che non e' lo stesso che 'ci abbiamo la nuova release, vuoi fare l'aggiornamento'.... noooooo....

Contemporaneamente, c'e' stato un'aggiornamento nella terminologia... non si parla piu' di 'problemi', ma di 'challanges', non esistono piu' 'errori' o 'bugs' ma 'issues'...

Ed io resto a chiedermi... ma che fine hanno fatto i vecchi programmatori? Quelli che scrivevano il codice che funzionava?

Davide

Davide Bianchi
22/03/2008 00:00

Torna all'elenco Previous  Next


No messages this document does not accept new posts