Posts Tagged ‘agile’

h1

Om att mäta det agila projektets framgång (2/6) – Resultat

tisdag, 15 juni, 2010

Hur vet man att investeringen i utvecklingen matchar förväntningarna? Hur håller man koll på att projektet levererar ”i tid”? Hur mäter vi att mottagarna och beställarna är nöjda? Scrum påstår sig leverera mera funktionalitet av högre kvalitet som bättre matchar förväntningar och behov. Men hur mäter man och följer upp detta? Detta är andra delen av min artikelserie om tips, trix och verktyg för att mäta det agila projekts framgång och status.

Nedan listar jag några verktyg och mätvärden användbara för projektets produktägare och styrgrupp (Meta-Scrum) för bland annat release- och resursplanering. Men som alltid ska man ställa sig frågan varför man mäter något? Vad ska statistiken användas till? För vem är mätvärdet värdefullt? Historisk statistik på ett mätvärde i sig har inget värde, det är först när vi omsätter det till kunskap, insikt och handling som det ger oss något tillbaka. Fram tills dess är insamlandet och sammanställandet waste och kanske t.o.m. kontraproduktivt. Vi riskerar att belysa fel saker och kanske luras försöka bota symptom istället för det bakomliggandet problemet.

.

Release Plan vs. Effektmål

Vilka effektmål/affärsmål har vi satt upp med nästa Release? Vilka verksamhetsproblem hoppas vi lösa? Kommer nästa Release nå dessa mål? Ser prognostiserad tidplan ut att hålla?

Med en Release Burndown kan man enkelt prognostisera när scoopet för releasen är klar. Release Burndownen är också ett enkelt verktyg för att anpassa release-scoopet för att nå önskat release datum. Finns tydliga mätbara effektmål kan Produktägaren också avgöra om tillräckligt många av dessa blir uppfyllda.

Release Burndownen ger en tidig indikation på hur projektet går. Produktägare och styrgrupp kan avgöra om release-scoopet ska justeras, deadline flyttas fram eller om teamet behöver förstärkas med ytterligare resurser.

.

ROI kontra Kostnad

Får vi valuta för pengarna? Är förväntad Return Of Investment (ROI) högre än sprintens kostnad? När ROI/Sprint sjunker under en viss gräns är det kanske dags att vara nöjd och avrunda projektet… eller se över Produktbackloggen, dvs. ta ett kreativt omtag och  klura ut nya funktioner som kan skapa högre affärsvärde än de som ligger i produktbackloggen just nu.

Att leverera enligt Scrum ger oss möjlighet att kontinuerligt försäkra oss om att teamet jobbar på just de saker som ger mest affärsvärde. Men det är inte bara en möjlighet utan även produktägarens skyldighet att se till att just så är fallet.

Utöver själva sprintens kostnad växer förvaltnings- och driftkostnader desto större och komplexare systemet blir. Denna aspekt återspeglas inte i illustrationen intill men bör finnas med som beslutsunderlag vid releaseplanering.

.

Rest/Släp

Hög rest-ratio (dvs. ration rest-tasks från föregående sprint/sprintar kontra ny funktionalitet) kan signalera många olika saker men framförallt en oförmåga att avsluta features och efter sprint demo ha en produkt som är ”klar”, dvs. redo för paketering och leverans. Ju fler features som är  ”work in progress” mellan sprintar desto mindre flexibilitet får produktägaren i sitt arbete med att prioritera produktbackloggen och desto mindre frihet över release-planeringen och större osäkerhet kring release-prognoser.

Vidare, om det alltid följer med rester från tidigare sprintar in i nästa sprint finns det en risk att man missa eventuella underliggande tekniska problem eller andra typer av hinder som gör att teamet har svårt att avsluta features. Inte nog med att produktägaren får allt mindre ”nytt” levererat per sprint, projektets sanna status blir allt svårare att utläsa.

.

Driftsättnings-/Packeteringsinsats

Hur stor är den faktiska insatsen att driftsätta (alt. paketera produkten) efter nästa Sprint Demo? Har projektet skjutit upp tasks rörande överlämning till förvaltning, dokumentation, acceptanstest, installationsscript, etc. betyder det inte att man är redo för leverans bara för att Release Burndownen närmar sig noll.

