Vad är ett bussnummer?

Termen ”bussnummer” används ibland av projektledare inom informationsteknologiområdet (IT) när de gör uppskattningar om stabiliteten hos teamet som arbetar med ett givet mjukvaruutvecklingsprojekt. Det hänvisar till antalet inblandade programmerare som skulle kunna bli påkörda av en buss utan att sätta projektet i allvarlig fara. Att uppskatta ett bussnummer är ett sätt att kvantifiera riskerna med ett projekt medan det befinner sig i ett sårbart tillstånd av utveckling.

Att skriva program för komplex programvara är ofta ett lagarbete. Många programmerare och systemingenjörer kan arbeta tillsammans för att utveckla de olika delsystemen och verktygen för en specifik mjukvara. Ofta arbetar dessa programmerare ensamma eller i små grupper på en viss aspekt av programmet. Allt eftersom projektet fortskrider blir programmerarna oumbärliga, eftersom ingen annan som arbetar med projektet lätt skulle kunna förstå och slutföra koden de har startat.

För att föreställa dig problemets komplexitet, föreställ dig omfattningen av att utveckla ett komplett operativsystem. Om ett enda team var ansvarigt för att utveckla varje enskilt verktyg för systemet skulle det ta år att slutföra projektet. Istället kan ett företag ha ett team som arbetar med nätverkskomponenter, ett annat med det grafiska gränssnittet och så vidare. I de flesta fall skulle dessa individuella team sällan samarbeta på något meningsfullt sätt; deras bidrag skulle bara kombineras när den slutliga produkten var klar att monteras.

Således fungerar varje lag i princip blindt. Eftersom de olika autonoma teamen har liten eller ingen kunskap om kodningsstrukturen eller programmeringsdesignen som används av de andra, blir varje enskilt team mer avgörande för resultatet av projektet. Om tillräckligt många av dessa gruppmedlemmar lämnar projektet – eller blir påkörda av en buss – kan det döma hela projektet till allvarliga bakslag eller till och med misslyckande. Genom att uppskatta bussnumret för ett visst projekt kan ledningen veta hur säkert projektet är, och fastställer hur kostnadseffektiv en viss programmerare är för projektet.

Målet med ledningen är att organisera strukturen i ett projekt för att maximera bussantalet och på så sätt minimera risken. Programmering i team hjälper till att öka bussnumret, eftersom varje person i teamet kan utveckla tillräckligt med förståelse för det övergripande systemet för att fortsätta med projektet om något händer med några av programmerarna. Kodgranskning ger en annan metod för att öka bussnumret: team kan studera och analysera koden som skrivits av andra som arbetar med projektet och sprida kunskap om systemet. En sista metod för att öka bussnumret är att använda dokumentation genom att lämna kommentarer i själva koden, förklara hur och varför koden fungerar och vad programmerarnas avsikter och metodik är. I allmänhet kommer alla tekniker som används för att diversifiera kunskapen om programmeringskodbasen att öka det teoretiska bussnumret, vilket ökar säkerheten för projektet.