Definition of Done

Op deze pagina wordt beschreven welke eisen aan de verschillende onderdelen van een opgeleverde versie van de Verwerkingenlogging API-standaard worden gesteld. De onderdelen die hierbij een rol spelen zijn:

In onderstaande paragrafen worden de criteria die binnen de verschillende onderdelen worden gehanteerd beschreven. Deze criteria zijn overgenomen uit de generieke Definition of Done voor API-standaarden van VNG Realisatie. Bij het opleveren van de Verwerkingenlogging API-standaard wordt aan de verschillende eisen invulling gegeven, of wordt uitgelegd waarom van de gestelde eis is afgeweken.

API-standaard gepositioneerd in de Architectuur

Criterium Status Toelichting/Link
De stakeholders van de API-standaard zijn beschreven
Interactiepatronen zijn gemodelleerd
Positie van de API-standaard in de GEMMA informatiearchitectuur is gemodelleerd
Verwacht gedrag van een API is gemodelleerd als applicatieproces
De referentiecomponenten die het koppelvlak moeten realiseren zijn beschreven
Per referentiecomponent is beschreven welke verplicht dan wel optioneel te leveren (provider) of te gebruiken (consumer) services en operaties geïmplementeerd moeten zijn om compliant aan de standaard te zijn.
Modellen zijn gemodelleerd in Archi (Archimate 3.x) conform conventies GEMMA
Modellen zijn opgeslagen op GitLab / Github en ingericht voor samenwerking (main/develop branches)

Informatiemodel behorend bij de API-standaard

Criterium Status Toelichting/Link
Er is een semantisch informatiemodel of een verwijzing naar het gebruikte semantisch informatiemodel
Dit conceptueel informatiemodel (CIM) is gemodelleerd conform de laatst vastgestelde versie Metamodel Informatiemodellen (MIM)  
Het informatiemodel is gebaseerd op de beschikbare standaard voor het domein n.v.t.  
Er is een vertaling van het informatiemodel naar de API (vice versa), bij voorkeur is deze vastgelegd in de vorm van een uitwisselingsgegevensmodel (UGM). Tenminste bevat deze een technische beschrijving van resources, attributen en eigenschappen
Informatiemodellen (CIM en UGM) zijn gemodelleerd conform de daarvoor geldende best practices  
Ontwerpbesluiten voor vertaling van CIM naar UGM zijn vastgelegd

Functionele en Technische API-specificaties

Criterium Status Toelichting/Link
Er is een globale functionele beschrijving
Er zijn specificaties die het gedrag van de API beschrijven. Voor de consumer zijn deze opgenomen in de OAS, voor de provider zijn dit aanvullende specificaties
Voldoet aan landelijke API strategie, in het bijzonder de core design rules, en de VNG-R best practices (op basis van verzamelde Design Decisions). Afwijkingen zijn gedocumenteerd  
Informatiebeveiliging en privacy best practices (IBD) zijn geborgd  
De OAS3-specificatie is door een peer uit het standaardisatie team gereviewed  
De OAS3-specificatie is getest voor toepasbaarheid in de mainstream code-generatoren (Spring, SDK’s (met pumblingcode))    
Technische specificaties opgesteld in Open API Specification 3.x

Referentie-implementatie

Criterium Status Toelichting/Link
API-standaard is geïmplementeerd in een referentieimplementatie van de provider in een gangbare programmeertaal
Implementeert de gehele OAS-specificatie inclusief de eventueel gedefinieerde aanvullende specificatie

Testbaarheid via API testplatform

Criterium Status Toelichting/Link
Testgevallen zijn beschreven voor elke service/operatie en aanvullende specificaties, zowel voor de happy als de unhappy flows   Q4 2021
Elk testgeval beschrijft het logische testgeval, de teststap(pen) (wat wordt gedaan) en het verwachte resultaat   Q4 2021
Er zijn compliancy tests beschikbaar voor elke referentie-component (consumers en providers) en alle betreffende services en operaties, zodat leveranciers kunnen testen en aantonen dat hun applicatie voldoet aan de standaard   Q1 2021
Is er sprake van een API die zich beperkt tot het lezen van gegevens dan dient er een testset beschreven te zijn voor de provider   Q4 2021
Testgevallen zijn geïmplementeerd als Postman-scripts zodat de API geautomatiseerd getest kan worden   Q4 2021

Stakeholder documentatie

Criterium Status Toelichting/Link
T.b.v. informatiemanagers (e.a.): globale functionele beschrijving staat op GEMMAonline
T.b.v. architecten: het architectuurmodel is gepubliceerd op GEMMAonline
T.b.v. ontwikkelaars: het informatiemodel is gepubliceerd op VNG-Realisatie Github
T.b.v. ontwikkelaars: de technische beschrijving is gepubliceerd op VNG-Realisatie Github
T.b.v. ontwikkelaars: OAS specificatie (beschikbaar via Redoc en SwaggerUI) is gepubliceerd op VNG-Realisatie Github
T.b.v. ontwikkelaars: de uitleg en installatie-instructies van de referentieimplementaties inclusief testgevallen is gepubliceerd op VNG-Realisatie Github
T.b.v. ontwikkelaars: Postman-scripts zijn gepubliceerd op api-test.nl zodat iedereen kan testen of de implementatie voldoet aan zijn specificatie   Q4 2021
De API-ontwikkelagenda is up-to-date  
De Componenten/software catalogus is up-to-date  
T.b.v. bestuurders: de API-standaard is vermeld op de VNG-site  

Overdracht- en beheerdocumentatie

Criterium Status Toelichting/Link
Belangrijke ontwerp-overwegingen zijn beschreven en gemotiveerd
Er wordt voldaan aan de acceptatiecriteria van de beheerorganisatie die de standaard in beheer neemt  
Er is een backlog (lijst met fouten, gewenste verbeteringen, gewenste uitbreidingen etc)  
De verantwoordelijke voor beheer is bekend  
Beheerafspraken zijn beschreven  

Aanvullende specificaties voor beheer door VNG-R

Criterium Status Toelichting/Link
Voor zaken die in VNG-R beheer worden genomen is het beheerkader getoetst  
Informatiemodellen (CIM en UGM) zijn vastgelegd in Enterprise Architect  
Informatiemodel is opgeslagen in SVN  
Er is voldaan aan de overige beheerkaders  
Releasebeleid is beschreven  
De referentie-implementatie blijft beschikbaar als sandbox