Configuration Management

Att kontrollera basen och innehållet i ett programvarusystem är en förutsättning för att bevara systemets värde och säkra möjligheten att kunna underhålla och vidareutveckla systemet, mao fortsätta kunna leverera värde

I programvaruprojekt skapas mycket information, allt från själva koden till specar och planer. Konfigurationsstyrning finns för att hålla reda på all denna info, samtidigt som det ger alla möjlighet att arbeta effektivt med rätt versioner och se till att alla delar passar ihop. Trots att alla i projekten är berörda av CM underskattas riskerna ofta man tar av inte styra upp denna process i tid.

Vad är det bra till?

En säkrad konfigurationsstyrning är en grundförutsättning för att få ut förväntat värde från sina programvaruinvesteringar. Väl anpassade CM-rutiner och verktyg skapar förutsättning för att utveckla mjukvara på ett effektivt och lättrörligt sätt och ändå säkra att man får ett system som som går att förvalta och som därmed kan ge vinster på längre sikt.

Utmaningar

Nyckeln för att lyckas med CM hänger oftast på att anpassa verktyg och rutiner så att de på ett så flexibelt och ”smärtfritt” sätt som möjligt ger tillräcklig säkerhet och kontroll. Detta underlättar arbetet med att skapa motivation för CM i organistationen, vilket är grunden för att skapa en solid lösning, dvs en lösning som fungerar även när ”trycket ökar”.  För CM-hanteringen måste fungera i alla lägen för att fungera alls!

Vad är det?

Konfigurationsstyrning handlar i grunden om att säkra innehållet och tidplanen för en produktrelease i en föränderlig omgiving och att bevara systemets innehåll  och värden för eftervärden. Mer tekniskt kan området delas upp i konfigurationskontroll och ändringskontroll med stöd av statusrapportering och CM-audits. På CMs bord brukar även hamna relaterade uppgifter som spårbarhet, releashantering, granskning osv. Dessa kanske inte direkt hör till CM, men de behlövs för att kunna genomföra konfigurationsstyrningen.

Var kommer det ifrån?

CM har ytterst sitt ursprung från tillverkningsindustrin, där det är mera naturligt att hålla reda på vilka plåtar, bultar, sladdar etc som skall till för att skapa en viss produkt, tex en viss utgåva av en bilmodell. För programvarusystem etablerades CM som disciplin av amerikanska försvaret och deras rymdprogram, som tidigt definierade en CM-standard.

Vår erfarenhet

Förbättrad CM är en säker investering som snabbt ger tydliga vinster, förutsatt att de är väl anpassade efter behov och förutsättningar.  CM måste vara en väl förankrad och integrerad del av teamets/projektets arbete för att fungera. Brist på en utbredd CM-förståelse och en alltför ”självständig” CM-funktion är två vanliga anledningar till bristande kontroll och till att CM blir motverkande istället för stödjande.

Läs mera

http://www2.computer.org/portal/web/swebok/html/ch7#Ref1 http://www.cmcrossroads.com/