Agil utveckling ger system som uppfyller kraven. Och det blir roligare att arbeta i projekten



Relevanta dokument
Linköpings universitet 1 TDP029. Systemutveckling. Systemutveckling. Vanliga faser. Fler faser. Systemutvecklingsmetod

SCRUM och mycket mer

Agilt arbetssätt i komplexa organisationer. Välkomna! Anna Picetti, IT-HUSET

Insikt. kräver kunskap, erfarenhet och förståelse

Användningscentrering i agila utvecklingsprojekt. johanna.sarna@valtech.com Valtech

Tre saker du behöver. Susanne Jönsson.

Linköpings universitet 1

Kanban. Marcus Hammarberg. torsdag den 15 september 2011 (v.)

Agil testning i SCRUM

Vad är agilt? Agile Islands Andreas Björk

Mina listor. En Android-applikation. Rickard Karlsson Rickard Karlsson - rk222cu Linnéuniversitet rk222cu@student.lnu.

Testbara krav. SAST Syd Ställ gärna frågor under presentationen eller efteråt Åhörarkopior distribueras efteråt

SCRUM. Vattenfallsmodellen. Analys. Design. Kod. Test. Rational Unified Process Agile. Kallas också linjär sekventiell modell.

SCRUM. En agil projektmetod baserad på empiri - vad fungerar och vad fungerar inte?

STRESS ÄR ETT VAL! { ledarskap }

Kurser och seminarier från AddQ Consulting

BESTÄLLARSKOLAN #4: VEM SKA GÖRA MIN FILM?

Martin Völcker SLL IT Projektledare Mentor för agila projekt

BÖCKER INSPIRATION.

NYFIKEN PÅ PROJEKTLEDNING MÄSSA 2008

BESKRIVNING AV PROCESSMETODEN SCRUM

12 principer of agile practice (rörlig)

PROJEKTLEDNING inom produktutveckling. Individuell inlämningsuppgift KPP039 Produktutvekling 3 Boris Mrden

PMM (Process Maturity Metrics) Allmänt. Mätetal för framgångsfaktorer. 1. CM konfigurationsstyrning

Källkritisk metod stora lathunden

Se om ditt hus. Perspektiv. Alla pratar om hållbarhet. Men vad vill politikerna? Nya! Daniel Steinholtz, expert inom hållbarhet guidar till ISO 26000

Skrivglädje i vardagen!

Vad roligt att ni har valt att bjuda varandra på den här timmen.

Någonting står i vägen

Rune Tennesmed. Oskar Norling 1DV430. Individuellt Mjukvaruutvecklingsprojekt 1DV430 Webbprogrammerare H12 Oskar Norling

Projektmetodik. Översikt. Lektion 1: Metodiker. Metodiker.

Automation Region. Affärsdriven systemutveckling genom agila metoder. Stefan Paulsson Thomas Öberg

Agil utveckling ställer nya krav på upphandling. Roland Bäcklin, Jaybis Konsult AB

Bloggar - Som marknadsföring och varumärkesbyggande. Calle Johansson Essä i Digitala Distributionsformer Högskolan Väst - 23 maj 2011

Planeringsspelets mysterier, del 1

Positiv Ridning Systemet Negativ eller positiv? Av Henrik Johansen

Gruppenkät. Lycka till! Kommun: Stadsdel: (Gäller endast Göteborg)

CHEFENS KOMMUNIKATIONSVERKTYG VERSION 2.2

Aritco Villahissar. Inspiration för ditt hem.

Enkätresultat. Kursenkät, Flervariabelanalys. Datum: :47:04. Aktiverade deltagare (MMGF20, V10, Flervariabelanalys) Grupp:

Av Stefan Olsson, Marcus Frödin och Charles Franz

Gruppenkät. Lycka till! Kommun: Stadsdel: (Gäller endast Göteborg)

Projektmetodik II. HF1005, Informationsteknik och ingenjörsmetodik för Datateknik. Projektarbete

Scrum + XP samt konsekvensanalys

Spelplanen ändras. 1. Agila arbetssätt växer sig starkare. 2. Förenkling, transparens och flexibilitet blir ledstjärnor i förändringsarbeten.

De fem vanligaste säljutmaningarna

Media styr alla dina intressenter

L-Advantage Solutions AB. WinMore Systems Hippo PC & MAC Start

Therese Hansson & Magnus Jonsson. Motivationsfaktorer - Test inom Agila utvecklingsprojekt