Så länge Scrum-projektet inte levererar en potentiellt installerbar/levererbar ny version av systemet/produkten varje sprint förlorar man den kontroll och flexibilitet som Scrum utlovar.

Skjuts vissa saker upp tills det ”är dags” måste detta förankras med produktägaren (och eventuellt styrgruppen) eftersom Release Burndownen inte längre berättar hela historien. (Alternativt lyfts dessa arbetsuppgifter in i produktbackloggen och görs till en del av releasen.)
.

Risk Burndown

Agila utvecklingsmetoder hanterar risk på daglig basis naturligt genom korta feedback-cykler, dagliga möten, öppen insyn i teamets progress, ärlighet, tät dialog osv. Trots detta kan det vara en god idé att synliggöra de risker som finns och hur de förändras och hanteras under projektets gång. När projektet närmar sig release ska självklart denna risk helst nått noll.

Läs mer om Risk Burndown Chart i ett tidigare inlägg.

.

Project Success Sliders

Project Success Sliders är ett enkelt men kraftfullt sätt för stakeholders och produktägaren att förmedla sina förväntningar till teamet. I projektets inledande fas defineras ett antal ”sliders” som var och en ger uttryck för hur projektets framgång kommer betygsättas och bedömas.

Hur bra (eller dåligt) stakeholders och produktägare upplever att projektet går i jämförelse med uppsatta ”kriterier” bör följas upp löpande så att projektet så ofta som möjligt får en chans till feedback och möjlighet att agera och reagera om så krävs.

.

Project Success Sliders beskrevs först av Rob Thomsett i sin bok ”Radical Project Managment”. Nyligen släppte Mountain Goat Software ett snyggt och enkelt webb-verktyg för att skapa och ställa in project sliders – ”Project Success Calculator”.

.

Detta är del 2 av 6. Läs vidare:

Om att mäta det agila projektets framgång (1/6) – Introduktion

Om att mäta det agila projektets framgång (2/6) – Resultat

Om att mäta det agila projektets framgång (3/6) – Produktivitet

Om att mäta det agila projektets framgång (4/6) – Kvalitet

Om att mäta det agila projektets framgång (5/6) – Teamets nivå

Om att mäta det agila projektets framgång (6/6) – Agera på kunskap

(Länkarna uppdateras allteftersom artiklarna publiseras.)

h1

Om att mäta det agila projektets framgång (1/6)

fredag, 11 juni, 2010

På den gamla goda tiden gick det enkelt att ta reda på om det går bra eller dåligt för ett projekt. Hur många procent av kravlistan har vi bockat av? Hur stora (eller små) är avvikelserna från budget och deadlines? Samma frågeställningar fungerar inte tillfredställande i det agila projektet.

Vilka verktyg och mätvärden finns till hands när man jobbar agilt?

.

I ett agilt projekt finns det såklart oftast budget och deadlines men ingen detaljerad plan eller detaljerad kravlista att mäta avvikelser från. En av anledningarna till att man jobbar agilt är för att man insett att dessa måttstockar inte berättar något om hur bra produkt eller system man har byggt. Samt kommit till insikt om att planer bara är prognoser och inte något facit.

Detta betyder dock inte att vi ska sluta bry oss om hur bra eller dåligt ett Scrum-projekt går. En agil process som välkomnar förändringar och bygger på att skapar kunskap verkar dock slingra sig från att mätas. Vi måste ta till andra metoder och mätvärden än de vi kanske är vana med för att få en bra insyn i hur projektets sanna status är.

Först och främst borde vi förtydliga vad det är vi egentligen undrar när vi ställer oss frågan om ett projekt går bra? Kanske kan frågan styckas upp i följande, mer konkreta, frågeställningar:

  1. Är alla stakeholders nöjda? Tycker beställaren han/hon fått valuta för sina pengar?
  2. Upplever användaren att produkten/systemet är användbart och värdefullt?
  3. Håller produkten/systemet hög teknisk kvalitet och är fritt från buggar?
  4. Är systemet enkelt att förvalta/vidareutveckla?

.

