Lavoro per un dipartimento governativo di grandi dimensioni come parte di un team IT che gestisce e sviluppa siti Web nonché applicazioni Web indipendenti.
Stiamo correndo verso problemi da qualche parte nell'SDLC che non fanno girare la loro brutta testa fino a quando il tempo e il budget cominciano a esaurirsi.
Cerchiamo di essere "Agili" (le specifiche del software non sono il più complete possibile, i clienti hanno accesso diretto agli sviluppatori ogni volta che vogliono) e siamo anche in una posizione ragionevolmente particolare in quanto non ci è permesso di fare profitto dai servizi che forniamo. Forniamo assistenza solo alle divisioni all'interno del nostro dipartimento governativo e possiamo solo addebitare il tempo e gli sforzi effettivamente impiegati per realizzare un progetto. Quindi se consegniamo un progetto su cui abbiamo quotato troppo, fattureremo solo il tempo effettivamente speso.
Le nostre specifiche software non sono accurate come potrebbero essere, ma includono sempre almeno:
- Modelli di wireframe per ogni visualizzazione di modulo
- Un dizionario dati di tutti gli input di campo
- Descrizioni di tutte le regole aziendali che influiscono sul sistema
- Descrizioni degli output
Sono nuovo nella gestione del software, ma ho supervisionato abbastanza progetti software per sapere che non appena gli utenti iniziano a osservare le demo del sistema, iniziano a fare una quantità enorme di richieste come "Possiamo aggiungerne altre campi per questo report .. possiamo ridisegnare l'aspetto di questa interfaccia .. possiamo inviare una email a questa parte del flusso di lavoro .. possiamo togliere questo pulsante da questa vista .. possiamo rendere questa funzione reindirizzare a una schermata diversa. possiamo cambiare del testo su questo schermo ... possiamo creare un account speciale dove qualcuno può accedere e ottenere l'accesso a X ... questo rapporto impiega troppo tempo per essere eseguito può essere ottimizzato .. possiamo rimuovere questo passaggio nel flusso di lavoro ... c'è dobbiamo essere un'immagine migliore che possiamo mettere qui ... "etc etc etc.
Alcune modifiche sono minime e possono essere implementate ragionevolmente rapidamente ... ma potrebbero esserci fino a 50-100 circa di tali richieste durante il corso di SDLC. Altre richieste di modifica sono ciò che i clienti affermano che "si presume che sarebbero parte del sistema" anche se non esplicitamente specificato nelle specifiche.
Abbiamo molte difficoltà a gestire questo processo. In assenza di esperti project manager di software nel nostro team, abbiamo bisogno di trovare un modo migliore per identificare internamente se il lavoro richiesto è "fuori specifica" ed essere in grado di comunicarlo a un client in modo tale che possano capire perché quello che stanno chiedendo è un lavoro "extra".
Abbiamo bisogno di un modo per tracciare questo lavoro ed essere trasparenti con esso.
Nello spirito dello sviluppo Agile in cui non specifichiamo i sistemi software sul terreno e non ci appoggiamo prima che inizi lo sviluppo, e tenendo presente che i clienti hanno accesso a qualsiasi sviluppatore ogni volta che lo desiderano, sto cercando alcuni suggerimenti e indicazioni da parte di esperti project manager di software su come gestire questo tipo di problema di "scope creep", nel tracciarlo, essere trasparenti con esso e comunicarlo ai client in modo che lo capiscano.
Felice di chiarire qualsiasi cosa, se necessario.
Apprezzo davvero tutti coloro che hanno il tempo di offrire qualche consiglio.
Grazie.