In definitiva, Extreme Programming riguarda un insieme di pratiche e metodologie che portano a un miglioramento del valore aziendale. La migliore illustrazione di ciò che ho trovato è da link
TuttoinblufapartedelcorediXP.
Cisonopartialdifuoridiessocheaiutanoadabilitarelecoseall'internodell'areabluefannopartediXPnelsuoinsieme,manonsonocritiche.NotachepersonalmentenonsonounpraticantediXPeholettounabuonadosedicriticheneiconfrontidipersoneche"quasi" seguono XP che diverse persone hanno detto non sono XP. Mettiamo da parte quell'aspetto del dogma di XP e guardiamo quello che abbiamo.
Comprendi che una delle prime e per la maggior parte delle cose è avere un impegno per il processo da parte del cliente. Un componente chiave di XP è il coinvolgimento del cliente. Questo si presenta in una serie di punti come la pianificazione del rilascio, le piccole versioni, la valutazione dei clienti fuori sede. Queste sono cose a cui i tuoi clienti dovranno iscriversi se hai successo con XP come sviluppatore solista. Se chiedono invece un design e quindi un periodo di sviluppo e poi test e così via, non avrai l'impegno da parte loro di andare oltre.
XP non significa nessuna pianificazione. Ci sono diversi punti in questo in cui la pianificazione è parte di esso: definizione delle priorità, stima della storia dell'utente, pianificazione dell'iterazione e definizione delle attività. Anche se sei uno sviluppatore su questo, queste sono cose che dovrai collaborare con i tuoi clienti per la consegna.
Punti come la proprietà collettiva del codice e la programmazione della coppia sono cose che coinvolgono più di uno. Decidere su cose come gli standard di codifica è molto più facile, ma ciò non significa che non devi seguirli. La proprietà collettiva del codice si applica ancora - è solo che la proprietà è anche il prossimo sviluppatore - non scrivere codice che è per te e tu solo. Nota che questo è in un certo grado di conflitto con il 'codice rivela tutte le intenzioni' che è abilitato dalla programmazione della coppia - non hai quella persona per controllare che tu stia scrivendo codice manutenibile, quindi anche la documentazione del codice è critica. p>
Oltre a questi avvertimenti, molti dei principi di progettazione di XP si applicano ancora. Cose come test first design, continuous integration, incontri con il cliente, refactoring, YAGNI, soluzioni spike: quelle call possono essere fatte da soli.
Renditi conto che XP da solista richiede più o più rigore del normale XP. XP è spesso considerata una metodologia ad alta disciplina in quanto richiede alle persone di mantenere una rigorosa adesione alle migliori pratiche che cerca di incarnare . Quando non hai un allenatore o altre persone per supportare quella disciplina necessaria, può cadere in un guazzabuglio di pratiche che assomigliano a XP.
Lettura correlata:
Vorrei estrarre una citazione dal primo dei link c2:
Noted Perl Language luminary, and mad scientist, Damian Conway believes that Extreme Programming is actually a misnomer. Since it embodies many of the good programming practises that programmers are taught but almost certainly ignore, he believes that it should really have been called Ultra Conservative Programming