Nedan listas förslag på mätvärden som kan användas för löpande utvärdering av ett projekts framgång och status och som beslutsunderlag under den löpande planeringen. I kommande artiklar (del 2-6) kommer jag beskriva var och en djupare och förklara vad dom syftar till och vad mätvärdet kan berätta om.

.

Agila mätvärden

.

Resultat
Projektets förmåga att göra stakeholders glada och leverera värdefull mjukvara enligt plan och prognoser…

  • Release Plan vs. Effektmål / ROI
  • Rest/Släp
  • Driftsättnings-/Packeteringsinsats
  • Risk Burndown
  • Project Success Factors

.

Produktivitet
Teamets förmåga att produktivt bygga och leverera funktioner…

  • Velocity – Trend
  • Velocity – Förutsägbarhet
  • Work In Progress
  • Focus Factor/DRAG
  • Time To Market

.

Kvalitet
Teamets förmåga att bygga kvalitativ mjukvara…

  • Buggar i produktion
  • Teknisk Skuld
  • Rest/Släp

.

Teamets nivå
Mår man bra och är motiverad gör man ett bättre jobb…

  • Agile/Scrum Mognadsgrad
  • Teamets välbefinnande

.

”You want the truth? You can’t handle the truth!”

Man får dock inte luras att tro att det finns egenvärde i något av ovanstående mätvärden! Eller än värre, ge sig i kast med att försöka sub-optimera med hänsyn till ett enskilt värde.

Alla former av suboptimeringar har en tendens att slå tillbaka och försök att belöna (eller bestraffa) team eller individer baserat på valfritt mätvärde riskerar sabotera projektet och kommer med tiden undergräva teamets effektivitet, moral och förmåga att bygga kvalitativ mjukvara.

Innan ni i ert projekt börjar föra statistik och historik fråga er varför ni mäter X, vilket problem hoppas ni kunna lösa och hur resultatet ska användas.

.

Detta är del 1 av 6. Läs vidare:

Om att mäta det agila projektets framgång (1/6) – Introduktion

Om att mäta det agila projektets framgång (2/6) – Resultat

Om att mäta det agila projektets framgång (3/6) – Produktivitet

Om att mäta det agila projektets framgång (4/6) – Kvalitet

Om att mäta det agila projektets framgång (5/6) – Teamets nivå

Om att mäta det agila projektets framgång (6/6) – Agera på kunskap

(Länkarna uppdateras allteftersom artiklarna publiseras.)

h1

Japan ♥ Lean & Agile?

torsdag, 27 maj, 2010

För några dagar sedan kom jag och min flickvän hem från en nästan två veckor lång visit till Japan.  Även om det var semester (och en riktigt bra sådan) kunde jag inte låta bli att reflektera över hur Lean och Agile passar ihop med den japanska kulturen och mentaliteten.

Fram tills nyligen trodde jag Leans hemland också kryllade av it-projekt som framgångsrikt kör Scrum eller andra agila utvecklingsmetoder. Men icke. Nyligen lärde jag mig att till och med Toytoa kör vattenfall på sin utvecklingsavdelning och efter att lärt känna Japan close-up så förstår jag att även om Lean fungerar perfekt i den japanska kulturen och mentaliteten så innehåller det agila manifestet och de agila principerna värderingar och utmaningar som för en japan kan ses som obegripliga, paradoxala eller till och med kanske förolämpande.

.

Ett välkänd japans ordspråk lyder ”Protect the Rules!”. Fundera över det en liten stund. Detta går helt stick i stäv med det agila manifestets ”Individuals and Interaction over Process and Tools”.

Individualism och självfötroende är skällsord. De äldre och dina ledarna är visare och utövar vist sin klokhet och makt. Ta inga initiativ själv utan att vänta på att ledaren i detalj beskriver uppgiften. Knappast en bra gryta för att koka ihop ett tight och kreativt team som upplever ”empowerment” och ”collective ownership”.