Köpguide för mobila växlar. Modern telefoni till företaget är långt ifrån vad det var för bara några år sedan.

Se dig omkring för dina affärers skull

Välkommen till Kollektiva

Att leda förändring. Jostein Langstrand Daniel Lundqvist. Helixdagen 2015

» RSS - Bygg din egen RSS!

F7 Agila metoder. EDAF45 Programvaruutveckling i grupp Projekt Boris Magnusson, Ulf Asklund Datavetenskap, LTH

Uppgraderingsfråga. Tänk dig varenda medarbetare i en ny och bättre version. Vill du sätta detta i system nu? NEJ

Guide: Framtidssäkra HR-funktionen med Agil HR

Slutrapport för Pacman

Vilken version av Dreamweaver använder du?

IT-projektledning - introduktion 725G62

Tre misstag som äter upp din tid och hur kan göra någonting åt dem

Kombinationer och banor i agilityträningen

Utvärdering Biologdesignern grupp 19

Utvärdering att skriva för webben - Snabbrapport

5 vanliga misstag som chefer gör

HÖSTTERMINEN. Scrum STF INGENJÖRSUTBILDNING AB. Vi vidareutbildar ingenjörer och tekniker. Din partner för livslångt lärande

1. (3p) Inom MDI-området framhåller man att människor lär sig via metaforer. Hur menar man att detta går till?

Det handlar om dig. Björn Täljsten vd, Sto Scandinavia AB

CREATING VALUE BY SHARING KNOWLEDGE

Agil transformation och DevOps Hur lyckas du? Stockholm, Stefan Ingelgård

Praktikrapport. Sofia Larsson MKVA12, HT12

Projektstyrning. Tor Fridell

TÖI ROLLSPEL F 003 Sidan 1 av 5 Försäkringstolkning

Inspel till dagens diskussioner

Välj rätt affärssystem för att din. organisation ska blomstra!

Nyhetsbrev december 2011

Checklista workshopledning best practice Mongara AB

6-stegsguide för hur du tänker positivt och förblir positiv.

FÖRBÄTTRINGSVÄGEN. Verktyg & inspiration för företagets utveckling. Helene Kolseth

Innehållsförteckning Sida 3 Om IT-Högskolan Sida 4-5.NET-utvecklare Sida 6-7 Applikationsutvecklare till iphone och Android Sida 8-9 Mjukvarutestare

Projektplan för utvecklingen av Kryssarklubbens nya webbplats

Lyckade projekt - finns det?

Användarcentrerad Systemutveckling

INFOKOLL. Formulera frågor Söka information. Granska informationen Bearbeta informationen. Presentera ny kunskap

RAOUL 2015 SKOLMATERIAL

Diversa kompetensutveckling för lika möjligheter

Med kunden i fokus Kurshäfte 2011

Dina surfvanor kartläggs och lämnas ut

6. Att få mer gjort under en dag - Time Management

Ledningsgruppsutveckling

Vänersborg Samlevnadskurs

Självhjälpsprogram för ADHD. Del 1 Att hitta din väg

KLOKA FRÅGOR OM ÄLDRES LÄKEMEDELSBEHANDLING ATT STÄLLA I SJUKVÅRDEN

SCRUM. på fem minuter

Skapa kreativa och innovativa testorganisationer. Staffan Iverstam, QualityMinds

Samtal 1, Leila (kodat) Målbeteende: Skydda sig mot sexuellt överförbara sjukdomar och oönskad graviditet

Storyline Familjen Bilgren

Bläddra vidare för fler referenser >>>

Priskamp. En prisjämförelsesite Björn Larsson

Transkript:

AGIL UTVECKLING ETT KOMPENDIUM FRÅN CS Agil utveckling ger system som uppfyller kraven. Och det blir roligare att arbeta i projekten 1 DET 2 UTMANINGARNA med agil utveckling. HÄR ÄR AGILT Flexibilitet, kommunikation och stegvis förfining är några av hörnstenarna i agil utveckling. På stora företag krävs det starkare stöd från ledningen för att lyckas 3 GÖR 4 UTBUDET gång. SÅ HÄR Börja i liten skala, välj pilotprojekt noggrant och hämta hem snabba vinster. Konsulter, kurser och de rätta webbsidorna är en god hjälp för att komma i Sponsor:

