XP – Extreme Programming

XP eller extrem programmering är precis som scrum en metodik för agil systemutveckling. I XP jobbar man grundläggande med testning, både för kodandet och kraven. Kraven testas med systembeskrivningar.  Testdriven utveckling  innebär att man börjar med att koda upp tester som ska testa att koden fungerar innan man börjar skriva själva koden.
En bild från extremeprogramming.org visar tillvägagångssättet:

developxp


Här kommer lite tillämpningar saxat från wikipedia:

  • Planeringsspelet – Funktionalitet i nästa leverans bestäms genom prioriterade verksamhetsberättelser och tekniska bedömningar.
  • Små leveranser – Systemet levereras i små inkrementella versioner.
  • Metafor – En enkel beskrivning av hur systemet ska fungera.
  • Enkel design – Genom att hålla koden enkel blir även designen enkel. Ta bort komplexitet från koden kontinuerligt när den upptäcks.
  • Testning – Tester skrivs innan koden utvecklas. Programmerare skriver tester som testar och validerar koden medan kunden skriver tester som testar och validerar verksamhetsberättelser.
  • Omstruktuering av kod – Ta kontinuerligt bort identiska (dubbletter) och komplexa kodbitar.
  • Parprogrammering – Programmerare arbetar i par vid en dator. En skriver koden medan den andre granskar koden.
  • Gemensamt ägarskap – Alla har rätt att ändra i all kod, skriven av dem själva eller någon annan.
  • Kontinuerlig integration – När en implementationsuppgift är utförd byggs systemet och integereras med den redan färdiga koden. Detta kan ske flera gånger per dag.
  • 40-timmars arbetsvecka – Programmerare tänker och därmed arbetar bättre utvilade. Övertid tillåts inte i två veckor i rad.
  • Kund på plats – Kunden arbetar med utvecklarna på heltid för att kunna svara på frågor, definiera systemet och skriva tester.
  • Kodstandard – Konsistent kodstandard som alla programmerare följer.

One thought on “XP – Extreme Programming

Leave a Reply

Your email address will not be published. Required fields are marked *

*

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">