Quali sono le migliori pratiche XP?

3

In "Extreme Programming Explained", Beck elenca 13 "pratiche primarie". Sono:

  • Sit Together
  • Intero team
  • Spazio di lavoro informativo
  • Lavoro energizzato
  • Accoppia programmazione
  • Storie
  • Ciclo settimanale
  • Ciclo trimestrale
  • Slack
  • Build di 10 minuti
  • Integrazione continua
  • Test-First Programming
  • Progettazione incrementale

Quali di questi hai effettivamente implementato sul tuo posto di lavoro? Qual è stato il più utile?

    
posta Craig Schwarze 09.02.2011 - 03:12
fonte

4 risposte

2

Ho usato

  • Sit Together
  • Storie
  • Ciclo settimanale
  • Spazio di lavoro informativo
  • Build di 10 minuti
  • Integrazione continua
  • Test-First Programming
  • Progettazione incrementale

ed è stato un vero successo.

  • La programmazione delle coppie non ha funzionato (la squadra era un po 'piccola per iniziare, una sorta di testa verso la coppia nel tempo)
  • Ha fatto tutto il team alcune volte, i clienti non erano sempre disponibili. Mi sono trasformato in un cliente falso con la pratica.
  • Slack non poteva volare con la gestione, abbiamo invece pianificato eventi basati su
  • Il lavoro energizzato era difficile da fare. C'era una cultura di ore più lunghe.
risposta data 09.02.2011 - 04:00
fonte
3

Non penso ci sia una pratica migliore . Esistono molte buone pratiche in tale elenco come Test-First Programming e Integrazione continua .

Il mio voto è per Integrazione continua . Joel Spolsky ne parla anche nel suo Test di Joel .

Penso che una squadra possa avere grandi risultati senza stare insieme o fare una programmazione di coppia, ma l'integrazione del lavoro spesso è molto importante. Ogni programmatore avrà una versione aggiornata e prima il team integrerà il lavoro, più facile sarà risolvere i conflitti di fusione e rilevare l'errore di integrazione durante il test.

Per ulteriori informazioni su Integrazione continua , puoi vedere questo articolo di Martin Fowler

    
risposta data 09.02.2011 - 03:33
fonte
2

Personalmente ho visto aumenti di produttività con quanto segue:

  • Integrazione continua (Hudson / TeamCity)
  • Progettazione incrementale
  • Ciclo iterativo (2 settimane sembra essere il migliore)
  • Accoppia programmazione (peer review continuo)
  • Test unitario / buona copertura di test (non necessariamente test-first)
  • Nessun ciclo di lavoro straordinario / gestibile.

Naturalmente, ci sono sempre altre cose nel mix che possono migliorare le cose.

  • Software di tracciabilità dei bug di elevata qualità (che si integra perfettamente con CI e SCM)
  • Buono SCM (svn o git, sono raccomandazioni personali) + chiara strategia SCM, per funzionalità ramificazione, manutenzione della versione ecc.

In generale, questi ultimi due dovrebbero essere implementati indipendentemente dalla tua metodologia, direi che anche l'IC dovrebbe essere presente, semplicemente non c'è un motivo decente per non usarlo.

    
risposta data 09.02.2011 - 03:48
fonte
2

Non ci sono le migliori pratiche di XP.

In generale, alcune di queste pratiche possono essere utili da sole, ma penso che giochino davvero i loro benefici in combinazione.

Puoi sempre sostituire o cambiare una pratica, ma tieni presente che XP ha una serie di pratiche e ognuna di esse svolge un ruolo.

Forse potresti fare una domanda del tipo:

Se devi attuare solo una o due delle pratiche, da quale di esse trarrai maggior beneficio?

E la risposta sarebbe chiara: dipende.

Se hai problemi con la tua base di codice con design / bug / ecc. potresti trarre vantaggio da Test Driven Development ecc ...

    
risposta data 09.02.2011 - 04:14
fonte

Leggi altre domande sui tag