AGIL UTVECKLING DET HÄR ÄR AGILT Agil metod bästa sättet att utveckla 1 TEXT: LARS DANIELSSON ILL: KJELL THORSSON Flexibilitet, kontinuerlig utvärdering och stenhård prioritering är några kännetecken för agil utveckling. Det ska leda till bättre projekt för att utveckla system. Utveckla rätt sak vid rätt tidpunkt Fördomarna är många om agil systemutveckling och ibland är övertron på det här sättet att arbeta stark. Men vad är agil systemutveckling? Agil utveckling handlar om att vara förändringsbar och flexibel på många sätt. Du behöver vara lika agil i ditt arbetsätt och tankesätt som en metod är agil. Det räcker inte med att bara ta in en agil metod och sen kalla sig agilutvecklare, säger Johan Normén, konsult och allt-i-allo på LBI i Göteborg. Ett sätt att arbeta som försöker göra det möjligt att i projekt utveckla rätt sak vid rätt tidpunkt, säger Ola Bini, konsult på Thoughtworks i USA. Förmågan att kunna kommunicera, prioritera det som är viktigt samt kunna agera på snabba förändringar, säger Anders Larsson, lösningsarkitekt på Modul 1. Så där fortsätter det. Vissa beskrivningar återkommer från flera personer, men svaren varierar lite hela tiden. Det är enklare att säga vad agil utveckling inte är. Det är inte vattenfallsmodellen. Det är inte att fastställa alla kraven på ett system i början av ett projekt. Det är inte att lämna över kraven till utvecklarna och lämna dem vind för våg för att utveckla systemet. Det är inte att testa om systemet fungerar först när utvecklarna har jobbat klart. Som journalist, som har bevakat det här området sedan Manifesto for Agile Software Development formulerades 2001 och som pratat med oräkneliga personer om de här sakerna, kan jag konstatera att några saker fastnat i mitt huvud. Jag täcker inte in alla principer som finns i alla agila metoder och de som jag nämner måste inte vara med för att en metod ska kunna kallas agil. Strunt samma, här är de som de fastnat: Iterationer: Projekt be-drivs i cykler, det kallas iterationer, och målet med varje iteration är att skapa ett körbart system. Systemet behöver inte vara komplett efter en iteration, men de funktioner som finns ska kunna användas. Tiden för en iteration varierar, men en tidsåtgång som jag ofta hört nämnas är två veckor. 2

1 AGIL UTVECKLING DET HÄR ÄR AGILT Kontinuerlig utvärdering: I slutet av en iteration nagelfars det körbara systemet noggrant av alla inblandade: projektledare, utvecklare, användare, kunder, och beställare. Utvärderingen ligger till grund för det fortsatta arbetet. Reflektion: Projektmedlemmarna tar sig tid att verkligen fundera på vad de håller på med. Prioritering: Inför varje iteration görs en stenhård prioritering av vilka funktioner som ska utvecklas i den. Om man bedömer att en viktig funktion inte hinns med i iterationen får en annan tas bort. Kommunikation: Inblandade från olika discipliner pratar med varandra. Man sitter ibland i samma rum. Transparens: Det är till exempel vanligt med väl synliga tavlor på den aktuella iterationen, samt funktioner som inte fått plats och funktioner som är klara, beskrivs. Det finns fler kännetecken för agil utveckling, men om man täcker in de ovan täcker man in en stor del av de agila projekt som bedrivs i Sverige. andan bakom På agilemanifesto.org/ principles.html beskrivs tankarna bakom agil utveckling. Bringa ordning i kaos med IBM Rational Team Concert Express Valmöjligheterna är verkligen oändliga, men oroa dig inte. Med våra agila verktyg kan du bringa ordning i kaos. De är dessutom kapacitetsbaserade och köps som moduler vilket gör att du får en lösning som kan anpassa sig efter din agila mognad. Och visste du förresten att du kan ladda ned en specialutgåva av Rational Team Concert för upp till 10 användare helt kostnadsfritt! Ladda ned IBM Rational Team Concert Express-C Edition idag! ibm.com/software/se/agil 3

