Om en organisation ska ansvara för ett objekt, oavsett om det är ett hus, ett tåg eller en IT-tjänst så krävs det en detaljerad kunskap om objektet och en fullständig kontroll på objektets ingående delar.
Release management-processen är IT-organisationens sätt att skaffa sig kunskap om och kontrollera beståndsdelarna i de objekt som den ska ansvara för. Processen är organisationens chans att lära känna objektet, utveckla kunskap, dokumentera rutiner och testa funktionaliteten innan objektet går i skarp leverans till verksamheten. Att hoppa över detta steg innebär i värsta fall att IT-organisationen ansvarar för drift och underhåll av objekt som den inte har tillräcklig kunskap om.
Syfte
Huvudsyftet med release management-processen är att etablera förändringar i IT-miljön utan att störa den befintliga produktionen av IT-tjänster samt att säkerställa effektiv hantering av nya tjänster i samband med överlämningen till driftsfasen.
Detta sker genom att i alla driftsättningar säkerställa att:
- Releaseplaner utarbetas tillsammans med intressenter
- Utveckla och testa releasepaket så att de fungerar ihop med övriga IT-miljön
- Förändringen motsvarar kraven på tillgänglighet och funktionalitet
- Kunskap utvecklas och dokumenteras
- Driftsättning sker enligt plan och gällande rutiner
- Avvikelser som uppkommer dokumenteras och hanteras
- Redan driftsatta tjänster störs så lite som möjligt
Omfattning
Releaseprocessen omfattar samtliga resurser som krävs för att bygga, testa, paketera och etablera en release i produktionsmiljön samt för att säkerställa alla delar som specificerats i designpaketet före överlämningen till IT-drift. Exempel på vad som kan ingå är:
- Fysiska eller virtuella resurser som servrar, nätverksutrustning och databaser
- Applikationer och annan mjukvara
- Utbildning av medarbetare eller användare
- Rutiner och processer
- Överenskommelser med verksamheten och avtal med leverantörer
Värde för verksamheten
Release management-processen tillför ett värde till verksamheten genom att:
- Förändringar etableras snabbare, billigare och med mindre risk
- Det tar kortare tid för nya tjänster att nå de operativa målen i verksamheten
Den reglerade etableringsprocessen underlättar spårbarhet
Releaseplan
En releaseplan ska normalt upprättas för varje förändring och omfattar hela flödet från utveckling och test till driftsättning och godkännande. För att underlätta vid större projekt och förvaltning av applikationer så upprättas en releaseplan som motsvarar hela projektet eller förvaltningsplanen för den specifika applikationen. Överlämningsfasen kan på det viset stödja metoder som till exempel agil utveckling utan att tillföra onödig administration för varje delrelease.
Vid till exempel applikationsutveckling så skrivs det inom ramen för utvecklingsprojektet en plan som godkänns och finansieras av beställaren. Därefter registreras ett förändringsärende i change management-processen för hela projektplanen och en releaseplan skrivs för hela projektet. Varje delrelease i projektet hanteras sedan som separata driftsättningar.
Releaseenhet
En releaseenhet är releasens minsta beståndsdel. Det kan vara en server, en applikation eller en uppdatering av en applikation. Ett exempel på en releaseenhet är en sprintrelease från applikationsutveckling, men det kan även vara en komplett virtuell server. Omfattningen på en release är olika från gång till gång. Därför bör releaseplanen innehålla vilka releaseenheter som ingår i den specifika releasen.
Releasepaket
De releaseenheter som byggs för att driftsättas tillsammans sätts ihop i ett releasepaket. Det kan till exempel vara en kombination av hård- och mjukvara som måste förändras samtidigt eller dokumentation och utbildning som komplement till en ny applikation.
Release
En release är den övergripande benämningen på det som testas och driftsätts i IT-miljön vid samma tidpunkt. En release kan bestå av ett enda releasepaket eller flera olika releasepaket som inte har något direkt beroende av varandra.
Servicefönster
I överenskommelserna med verksamheten kan IT-organisationen peka ut ett antal förutbestämda datum där planerade förändringar genomförs. Detta underlättar den interna planeringen samtidigt som det reglerar förväntansnivån under dessa dagar hos verksamheten. Varje servicefönster hanteras som en release och har en specifik releaseplan för varje tillfälle.
Releasemodell
För återkommande releaser av liknande typ kan en releasemodell skapas. Den beskriver stegen genom release management och fungerar som en mall för en releaseplan. IT-organisationer med många system som uppdateras ofta kan med fördel skapa en releasemodell som används av samtliga förvaltningsgrupper.
Modellen kan även användas av leverantörer i syfte att göra samarbetet snabbare och underlätta planeringen. Modellen innehåller:
- Övergripande struktur för en release
- Start- och avslutskriterier
- Miljöer för utveckling och test
- Roller och ansvar för ingående komponenter
- Informationsmodell
- Versionshantering
- Mallar för förändringsschema
- Rutiner och verktyg för dokumentationsaktiviteter
Aktivities
Det finns fyra huvudaktiviteter i release management-processen:
- Planera – Ta fram en releaseplan för hela releasen
- Utveckla och testa – Releasepaketet byggs och görs redo för driftsättning
- Driftsätta – Releasepaketet driftsätts i produktionsmiljön
- Utvärdera och stäng – Erfarenhet sammanställs och utvärderas för framtida förbättringsförslag
Planera
Omfattningen av planeringen beror på storleken och komplexiteten i den release som ska etableras i IT-miljön. Releaseplaneringen är en del av den övergripande överlämningsfasen där change control board (CCB) godkänner eller avslår releaseplanen. Vid större förändringar sker detta i projektform och projektets styrgrupp godkänner releaseplanen som en del av projektet. För releaser som omfattar utveckling av mjukvara används med fördel IT-organisationens utvecklingsmodell för detta steg.
Planen ska minst innehålla:
- Omfattning
- Aktiviteter
- Namn och kontaktuppgifter till dem som ska funktionstesta och godkänna de olika stegen
- Handläggare/tekniker som ansvarar för releasen
- Tidplan
- Kostnad
För större releaser finns vanligtvis ett komplett designpaket att utgå ifrån, utöver detta ska planen även innehålla:
- Etableringsplan – En övergripande planering av driftsättningen som bland annat innehåller information om användare, fysiska platser som berörs av installationen, dokumentation, utbildning m.m.
- Pass/fail-kriterier – Varje steg i processen ska ha definierade kriterier för att gå vidare eller inte
- Utvecklings- och testplaner – Behövs för att beskriva stegen och metoden för utvecklingsarbetet samt för att säkerställa test av funktionsförmåga och verksamhetsnytta utifrån de mål som satts i designfasen
- Utvecklings- och testmiljö – En kontrollerad miljö som är separerad från produktionsmiljön
- Planering av releasepaket – Innehåll, struktur och installationssekvens
- Pilot – En grupp eller avdelning som testar den slutliga releasen i syfte att undersöka etableringsaktiviteter och funktionsförmågan i den nya eller förändrade tjänsten
Finansiering – En budget för hela releasen ska upprättas
Utveckling och Test
Utveckling och test innehåller följande delmoment:
- Dokumenterade rutiner – Ett utvecklingsprojekt ska enkelt kunna hitta och använda rutiner som beskriver hur de kommer åt interna resurser och komponenter från externa leverantörer
- Releasepaket – Dokumenterade och standardiserade rutiner ska finnas som säkerställer kvaliteten och återanvändningen i konstruktionen av releasepaket
- Etablera utvecklings- och testmiljö – Möjligheten att enkelt kunna sätta upp nya kontrollerade testmiljöer är en framgångsfaktor i release management-processen
- Funktionstest och pilot – Under hela utvecklingsfasen testas funktioner löpande för att säkerställa att utvecklingen går åt rätt håll. Det avslutas med en pilot där funktionsförmågan testas av en begränsad grupp i verksamheten
- Tjänstesimulering – För nya tjänster kan en simulering göras där målet är att testa alla de för verksamheten värdeskapande aktiviteterna i tjänsten i en så realistisk miljö som möjligt
Etablering
Etablering innehåller följande delmoment:
- Planera för etablering – Aktiviteten förbereder verksamheten och berörda delar av IT-organisationen för etableringen
- Utvärdering av målgruppen – Om det är en större release ska målgruppen för etableringen i verksamheten utvärderas löpande under hela utrullningen. Resultatet av utvärderingen ligger till grund för förbättringar av den detaljerade installationsplanen
- Detaljerad installationsplan – Detaljplanering av driftsättningen med aktiviteter och resurser. Här identifieras även eventuella risker i samband med driftsättningen
- Early life support – Releaseprocessen ansvarar för nya tjänster fram till dess att IT-driften godkänt förändringen i change management-processen.
Utvärdering och stängning
Under utvärderingen kontrolleras följande:
- Var kunskapsöverföringen och utbildningen tillräcklig?
- Är all återkoppling från användare dokumenterad?
- Är alla kända fel och temporära lösningar dokumenterade?
- Har vi uppnått villkoren för godkännande?
- Är förändringen klar för att överlämnas till IT-driften?
- Finns det något i release management-processen som behöver förbättras?
Dokumentation
Följande dokumentation ska finnas inom ramen för release management:
- Releasepolicy
- Releaseplaner
- Etableringsplaner
- Utvecklingsplaner
- Testplaner
- Rutiner för testmiljö
- Rutiner för driftsättning
Relationer till övriga processer och funktioner
Release management-processen har kopplingar till många andra processer. Här listas de vanligaste:
Trigger
Första delen av release management-processen triggas genom att en förändring godkänns för planering, utveckling och test. Den andra delen av processen triggas genom att en release godkänns för driftsättning.
Input
Följande Input behövs för processen:
- Godkänt förändringsärende
- Designpaket
- IT-policy inklusive riktlinjer för hårdvara och mjukvara
- Inköpsrutiner
- Dokumentation om nuvarande tjänster
- Releasemodeller
- Utvecklings- och testmiljö
- Metod för test
Output
Följande output genereras av processen:
- Nya, förändrade eller borttagna tjänster
- Uppdateringar av aktivitetsstatus till change management
- Uppdateringar av förändringsschemat till change management
- Information om förändringar till tjänstekatalogen
- Ny eller uppdaterad tjänstedokumentation
- Nya eller förändrade överenskommelser
- Paketerade och versionshanterade installationspaket
Mätning
Så här kan release management-processen mätas:
- Antal releaser som uppfyller förväntan på kostnad, tid och kvalitet
- Antal releaser som orsakar incidenter
- Antal releaser som inte godkänns av IT-driften vid överlämning
Utmaningar
Följande moment behöver särskild uppmärksamhet vid införande av processen:
- Att samordna release management- processen med övriga metoder som används för applikationsutveckling och förvaltning
- Att säkerställa att alla projekt och underleverantörer använder rutinerna för release management-processen
- Att förstå de risker som finns vid driftsättning
- Att underlätta en kultur där medarbetarna delar med sig av kunskaper i form av dokumentation