Wat is softwarebenchmarking?
Softwarebenchmarking verwijst meestal naar een proces waarbij de ontwikkelingscyclus van een softwarefabrikant wordt vergeleken met andere bedrijven om de efficiëntie van het bedrijf te bepalen. Dit wordt vaak gedaan om te bepalen waar verbeteringen kunnen worden aangebracht in het ontwikkelingsproces en om ervoor te zorgen dat een bedrijf op maximale efficiëntie draait. Deze vergelijkingen zijn meestal kwantitatief van aard, omdat ze numerieke waarden en cijfers behandelen om te meten hoe snel en effectief een bedrijf presteert. Dit type softwarebenchmarking moet niet worden verward met computerhardware-benchmarking, die de effectiviteit van verschillende apparaten en computers evalueert.
Het primaire doel van softwarebenchmarking is om te bepalen hoe goed de ene softwareontwikkelaar presteert in vergelijking met de andere. Aanvankelijk moet informatie over een ontwikkelaar worden verzameld en op een kwantificeerbare manier worden bekeken. De tijd die het bedrijf nodig heeft om zijn nieuwste programma te maken, de tijd die nodig is om bugs te repareren en patches vrij te geven, en het aantal programmeurs dat bij deze processen betrokken is, kan allemaal worden overwogen. Zodra deze gegevens zijn verzameld, kunnen deze worden gebruikt in softwarebenchmarking met andere bedrijven die vergelijkbare statistieken gebruiken.
Externe bedrijven zijn vaak betrokken bij softwarebenchmarking door informatie te verzamelen over tal van ontwikkelaars, die vaak door deze bedrijven ter vergelijking wordt verstrekt. Een benchmarkingbedrijf kan gegevens hebben van enkele tientallen of zelfs honderd softwareontwikkelaars met details over de kwantificeerbare waarden voor de tijd die wordt besteed aan ontwikkeling, kosten voor dit proces en prestaties op basis van het aantal programmeurs. Vervolgens worden door deze organisatie vergelijkingen gemaakt tussen deze verschillende ontwikkelaars en gebruikt om voor elke een aantal waarden vast te stellen. Zodra dit proces is voltooid, kan elk bedrijf worden geïnformeerd over hoe goed het heeft gepresteerd binnen deze grotere pool en kan het deze softwarebenchmarkinggegevens gebruiken om te bepalen welke verbeteringen moeten worden aangebracht voor toekomstige ontwikkelingen.
Dit type softwarebenchmarking is enigszins vergelijkbaar met hardwarebenchmarking, maar ze moeten niet worden verward. Hardwarebenchmarks worden vaak bepaald door verschillende computerinstellingen en stukjes hardware uit te voeren via verschillende tests om gegevens over die apparaten te genereren. Deze gegevens worden vervolgens gebruikt om verschillende stukken hardware te vergelijken, om te bepalen welke processors of grafische kaarten theoretisch superieur zijn aan anderen binnen een gegeven context.
Er is een vorm van softwarebenchmarking die op een vergelijkbare manier kan worden uitgevoerd, hoewel het vaker wordt beschouwd als onderdeel van ondersteuningstests. Hetzelfde programma kan op meerdere computers met verschillende apparaten en hardware-instellingen worden uitgevoerd om te zien met welke systemen het compatibel is. Dit type benchmarking wordt vaak gebruikt om de minimale vereisten voor een programma te bepalen en om ervoor te zorgen dat een zo breed mogelijk gebruikersbestand de software kan uitvoeren.