Hva Er Extreme Programming? En Oversikt over XP Regler og Verdier
Tilbake i 1990-årene, fremveksten av Internett krevde en endring i utviklingen av programvare. Hvis et selskaps suksess var avhengig av hastigheten som selskapet kan vokse og bringe nye produkter til markedet, virksomheter som trengs for å dramatisk redusere software utvikling livssyklus.,
Det var i dette miljøet at Kent Beck skapte extreme programming (XP), en smidig prosjektledelse metodikk som støtter utgivelser i korte utvikling sykluser for å forbedre programvare kvalitet, og tillater utviklere å svare på endrede kundebehov.
Selv om du kanskje kjenne igjen noen av disse praksiser og verdier fra andre prosjektledelse metodikk, XP tar disse praksisene til «ekstreme» – nivåer, som den metode som navnet tilsier., I et intervju med Informit, Kent forklarer:
«Den første gangen jeg ble bedt om å lede et team, og jeg spurte dem til å gjøre en liten bit av de tingene jeg mente var fornuftig, som testing og anmeldelser. Den andre gangen var det mye mer på linje. Jeg … spurte teamet til å skru opp alle knotter til 10 på ting jeg trodde var viktig, og la ut alt annet.»
Hvis du og laget ditt trenger for å raskt slipp og svare til kundens forespørsler, ta en titt på de verdier og regler for extreme programming—det kunne være en perfekt passform.,
– Verdier for extreme programming metodikk
XP er mer enn bare en rekke tiltak for å håndtere prosjekter—det følger et sett av verdier som vil hjelpe ditt team å jobbe raskere og samarbeide mer effektivt.
Enkelhet
Lag oppnå hva som har blitt bedt for, og ikke noe mer. XP bryter ned hvert trinn av en større prosess i små, oppnåelige mål for teamet til å oppnå.,
Strømlinjeformet kommunikasjon
Lag arbeide sammen på hver del av prosjektet, fra gathering krav til å implementere koden, og delta i det daglige standup-møter for å holde alle team-medlemmer oppdatert. Eventuelle bekymringer eller problemer blir tatt opp umiddelbart.
Konsistent, konstruktive tilbakemeldinger
I XP, lag tilpasse sin prosessen i prosjektet og kunden har behov for, ikke den andre veien rundt. Teamet skal demonstrere deres programvare tidlig og ofte slik at de kan samle inn tilbakemeldinger fra kunden og gjøre de nødvendige endringene.,
Respekt
Extreme programming oppfordrer til en «alle for en, og en for alle» – mentalitet. Hver person på laget, uavhengig av hierarkiet, er respektert for sine bidrag. Teamet respekterer andres meninger fra kunder og vice versa.
Motet
Team medlemmer tilpasse seg endringer som de oppstår, og ta ansvar for sitt arbeid. De forteller sannheten om deres fremgang—det er ingen «hvite løgner» eller unnskyldninger for ikke å få folk til å føle seg bedre. Det er ingen grunn til å frykte fordi ingen har noensinne fungerer alene.,
Regler for extreme programming metodikk
Don Brønner publisert første XP reglene i 1999 for å møte krav som extreme programming ikke støtte aktiviteter som er nødvendig for utvikling av programvare, som for eksempel planlegging, styring, og å utforme. Fra planlegging til testing av programvaren, følg disse grunnleggende trinnene for hver iterasjon.
Planlegging
Dette stadiet er der hvor UX-magien skjer., Snarere enn en lang krav til dokumentet, kunden skriver brukeren historier, som definerer funksjonalitet kunden ønsker å se, sammen med business verdi og prioritet for hver av disse funksjonene. Bruker historier, trenger ikke å være uttømmende eller altfor teknisk—de trenger bare å sørge for nok detaljer til å hjelpe teamet finne ut hvor lang tid det vil ta å implementere disse funksjonene.
Med Lucidchart, kundene kan opprette en grunnleggende flytskjema og enkelt ta opp og dele den ønskede funksjonalitet.,
Fra det, team skaper en utgivelsesplan og deler prosjektet inn i iterasjoner (én til tre uker lange). Prosjektledere kan være lurt å lage en tidslinje eller et forenklet Gantt-diagram til å dele planen med laget.
Administrere
På dette stadiet, prosjektleder vil sette teamet opp for å lykkes i denne metodikken. Alle trenger å samarbeide og kommunisere effektivt for å unngå eventuelle småfeil. Denne fasen innebærer:
- å Skape en åpen arbeidsplass for ditt team
- Angi en bærekraftig tempo (dvs., å bestemme riktig lengde for iterasjoner)
- Planlegging av et daglig standup møte
- Måler prosjektet hastighet (mengden av arbeid som blir gjort på prosjektet ditt)
- Reassigning arbeid for å unngå flaskehalser eller kunnskap tap
- Endre reglene hvis XP ikke fungerer perfekt for team
Design
Denne regelen går tilbake til verdien av enkelhet: Starte med det enkleste design fordi det vil ta mindre tid å fullføre enn de komplekse løsning. Ikke legge til funksjonalitet for tidlig. Refactor ofte for å holde ren kode og konsis., Opprette spike løsninger for å utforske løsninger for potensielle problemer før de satte teamet bak.
Kent Beck og Ward Cunningham også opprettet klasse-ansvar-samarbeid (CRC) kortene for å bruke som en del av XP metodikk. Disse kortene la hele prosjektet teamet til å utforme systemet og se hvordan objekter samhandle. Hvis du ønsker å prøve dette brainstorming verktøy for deg selv, komme i gang med våre Lucidchart mal.,
Koding
Da den tid kommer endelig til å implementere kode. XP praksis kollektive kode eierskap: Alle anmeldelser kode og noen utvikler kan legge til funksjonalitet, fikse feil, eller refactor. For kollektive kode eierskap til arbeidet, laget skal:
- Velg et system som metafor (standardisert navneordning).
- Praksis par-programmering., Team-medlemmer arbeider i par, på en enkelt datamaskin, for å lage koden og send den til produksjon. Bare ett par integrerer koden på en gang.
- Integrere og forplikte koden inn i depotet etter noen få timer.
kunden skal være tilgjengelig, fortrinnsvis på stedet, i løpet av hele denne prosessen, slik at de kan svare på spørsmål og etablere krav.
– Testing
laget utfører unit tester og fikser bugs før koden kan frigis. De kjører også aksept tester ofte.,
Når du skal bruke extreme programming
Fortsatt er usikker på om XP vil passe din gruppes behov, selv etter å ha lest reglene og verdiene? Extreme programming kan fungere godt for team som:
- Forvente deres systemets funksjonalitet for å endre noen få måneder.
- Erfaring stadig skiftende krav eller arbeide med kunder som ikke er sikker på hva de vil at systemet skal gjøre.
- Vil redusere prosjekt risiko, spesielt rundt stramme tidsfrister.
- det er et lite antall av programmerere (mellom 2 og 12 er å foretrekke).
- Er i stand til å jobbe tett med kundene.,
- Er i stand til å lage automatiserte enhet og funksjonelle tester.
Om samarbeid og kontinuerlig utvikling og prioriteringer for laget, extreme programming kan være verdt et forsøk. Fordi denne svært tilpasningsdyktige modellen krever løpende tilbakemeldinger fra kundene, forventer feil underveis, og krever at utviklere til å jobbe sammen, XP ikke bare sikrer en helse produktet utgivelsen, men har også utilsiktet forbedret produktivitet for utvikling lagene overalt.,
Hvis du bestemmer deg for å bruke XP, kan du prøve å dokumentere din bruker historier, slipper tidsplaner, CRC-kort, og system for dokumentasjon visuelt i Lucidchart. Registrer deg for en gratis konto i dag.