Richtlijn programmacode

Uit NORA Online
ISOR:Richtlijnen voor programmacode (best practices)
Naar navigatie springen Naar zoeken springen
Versie 2.0 van 22 februari 2021 van de BIO Thema-uitwerking Applicatieontwikkeling is vervangen door versie 2.1 van 29 oktober 2021.
De wijzigingen betreffen met name de uniformering van objectdefinities en objectnamen in en tussen BIO Thema-uitwerkingen.
Versie 2.1 in PDF-formaat is op de website CIP-overheid/producten gepubliceerd.
Logo ISOR themaprincipes (vier hangsloten die in elkaar geklikt zitten met tekst ISOR Beveiliging Principe)

Objectdefinitie

Betreft systematisch ontwikkelde aanbevelingen voor de broncode van een applicatie.

Objecttoelichting

De programmacode wordt ontwikkeld door bepaalde typen ontwikkelaars. Het ontwikkelen is geen eenmalige activiteit en vindt plaats langs een cyclisch proces van ontwikkelen, testen en verbeteren. Voor een effectieve inrichting van dit cyclische proces nemen ontwikkelaars regels in acht, waarbij zij gebruik maken van afgesproken best practices. Zonder deze regels en afspraken bestaat het risico dat het voortbrengingsproces van de software/applicatie verstoord wordt, met als consequentie dat het product niet onderhoudbaar is en/of niet efficiënt tot stand komt.


Criterium

Voor het ontwikkelen van de (programma)code zijn specifieke regels van toepassing en behoort gebruik te zijn gemaakt van specifieke best practices.

Doelstelling

Het zorgen voor een efficiënt en effectief voortbrengingsproces van de applicatie die effectief onderhoudbaar is.

Risico

Het voortbrengingsproces van de applicatie raakt verstoord.

Indeling binnen ISOR

Dit beveiligingsprincipe:

ℹ️(Klik om uitleg open/dicht te klappen)

De ISOR-wiki bevat normenkaders waarin beveiligings- en privacyprincipes zijn beschreven. Deze themaprincipes zijn conform de SIVA-methodiek ingedeeld in drie aspecten: Beleid, Uitvoering of Control. Daarnaast zijn ze geordend in invalshoeken: Intentie, Functie, Gedrag, Structuur.

Grondslag

De grondslag voor dit principe is CIP-netwerk

Onderliggende normen

IDConformiteitsindicatorStelling
APO_U.03.01 Regels

De programmacode voor functionele specificaties is reproduceerbaar, waarbij aandacht wordt besteed aan:

  • gebruikte tools;
  • gebruikte licenties;
  • versiebeheer;
  • documentatie van code ontwerp, omgeving, afhankelijkheden, dev/ops en gebruikte externe bronnen.
APO_U.03.02 Regels

De (programma)code wordt aantoonbaar veilig gecreëerd.

APO_U.03.03 Regels

De (programma)code is effectief, veranderbaar en testbaar waarbij gedacht kan worden aan:

  • het juist registreren van bugs in de code;
  • het voorkomen van herintroductie van bugs in de code;
  • het binnen 72 uur corrigeren van beveiligingsfixes;
  • het vastleggen van afhankelijkheden van development en operations (dev/ops) van applicatie (relatie tussen software-objecten);
  • het adequaat documenteren van software-interface, koppelingen en Application Programming Interfaces (API’s).
APO_U.03.04 Best practices

Over het gebruik van de vocabulaire, applicatie-framework en toolkits zijn afspraken gemaakt.

APO_U.03.05 Best practices

Voor het ontwikkelen van programmacode wordt gebruik gemaakt van gestandaardiseerde vocabulaire zoals de NEN-ISO/IEC 25010 Systems and software Quality Requirements and Evaluation (SQuaRE) - System and software quality models.

APO_U.03.06 Best practices

Ontwikkelaars hebben kennis van algemene beveiligingsfouten, vastgelegd in een extern Common Vulnerability and Exposures (CVE)- systeem.

APO_U.03.07 Best practices

Het gebruik van programmacode uit externe programmabibliotheken mag pas worden gebruikt na getest te zijn.