Vad är mjukvarubasering?
Jämförelse av programvara avser vanligtvis en process där en programvarutillverkares utvecklingscykel jämförs med andra företag för att bestämma företagets effektivitet. Detta görs ofta för att bestämma var förbättringar kan göras i utvecklingsprocessen och för att säkerställa att ett företag kör med högsta effektivitet. Dessa jämförelser är vanligtvis kvantitativa till sin natur eftersom de handlar om numeriska värden och siffror för att mäta hur snabbt och effektivt ett företag presterar. Denna typ av benchmarking av programvara bör inte förväxlas med benchmarking av datormaskinvara, som utvärderar effektiviteten hos olika enheter och datorer.
Det primära syftet med mjukvaru benchmarking är att bestämma hur bra en mjukvaruutvecklare presterar jämfört med en annan. Inledningsvis måste information om en utvecklare samlas in och övervägas på ett kvantifierbart sätt. Den tid som krävs för att företaget ska skapa sitt senaste program, den tid som krävs för att fel ska fixas och att patchar släpps och antalet programmerare som är involverade i dessa processer kan alla övervägas. När denna information har samlats in, kan den användas i mjukvaru benchmarking mot andra företag som använder jämförbara mätvärden.
Tredjepartsföretag är ofta involverade i mjukvaru benchmarking genom att samla in information om många utvecklare, som ofta tillhandahålls av dessa företag för jämförelse. Ett benchmarkingföretag kan ha data från flera dussin, eller till och med hundra, mjukvaruutvecklare som specificerar de kvantifierbara värdena för tid som spenderats under utveckling, kostnader för denna process och prestationer baserade på antal programmerare. Jämförelser görs sedan av denna organisation mellan dessa olika utvecklare och används för att skapa ett antal värden för var och en. När denna process är klar kan varje företag informeras om hur väl det har fungerat inom denna större pool och kan använda denna mjukvaru benchmarkingdata för att bestämma förbättringar som bör göras för den framtida utvecklingen.
Denna typ av mjukvaru benchmarking är något liknande karaktär till hårdvara benchmarking, men de bör inte förväxlas. Maskinvärderingsbestämningar bestäms ofta genom att köra olika datorinställningar och hårdvara genom olika test för att generera data om dessa enheter. Dessa data används sedan för att jämföra olika hårdvara för att bestämma vilka processorer eller grafikkort som teoretiskt sett är överlägsna andra inom ett givet sammanhang.
Det finns en form av mjukvaru benchmarking som kan utföras på ett sätt som liknar detta, även om det ofta betraktas som en del av supporttestning. Samma program kan köras på flera datorer med olika enheter och hårdvarukonfigurationer för att se vilka system det är kompatibelt med. Denna typ av benchmarking används ofta för att fastställa minimikraven för ett program och för att säkerställa att en så bred användarbas som möjligt kan köra programvaran.