Vad är en programvarukris?
En mjukvarukris är ett missförhållande mellan vad programvaran kan leverera och kapaciteten för datorsystem, liksom förväntningarna från deras användare. Detta blev ett växande problem under 1900-talet eftersom databehandlingen växte med steg och gränser och programvara inte kunde hålla jämna steg. När systemens komplexitet växer, gör också användarnas behov, som förväntar sig mer prestanda från deras programvara. Programmerare kan kämpa för att hålla jämna steg och skapa en mjukvarukris.
Konsumentprogramvara går vanligtvis genom en långsam serie utvecklingsfaser, men utgör en liten del av affärsvolymen i branschen. Huvuddelen av mjukvaruutvecklingen sänks in i system för specifika applikationer, allt från program som hanterar missilvägledning ombord på marinkryssare till internt register för sjukförsäkringsbolag. Denna programvara kräver vanligtvis en betydande investering från kunden, liksom omfattande programmering från personal som är ansvarig för att utveckla, testa och underhålla den.
Sådana projekt kan stöta på en mjukvarukris där de börjar gå över budgeten och ta mycket längre tid än förväntat att utvecklas. Programmerarna som arbetar med programvaran kan behöva hantera pågående bugfixar medan de lär sig nya aspekter av ett system, gör justeringar för klienten och tar upp andra problem som uppstår. Låg kvalitet kan vara ett problem, eftersom programmerarna kan uppleva ett ökat tryck för att uppfylla budgeten till varje pris, även om det betyder att programvaran inte kommer att vara av god kvalitet. Mindre dokumentation tenderar också att produceras.
Detta är inte bara en fråga för utveckling av nya mjukvaruprodukter. En annan oro kan vara behovet av att underhålla äldre programvara som kan ha problem relaterade till dålig utveckling eller misslyckandet med att förutse växande behov. Programmerare skulle kunna spendera stora mängder tid på att hålla äldre mjukvarufunktioner så att ett företag kan fortsätta arbeta. Med hög investering i den äldre programvaran kan företaget vara motvilliga att beställa ett nytt program, även om det bättre skulle tillgodose deras behov, eftersom det kan innebära mer kostnader och problem under övergången.
Tryck för att producera komplex, avancerad kod kan bidra till en mjukvarukris. Det kan vara svårt att kontrollera trycket medan du håller kostnaderna under kontroll och håller dig vid en tidtabell. Vissa åtgärder för att hantera en programvarukris kan innehålla betydande avancerad planering, val av högt kvalificerad personal och pågående uppdateringar för att se till att projektet förblir på uppdrag och i fokus.