1 AGIL UTVECKLING DET HÄR ÄR AGILT Stort metodsortiment Agil utveckling definieras för många av de olika metoder som betecknas som agila. Men allra bäst är att blanda och ge från olika metoder. Lars Danielsson Låt oss anta att vi bestämt oss för att satsa agilt. Då blir för många nästa fråga vilken metod, eller process, man ska välja. Vilken metod är bäst? En av de viktigaste sakerna med agil utveckling är att de olika delarna förstärker varandra. Var för sig är inte metoderna särskilt kraftfulla och kan orsaka problem om de inte hanteras korrekt, säger Ola Bini, konsult på Thoughtworks i USA. Han fortsätter med att räkna upp viktiga agila principer att ta till sig, som korta iterationer, att alla (även kunder) sitter på samma ställe, parprogrammering, kontinuerlig integration, etcetera. Johan Normén som är konsult på LBI är inne på samma linje: För mig finns det ingen som är viktigare än någon annan. En kombination av flera metoders innehåll baserat på intressenternas förutsättningarna kan vara mer lämpat än att bara låsa sig till en. Men om man inte har kommit så långt som Ola Bini och Johan Normén med agil utveckling och vill ha en metod att hålla i handen i början, vilken metod ska man välja då? De mest väletablerade metoderna är Scrum och XP. Scrum fokuserar på kommunikation och samspel mellan utvecklingsteam och beställare, medan XP fokuserar mer på den tekniska utvecklingsprocessen och kvalitet, säger Henrik Kniberg, agil mentor på konsultföretaget Crisp. Anders Larsson är lösningsarkitekt på Modul1 och även ordförande för DSDM Konsortiet i Sverige. DSDM Atern är en fullt utvecklad systemutvecklingsmetod med mekanismer för projektstyrning och en riklig uppsättning verksamhetsroller. DSDM har ett projektfokus snarare än ett produktfokus, vilket är en skillnad mot Scrum, säger han. Värt att påpeka är att många mer traditionella metoder innefattar agila principer. IBMs Rup är ett exempel. Flera av tankarna inom agil utveckling härstammar från Rup, exempelvis den iterativa utvecklingen och att testa tidigt i projekten. Det finns ingen motsättning mellan dem, säger Andreas Steen, nordisk teknikchef på IBMs Rationalavdelning. Förutom de metoder som nämns finns även Kanban och Lean Software Development. Med lite fantasi och med hjälp av Google och Wikipedia kan du hitta mer information om agila metoder och principer än du någonsin anade att du behövde. Men om du vill börja med en metod är tipset att titta på Scrum som är populär i Sverige. Agil utveckling med IBM Rational Team Concert IBM Rational Team Concert är ett agilt utvecklingsverktyg, byggt för att göra det möjligt för utvecklare att samarbeta oberoende av var i världen de befinner sig. Rational Team Concert har stöd för agil planering, versionshantering, ändringshantering, bygghantering och projektstatus. Dessutom innehåller verktyget integrerade rapporteringsfunktioner och möjligheten att automatisera utvecklingsprocessen. Med Rational Team Concert kan team av utvecklare samarbeta på ett enklare sätt. Du som använder verktyget kan, i realtid, ta del av andra utvecklares arbete och se om och hur det påverkar ditt eget arbete. Rational Team Concert är inte bara agilt tack vare att det stödjer agila processer. Det är dessutom: Enkelt och snabbt att installera och administrera både på server- och klientsidan. Snabbt att komma igång med. En ny användare kan vara igång efter bara några timmar. Agilt att konfigurera. Processer anpassas enkelt och snabbt i Rational Team Concert. Möjligt att anpassa efter vilken fas projektet befinner sig i mindre processtyrning i början av ett projekt och striktare när projektet närmar sig leverans. Mer information om agil utveckling och Rational Team Concert hittar du på: ibm.com/software/se/agil/ 4

AGIL UTVECKLING UTMANINGARNA Svårare på storföretag 2 TEXT: LARS DANIELSSON ILL: KJELL THORSSON Hittills har agil utveckling varit vanligare på mindre företag. På de stora företagen kan det vara svårare att komma i gång. Den bästa utgångspunkten är att ha en förespråkare högt upp i organisationen TÄNK PÅ DET HÄR Man måste inte satsa storslaget bara för att det handlar om en stor organisation. Börja med ett agilt projekt i liten skala. Satsa på bra samarbetsverktyg för att överbrygga avstånd som uppstår i en stor organisation. Se till att ha en förespråkare för agil utveckling högt uppe i organisationen. När agil utveckling började bli ett begrepp kom erfarenheterna ofta från små företag, inte minst konsultföretag, och små projekt. Än i dag är det många stora företag och myndigheter som inte provat på. Det beror inte minst på att det är en större process att förändra sättet att arbeta i en stor organisation än i en liten. Det bör vara enklare att få med sig ett litet gäng på en värderingsförändring än ett stort, förtydligar Jimmy Nilsson, konsult och vd på Factor10. Små organisationer är ofta ganska agila till sin natur. I större organisationer krävs det en mer medveten insats för att bibehålla agilitet, säger Henrik Kniberg, agil mentor på konsultföretaget Crisp. Andreas Steen som är nordisk teknikchef på IBMs Rationalavdelning har mycket kontakt med stora kunder. Risken för kommunikationsmissar är större i en stor organisation. Det ställer högre krav på koordinering av arbetet. Om en projektgrupp är geografiskt spridd kan tidsskillnader och kulturkrockar påverka arbetet, säger han. Hans medicin för att lösa problemen är att satsa på fungerande samarbetsverktyg. Han säger också att kraven på tydlighet för varje projekts mål och avgränsning är viktiga. Det finns fler tips. Den bästa utgångspunkten är att ha en förespråkare högt upp i organisationen som kan ge tillgång till resurser och hjälp, säger Ola Bini, konsult på Thougthworks. Han sträcker sig så långt som att säga att det är svårt att införa agil utveckling i en stor organisation utan åtminstone en förespråkare på hög nivå. Anders Larsson som är lösningsarkitekt på Modul1 påpekar att man inte måste satsa stort bara för att det handlar om ett stort företag: Starta i liten skala, men tänk stort. Börja där det går att uppnå resultat tidigt, alltså med projektgruppen i ett litet projekt. Logiken är enkel: Om en liten projektgrupp kan visa bra resultat med ett nytt sätt att arbeta blir det enklare att få med sig resten av organisationen. Räkna också med att det kan behövas fler moment i en stor organisation, än i en liten. Behovet av samordning mellan olika projekt, avdelningar och bolag i en koncern är ett exempel. Det gäller att välja en agil metod eller en uppsättning agila principer som passar för antalet inblandade personer. Allt handlar i grund och botten om vad och vilket förhållande man har med kunden och intressenterna man jobbar med. Här kan det gå fel, säger Johan Normén, konsult på LBI. Som exempel nämner han att Scrum fungerar bäst för fem till nio personer som är agila i sitt tankesätt. Trots det kan man ändå ha 15 20 personer i ett projekt som man säger är ett Scrumprojekt. Sedan blir man förvånad över att det inte gick så bra. 5

2 AGIL UTVECKLING UTMANINGARNA Felen hittas tidigare I ett agilt pilotprojekt på Swedebank ökade inte bara produktiviteten. Man hittade också felen tidigare, med lägre kostnader som följd. Lars Danielsson Qtema i Stockholm är ett konsultföretag som främst jobbar med test och kravhantering. Susanne Franzén som är testkonsult har erfarenheter av agila projekt, även på stora företag. Swedebank bestämde sig för att prova på agil utveckling och körde ett testprojekt. Jag var testledare i projektet, säger Susanne Franzén. Det visade sig att produktiviteten blev dubbelt så hög som i andra projekt. Produktiviteten mättes i antalet timmar som krävs per funktionspoäng, ett standardmått för funktionalitet. Så långt allt väl. Man kan väl anta att antalet fel minskade också? Det blev inte färre antal fel än i andra projekt, men felen upptäcktes tidigare. Det är en vanlig åsikt angående systemutveckling att ju senare ett fel upptäcks, desto dyrare blir det att rätta det. Och kurvan för kostnaden stiger brant med tiden det tar att hitta felet. Så det är en vinst att hitta fel tidigt. Antalet fel under den slutliga testen, före lansering, var långt färre än normalt. Även det är en vinst. För att lyckas nå de här vinsterna måste man arbeta lite annorlunda än i traditionella projekt. Ett exempel, i det projekt Susanne Franzén arbetade i, är att man gjorde Susanne acceptanstest Franzén. på systemet redan efter den andra iterationen. Det ligger i linje med den agila principen att utveckla körbara system i varje iterationen. En sak som kan bli jobbig är att man får tänka om i resursoch tidsplanering, jämfört med de flesta traditionella projekt. I stället för att lägga testresurserna sent i ett projekt måste de fördelas jämnt över projektet. Men det är något man bör sträva efter även i ej agila projekt. Vilka andra svårigheter finns det? Jag tror inte man får med sig alla på det här sättet att arbeta. Vissa personer tycker inte om förändringar. Susanne Franzén framhåller ytterligare en fördel som kommer naturligare i agila projekt än i andra: att arbeta tvärfunktionellt. Testarna och utvecklarna får mer förståelse för varandra. I projektet som jag arbetade i var jag verkligen en del av projektgruppen. Ett exempel på att test integrerades i projektet var att test efter ett tag inte längre sågs som en särskild aktivitet, utan jämställdes med att utveckla funktioner i systemet. 6

AGIL UTVECKLING GÖR SÅ HÄR Börja i liten skala 3 TEXT: LARS DANIELSSON ILL: KJELL THORSSON Små projekt, ett fåtal agila principer och snabba vinster. Så införs agil utveckling på allra bästa sätt. Börja i liten skala och öka användningen av agila principer stegvis PRIORITERA Timeboxing i agila metoder innebär enkelt uttryckt att man prioriterar vilka funktioner som ska utvecklas i en iteration i ett projekt. Det viktiga är att inte planera att utveckla fler funktioner än det går att hinna med i iterationen. Om det önskade antalet funktioner är för stort för att hinnas med får man helt enkelt ta bort de minst viktiga och ta hand om dem senare, om det går. Anta att du och dina kolleger och chefer, samt i bästa fall även företagsledningen, har tänt till på agil utveckling och vill komma i gång. Hur ska ni börja? De flesta experter CS är i kontakt med är överens om en sak: börja i liten skala och öka användningen av agila principer stegvis. Men att börja i liten skala kan betyda olika saker. En metod är att köra ett litet projekt agilt fullt ut, så långt det går. Det varierar från fall till fall hur man ska börja. Men ett bra första steg är att ge alla utbildning och sedan få i gång regelbundna processförbättringsmöten. I början är det bra att ha med en expert som mentor, så att man undviker de vanligaste fallgroparna, säger Henrik Kniberg, agil mentor på Crisp. Han säger vidare att det är viktigt att mötena är tvärfunktionella, alltså att man får med chefer, beställare, utvecklare och testare. Ett annat sätt att börja i liten skala är att börja med ett fåtal agila principer, eller kanske bara med en. Anamma de enkla regler som till exempel metoden Scrum föreskriver för att hantera en timebox. Det blir genast roligt att uppskatta tid och planera arbetet om man känner ansvar för sin uppgift, säger Anders Larsson, lösningsarkitekt på Modul1. Se faktarutan för en förklaring av begreppet timebox. Anders Larsson påpekar också att det kan vara en bra idé att anamma principer som refactoring och testdriven utveckling under själva konstruktionen, alltså under programmeringen. Refactoring är en princip för att enkelt och säkert göra stora och genomgripande förändringar av system. Testdriven utveckling innebär enkelt uttryckt att man börjar med att skriva testfall för en funktion och sedan skapar kod som klarar av testfallen. Det är också viktigt att utvärdera projekt och metodanvändning ofta. Annars riskerar man att skapa en process som inte är optimerad för verksamhetens behov, säger Andreas Steen, nordisk teknikchef på IBMs Rationalavdelning. Och så gäller det att vara smart. Som vanligt gäller det att vara situationsanpassad, men att ta ett steg i taget. Att jaga lågt hängande bör vara en bra utgångspunkt, säger Jimmy Nilsson, konsult och vd på Factor10. Andreas Steen är inne på samma linje. Man bör ta reda på fokusområden och var i organisationen man har mest problem för att kunna identifiera vilka metoder som är bäst att börja med. Med andra ord, välj ett litet projekt som snabbt ger stora vinster för att testa några agila principer. 7

