Af Kim Elmose
Større arbejdsglæde, øget faglig udvikling og en hurtigere vej frem til et stabilt produkt. Det er blot et par af de fordele som udviklerne hos leverandøren af analytiske virksomhedssystemer SAS Institute nævner, når de fortæller om programmeringsmetoden eXtreme Programming - også kaldet XP.
Metoden kendetegnes især ved, at al kodning foregår i par ? to programmører ved hvert skærm og om hver kodelinie.
Formen vinder frem ved tastaturerne i adskillige udviklingsafdelinger verden rundt, og udviklerne hos SAS har brugt den i snart otte måneder, efter at de havde hørt og læst om metoden. I starten var det blot et forsøg i 14 dage for de 25 udviklere i afdelingen, der er en del af SAS Institutes amerikanske Research & Development, forklarer senior system developer Louise Damgaard Nielsen
- Men alle synes, at det var så sjovt og givende, at vi gradvis i løbet af foråret udvidede brugen af extreme programmering mere og mere, så metoden nu er vores bærende, forklarer hun og peger på de umiddelbare resultater:
- Netop fordi vi sidder og koder i par, har vi hævet kvaliteten af de kodelinier, som bliver afleveret til test. Samtidig er der blevet en bedre faglig udveksling af ideer og forslag, fordi vi ikke længere sidder på hver vores lille kontor, men nu er i ét rum ? uden forstyrrende telefoner eller mails, fortæller Louise Damgaard Nielsen.
Den danske udviklingsafdeling har inden for SAS specialiseret sig i at udvikle og vedligeholde rapporteringsværktøjet ASSIST. Derudover deltager udviklerne i arbejdet med SAS-programmet Enterprise Reporter.
Videndelingen er øget
Før den danske udviklingsafdeling gik i gang med ? på udviklernes initiativ ? at gå over til ekstrem programmering, sad hver udvikler med sit eget område inden for det igangværende projekt. En havde ansvaret for tabeller, en anden for grafikken og en tredje for rullemenuer. Nu prøver alle alt ? og det har øget udfordringerne for den enkelte, mener en af udviklerne Janni Andersen.
- Det er blevet nemmere at udvikle sig fagligt, fordi videndelingen er øget. Når vi sidder i udvikler-rummet ved otte maskiner og arbejder, så snakker vi jo sammen hele tiden om, hvordan vi løser problemerne. Har din partner ikke svaret, er der en anden, der har det. Dermed ejer du ikke selv længere din kode. Den er fælleseje nu ? og det betyder også, at alle succeser er fælles succeser, forklarer hun og tilføjer, at det gør det nemmere at ændre eller slette kode, fordi der ikke er bundet mange følelser op i den.
Den enkelte udvikler skifter partner flere gange om dagen, og alle koder blev tjekket af kolleger. Flere øjne på kodelinierne har gjort dem bedre, og dermed bruger udviklingsafdelingen ikke mange kræfter på at ændre koder, der ved test har vist sig ikke at fungere optimalt. I det hele taget gør SAS-udviklerne brug af et andet mantra inden for ekstrem programmering, nemlig stadige tests. Hver nat bliver alle koderne testet ? og dermed bliver eventuelle fejl fanget. De kan så blive rettet den efterfølgende dag.
Programmørerne sidder imidlertid ikke hele dagen ved skærmen og koder med en kollega. Metoden er krævende, og arbejdet er intenst, så derfor sker det i kortere perioder i løbet af arbejdsdagen.
Bedre overblik over projekter
Guruerne inden for Extreme Programming er amerikanerne Martin Fowler og Ken Beck, der har skrevet en lang række bøger og artikler om emnet samt holder foredrag. De har formuleret de fire kerneprincipper for Extreme Programming: kommunikation, simplicitet, hyppige tilbagemeldinger og mod. Modet kommer af, at udviklerne afgiver ?ejendomsretten? til et område og dermed kontrollen for at dele den med andre.
Hyppige tilbagemeldinger opnår udviklingsafdelingen ved at hakke det enkelte projekt op i så små bidder eller opgaver, der kan løses inden for få dage, at det er muligt dag for dag at holde øje med, om projektet kører tilfredsstillende. Hvert projekt bliver brudt ned til en række ?historier?, der dækker over beskrivelser af, hvad programmet skal kunne. Hver historie bliver derefter brudt op i en række opgaver, der skal løses for at ?fortælle? historien.
En opgave kan ofte løses på få dage ? og den enkelte historie afsluttes i løbet af få uger. Den ansvarlige projektleder kan så holde nøje øje med, om man er bagud med dele af projektet. Hos SAS har hver udvikler ansvaret for en historie ? og netop, fordi den er så afgrænset, giver det mere ro på for den enkelte medarbejder.
Fordelene er altså store, ifølge de to SAS-udviklere, der imidlertid pointerer én ting:
- Hvis extreme programming med succes skal benyttes i en udviklingsafdeling, så kræver det, at alle udviklere er med på at arbejde efter metoden. Stritter bare en eller to imod, så kan det ikke lade sig gøre. Men fordi vi selv foreslog det, har det ikke været et problem, forklarer Louise Damgaard Nielsen.
Relevante links:
Martin Fowlers site