Agile Release Planning i Hybrid-och agila projekt

när du arbetar i ett agilt projekt eller syftar till att använda agila metoder kan agile release planning vara en kritisk teknik för IT – och produktcentrerade projekt. Agile release planning är listad som en schemaläggningsteknik i PMBOK (PMI: s Project Management Body of Knowledge). Det är därför också relevant för Project Management Professional (PMP) certifiering.

även om denna metod inte nödvändigtvis är ett krav i alla äkta agila tillvägagångssätt, är det ett bra verktyg för release-driven agile och hybridprojekt. Detta beror på att smidig release planering kan överbrygga klyftan mellan mer traditionell projektplanering och smidig eller iterativ produktutveckling.

läs vidare för att lära dig mer om denna teknik.

Hur Fungerar Releaser?

en utgåva består vanligtvis av en uppsättning funktioner eller programvarukomponenter som utvecklas och testas inom en viss tidsperiod. Vid utveckling och testning distribueras dessa funktioner på en gång som en del av utgåvan.

utgåvor kan innehålla funktioner och förbättringar av programvara samt delar och delar av större utvecklingsprojekt. Till exempel kan uppgraderingen av ett egenutvecklat eller Off-the-shelf-system delas upp i olika utgåvor för att säkerställa en smidig övergång, fortsatt drift och för att undvika riskerna med Big bang-migreringar.

Vad är en Release Plan?

utgivningsplanen är det dokument som anger omfattningen, tidslinjen och, i vissa organisationer, resurser och kostnader i samband med en utgåva.

en släppplan beskriver vilka systemkomponenter som utvecklas, testas och implementeras under en fast tid (ofta mellan 1 och 6 månader). Utgivningsplanen kan ses som en prioriterad lista över funktioner, liknande produktbackloggar i vissa smidiga ramar. Det kräver vanligtvis viss prioritering eftersom det ofta är så att inte alla systemkrav kan täckas av en enda utgåva. Detta gäller särskilt i mer komplexa organisations-och IT-miljöer.

förutom nyutvecklade funktioner eller produkter kan en release-plan också innehålla felfixningar och kritiska förbättringar eller ändringar av befintliga system.

Släppplaner ställs ofta in i förväg för ett par kommande utgåvor (t.ex. planer för 4 utgåvor inom 1 år). Detta möjliggör allokering av komponenter till en målutgåva baserat på funktionernas individuella prioritet, risk och kritik. Vanligtvis är planen för närmaste utgåva detaljerad medan planer för efterföljande utgåvor tenderar att vara grova. Dessa planer förfinas dock normalt och blir mer detaljerade när respektive utgåva kommer närmare. Detta kan jämföras med begreppet progressiv utarbetande i projektledning.

Släppplaner i traditionella och smidiga projekt

i traditionella IT-relaterade projekt är släppplaner en mycket vanlig teknik för att hantera mjukvaruutveckling och distribution.

vissa smidiga ramar använder också utgåvor och släppplaner. I Extreme Programming (XP), till exempel, en release består av flera iterationer som är kortare och lättare att hantera som leveranser delas upp i mindre delar av omfattningen av en release.

den generiska Scrum-metoden definierar å andra sidan sprints istället för iterationer och utgåvor som kan ta mellan 2 och 4 veckor. Därför innebär mjukvaruutveckling med Scrum inte nödvändigtvis releaser och release planering men det kan finnas Scrum releaser i praktiken (Läs mer nedan).

krav hanteras dock också i prioriterade listor: sprintbackloggen och produktbackloggen är sådana listor som dynamiskt prioriteras av produktägaren.

Vad är en Release Candidate i Agile?

en release candidate definieras vanligtvis som en mjukvaruversion eller en uppsättning funktioner som är funktionella men inte redo för marknadsföring, t.ex. för att slutföra testning och ta emot användaråterkoppling (källa).

i agile release planning kan en release candidate ofta hänvisa till en funktion som har utvecklats, är i grunden funktionell och håller på att testas inom en iteration. När det har testats fullständigt och alla fel har rättats, går det vidare för att inkluderas i den totala utgåvan.

om släppkandidater misslyckas i en iteration, görs deras felfixering och slutförande ofta i den efterföljande iterationen.

Vad är Agile Release Planning?

Agile release planning avser omfattning-och tidslinjeinställningen för ett iterativt eller inkrementellt produktutvecklingsprojekt. Det används i smidiga eller hybridprojekt där en medellång till långsiktig planering av produkt-eller systemutveckling eller integration krävs.

Agile release planning i samband med produktvision och färdplan, utgåvor och iterationer / iterationsplaner
översikt över Agile Release Planning.

Agile release planering ses ofta som processen att skapa den stora bilden som länkar produktvisionen och färdplanen till släppschemat och utgåvan till iterationer som i sin tur använder en iterationsplan som definierar funktioner och uppgifter på en mer detaljerad nivå.

termen nämns i PMI: s Project Management Body of Knowledge som en teknik under ’utveckla schema’ – processen (PMBOK brasilian, 6th ed, Kap. 6.5.2.8). Även om PMBOK tenderar att fokusera på de mer prediktiva och traditionella projektledningsmetoderna, introduceras denna teknik i PMI: s ramverk för att överväga iterationsbaserade agila projekt.