Vidare – precis som i Sverige, fast ännu mera, älskar man skyltar, områdeskartor, varningar och hänvisningar. Skulle du inte förstå skyltningen i tunnelbanan, gå vilse och sedan gå till kundtjänst och muttra på att det är svårt att hitta så kommer du självklart få fantastiskt artig och hövlig hjälp (på knacklig engelska). Vad du däremot inte får veta är huruvida personen som designade skyltningen och hänvisningarna kanske säger upp sig själv i skam över att han misslyckats att hjälpa dig hitta rätt. Detta sätt att se på ansvar och misslyckanden är inte något som uppmanar till kreativitet, mod eller viljan att ta initiativ.

Lean å andra sidan passar som fisken i handsken. Om man naivt och fördomsfullt tillåter sig förenkla kan man beskriva vissa aspekter av det japanska samhället som en effektiv och organiserad myrstack. Ingen är viktigare än någon annan och allt man gör är för kollektivets bästa. I fabriken ”myrstacken” är Lean (Toyota Production System) ett fantastiskt verktyg för effektivisering och förbättring, ett redskap som metodiskt och empiriskt analyserar och sedan formar om processen. Man behöver inte vara kreativ, blotta sina subjektiv åsikter eller ta initiativ för att applicera Lean, bara kunskap och analytisk förmåga krävs.

Japan har 0% arbetslöshet. ”Optimize the whole!”. Alla tar sitt jobb på största allvar och känner stor stolthet. Man jobbar långa dagar. Men vad man gör under timmarna på kontoret eller, om ett arbete går att göra mera effektivt, är nödvändigtvis inte alls lika intressant.

.

I Sverige har vi inga problem att klumpa ihop Agile och Lean. Vi ser massor med paralleller och likheter och för oss faller det sig naturligt att sträva efter båda värdegrunderna när vi formar vår utvecklingsprocess.

Utöver dessa reflektioner tog jag självklart med mig hem ett ton av andra intryck och upplevelser men dessa berättas någon annan gång, någon annan stans 🙂

.

PS. Jag ber om ursäkt i förväg om jag förargat någon med mitt naiva raljerande och smått fördomsfulla förenkling av det japanska samhället. Läs inlägget ovan med glimten i ögat och som en betraktelse som kanske berättar mer om mig själv än någon annan. DS.

h1

Tur & Retur till Japan

tisdag, 25 maj, 2010

.

Betraktelser rörande Japan, Japaner, Svenskar, Lean och Agile kommer inom några dagar… Idag tänker jag enbart njuta av att vara hemma i egna lägenheten.

h1

Agila Sverige 2010 över för denna gång

onsdag, 12 maj, 2010

Nu är Agila Sverige 2010 över för denna gång. Jag hade tyvärr inte själv möjlighet att delta men jag har följt eventet över Twitter och kommer fråga ut mina vänner som faktiskt var där hur de hade det, samt hålla utkik efter presentationer, filmer och material som läggs upp i efterhand.

Tyngdpunkten låg (som brukligt) på blixttal och OpenSpace. Har tyvärr inte kommit över något material rörande OpenSpace diskussionerna ännu men här hittar du summeringar över de två dagarnas blixttal.

Nästa år tänker jag verkligen se till att ha kalendern fri!

.

Summering Dag 1:
http://www.highlevelbits.com/2010/05/agila-sverige-reflections.html

Summering Dag 2:
http://www.highlevelbits.com/2010/05/agila-sverige-day-2-refelections.html

Vill du i efterhand läsa twitter strömmen så klicka här:
http://twitter.com/#search?q=%23agilasverige

.

Uppdatering 2010-05-12 kl 17:24

Läs Peter Antmans summering här: http://www.antman.se/archives/75

h1

Teknisk Skuld är mera än bara ful-kod

måndag, 10 maj, 2010

Medvetenheten kring Teknisk Skuld och dess betydelse för ett projekts agilitet sprider sig till snabbt. Detta är såklart en önskvärd trend, och troligen en livsavgörande insikt för vissa företag. Men om du förringar Teknisk Skuld till att enbart handla om kodens kvalitet så lurar du dig själv och risken blir stor att du kommer att ta beslut på felaktiga grunder.

Jag brukar påstå att Teknisk Skuld är den största fienden mot ett agilit projekt, dvs. förmågan att varje sprint ta sig an nya krav, lika många som förra sprinten, och känna tillit till att det man nyss levererat uppfyller DONE kriterierna och är av hög kvalitet. Ju högre Teknisk Skuld, desto dyrare att förändra och bygga vidare på koden och underhålla produkten.

