Den gode kodestandard og kodekvalitet

Følgende beskriver beslutninger for hvilken kodestandard den leverede kode skal følge. Kodestandarden supplerer:

som beskriver mere overordnede principper. Følgende områder behandles:

Design-patterns og applikationsstruktur

På overordnet niveau beskrives hvilke design-patterns, som udviklingsleverandørerne skal anvende ved udvikling af de enkelte forretningsløsninger.

Eksempler på disse kan f.eks. ses her:

Efterhånden som design-pattern identificeres tilføjes referencer til dem her.

Kodestandard C#.Net kode

På syntaks-niveau skal koden følgen en række retningslinjer der beskriver standarder for navngivning, kodedokumentation og struktur. Det tilstræbes at disse retningslinjer følger sædvanlig branchepraksis, og at efterlevelse tjekkes ved maskinel analyse af den leverede kode.

Koden skal følge .NET Framework Guidelines and ”Best practices” som kodestandard, se:

Kodekommentarer

Alle public klasser/typer/interfaces og disses operationer og attributter skal forsynes med en beskrivende kodekommentar.

Se også: Principper for dokumentation

Unit test

Væsentlige/forretningskritiske dele af koden skal testes med unittests. Det forventes ikke at testdækningen bliver 100%. Som et konservativt mål sigtes efter 80% testdækning.

System- og integrations test

Tests kan være Coded UI tests eller test af services. Målet med disse tests er primært at tjekke hovedflows, som f.eks. kan anvendes ved Smoketest i forbindelse med deployment.

Kodestandard HTML, JavaScript og CSS

Det er valgt at anvende Web Essentials (http://vswebessentials.com/) i Visual Studio for at sikre ensretning af den udviklede frontend kode.

Derudover skal de udviklede webgrænseflader opfylde følgende krav:

og følgende best practices:

Kodestandard SQL Server Integration Services (SSIS)

SSIS Pakker og jobs udvikles efter følgende "best practice":

Kodestandard Webservices

Webservices udvikles efter følgende "best practice" for webservices:

Centralt build og deployment

Følgende køres centralt:

  • Statisk kode-analyse

  • Tjek af kodestandard

  • Unit test

  • System- og integrationstest (Smoke test)

Kode- og arkitekturreview

De udviklede kodefiler skal for at højde kvaliteten reviewes af en anden udvikler end den der har udviklet det. Hvis koden udvikles via pair-programming betragtes dette som review. Efterlevelse af arkitekturen reviewses løbende og teknisk gæld identificeres.

Hotspot liste

i vedhæftede dokument kan man se hvilke områder der er udpeget til hotspot områder dvs områder hvor der skal sættes tid at til at fikse teknisk gæld. 

Kodekvalitet

Den vedhæftede PowerPoint præsentation er materialet, som blev gennemgået ved det faglige indlæg torsdag den 30. august 2018 omkring kodekvalitet. Præsentationen indeholder lidt information om, hvorfor man bør kigge på kodekvalitet samt eksempler på de tiltag, som er taget på DFDG.

Code Quality, STAR edition.pptx