Voorziening Common Ground

Inleiding

De visie van Common Ground is dat gemeenten zijn geholpen bij hun betrouwbare, transparante en efficiënte gemeentelijke dienstverlening en gemeentelijke uitvoering te realiseren door

  • Eenvoudige toegang voor inwoners en ondernemers tot gemeentelijke diensten gebaseerd op de standaarden die worden ontwikkeld in OmniChannel/MijnServices.
  • Universeel inzicht voor inwoners en medewerkers in de behandeling van aanvragen, dossiers en andere gegevens.
  • Efficiënte (lokale) overheid door gebruik van gegevens uit de bron die bovendien volgens standaarden worden opgeslagen en ontsloten. En door het inrichten van processen en andere organisatievormen die de dienstverlening optimaal ondersteunen.
  • Transparante overheid door werkwijze, werkmappen en relevante gegevens inzichtelijk te maken voor de buitenwereld (WOO)

Regie-organisatie

Het Landelijke Programma Common Ground (LPCG) is een regie-organisatie aan het inrichten die diensten en oplossingen gaat leveren aan gemeenten om deze visie te realiseren. Eén van die diensten wordt gevormd door de Voorziening Common Ground (VCG). Ter ondersteuning van de voorziening wordt een service-organisatie ingericht en wordt een team geformeerd met implementatie-ondersteuners die gemeenten gaan ondersteunen bij de aansluiting op VCG. Richtdatum voor de regieorganisatie is 1-1-28.

Meer informatie over de regie-organisatie: Regie-organisatie

Voorziening Common Ground

VCG is een SaaS-dienst voor de dienstverlening van gemeenten aan hun klanten, t.w. inwoners en bedrijven. Op dit moment beperkt de voorziening zich tot het domein van dienstverlening, maar in de toekomst zal dit worden uitgebreid naar specifieke domeinen zoals het fysieke domein en sociaal domein.

Het Programma Common Ground en straks de regie-organisatie is verantwoordelijk voor de levering van deze dienst.

Op basis van het voorgaande kunnen we de productvisie als volgt formuleren:

Voorde Nederlandse gemeente
diehaar dienstverlening moet herzien en/of verbeteren en compliant moet blijven aan wet- en regelgeving
biedt de Voorziening Common Groundzowel een oplossing voor nieuwe functionaliteit als een vervanging van bestaande
diegestandaardiseerd, beproefd, samenhangend, in hoge mate configureerbaar en open source is.
in tegenstelling totde huidige beschikbare oplossingen die veelal ad hoc, verzuild, gesloten, gefragmenteerd en/of closed source zijn,
is de Voorziening Common Groundonder architectuur ontworpen en wordt onder regie uitgerold en doorontwikkeld, zodat alle belangen (blijvend) kunnen worden meegewogen en de samenhang en herbuikbaarheid alsmede de maatschappelijke waarde gewaarborgd blijft.

Aansluiten betekent dat gemeenten en leveranciers via de integratielaag koppelingen maken met de API's die vanuit de gegevenslaag worden aangeboden. Om te kunnen aansluiten moet worden voldaan aan zgn. Aansluitvoorwaarden die voorwaarden stelt aan techniek, organisatie, contracten, financiën, functionaliteit, etc.

Basisset

De Basisset is de set software-componenten die we gebruiken om de voorziening te realiseren zodat deze de benodigde functionaliteiten en API's kan aanbieden. In eerste instantie ligt de focus op gegevensbeheer en integratie (CG-lagen 1-3). Op een later moment kan dit worden uitgebreid met applicaties voor eindgebruikers (lagen 4 en 5).  De Basisset kan worden gevisualiseerd als een omgekeerde T met onderin registercomponenten en integratievoorzieningen, en een beperkte set applicatie componenten op lagen 4-5.

De componenten linksboven en rechtsboven kunnen worden aangesloten op de Basisset. Linksboven staan open source componenten die in opdracht van en gefinancierd door gemeenten zijn ontwikkeld, rechtsboven staan componenten die zijn ontwikkeld en gefinancierd door commerciële partijen. De laatste zijn veelal proces- of vakapplicaties die reeds beschikbaar zijn in de markt.

Eerste versie

De eerste versie van de Basisset is gebaseerd op een inventarisatie onder de koplopers binnen Common Ground. Daarbij zijn zowel componenten genoemd die reeds in gebruik zijn, als componenten die nog in ontwikkeling zijn of in de ideeënfase zitten. In de Basisset kunnen alleen componenten worden opgenomen die gereed zijn. Componenten die nog in ontwikkeling zijn, kunnen op een later moment in de Basisset worden opgenomen.

Enkelvoudig

In principe zijn de componenten in de Basisset enkelvoudig. Op dit moment gebruiken communities verschillende componenten voor dezelfde functionaliteiten. We hebben afgesproken dat deze zgn. functionele dubbels per 1.1.28 zijn opgelost.

Aandacht voor integratie en beheer

Binnen Common Ground wordt uiteraard veel aandacht besteed aan functionaliteit t.b.v. dienstverlening (en in de toekomst andere domeinen). Echter, er zijn ook componenten nodig voor integratie (in laag 3) en voor hosting en beheer. M.b.t. het laatste volgen we Haven en Haven+.