Teknisk Skuld är ryggsäcken av ogjort, slarvigt eller dåligt utfört arbete, en ryggsäck vars tyngd gör att utvecklingen av en produkt går allt långsammare. Teknisk Skuld kan introduceras oavsiktligt (arkitekturen visade sig vara fel och svår att skala, den överarbetade programmeraren introducerar många buggar pga slarv), eller avsiktlig (genvägar tas och delar av arbete, såsom t.ex. dokumentation och test, skjuts upp för att hinna klart med releasen).

Oavsett orsak och härkomst så är teknisk skuld som ett kreditkort, förr eller senare måste du betala tillbaka din skuld om du vill göra nya stora inköp med kortet. Betalar du inte tillbaka utan väljer att ta ett sms-lån för att finansiera nästa utbyggnad sitter du snart fast i ränte-fällan.

.

Teknisk Skuld kan grupperas i följande kategorier:

Programmerings skuld
Dålig kod kvalitet. Slarvigt skriven. Samma kod förekommer på flera ställen. Skör kod (dvs. svår att ändra på utan att något går sönder). Obegriplig för någon annan än utvecklaren själv. Krånglig och besvärlig att bygga vidare på.

Design skuld
Dålig eller ingen design. Stel arkitektur. Avsaknad av (eller felaktigt skurna) lager. En snårskog av klasser och moduler. Det är enklare att bygga den nya funktionen som ett plåster utanpå istället för att utnyttja arkitekturen som tänkt.

Test skuld
Delar av systemet har inte testats, testats dåligt eller på fel sätt. Okänd testtäckning. Fallerar ett gammalt automatiserat test är det svårt att veta om testet är fel eller om koden gömmer en defekt.

Kunskapsskuld – Det finns isolerad och odokumenterad kunskap. Kod är svår att förstå pga av avsaknad av kommentarer. Samma fel upprepas pga att lessons learned inte sprids. Isolerad kunskap skapar resurs-flaskhalsar. Nya teammedlemmar har svårt att komma upp till ett produktivt tempo. Förvaltning står handfallen när något går galet pga avsaknad av rätt teknisk dokumentation.

.

Farliga och fördummande förenklingar

Dessvärre verkar vissa ”agila experter” enbart rikta in sig på kod-aspekten av teknisk skuld. En farlig och fördummande förenkling. Vissa försöker till och med göra pengar på detta. Bara för att programmeringsskulden är enklare att mäta (med hjälp av olika  analytiska verktyg) än de andra aspekterna betyder det inte att man får glömma bort test-, design- och kunskapsskulden, aspekter som tillsammans kan gömma betydligt högre kostnader än programmeringsskulden.

För att ta ett exempel; ”The Agile Executive” är en blogg jag följer. Den tar bland annat upp teknisk skuld från en mängd olika och spännande vinklar och har skrivit en radda mycket bra artiklar om ämnet. Grytan bubblade dock över för mig när de häromdagen annonserade ut och hyllade Cutter Consortiums nya tjänst, ”New service boils down technical debt to $$; ties it to cost and value”, i en artikel. Tjänsten fokuserar enbart kring kodens kvalitet och genom att förenkla ner detta till några mätetal extraherar Cutter sedan priset på den tekniska skulden i pengar eller man-dagar.

Här är ett annat exempel på när den tekniska skulden reduceras till kod-kvalitet:
http://www.infoq.com/news/2010/03/monetizing-technical-debt

.

Nödvändiga förenklingar?

Missförstå mig dock rätt, jag tycker det är en vacker och eftersträvansvärde tanke att kunna åskådliggöra teknisk skuld med ett konkret pris. Kanske t.o.m. nödvändig för att få förståelse och mandat från Produktägare och beställare för att adressera och förebygga tillväxten av Teknisk Skuld.

Jag anser dock att förenkla det till några enstaka kod-tekniska faktorer är dock farligt förenklande, till snudd på fördummande, och svaret blir inget annat än en delmängd av sanningen.

h1

Ligger KY-utbildningarna före högskolan?

tisdag, 4 maj, 2010

