Ho letto questo
lunghissimo dialogo-confronto tra Kent Beck -creatore di
XP (eXtreme Programming)- e Alan Cooper -esperto di
Interaction Design.
Lo segnalo perchè rappresenta uno spaccato delle due metodologie: da una parte l'agilità e la snellezza, dall'altra analisi, design, documentazione, ecc. Ma non solo:
- Xp è più orizzontale e quindi più adatto al nostro mondo "networked", mentre Interaction Design impone una verticalità
- XP tende ad eliminare i
tempi morti di sviluppo, mentre le altre metodologie li richiedono espressamente
- XP non richiede cambiamenti strutturali per il cliente, mentre Alan Cooper spiega come il suo intento sia cambiare anche l'organizzazione del cliente
- entrambe tendono a prevenire i problemi e a migliorare nel tempo, piuttosto che arrivare ad un punto morto in cui si decide di cambiare software. In quest'ultimo caso propendo ancora per XP, che mi da più garanzie di seguire i cambiamenti dei requisiti.
La mia esperienza mi porta ad avere un approccio agile e organizzare il lavoro per piccoli team e per iterazioni, rispetto a team più grossi con fasi di analisi e design e che richiedano troppi cambiamenti per il cliente.
Spesso però mi trovo nella posizione di dover propriamente
disegnare l'interazione uomo macchina e questa è forse l'unica
lacuna che trovo in XP. Da quello che posso intuire, Beck dice che piuttosto che perdere ore a
disegnare, conviene prima realizzare e poi al limite modificare in una successiva iterazione.
Questo è difficile perchè richiede un modello di businness e organizzativo diverso rispetto ad analisi-design-sviluppo-rilascio, ma sicuramente crea meno problemi ed è più veloce. Bisogna però abituare i clienti ad un approccio agile, perchè forse è quello meno intuitivo.
Comunque resta un pezzo da leggere.