3 AGIL UTVECKLING GÖR SÅ HÄR Det här saknas i agila metoder Fokus på individen, processer ovanför projektnivå, kravhantering och fokus på användbarhet. Det är några saker som saknas i många agila metoder. Lars Danielsson Silverkulornas tid är förbi eller så har den aldrig funnits. Eller som Ola Bini, konsult på Thoughtworks, uttrycker det: Du behöver fortfarande ha grepp om vad du vill åstadkomma, du måste ha duktiga utvecklare och en budget. Men mer specifikt, vilka nödvändiga delar av utvecklingsprocessen är det som saknas i agila metoder? Det är viktigt att förstå kompetensen hos varje enskild individ när man sätter ihop en projektgrupp och det är det knappt någon fokus på alls, säger Johan Normén, konsult på LBI. Han vänder sig mot att utvecklare ses som likvärdiga, när det i själva verket kan skilja mycket mellan olika individer. Det har bevisats vara en faktor 20 till 40 mellan en så kallad vanlig utvecklare och en riktigt duktig, det vill säga det en person gör på 20 dagar kan en expert göra på en dag. Men löneskillnaden är bara tio procent. Anders Larsson som är lösningsarkitekt på Modul1 pekar på ett viktigt område: Kravhantering är ett debatterat ämne. Listan över prioriterade funktioner, ofta kallad product backlog, är det enda egentliga kravdokumentet inom agila metoder. Inom till exempel Scrum sägs inget om hur den ska tas fram. Han påpekar dock att det finns agila tekniker, så kallade practices, för att modellera krav och att metoden DSDM Atern säger något mer om kravhantering. Vad som saknas beror naturligtvis på vilken agil metod som används. Om man använder Scrum är det väldigt viktigt att komplettera med de tekniska delarna av XP, säger Henrik Kniberg, agil mentor på konsultföretaget Crisp. Jimmy Nilsson som är konsult och vd på Factor10 tycker att det historiskt har saknats fokus på användbarhet. Andreas Steen som är nordisk teknikchef på IBMs Rationalavdelning tycker att processer ovanför projektnivån ofta saknas. Att vissa agila metoder saknar vissa delar är kanske inte så konstigt. Det ligger i den agila naturen att inte överdriva. Men om det fallerar åt andra hållet, att mycket saknas, gäller det att komplettera, kanske med en metod till eller åtminstone med flera agila principer. Och sunt förnuft är aldrig i vägen. 8

AGIL UTVECKLING UTBUDET Tjänster, verktyg och kurser 4 TEXT: LARS DANIELSSON ILL: KJELL THORSSON Det har vuxit upp en rejäl kringindustri kring agil utveckling. Mycket av utbudet handlar om hjälp att komma i gång. Det finns fler storheter att titta närmare på i den agila världen. Till att börja med behövs det konsulter HJÄLTARNA Agil utveckling handlar inte minst om en massa auktoriteter. På startsidan för The Agile Manifesto finns namnen på dem som ursprungligen formulerade manifestet. Bland Agilekändisarna märks följande: Kent Beck, Alistair Cockburn, Ward Cunningham, Martin Fowler, Ken Schwaber och Jeff Sutherland. Agila metoder och principer i alla ära, men de har beskrivits i de sex föregående artiklarna i det här kompendiet. Det finns fler storheter att titta närmare på i den agila världen. Till att börja med behövs det konsulter, inte minst för att komma i gång. I dag torde de flesta större konsultbolag med självaktning, som sysslar med utveckling, kunna erbjuda agila tjänster. Men under mina år som itjournalist har jag fastnat för två: Citerus och Crisp. Även Valtech har en del intressant på gång. Men som sagt, de flesta bör kunna erbjuda tjänster. Vad gäller verktygsstöd finns det både traditionella och öppna alternativ. En leverantör som IBM erbjuder verktygsstöd, liksom Microsoft. Om man till exempel tittar på webbplatsen för IBMs Rationaldivision ser man att en stor mängd verktyg för utvecklare beskrivs som agila. En fördel med de flesta öppna verktyg är att man kan prova sig fram gratis. På kurssidan har både utbildningsföretag och mer specialiserade konsultföretag hakat på. Det är till exempel ganska vanligt med tvådagars kurser för att bli certifierad Scrum master. En Scrum master är den närmaste motsvarigheten till projektledare som finns i den agila metoden Scrum. Man kan fråga sig om man verkligen är redo att driva projekt efter en tvådagars kurs. Så är det naturligtvis inte, men det kan vara en början. Det finns också introduktionskurser under en dag. En sådan kanske fyller sin plats om den kompletteras med en erfaren konsult som fungerar som mentor i ett riktigt projekt. Nackdelen med en endags introduktionskurs är att den kan kosta så mycket som 7 000 kronor. Om det är flera utvecklare på företag som behöver en introduktion borde det kunna bli billigare att hyra in en duktig konsult under en dag som ger en företagsanpassad introduktion i stället. Böcker och webbsidor är det ingen brist på inom det agila området. Om du vill introducera dig själv kan webben som vanligt vara ett bra ställe att börja på. Som vanligt kan det naturligtvis också vara vettigt att titta på referenskunder till konsultföretag som börjat arbeta agilt. It-medier, som Computer Sweden, kan vara ett annat alternativ för att informera sig. Som författare till flera artiklar om agil utveckling 9