Igår hittade jag några bloggar från studenter på en KY-utbildning som studerade och praktiserar Scrum i sina projektarbeten. Men varför verkar högskolor och universitet ignorera den revolution som pågår i sverige och i mjukvaru- utvecklingsbranchen?

Jag tror att alla företag förr eller senare kommer tvingas bemästra agila utvecklingsmetoder och styra mot en lean organisation. Desto hårdare konkurrens desto tidigare kommer det ske (eller så dukar de långsamt under). Att det inte finns fler universitets- eller högskoleutbildningar som lyfter fram agila utvecklingsmetoder idag handlar antingen om okunskap eller att de inte förstått att de konkurrerar med KY-utbildningarna runtom i landet.

Vidare, jag känner flera nyutexaminerade kollegor i branschen som nyligen tagit språnget ut i yrkeslivet. Under utbildningen har de lärt sig klassisk projektstyrning och ett visst sätt att angripa planering och utveckling (och med lite tur också hört ordet ”test”). Nu ”tvingas” de ut i projekt och företag som lever enligt agiles och leans principer och värderingar, varav vissa går rakt emot all rim och fason de lärt sig under sin fleråriga utbildning.

Även om detta säkert en spännande resa (och troligtvis också lite förvirrande och frustrerande) för dem tycker jag ändå det är mycket underligt att högskolor och universitet inte gör mera för att förbereda dem inför den rådande verkligheten.

Sedan är det i och för sig inte så underligt att KY utbildningen som lär ut Scrum är just ”Projektledning med inriktning spel” då Scrum nästan är standard inom spelindustrin. Tv- och dataspelsindustrin är som bekant extremt konkurransutsatt och omsätter dessutom lika mycket pengar (om inte mera) som film och musik. Spel måste träffa hårda deadlines och kunden (dvs. spelarna) är extrema kritiker och har ett stort utbud av andra tillgängliga spel. Inte konstigt att man har anpassat sig för att snabbt kunna möta och matcha marknades förväntningar och snabba svängningar.

.

KY-Utbildningar

Läs mer om AcadeMedia Masters KY-utbildning Projektledning med inriktning spel (2 årig), eller få en inblick i hur studenterna på utbildningen har det genom att t.ex läsa Jonas Tolfs eller Finn Lydänges bloggar.

Ett annat exempel på KY-utbildning är Agile Developer, Webb-& systemutveckling (2 årig,  Stockholm och Göteborg)

.

Högskola/Universitet

En snabb sökning avslöjar att det några kurser:

  1. Informatik B, systemutvecklingsprojekt med SCRUM och eXtreme Programming (Örebro)
  2. Agile development processes (Chalmers tekniska högskola och Göteborgs universitet)

.

PS. Finns det fler kurser därute så tipsa mig gärna så kompletterar jag ovanstående sammanställning. DS

h1

Agila verktyg i min Android

onsdag, 14 april, 2010

Har upptäckt att det finns en hel del små fiffiga appar på min Android som kan vara bra att ha till hands för utvecklarna i det agila teamet och den gadget-glade Scrum Mastern. (Jag är säker på att samma appar eller motsvarande går att hitta till iPhone också.)

När jag började skriva detta inlägg tänkte jag ta upp alla appar jag hittat hittills men då hade inlägget återigen blivit på tok för långt så därför fokuserar jag denna gång på några time-managment appar.

.

Pomodoro timers

Har precis börjat studera Pomodoro och praktiserar det faktiskt just nu! Därför blev jag glad när jag upptäckte en radda appar för ändamålet. Pomodoro går kort och gott ut på att man gör en To Do lista för dagen, angriper den punkt man tycker är viktigast, vrider upp timern på 25 minuter, jobbar oavbrutet och fokuserat på vald uppgift tills klockan ringer, tar en kort paus och väljer sedan den punkt i To Do listan som känns viktigast nu (eller så väljer man att fortsätta på uppgiften man höll på med om man inte blev klar). Jag föredrar dock alltid en riktig timer framför dessa appar men det är inte alltid man har en till hands och det är inte alltid folk runtomkring en uppskattar tickandet och ringandet.

Pomodroid
(Utvecklad av: Neto Marin)

