Scrivere software: interagire con l'utente finale

D.

Di cosa vorrebbe che fossero più coscenti gli sviluppatori?

R.

Penso che gli sviluppatori sappiano, ma hanno qualche remora nell'ammettere che scrivere software è un'attività creativa e che richiede molta interazione con le persone che useranno il programma. Scrivere software è un processo dinamico e altamente interattivo che richiede il feedback degli utenti. Di nuovo, è come scrivere una poesia: scrivi un po' e poi reagisci a quello che hai scritto. Questo dà impulso a maggiore creatività e ti fa scrivere ancora. Quindi lo mostri a qualcuno di cui rispetti la opinione e lo vedi diversamente.

Alcune delle metodologie più agili come la programmazione estrema (Extreme programming) fanno uso di questo processo. I programmatori estremi discutono con gli utenti finali su cosa costruire prima. Quindi passano un paio di settimane programmando e mostrano il risultato all'utente finale. L'utente prova il prodotto e potrebbe dire: "Ora capisco." Gli utenti non sono programmatori e potrebbero non conoscere bene le proprie esigenze. Ci sono cose che neppure immaginano che si possano fare.

Ma nemmeno si può programmare tutto anticipatamente e poi implementarlo. Se fosse possibile non ci sarebbe l'esigenza di pubblicare varie release dei prodotti.

L'informatica esiste solo da cinquant'anni. Non ne conosciamo bene i principi. è vero che conosciamo ragionevolmente bene i principi della programmazione degli algoritmi, ma non conosciamo i principi che governano il software che vogliamo costruire ed è necessario mantenere una mentalità aperta riguardo a come costruirlo.

Ho visitato Amazon e ho cercato tutti i libri che contenessero le parole "apprendi" o "impara da solo" e "ore" o "giorni" nel titolo. Come "Impara da solo X in 21 giorni", ci sono centinaia di libri sul genere e molti di questi riguardano l'informatica. Scrivere software è un'arte e ci vogliono almeno dieci anni per diventare veramente bravi. Ma c'è un atteggiamento di fondo a ritenere la programmazione e lo sviluppo di software cosa facile. Crediamo che la programmazione sia ausiliare, mentre è un attività sociologica centrale, difficile e umana.

Seleziona un tema


Opzioni lingua

Questo sito è in italiano, altre lingue presto

Scegli un'immagine