Indholdsfortegnelse:
Definition - Hvad betyder ekstrem programmering (XP)?
Extreme Programming (XP) er en intens, disciplineret og smidig softwareudviklingsmetodologi, der fokuserer på kodning inden for hver softwareudviklingslivscyklus (SDLC). Disse faser er: Kontinuerlig integration til at opdage og reparere problemer tidligt i udviklingsprocessen Kundens inddragelse og hurtig feedback Disse XP-metodediscipliner er afledt af følgende fire nøgleværdier for Kent Beck, XPs oprindelsesstatus: Kommunikation: Kommunikation mellem teammedlemmer og kunder skal forekomme regelmæssigt og resulterer i åben projektdiskussion uden frygt for gengældelse. Enkelhed: Dette indebærer anvendelse af den enkleste design, teknologi, algoritmer og teknikker til at tilfredsstille kundens behov for den aktuelle projektterteration. Feedback: Feedback skal opnås på flere forskellige niveauer, f.eks. Enhedstest, kodevurdering og integration. Mod: Implementere vanskelige, men krævede beslutninger.
Techopedia forklarer ekstrem programmering (XP)
Ud over nøgleværdier kræver implementering af XP-metodologi også støtte fra de tre principper for trinvis ændring, omfavnelse af forandringer og kvalitetsarbejde. Tolv nøglepraksis skal også følges: Nogle traditionelle metodologer, der kritiserer XP, er en "uvirkelig" proces, der forårsager hensynsløs kodning. Flere traditionelle softwareudviklere finder XP ufleksibel med lav funktionalitet og lidt kreativt potentiale. Yderligere kritik er, at XP: Har ingen struktur. Mangler væsentlig dokumentation. Har ingen klare leverancer, dvs. realistiske estimater er vanskelige, fordi hele projektkravområdet ikke er fuldt defineret. (Denne mangel på detaljerede krav gør XP meget tilbøjelig til at krybe i omfang.) Har brug for kulturelle ændringer for vedtagelse. (Må kun arbejde for seniorudviklere) Er dyrt, dvs. kræver hyppig kommunikation / møde på kundens regning, hvilket kan føre til vanskelige forhandlinger. Har mulig ineffektivitet fra hyppige kodeændringer inden for forskellige iterationer. Som med enhver udviklingsmetodologi er alt dette naturligvis meget subjektivt og afhængigt af personlige præferencer.