Codekwaliteit onderzoeken

Voltooid

De kwaliteit van code mag niet subjectief worden gemeten. Een code voor het schrijven van ontwikkelaars beoordeelt de kwaliteit van hun code hoog, maar dat is geen goede manier om de codekwaliteit te meten. Verschillende teams kunnen verschillende definities gebruiken op basis van context.

Code die als hoge kwaliteit wordt beschouwd, kan één ding betekenen voor een automotive ontwikkelaar. En dit kan een andere betekenen voor een webtoepassingsontwikkelaar.

De kwaliteit van de code is essentieel, omdat dit van invloed is op de algehele softwarekwaliteit.

Uit een onderzoek naar "Software Defect Origins and Removal Methods" bleek dat individuele programmeurs minder dan 50% efficiënt zijn bij het vinden van fouten in hun software. En de meeste vormen van testen zijn slechts 35% efficiënt. Het maakt het moeilijk om kwaliteit te bepalen.

Er zijn vijf belangrijke kenmerken om te meten voor een hogere kwaliteit.

Betrouwbaarheid

Betrouwbaarheid meet de kans dat een systeem zonder fouten wordt uitgevoerd gedurende een bepaalde periode van bewerking. Het heeft betrekking op het aantal defecten en de beschikbaarheid van de software. Verschillende defecten kunnen worden gemeten door een hulpprogramma voor statische analyse uit te voeren.

Softwarebeschikbaarheid kan worden gemeten met behulp van de gemiddelde tijd tussen storingen (MBTF).

Lage aantallen defecten zijn cruciaal voor het ontwikkelen van een betrouwbare codebasis.

Onderhoud

Onderhoudbaarheid meet hoe eenvoudig software kan worden onderhouden. Het heeft betrekking op de grootte, consistentie, structuur en complexiteit van de codebasis. En het garanderen van onderhoudbare broncode is afhankelijk van verschillende factoren, zoals testbaarheid en begrijpelijkheid.

U kunt geen enkele metriek gebruiken om de onderhoudbaarheid te garanderen.

Sommige metrische gegevens die u kunt overwegen om de onderhoudbaarheid te verbeteren, zijn het aantal stilistische waarschuwingen en complexiteitsmetingen in Halstead.

Zowel automatisering als menselijke revisoren zijn essentieel voor het ontwikkelen van onderhoudbare codebases.

Testbaarheid

Testbaarheid meet hoe goed de software testinspanningen ondersteunt. Het is afhankelijk van hoe goed u het testen kunt beheren, observeren, isoleren en automatiseren, onder andere factoren.

Testbaarheid kan worden gemeten op basis van het aantal testcases dat u nodig hebt om potentiële fouten in het systeem te vinden.

De grootte en complexiteit van de software kunnen van invloed zijn op de testbaarheid.

Het toepassen van methoden op codeniveau, zoals cyclomatische complexiteit, kan u dus helpen de testbaarheid van het onderdeel te verbeteren.

Compatibiliteit

De draagbaarheid meet hoe bruikbaar dezelfde software zich in verschillende omgevingen bevindt. Het heeft betrekking op platformafhankelijkheid.

Er is geen specifieke meting van draagbaarheid. Maar er zijn verschillende manieren waarop u draagbare code kunt garanderen.

Het is essentieel om regelmatig code op verschillende platforms te testen in plaats van te wachten tot het einde van de ontwikkeling.

Het is ook handig om de waarschuwingsniveaus van uw compiler zo hoog mogelijk in te stellen en ten minste twee compilers te gebruiken.

Het afdwingen van een coderingsstandaard helpt ook bij de draagbaarheid.

Herbruikbaarheid

Herbruikbaarheid meet of bestaande assets, zoals code, opnieuw kunnen worden gebruikt.

Assets worden gemakkelijker hergebruikt als ze modulariteit of losse koppelingskenmerken hebben.

Het aantal onderlinge afhankelijkheden kan de herbruikbaarheid meten.

Door een statische analyse uit te voeren, kunt u deze afhankelijkheden identificeren.