De Software Kwaliteit/Risico Assessment (SKRA) dienst meet de kwaliteit van en de risico’s in een of meerdere applicaties op systeemniveau en tegen alle gangbare internationale standaarden en best practices, zoals ISO 5055 en 25010, OWASP, CICS, NIST, OMG, etc. Vooral ISO 5055 is een belangrijke recente standaard voor het geautomatiseerd meten van de kwaliteit van software code. Hierbij maken we gebruik van de wereldwijde toonaangevende technologie CAST Application Intelligence Platform.

De dienst onderscheidt zich op een aantal vlakken van standaard developer tools, zoals bijvoorbeeld SonarQube. Niet alleen worden er veel meer technologieën ondersteund en wordt er tegen meer regels, standaarden en best practices gemeten, de meting vindt ook nog eens plaats op systeemniveau in plaats van op code niveau. Dit betekent dat, naast de analyse op code niveau, ook de architectuur wordt gemeten: alle aanroepen en interfaces tussen lagen, componenten en third party of open source componenten worden meegenomen in de analyse. In de praktijk zitten 8% van de kritieke fouten in deze verbindingen, maar het kost 80% van de tijd om deze fouten te vinden en op te lossen. In totaal worden meer dan 1800 regels gecheckt, waarvan sommige zijn aangemerkt als kritiek. Schendingen van deze kritieke regels betekenen direct risico m.b.t. de factoren Security, Robuustheid, Wijzigbaarheid, Overdraagbaarheid, Onderhoudbaarheid en Performance Efficiency. Bij iedere meting hoort daarom concreet en actionable advies t.a.v. de door te voeren verbeteringen t.a.v. de gevonden kritieke schendingen. Deze worden opgenomen in een concreet verbeterplan, waarbij de effecten op de meetwaardes wordt gesimuleerd, inclusief een inschatting van de oplostijd in mandagen.

De dienst levert twee dashboards: een Management Dashboard en een Engineering Dashboard.

In het Management dashboard kan het management de (trends in) van  kwaliteitsmetrics als Security, Robuustheid, Wijzigbaarheid, Overdraagbaarheid, Onderhoudbaarheid en Performance Efficiency, Technische schuld, Omvang in regels code en eventueel de functionele omvang zien.

Het Engineering dashboard kent geen scores, alleen de gevonden schendingen (de kritieke en de reguliere) ten aanzien van de standaarden en best practices. Daarbij  wordt het duidelijk voor de technische mensen welke verbeteringen doorgevoerd moeten worden en exact waar dit in de code moet gebeuren.  Doordat de (kritieke) regels allemaal uitgebreid worden toegelicht en er wordt uitgelegd hoe de schendingen op te lossen, leren de developers al doende, waardoor dezelfde fouten niet opnieuw gemaakt worden.

Het concrete verbeterplan is onderdeel van het Engineering dashboard. Hierdoor hebben de ontwikkelaars alle mogelijkheid om heel gericht en snel de kritieke schendingen op te lossen, waardoor de kwaliteit van en het risiconiveau van de applicatie snel wordt verbeterd.

Management Dashboard

Het Management dashboard toont de kwaliteit van de applicatie en de architectuur op systeemniveau in een score van 1 (slecht) tot 4 (goed). De factoren zijn:

  • Robuustheid : Hoe stabiel is de applicatie?
  • Performance Efficiëntie : Hoe wordt de performance van de applicatie beïnvloed door de code?
  • Security: Wat is het risico op een security breach?
  • Wijzigbaarheid : Hoe moeilijk en duur is het om de applicatie te wijzigen?
  • Overdraagbaarheid : Hoe moeilijk is het om een nieuw teamlid te onboarden of het beheer bij een ander team te beleggen.

De onderhoudbaarheid wordt uitgedrukt in de Total Quality Index (TQI), ook op een schaal van 1 (slecht) tot 4 (goed). Een voorbeeld van dit dashboard:

Naast de genoemde factoren worden aanvullende gestandaardiseerde metrics, zoals bijvoorbeeld technical debt, aantal kritieke schendingen en technische omvang (regels code) metrics getoond.

In het management dashboard zijn de trends te zien als er meerdere metingen zijn gedaan. Per factor kan worden gekeken welke fouten er zijn gevonden en hoe deze hebben geleid tot de betreffende score. Zie het voorbeeld.

De kritieke regels zijn aangemerkt met een rode stip. De compliance wordt berekend door het aantal succesvolle checks (code voldoet aan de standaard of best practice) te delen door het totaal aantal checks. Per regel en per factor zijn er drempelwaardes m.b.t. de compliance en de invloed op de score. In het management dashboard kan men niet verder downdrillen, maar door te klikken op het microscoop pictogram gaat men naar het Engineering Dashboard.

Engineering Dashboard

De Software Kwaliteit/Risico Assessment leidt direct tot actionable resultaten door middel van het Engineering Dashboard. In dit dashboard komen geen scores terug, maar wel alle gevonden violations en kritieke schendingen. Per factor kunnen de ontwikkelaars en beheerders gericht onderzoeken welke fouten gevonden zijn, waar deze zich in de code bevinden, waarom dit fouten zijn en hoe ze deze kunnen oplossen. Gecertificeerde Metri consultants zetten een Verbeterplan klaar in het Engineering Dashboard, waarmee, een zo groot mogelijke verbetering van de scores kunnen worden gerealiseerd. Hierbij wordt met de Action Plan Optimizer ook een simulatie gegeven van de scores als het Action Plan wordt uitgevoerd. De praktijk leert dat de ontwikkelaars veel leren van het Engineering Dashboard en de uitleg van de gevonden fouten, waardoor deze fouten in nieuwe versies niet meer gemaakt worden.

IDC Metri heeft klanten geholpen met het gericht en goedkoop oplossen van duizenden kritieke schendingen, waardoor de kwaliteit van de vaak kritieke software applicaties enorm is verhoogd en de risico’s op bijvoorbeeld productieincidenten en security breaches significant zijn verlaagd.

Meer weten?

Spreek direct een specialist, neem contact op met IDC Metri voor een snel en duidelijk antwoord: