Finanziamento di progetti agili


13

La società in cui lavoro si sta muovendo provvisoriamente verso una strategia di gestione del progetto Agile - avendo sperimentato le "gioie" di cascata una volta per molte. La chiave di ciò è uno spostamento dell'enfasi verso la fornitura di funzionalità rispetto al rispetto di scadenze rigide.

Mentre il processo di sviluppo e la relazione con il cliente sono certamente migliorati dalle versioni iterative promosse tramite Agile, sta dimostrando in qualche modo più difficile applicare la stessa logica alle strategie di finanziamento del progetto. I clienti spesso non sono abituati a concetti come Agile ed esprimono grande preoccupazione per ciò che percepiscono come un caso di "sarà pronto quando sarà pronto".

Mi piacerebbe ascoltare i pensieri e le esperienze delle persone nel finanziamento di progetti Agile

modifica: voglio sottolineare che non sto chiedendo alla gente di spiegarmi i pro e i contro del metodo Agile , né che credo che Agile equivalga a "sarà pronto quando sarà pronto", questa è una paura espressa dal clienti / aziende con cui ho lavorato per sostenere le pratiche di sviluppo Agile.

Quello che mi interessa sono le esperienze che le persone hanno avuto nel risolvere i conflitti tra i metodi "tradizionali" di budget a cascata radicati nelle relazioni / clienti aziendali e metodi di sviluppo più progressivo - e le strategie di budget che hanno adottato per supportare tale evoluzione.


2
Lisa Crispin e David Norton di Gartner hanno alcune buone idee su "Selling Agile". Dai un'occhiata a quello che hanno da dire: bit.ly/rlRF4U
Agile Scout

Risposte:


4

Se sei stato in grado di dare un preventivo su un progetto con una data finale esatta su tutte le funzionalità, perché sei passato ad un approccio agile? Tu e tutti gli altri lottate con questo e un approccio agile sta affrontando questo fatto. Usalo come propaganda contro la concorrenza. La Southwest Airline non ti promette un posto in isola come tutti gli altri che lo fanno e poi lo dà a qualcun altro.

Naturalmente il cliente vuole una data di fine esatta. Vogliono un software economico e privo di bug consegnato in anticipo, indipendentemente da eventuali modifiche alla richiesta originale. Dì al tuo team di vendita di imparare come vendere un progetto usando principi agili. Più interazioni passerai, più sarai in grado di sapere quando il progetto sarà finito. Il cliente impara anche a valutare gli effetti delle richieste di modifica.


"Di 'al tuo team di vendita di imparare a vendere un progetto usando principi agili" - Farò del mio meglio ... {;)
sunwukung,

5

I progetti agili non funzionano come "sarà pronto quando sarà pronto". Questa è una linea classica dall'ingegneria delle cascate.