4 AGIL UTVECKLING UTBUDET är jag den första att medge att beskrivningarna av ett ämne som agil utveckling kan bli ytliga i en tidning. Men du kan åtminstone få tips om folk att ringa och i bästa fall en snabb introduktion. Jag hoppas verkligen att mina artiklar har förmedlat varför, och för vem, det kan vara intressant med agil utveckling. Om du vill känna historiens vingslag ska du surfa till http://agilemanifesto.org, lägg till /iso/sv/ för en svensk version. Vill du veta mer om våra verktyg och hur de kan förbättra din mjukvaruutveckling? Besök jazz.net. Där kan du interagera direkt med IBMs Jazz-utvecklingsteam, andra kunder och våra partners. Du kan också ladda ner produkttester och betatester, ge oss direkt feedback och följa oss när vi använder våra egna Jazz-produkter i vår verksamhet. http://jazz.net 10

4 AGIL UTVECKLING Lagom är bäst UTBUDET KOMMENTAR Lyckliga utvecklare jobbar bättre. Och utvecklarna verkar bli lyckligare med agila metoder. Lars Danielsson Alla som är insatta i systemutveckling inser att valet av metod inte löser alla problem. Men samtidigt är det uppenbart att det agila sättet att arbeta löser många problem, i många projekt. Min personliga reflektion, efter att ha arbetat som systemutvecklare i åtskilliga år, är att det finns valda delar från de olika metoderna som är tilltalande. Det borde åtminstone vara en bra idé att anamma vissa agila principer. Vilka principer man ska satsa på beror på typen av projekt, vilka personer som är inblandade och flera andra saker. Men om det går att hitta en agil princip, eller några, som alla inblandade är överens om borde mycket vara vunnet. Just de här tankarna är till exempel Ivar Jacobson, känd svensk systemutvecklingsguru, inne på. Han ser det som ett ramverk i vilket man kan plocka in olika principer, eller practices som han kallar dem. Så har han i alla fall förklarat det för mig. Under årens lopp har jag träffat flera av de Agilekändisar som nämns i faktarutan i den föregående artikeln. Av alla klokheter jag fått höra av dem är det speciellt en som har fastnat: Visa mig vilka utvecklare som är med i projektet och jag kan säga hur det kommer att gå. Poängen är att det trots allt prat om metoder och principer är människorna som är viktiga. Men om redan duktiga människor kan bli ännu mer inspirerade och effektivare med rätt metoder kan mycket vara vunnet. Inspiration är en av fördelarna med agila metoder, verkar det som. Jag vet inte hur många gånger jag hört att det blir roligare att arbeta och alla är mycket nöjdare och mer engagerade när jag pratat med företag som arbetar agilt. Det är självklart bra med glada utvecklare men kanske inte för glada, det kan vara ett tecken på att de får bestämma för mycket själva. Det är som i journalistiken. Säg reporterstyrd tidning till en ärrad redaktionschef och du får en skräckslagen blick till svar. Det är likadant med systemutveckling. Det behövs en balans. Som alltid.... och valet föll på IBM Rational Team Concert Utmaningen Sellegi önskade reagera snabbare på kundernas behov och därför införa en mer agil utvecklingsmetod och förbättra effektiviteten i hanteringen av hela utvecklingsprojekt. Nyckelorden var att kunna jobba distribuerat, ha bättre spårbarhet mellan krav och leverans samt att låta alla ha tillgång till gemensam information samtidigt. Lösningen Valet föll på IBM Rational Team Concert. Med Rational Team Concert kan utvecklarna samarbeta och komma åt information som behövs i projektet genom ett och samma system. Fördelarna Mindre tid behöver spenderas på administration. I och med att allt utförs i samma miljö är det lättare att koppla ihop relevant information som tekniska rapporter, kravanalyser och ändringar i koden. Spårbarheten har gjort arbetet mycket enklare och dessutom har Sellegi kortat time-to-market och fått en ökad kostnadseffiktivitet i sina projekt. Mer information om agil utveckling och Rational Team Concert hittar du på: ibm.com/software/se/agil/ 11