Come posso capire quale metodologia di programmazione (se presente) stiamo usando?

StackOverflow https://stackoverflow.com/questions/469893

  •  19-08-2019
  •  | 
  •  

Domanda

Il mio gruppo si trasferirà presto a Team Foundation Server. In realtà, sto guidando lo sforzo.

Una delle cose che puoi decidere è quale metodologia stai usando - Agile, CMMI, ecc.

Il fatto è che non ho idea di quale metodologia utilizziamo. Voglio dire, non ne stiamo usando attivamente. E non ho abbastanza familiarità con Agile o altri metodi per sapere quale, se del caso, si applica al modo in cui stiamo facendo.

Esiste una metodologia predefinita? Come in, se passiamo attraverso un processo molto diretto (otteniamo requisiti, codice, test, spingiamo al QA, facciamo test del QA, spingiamo alla produzione) c'è persino un nome per questo?

E come bonus, con TFS, qual è la penalità per aver scelto quello sbagliato all'inizio? Quanto è difficile cambiare marcia in seguito se decidiamo di andare Agile o qualcosa del genere?

È stato utile?

Soluzione

Non ci sono grosse penalità per il cambio di metodologie: basta sceglierne una predefinita quando si installa e si può scegliere quella che si utilizzerà per un determinato progetto. In realtà, ha a che fare solo con il modo in cui TFS configura inizialmente la pagina del progetto Sharepoint: puoi aggiungere quello che vuoi alla tua pagina una volta creata, quindi se decidi di cambiare la metodologia di un progetto, non è difficile farlo.

Per i due che TFS fornisce immediatamente (Agile e SCCM / Waterfall), è davvero una questione di processo: rilasci "presto e spesso", con pacchetti più piccoli rilasciati quando arrivano i bug, oppure gestisci i tuoi progetti in grandi iterazioni, con un rilascio molto più raro, ma con ovvi rilasci miliari?

Una domanda da porre (anche se non esattamente precisa, ma mi aiuta sempre): il prodotto ha numeri di versione che saranno significativi per gli utenti finali? Ad esempio, molti siti Web sono Agili, in quanto rilasciano costantemente miglioramenti e patch e spesso non presentano miglioramenti / revisioni enormi, mentre un prodotto come MS Office ha un numero di versione significativo (2003, 2007, ecc.), Che è più probabile SCCM.

Se non disponi di una metodologia dichiarata, è un ottimo momento per svilupparne uno - decidi quale ciclo di rilascio ha senso per te, crea un progetto in ciascuno e rivedi automaticamente ciò che TFS imposta per te - fai gli indicatori di progresso e Le pagine di Sharepoint hanno senso? C'è qualcosa di ovvio che manca?

Altri suggerimenti

Se non riesci a discernere una metodologia, stai usando una metodologia ad hoc. Potrebbe essere simile a una metodologia esistente (per caso). Si noti tuttavia che seguire una metodologia non equivale ad avere successo. Ho visto molti progetti metodologici pesanti falliti e un sacco di "sede dei pantaloni" i progetti sono clamorosi successi (se forse hanno bisogno di un po 'di refactoring quando la polvere si è depositata).

Il cambiamento delle metodologie dipende dalla tua cultura più di ogni altra cosa. Le istituzioni tendono a resistere al cambiamento e fanno alcune persone. Tuttavia, dipende di nuovo dalla situazione: se la situazione esistente è ovviamente rotta, un'istituzione può talvolta apportare modifiche improvvise che sorprendono tutti.

Alcune metodologie sono "più pesanti" rispetto ad altri: quelli sono più difficili da cambiare da o verso. Anche lo sviluppo guidato dai test è "pesante". in quanto adottarlo dopo il fatto significherà aggiungere un lotto di test al vecchio codice. La maggior parte delle transizioni del mondo reale aggiunge semplicemente i test poiché i file vengono modificati per altri motivi. Allo stesso modo, il passaggio da TDD a uno stile a cascata richiederebbe un lotto di codice per essere documentato in grandi raccoglitori in disuso.

Il metodo più semplice tende ad essere il tuo metodo iterativo o "a cascata" perché passi da un passaggio all'altro. Tuttavia, non sembra essere molto popolare.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top