En simpel timer man kan start och stoppa. Startar alltid om på 25 minuter (ej konfigurerbart). När man klickar på skärmen startar timern och tomaten blir röd. När 25 minuter har gått ringer och vibrerar telefonen. Kort och gott. Gillar appen för dess renhet och enkelhet.

.

Pomodoro Tasks
(Utvecklad av: Kavan Puranik)

Denna Pomodoro app är lite mer avancerad. Du sätter upp din To Do lista innan du startar timern för en vald uppgift. Listan kan sorteras om, tasks stryks enkelt med en fingerdragning och lite andra funktioner finns.

Även om det är en fin idé så faller appen också lite på just dess utbud av funktioner, det finns helt enkelt inte stöd för allt man vill göra (som t.ex. anteckna hur många pomodoros en uppgift tog m.m.). Känner själv att verktyget begränsar mer än hjälper.

.

Meeting Time Tracker
(Utvecklad av: Espinassous Etienne)

Ett enkelt verktyg i första hand designat för Scrum Mastern eller mötesordföranden för att se till att möten inte överskrider Time-boxningen.

Du stället helt enkelt in hur långt mötet är och startar timern. Utöver att skriva ut tiden visar den även hur status på hur långt det är kvar; hälften, 15 minuter, 10 minuter och 5 minuter. (Planerar att använda själv den på fredag när det är dags för nästa seminarie för att enkelt hålla koll på om jag hinner med dom slides jag tänkt mig innan nästa paus.)

h1

OpenAgile – Scrum för icke-IT

måndag, 12 april, 2010

Sprang nyligen på OpenAgile när jag klickade mig fram igenom bloggartiklar om Scrum och Agila utvecklingsmetoder. Att det fångade mitt intresse tror jag beror på att OpenAgile är en agil utvecklingsprocess anpassad och designad för att vara tillämpar på ett bredare spektra än enbart mjukvaruutveckling.

Jag har tidigare jobbat som projektledare i stora ideella projekt där man inte har lyxen att kunna säga ”Gör ditt jobb annars får du ingen lön!” utan allt handlade om frivilligt engagemang, motivation, ansvarskänslaoch att det skulle vara roligt att jobba. OpenAgile hade nog fungerat riktigt bra där.

Vidare så är det svårt att tillämpa Scrum utanför mjukvaruutvecklingsprojekt. Man kanske inte har resurser på heltid i ett team, det är kanske omöjligt att hålla korta sprintar i verksamhetsprojekt, involverade personer variera kraftigt eller förändras mycket med tiden, för att nämna några exempel. OpenAgile försöker lösa även dessa bekymmer.

Jag tror nog att OpenAgile kan fungera bra för vissa organisatoner som har en lös struktur eller för projekt som inte har strikta deadlines i tiden. Den har några intressanta vinklingar (beskriver t.ex. fler roller än Scrum även om bara en av dem är obligatorisk), den är betydligt lättviktigare än Scrum, fokuserar hårt på teamet och teamanda, tillåter avbrott i arbetet.

Det som jag finner mest spännande och roligast är dock kanske att detta är just en variant av Scrum som (förhoppningsvis) fungerar fint i alla sammanhang och miljöer. 🙂

.

OpenAgile in a nutshell

OpenAgile är en Agil utvecklingsprocess som fokuserar på att leverera värde. Till skillnad från Scrum som ägs av Scrum Alliance så är OpenAgile open source och under utveckling (av naturliga skäl eftersom det är open source men jag tror det också beror på att det väldigt nytt också).

I korthet så fungerar det så här: Teamet (det finns bara en obligatorisk roll, nämligen team-medlemmen) jobbar i cykler (iteration). Under en cykel träffas man minst fyra gånger för ett Progress Meeting för att diskutera hur det går, vad man lärt sig och vilka tasks man ska göra härnäst, dvs. under nästa Work Period (som kan vara allt ifrån några timmar till flera veckor). Alla väljer på frivillig basis vilka och hur många tasks.

En cykel inleds med tre möten:

  • Reflection (Vad hände förra cykeln? Vilka blev resultaten?),
  • Learning (Vad lärde vi oss? Vilka nya principer har vi identifierat? Vilka nya färdigheter har vi utvecklat?) oc
  • Planning (Vad ska vi göra denna cykel? Vilka tasks krävs för att leverera uppsatta mål?).