I progetti agili sono completi quando il cliente decide di non voler spendere più soldi per funzionalità aggiuntive. Questo potrebbe essere convertito in un punto di vendita chiave dai tuoi venditori. Invece di impegnarsi in un set fisso di funzionalità (la cui necessità può o non essere nota in anticipo) per un importo fisso di denaro, il cliente può iniziare con un importo iniziale per un set di funzionalità iniziale e poi prenderlo per fasi. Ciò garantirà un paio di cose:

  • Fintanto che l'elenco delle funzionalità è correttamente prioritario, il cliente riceve sempre le funzionalità più importanti successive, massimizzando così il suo beneficio dalla sua spesa (ottiene "il miglior rapporto qualità-prezzo").
  • Se il cliente esaurisce i soldi, ha massimizzato il suo investimento E tu sei stato pagato per quello che hai consegnato. Nessuno si fa male, tutti traggono profitto.
  • Il cliente può cambiare idea su priorità e caratteristiche ad ogni giro della ruota (ogni estremità di un'interazione). Un netto vantaggio rispetto ai normali contratti a prezzo fisso.

Probabilmente c'è di più, ma quanto sopra dovrebbe essere sufficiente per far andare i tuoi venditori nella giusta direzione.


Ri: "Nessuno si fa male, tutti traggono profitto" - Tranne il ragazzo che è stato licenziato perché ha promesso al suo capo che per $ X avrebbe ottenuto un pacchetto software che fa XYZ. Sfortunatamente, grazie ad agile il pacchetto software fa solo XY. Respinto manager, licenzia il ragazzo che sottopone a una consegna insufficiente. Forse sono stato in settori completamente diversi dalla maggior parte dei sostenitori agili, perché non riescono a vedere un problema nel fornire solo soluzioni parziali al cliente. OTOH, non riesco a vedere lo scopo nel fornire una soluzione parziale poiché le probabilità sono che rendono il prodotto piuttosto inutile per il cliente.
Dunk,

Chiaramente non hai ancora lavorato in un ambiente agile adeguato, altrimenti non faresti questo tipo di osservazione. Se è richiesto XYZ, verrà consegnato XYZ. RST e UVQ potrebbero non essere consegnati, ma poiché hanno una priorità minore, il cliente non ha dovuto pagare nemmeno per loro. Naturalmente, se i tuoi sviluppatori sono così lontani dal punto di vista delle stime che non riescono nemmeno a fornire XYZ secondo le proprie stime, allora ci sono lezioni da imparare.
Wolfgangsz,

3

Bene, non lo vedo nel caso di "Sarà pronto quando sarà pronto". La metodologia agile promuove l'offerta di risultati su base regolare, come ogni due settimane. Ecco perché il cliente è una parte importante e molto attiva del progetto per tutta la sua vita in quanto fornisce una guida in termini di come le caratteristiche del tuo prodotto prenderanno forma. Semmai, un cliente inizierà a vedere i risultati prima, piuttosto che verso la fine di un progetto, come nell'approccio a cascata.

Finché si ribadisce che il cliente sarà una parte attiva del progetto e che vedrà il progetto iniziare a prendere forma presto, ciò potrebbe assicurare loro che non si tratta di aspettare fino a quando non è finito.


solo per essere chiari - non sto dicendo che credo che Agile corrisponda a quella descrizione, ma è così che spesso lo vedono i clienti / le vendite. Agile è bravo nelle iterazioni - ma rende difficile definire la fine del progetto, giusto?
sunwukung,

4
@sunwukung - Il tuo team di vendita non sta vendendo il fatto che nessuno può predire la fine di un lungo progetto con precisione all'inizio.
JeffO,

Immagino che il modo migliore per avere un'idea per la fine del progetto sia di avere una riunione di pianificazione del progetto con il tuo cliente ed elencare tutte le funzionalità che vogliono. Quindi è possibile creare un backlog di progetto completo e completo. Siediti con il tuo team e fagli compilare le stime per l'intero arretrato. Usa queste stime come una guida approssimativa a quando il tuo progetto sarà finito.
JuniorDeveloper1208,

1
@sunwukung - No, non proprio, sedersi e pianificare un arretrato è una buona idea anche per Agile, è l'implementazione del processo di sviluppo che differenzia Agile da Waterfall (Agile è più iterativo). Penso che il tuo principale ostacolo dopo aver venduto Agile al tuo consumatore lo stia effettivamente implementando, l'ho passato alcune volte e può essere un processo doloroso.
JuniorDeveloper1208,

1
scusate - sì, ho capito - abbiamo usato il metodo backlog per analizzare la finestra di consegna stimata (usando Pivotal Tracker, ottima app tra l'altro). La tensione deriva dalla confusione che questo metodo produce in termini di discrepanza tra le pietre miliari iniziali derivate da questo metodo e quelle effettive dell'ETA una volta che la velocità inizia a stabilizzarsi. L'IMO riguarda il modo in cui gestiamo la relazione con il cliente, ma questa è una componente in qualche modo politica
sunwukung,

2

Sebbene il posto in cui lavoro faccia un'orribile bastardizzazione di Agile, penso che i clienti preferiscano lo sviluppo del software nelle iterazioni rispetto alle versioni complete.

Le iterazioni si prestano a richieste individuali da parte dei clienti, in quanto richiedono qualcosa e lo ottengono quando la funzionalità è implementata, non una volta che è stata eseguita e anche tutte le altre cose che sono state raggruppate con essa per una versione.

Non ho mai visto un cliente dire "Vogliamo questa funzione e vogliamo aspettare 8 mesi per essere consegnata con un sacco di altre funzionalità che non ci interessano".


1
Ciò potrebbe dipendere dalle dimensioni del cliente. Penso che nel caso del software desktop non sia insolito che le grandi aziende non vogliano eseguire la reinstallazione di massa / il test delle immagini / ecc. frequentemente e in quei casi preferirebbero "rilasci" meno frequenti. Lo sviluppatore potrebbe comunque passare attraverso iterazioni internamente, e semplicemente presentare un taglio ufficiale dell'applicazione a quei clienti a qualunque intervallo preferisca il cliente.
Adam Lear

+1 per "Vogliamo questa funzione e vogliamo aspettare 8 mesi affinché venga consegnata con un sacco di altre funzionalità che non ci interessano."
sunwukung,

2

Che ne dici di stabilire un ciclo di pagamento in sintonia con le iterazioni? L'idea di agile è che puoi davvero pianificare e stimare solo a scatti brevi, e la spinta e l'impegno sono ancora forti per questi brevi cicli. Quindi perché non indirizzare i finanziamenti allo stesso modo: i clienti contribuiscono al lavoro con $$ mentre stanno contribuendo con la guida. Dopotutto, se non ottengono ciò che vogliono, non dovrebbero pagare per questo.

E poi capire cosa succede al termine di un progetto - ad esempio, il client possiede il codice o solo l'eseguibile? Ma ciò sarebbe in linea con i precedenti progetti a cascata.


Sono d'accordo con questo, sospetto che parte del problema per il business risieda nel proiettare i suoi ricavi annuali (quindi placando gli investitori) con questi "finanziamenti a breve termine".
Sunwukung,

Mi chiedo se puoi rubare da un modello contrattuale? Aggiunge il rischio di tempi di inattività se i clienti dichiarano bruscamente "grazie ma no", che dovrebbe essere simile al modello del lavoro a contratto?
bethlakshmi,

1

L'idea di Agile è quella di iterare velocemente e stabilire esattamente cosa consegnerai alla fine di ogni sprint, quindi quando le 2/3/4 settimane del tuo sprint sono terminate, hai caratteristiche tangibili nella tua applicazione / progetto che puoi presentare al tuo cliente e ottenere feedback.

ETA: è possibile raggruppare gli "sprint" in "pietre miliari", con risultati consolidati e ricevere pagamenti per traguardo.


Questo è ciò che sto cercando di promuovere nel settore: pagare per "cancelli di scena". La questione chiave è la data di consegna finale: il cliente deve rinunciare a quella scadenza finale concreta?
sunwukung,

Difficile a dirsi, dopo alcuni sprint dovresti essere in grado di stabilire la velocità dei tuoi team (quantità di lavoro che sei in grado di svolgere per sprint) e dimostrare di avere un backlog completo e completo (Elenco di task / storie utente che compongono un progetto completo) dovresti essere in grado di prevedere ragionevolmente la tua data di fine osservando i tuoi burn down (un grafico della velocità della squadra che puoi usare per estrapolare la tua data di fine e vedere se sarai in grado di completare tutto il lavoro nello sprint ).
JuniorDeveloper1208,

2
@sunwukung, di nuovo ti manca il punto dopo che tutti te lo descrivono perfettamente. Agile garantisce che il cliente ottiene software funzionante alla fine di ogni sprint. Se vogliono ancora una DATA PRIMA per TUTTE LE CARATTERISTICHE, allora possono averlo, ma solo per le caratteristiche concordate quando hanno firmato l'accordo. È ingiusto e irragionevole per loro cambiare le loro esigenze e aspettarsi che il termine sia SOGGIORNO LO STESSO!
maple_shaft

1
Bene, dì loro che durante lo sviluppo saranno in grado di visualizzare il loro progetto alla fine di ogni sprint, sempre in uno stato funzionante e pronto per il feedback, non dovrebbe essere una vendita difficile, l'agile è eccellente.
JuniorDeveloper1208,

1
@sunwukung, sembra che la società farebbe meglio se tu rappresentassi il ramo degli affari in questo caso :) Non so cosa puoi dire al braccio degli affari per convincerli di ciò che già sai. Probabilmente non ti ascolteranno. Sfortunatamente sembra che il lato tecnico stia progredendo nel 21 ° secolo e il lato commerciale è in passato. Questo non è un problema facile e probabilmente non sei in grado di risolverlo.
maple_shaft

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.