Bogen “Introduktion til Extreme Programming” af Kent Beck kan varmt anbefales.
For programmøren kan XP bedst beskrives som
- Lav små, men ofte, releases
- Udvikling i iterationer
- Hvis ingen har bedt om det – så skal det ikke laves (også selvom du forventer at det skal laves senere)
- Skriv test koden først – og test ofte (unittest og funktionalitetstest)
- Kun arbejde indenfor normal arbejdstid – dvs. sæt kun realistiske deadlines
- Refractor når du ser muligheden
- Kode skal bestå alle test inden der releases
- Keep it simple – udskud det komplekse til det bliver nødvendigt
- Pair programming. (Personligt mener jeg ikke at pair programming er optimalt til alt – men daglige code reviews med en kollega giver rigtig god mening)
Indenfor softwareudvikling er der fire faktorer: Omkostninger, Tid, Kvalitet og Omfang. Kunden kan/må kun bestemme de tre (men bestemmer selv hvilke) – den sidste er op til programmøren (eller teamet)
XP lægger stor vægt på at koden skal være enkel og formidlende – og ikke må indeholde gentaget kode. I bogen bliver 80/20 reglen også fremhævet:
80% af fortjenesten kommer fra 20% af indsatsen
Så derfor skal vi starte med at kode de 20% – og udskyde resten til næste release …
Scrum er i øvrigt en delmængde af XP, der fokusere på projektledelsen omkring et udviklingsprojekt.
Links