OpenAgile säger inget om hur korta (eller långa) cykler ska vara, bara att man ska ha några stycken innan slutmålet är nått.

OpenAgile lutar sig på tre grundvärderingar:

  • Ärlighet (dvs. ljug inte, fuska inte, lär från dina misstag),
  • Rådgivande beslutsprocess (dvs. alla ska delta och bidra i beslutfattandet och vara eniga om beslutet) och
  • Läro-cykeln (smått förenklat: 1) Reflect, 2) Learning, 3) Planning och 4) ActionI denna process ska vi vara objektiva, kunskapssökande, tycka om det vi gör och vara modiga).

Det verkar som om OpenAgile visat sig vara extra populär just i idéella projekt som inte har med IT att göra. För lite bättre, korrektare och längre förklaringar av OpenAgile kika gärna på länkarna under illustrationerna.

.


.

Jämförelse av OpenAgile och Scrum:
http://www.agileadvice.com/2010/02/01/uncategorized/comparison-of-openagile-with-scrum/

En wiki för OpenAgile (under utveckling)
http://wiki.openagile.org

Enkel summerande presentation på 22 slides
http://www.slideshare.net/mberteig/introduction-to-the-openagile-learning-system

En sida med presentationer, use-case studies, m.m.
http://www.openagile.com/

OpenAgile Primer (PDF, 1.22MB)
http://www.openagile.com/sites/default/files/OpenAgile Primer.pdf

h1

Scrum myt #4: Zoomar man in är Scrum bara små, små vattenfall

onsdag, 31 mars, 2010

”Om man zoomar in tillräckligt mycket i Scrum, in i en sprint så är det ju bara små, små vattenfall. Inget nytt under solen.” FEL!

.
.
.

Scrum är inte små, små vattenfall.

Det grundläggande arbetssättet:
1) planera,
2) utföra,
3) kontrollera och
4) agera

dvs. att man tänker och planerar innan man handlar är inte synonymt med vattenfall.  Så gör man i alla situationer, oavsett uppgift.

.

Så, till skillnad från vattenfall så…

  • Levererar Scrum affärsvärde och ROI väldigt tidigt.
  • Scrums korta feedback cykler förändrar dagligen planen och planering.
  • Planering i Scrum fokuserar på att leverera affärsvärde (inte sprida ut arbetsuppgifter och deadlines i en kalender).
  • Scrum processen är själv-justerande och själv-förbättrande genom kontinuerlig utvärdering och granskning (i motsats till att ha en projektutvärdering i slutet).
  • Scrum välkomnar förändringar, till och med sent i processen, och detta är en naturlig del av processen.
  • Springer man in i bekymmer och tidsnöd så anpassar man i Scrum omfattningen (i motsats till att låta arbetsuppgifterna i planen skjutas framåt som ett tåg av dominobrickor).
  • I Scrum räknas inte framgång i antalet implementerade krav per deadline utan i levererat affärsvärde och kundnytta per sprint.
  • Levereras projektet enligt Scrum kan beställaren efter valfri* Sprint säga ”Nu är jag nöjd” (till skillnad från vattenfallsapproachen då allt eller inget levereras).
  • Scrum levererar potentiellt installerbar system/levererbar produkt varje sprint. Dvs. dokumentation, test, förvaltningsöverlämning etc. ska ske kontinuerligt (i stället för att komma som faser i slutet).

* Brasklapp. Det kan såklart dröja några sprintar innan man nått en minimal nivå av funktioner för att produkten ska gå att använda över huvud taget. Och ibland kanske det också krävs en stabiliserings- och Deploy sprint efter att beställaren ”är nöjd”.

.

Jag kan fortsätta rada upp skillnader. Jag hoppas dock i och med detta utbrott att det en gång för alla är vederlagt och fastslaget att det är stor skillnad mellan sekvensiell up-front planering/big-bang leverans (a la vattenfall) och agil planering/iterativ inkrementell leverans (Scrum). Fast att tro något sådant kanske vore nog naivt…