La risposta formale è malintesa, l'agile non determina i requisiti, le parti interessate lo fanno. Il nucleo dell'agile non è quello di scolpire le tue esigenze in pietra ma piuttosto farle emergere mentre vai, a stretto contatto con il tuo cliente, beneficiando di approfondimenti progressivi.
Ma questa è tutta teoria. Quello che hai visto è in effetti un tratto comune di molte linee di produzione di software che hanno adottato un modo di lavorare agile.
Il problema è che, ascoltando il cliente e rispondendo rapidamente alle esigenze del cliente, spesso si finisce presto per non pensare affatto al prodotto o fare alcun progetto. Quello che era un processo proattivo alimentato dalla visione e dall'esperienza può e spesso si deteriora in un processo passivo, interamente reattivo, alimentato dai desideri del cliente. Questo porterà a fare solo le necessità essenziali che "faranno il lavoro".
L'automobile non sarebbe mai stata inventata se i produttori all'epoca fossero stati "agili" perché tutti i clienti chiedevano un cavallo più veloce.
Questo non rende agile il cattivo però. È un po 'come il comunismo. Una grande idea che non funziona quasi mai perché le persone sono solo persone, fanno cose per la gente. E il metodo / ideologia / religione li cullano nell'idea che stanno facendo bene fino a quando stanno attraversando i movimenti e / o seguendo le regole.
[modifica]
Slebetman:
It is ironic then that agile evolved out of the automative industry
(namely Toyota).
Ricorda la regola d'oro dell'automazione? "Prima organizza, quindi automatizza". Se automatizzi un processo non funzionante, il meglio che potrebbe accadere è accelerare tutto ciò che va storto. Le persone alla Toyota non erano idiote.
Il motivo tipico per l'adozione di una nuova metodologia è che le cose non stanno andando bene. Il management lo riconosce, ma potrebbe non capire i problemi principali. Quindi assumono questo guru che fa un discorso di resilienza su Agile e Scrum. E tutti lo amano. Per le loro ragioni.
Gli sviluppatori potrebbero pensare "Ehi, questo potrebbe funzionare. Saremmo più coinvolti con problemi di business e potremmo fornire input per riempire questo arretrato. Potrebbe essere un'opportunità per fare vendite e assistenza clienti capire cosa facciamo, perché è necessario, e vorremmo toglierli dai nostri capelli mentre bruciamo in modo trasparente ciò su cui eravamo d'accordo ". Non più "ferma quello che stai facendo, questo deve essere fatto ora" da un ragazzo che non vuoi rimandare alla tua scrivania.
Le vendite, il servizio clienti o il proprietario, d'altra parte, potrebbero vederlo come un modo per ottenere il controllo (posteriore) su questa scatola nera di un reparto che presumibilmente sta facendo cose che sono necessarie. Non vedono cosa sta succedendo lì, ma sono piuttosto sicuri che il nucleo del problema sia stato sepolto da qualche parte lì dentro. Quindi introducono Scrum, installano il proprietario di un prodotto a loro scelta e all'improvviso hanno tutto il controllo, tutte le stringhe sono nelle loro mani. E adesso? ... Ehrr ...
Il vero problema è spesso che il negozio non è stato organizzato bene in primo luogo e questo non è cambiato. Alle persone sono state assegnate responsabilità che non possono gestire, o forse possono, ma il signor Boss interferisce costantemente e rovina ciò che ha fatto, o (il più delle volte nella mia esperienza), responsabilità cruciali non sono state riconosciute o assegnate a nessuno.
A volte col tempo emergerà un'organizzazione informale tra le linee formali. Ciò può quindi in parte compensare la mancanza di una struttura formale. Alcune persone finiscono per fare quello che sono bravi, se hanno un biglietto da visita per dimostrarlo o meno. L'introduzione smussata di Agile / Scrum potrebbe rovinarla all'istante. Perché ora ci si aspetta che le persone giochino secondo le regole. Sentono che quello che erano soliti fare non è apprezzato, ottengono piccoli fogli gialli con piccole storie su di esso, invece, il messaggio sarà: "qualunque cosa stavate facendo, a nessuno importava". Inutile dire che questo non sarà particolarmente motivante per quelle persone. Nel migliore dei casi inizieranno ad aspettare gli ordini e non prenderanno più alcuna iniziativa.
Quindi le cose peggiorano e la conclusione sarà che Agile fa schifo.
Agile non fa schifo, è ottimo per i progetti di manutenzione e può anche essere buono per i nuovi sviluppi se applicato con attenzione, ma se le persone sbagliate non lo capiscono o lo adottano per le ragioni sbagliate, può essere molto distruttivo.