Zoals gezegd is de eerste versie van de Basisset gebaseerd op een inventarisatie onder koplopers. In feite zijn hiermee functionele en niet functionele eisen die koplopers hebben gesteld m.b.t. componenten, overgenomen. In de toekomst zullen we zgn. Opnamecriteria hanteren om componenten toe te voegen aan de Basisset. Of bijvoorbeeld om een component te vervangen.

Dynamiek van de Basisset

De Basisset is niet statisch en zal evolueren onder invloed van de behoefte van gemeenten en andere omgevingsfactoren zoals wetgeving, standaarden en technologische ontwikkelingen. Het instrument dat we hanteren om de evolutie van de Basisset te besturen is Portfoliomanagement. Hier komen de invloeden van alle stakeholders  bij elkaar en kan de product owner van de Basisset besluiten nemen over wijzigingen in de Basisset. Portfoliomanagement wordt daarbij ondersteund door zgn. Opnamecriteria die normatieve criteria opleggen waaraan een component moet voldoen om te kunnen worden opgenomen in de Basisset. Zowel de Basisset als Opnamecriteria worden geversioneerd beheerd t.b.v. een transparante besluitvorming.

De daadwerkelijke uitrol van de Basisset naar gemeentelijke omgevingen is het onderwerp van Releasebeleid en Versionering van de basisset. We gaan uit van zgn. semantic versioning waarbij onderscheid wordt gemaakt naar majors, minors en patches.

Meer informatie: Versionering van de Basisset.

Opnamecriteria

Voor opname in de Basisset moeten componenten niet alleen een functionele behoefte van gemeenten invullen, maar ook voldoen aan een aantal niet-functionele criteria die onderverdeeld zijn in een aantal categorieën.

Om subjectiviteit te voorkomen moeten deze criteria zoveel mogelijk automatisch kunnen worden getoetst: denk bijvoorbeeld aan het herkennen van documentatie en changelogbestanden, het detecteren en analyseren van broncodebestanden, het analyseren van testconfiguratie en het meten van complexe codepaden.

Automatische detectie maakt het mogelijk om snel te bepalen of een component voldoende basiskwaliteit heeft, zonder dat elke beoordeling volledig handmatig hoeft te worden uitgevoerd.

Niet alle criteria kunnen automatisch worden getoetst, handmatige analyse blijft nodig voor een aantal criteria.

Meer informatie over opnamecriteria: Opnamecriteria

Actuele invulling van de Basisset: v0.1.0

  • Laag 1-2 - Gegevensbronnen en services: dit zijn veelal registers die conform standaard informatiemodellen en API's gegevens beheren.
  • Laag 3 - Verbinding: dit zijn componenten die op gestandaardiseerde en veilige wijze toegang bieden tot de onderliggende API's.
  • Laag 4-5 - Procesinrichting en interactie: in deze  categorie vinden we de applicaties waarmee eindgebruikers werken. Deze zijn beperkt tot een paar beheerapplicaties die aansluiten bij de registers op laag 1-2.

In de architectuurplaat hieronder zijn de componenten weergegeven die we op dit moment voorzien in de Basisset:

Componenten die nog in ontwikkeling zijn of zich nog in de ideeenfase bevinden zijn hierin niet weergegeven.

De samenstelling van de Basisset wordt beheerd in de volgende repository op code.overheid.nl:https://code.overheid.nl/CommonGround/vcg-basisset

Componenten Uitrol en hosting

Wat betreft hosting maken we gebruik van de Haven en Haven+ standaarden om zo een cloudagnostische onderlaag te creëren die redelijk eenvoudig kan worden vervangen door een andere. Haven schrijft voor hoe containerorchestratie met Kubernetes moet worden ingericht. Haven+ schrijft een set componenten voor die gebruikt moeten worden om PaaS-diensten te creëren en beheren. Hiermee verbinden we ons zo min mogelijk aan de PaaS-diensten van leveranciers.

T.b.v. het uitrollen van componenten op omgevingen kan gebruik worden gemaakt van ofwel FluxCD ofwel ArgoCD.

Meer informatie over Haven: Haven

Meer informatie over Haven+: Haven+

Omgevingen

Per gemeente die deelneemt zal er minimaal een test-, acceptatie- en productie-omgeving worden aangeboden. Naar verwachting is het vanaf 1-1-28 mogelijk aan te sluiten op door de regie-organisatie aangeboden productie-omgevingen.

Daarnaast zullen er omgevingen zijn van waaruit gemeenschappelijke diensten worden aangeboden zoals gemeentelijke selectielijst, FSC Signing Service, bibliotheek met processen en formulieren, etc. Waarschijnlijk zal Rinis de FSC Signing Service aanbieden.

Toekomstige versies van de Basisset: een backlog

Bij de inventarisatie onder de koplopers zijn ook componenten benoemd die nog in ontwikkeling zijn of zelfs nog in de ideeënfase verkeren. Dit soort componenten komen op een backlog met een toepasselijke status. De product owner van VCG bepaalt welke componenten onderdeel worden van de Basisset.

Meer informatie

Actuele versie van de Basisset: Basisset

Contactpersoon: Hugo ter Doest