termen ’iteration-based agile’ definieras i PMI: s Agile Practice Guide (Kap. 5.2.6). Det handlar om initial (grov) planering av iterationer, som är delar av en release. När mer information är känd som möjliggör en mer exakt projektion, planerar agila team sina iterationer för att ta hänsyn till denna förfining. Detta kan också kräva justeringar av utgivningsplanen.

Hur används Agile Release Planning i praktiken?

Agile release planning kan tjäna ett antal syften, beroende på projektets tillvägagångssätt och organisatoriska krav

här är några exempel:

Release planering i agila projekt

i agila metoder och projekt som använder releaser och iterationer, release planering är en teknik för att genomföra produkten färdplan som härrör från produkt vision. Produktplanen innehåller kraven på hög nivå uppdelade i Utgåvor.

utgivningsplanen anger antalet iterationer inom en utgåva. På en mer detaljerad nivå definierar iterationsplanen de funktioner som ska utvecklas inom en release.

medan utgåvor och släppplaner har ett Mellan – till långsiktigt perspektiv är iterationer mycket kortare och därför smalare när det gäller omfattning. Detta underlättar smidig utveckling och i synnerhet bearbetning av feedback och kortsiktiga förändringar av krav och funktioner.

se nedanstående grafik för ett exempel på hur release planering sker i agila ramar som XP.

Extreme Programming Project flödesschema
exempel på Release och Iteration planering i XP (källa & kredit: extremeprogramming.org).

planeringen av smidiga utgåvor kan göras manuellt eller med hjälp av projekthanteringsprogramvara. Lucidchart publicerade till exempel en guide för att utveckla en smidig release-plan med hjälp av deras programvara.

Release Planning i Hybridprojekt

förutom den ovan nämnda länken mellan produktfärdplan och iterationer kan agila release-planer också hjälpa till att integrera agila utvecklingsprojekt i en release-orienterad organisation eller arkitektur.

Central release management och organisationsplaneringskrav är kopplade till iterationer och smidig produktutveckling genom tekniken för agile release planning
Illustration av hur agile release planning kan användas för att överbrygga klyftan mellan organisatoriska release planning krav och agile produktutveckling.

till exempel kan ett kundinriktat system utvecklas med hjälp av smidiga metoder. Detta system skulle dock behöva integreras i företagets komplexa IT-arkitektur, även med gränssnitt till andra system. Således skulle utvecklingen och utbyggnaden av det kundinriktade systemet nödvändigtvis vara föremål för organisationens centrala utgivningsplanering.

i sådana fall kan tekniken för agile release planning länka organisationens utgåvor till de iterationer och funktioner som utvecklas i ett agile (sub)projekt.

Vad är en smidig Release Plan i Scrum?

en release-plan i Scrum representerar allokeringen av objekt i en produktbacklog (listan över funktioner och krav för en produkt) till utgåvor. Dessa funktioner utvecklas sedan i sprints.

i linje med Scrum: s värderingar och principer är en utgivningsplan avsedd att vara en riktlinje och ett levande dokument som uppdateras dynamiskt när saker förändras eller ny information blir känd.

en scrum release-plan kräver en prioriterad och uppskattad produktbacklog, teamets hastighetsindikator och ’condition of satisfaction’ (eller definition av klar) som omfattar målet för produktutvecklingen.

baserat på ansträngningsuppskattningarna för funktioner (mängden arbete som behövs) och lagets hastighet (teamets produktivitet) kan funktioner tilldelas olika utgåvor och sprintar.

Vad är skillnaden mellan utgåvor, iterationer och Sprints?

utgåvor avser schemalagd utveckling och distribution av programvarufunktioner eller ändringar under en typisk period på 1 till 3 (eller ännu mer) månader. I smidiga, iterativa och vissa hybridprojekt delas utgåvorna upp i flera iterationer som har en mindre omfattning och en kortare tidsram, ofta mellan 1 eller 2 veckor och 1 månad. I vissa smidiga ramar som Scrum kallas iterationer också sprints.

hur lång är en Sprint i Agile / Scrum?

en sprint i Scrum är vanligtvis 2 veckor till 1 månad lång. Det kan dock också vara kortare eller längre om detta bedöms lämpligare för utvecklingsprojektet.

slutsats

oavsett om du arbetar som projektledare eller produktägare i ett agilt, iterativt eller hybridprojekt eller om du förbereder dig för din PMP – examen är förståelse för agile release planning nyckeln för att möjliggöra agile eller iterationsbaserad utveckling i kombination med medellång till långsiktig release och projektplanering. Läs våra artiklar om de andra schemahanteringsteknikerna om du vill lära dig mer om att utveckla och hantera projektscheman.

tack vare den smidiga utgivningsplanen kan en omfattning, med förbehåll för ytterligare förfining, och en tidslinje anges några månader i förväg. Samtidigt kan agila utvecklingsteam behålla sin frihet att planera och regelbundet planera om den exakta omfattningen av varje iteration. I viss utsträckning är agil release planning en teknik som gör det möjligt för projektledare och produktägare att kombinera fördelarna med både traditionell Projektledning (t.ex. medel-/långsiktig planering) och smidiga projektmetoder (t. ex. lyhördhet för förändring och feedback).

Lämna ett svar

Din e-postadress kommer inte publiceras.