Gemeente-Delft / Gemeentelijk-Gegevensmodel

Logisch gegevensmodel met daarin alle beleidsterreinen van de gemeente
https://gemeente-delft.github.io/Gemeentelijk-Gegevensmodel/
GNU General Public License v3.0
38 stars 10 forks source link

Gemeentelijk Gegevensmodel

Het Gemeentelijk Gegevensmodel (GGM) is een logisch gegevensmodel met daarin vertegenwoordigd alle beleidsterreinen van de gemeente. Het GGM is ontwikkeld in opdracht van de Gemeente Delft ter ondersteuning van de visie op het gebied van informatiegestuurd werken. Onder andere wordt het GGM gebruikt als centraal datamodel in het datawarehouse. Hiertoe is een generator beschikbaar om het GGM te vertalen naar fysieke databasetabellen.

Het GGM omvat alle beleidsterreinen die onder de verantwoordelijkheid van de gemeente vallen. Dit ongeacht de organisatorische inrichting, zoals de afdelingen die de bijbehorende taken uitvoeren en uitbesteding aan derde partijen. Deze beleidsterreinen zijn afgeleid van de IV3-taakvelden.

Bij het GGM is een set codegeneratietemplates ontwikkeld voor het genereren van fysieke datamodellen op basis van (onderdelen van) het GGM. Hiermee genereer je DDL voor Oracle en in ongeteste vorm voor MySQL. Het gaat hier om templates voor het Code Template Framework van Enterprise Architect. Hiermee kan ook werkende DDL worden gegenereerd voor andere databases.

Winnaar Gemeentedelers 2022

Gemeente Delft is winnaar van de GemeenteDelers competitie van VNG Realisatie. Delft deed mee in de categorie Informatietechnologie met het Gemeentelijk Gegevensmodel (GGM). Met het GGM bouwen we aan een gezamenlijk datafundament dat informatie gestuurd werken ondersteund. En het goede nieuws: ook andere gemeenten kunnen gebruik maken van dit open source model.

Goud-status Common Ground

De Expert Review Groep van de Common Ground heeft het initiatief GGM besproken en besloten het initiatief de classificatie Goud te geven op het Common Ground portfolio. Deze classificatie is gerelateerd aan de toets op de architectuur en realisatie principes. We zijn tot deze conclusie gekomen op basis van de ontvangen antwoorden.

Beheer en doorontwikkeling

Beheer en doorontwikkeling van het GGM verloopt in samenwerking met diverse gemeenten in combinatie met andere overheden. Hiervoor is een gebruikersgroep ingericht die je kunt vinden op de volgende Pleio-pagina. Deze Pleio-pagina is het kanaal voor alle vragen, blogs en discussies over het GGM. Heb je een vraag of een toevoeging meld die dan via onze Pleio-pagina. Af en toe zijn er mini-conferenties over onderdelen van het GGM, de agenda hiervoor vind je ook op PLeio. Voor het steeds beter maken van het GGM is er een expertgroep met daarin meerdere gemeenten en de VNG (Vereniging Nederlandse Gemeenten), die werk verdelen en zo gezamenlijk het GGM steeds beter maken.

Handleiding

Voor gedetailleerde toelichting kijk in de Handleiding.

Installatie en gebruik

Het Gemeentelijk Gegevensmodel is beschikbaar in XMI-vorm, en is ontwikkeld in, en toegepast met Enterprise Architect. Een aantal gemeenten gebruikt het GGM inmiddels ook met Bizzdesign EnterpriseStudio, en ook met Blue Dolphin.

Let op: gebruik je Enterprise Acrhitect versie 16 of 17 ? In dit geval moet je het bestand 'gemeentelijk gegevensmodel EA.qea' gebruiken. Gebruik je versie 15, laad dan het bestand 'xmi' bestand.

Let op: Het Gemeentetelijk Gegevensmodel is een UML-model en bevat daarmee alle benodigde details zoals de attributen en bijbehorende datatypes. Er is ook een Archimate-versie beschikbaar die gebruikt wordt voor de GEMMA en die gebruikt kan worden voor Enterprise Architectuur; deze bevat echter niet alle details omdat Archimate niet hetzelfde detail kent als UML.

Installatie Gemeentelijk Gegevensmodel

Van het Gemeentelijk Gegevensmodel zijn verschillende versies beschikbaar: v1.0.3, v2.0.0, v2.1.0 en de courante versie v2.2.0. Je vindt deze in de afzonderlijke versies van de repository. De hierna volgende uitleg betreft de laatste versie van het GGM. Hieronder vind je de installatiebeschrijving bij de verschillende ondersteunde tools:

  1. Enterprise Architect Viewer of Enterprise Architect versie 16 of 17: download hiervoor het bestand QEA-bestand en open het in (de viewer van) Enterprise Architect.
  2. Enterprise Architect versie 16: de EAPX van versie 15 wordt niet meer ondersteund in de nieuwe release. Wil je het GGM alsnog in versie 15 laden, dan kan dat via het XMI bestand.
  3. Als XMI-bestand in Enterprise Architect 16 en 17, om geladen te worden in een (nieuw) project in Enterprise Architect, of om geladen te worden in andere UML-tooling. Voor installatie-instructies kijk in de handleiding.
  4. Bizzdesign: voor installatie-instructies kijk in de handleiding laden in Bizzdesign
  5. Blue Dolphin: hiervoor gebruik je het AMEFF-bestand van het GGM uit de GEMMA-repository voor de Architectuur module van BlueDolphin. Als BlueDolphin gebruiker met Beheerderrol kun je AMEFF-bestanden uploaden. Zie hiervoor de handleiding: AMEFF bestanden importeren. Bij vragen contacteer jouw ValueBlue account- of customersuccess-manager.

Installatie Codegeneratietemplates

De installatie van de codegeneratietemplates staat hier beschreven. Voor verdere uitleg rond het gebruik van de codegeneratietemplates kijk hier.

De codegeneratietemplates zijn alleen beschikbaar voor Enterprise Architect.

Versies en gebruikte tooling

Het XMI-bestand van het Gemeentelijk Gegevensmodel is in theorie te gebruiken in andere tools naast Enterprise Architect, maar daar is geen ervaring mee. Ervaringen hierin zijn welkom!

Het Gemeentelijk Gegevensmodel is beschikbaar in:

Het is Getest en gebruikt in de volgende omgevingen:

Opbouw Gemeentelijk Gegevensmodel

Het GGM kent een gelaagde opbouw, waarbij verschillende objecttypen over beleidsdomeinen heen zoveel mogelijk zijn ontkoppeld. Alleen objecttypen in de onderste lagen van het model worden gebruikt door de bovenliggende onderdelen.

Gelaagdheid Domeinen

Het gegevensmodel is uitgewerkt in een aantal verticale beleidsdomeinen en 4 horizontale beleidsdomeinen. De horizontale delen (Kern, Financiën, ICT en Dienstverlening) vormen de basis van het gegevensmodel, waarop de verticale delen voortbouwen. De Kern bestaat uit RSGB en RGBZ, die de gegevensdefinities bevatten die zoals die gelden voor de basisregistraties (RSGB) en zaakgericht werken (RGBZ).
Er is ontkoppeling tussen de verschillende (sub)domeinen nagestreefd, doordat in de gegevensdefinities van het gegevensmodel (sub)domeinen alleen definities uit onderliggende (sub)domeinen gebruiken. Zo gebruiken alle (sub)domeinen gegevensdefinities uit Kern en kunnen alle verticale (sub)domeinen gegevensdefinities gebruiken uit de 4 horizontale modellen.

Beleidsterreinen

Het gegevensmodel omvat de volgende op de gebaseerde IV3-taakvelden:

Naast bovengenoemde beleidsterreinen kent het GGM het onderdeel 'Kern', waarin alle gedeelde objecttypen zijn te vinden. Kern is afgeleid van het Informatiemodel Basis- en Kerngegevens (RSGB) en Informatiemodel Zaken (RGBZ) (beiden onderdeel GEMMA: Gemeentelijke Modelarchitectuur), aangevuld met een aantal generieke objecttypen.

Toegepaste Landelijke standaarden

Nederland kent op dit moment een lappendeken aan standaarden voor gegevensuitwisseling en informatiemodellen. Samenhang tussen deze standaarden en is beperkt. Relevante standaarden zoveel mogelijk in samenhang binnen de afzonderlijke domeinen in het GGM opgenomen. Het stelsel van basisregistraties, en het daarop gerichte RSGB geven hiervoor wel enige houvast. In het GGM heeft het RSGB daarom een centrale plek.

De volgende standaarden zijn gebruikt bij de totstandkoming van het GGM, en maken onderdeel uit van het GGM:

Totstandkoming Gemeentelijk Gegevensmodel

Het GGM is ontworpen op aan de hand van interviews met domeinexperts, de in Delft gebruikte applicaties en op basis van landelijke informatiestandaarden. Dit om tot een gegevensmodel te komen dat goede verankering kent met de Delftse situatie. Aangezien alle Nederlandse gemeenten in principe dezelfde wettelijke taken hebben gaan we ervanuit dat de onderliggende informatiemodellen sterk op elkaar lijken.

Uitgangspunt van de inventarisatie waren:

  1. De lijst met Delftse applicaties en de inventarisatie hiervan waarbij onderscheid is gemaakt tussen authentieke bronnen en overige applicaties
  2. De set beleidsdomeinen waar de gemeente haar taakgebied heeft
  3. Landelijk vastgestelde standaarden voor gegevensuitwisseling en landelijk vastgestelde informatiemodellen

De inventarisatie in de volgende stappen uitgevoerd (voor een gedetailleerde uitleg: kijk in de handleiding):

  1. Interviews met experts uit de verschillen de Beleidsdomeinen: per beleidsdomein is er m.b.v. gesprekken met experts van de informatievoorziening binnen de beleidsdomeinen een inventarisatie gemaakt van de gebruikte applicaties, de betrokken gebruikers, de interactie tussen de applicaties en de gebruikers, en welke gegevens daarbij gebruikt worden.
  2. Applicaties en gegevens: door in de gesprekken en uit de analyse de authentieke bronnen van gegevens te identificeren, door in de gesprekken in te zoomen op de gebruikte gegevens en door de inventarisatie van de applicaties en gegevens te hanteren zijn de gegevens binnen de authentieke bronnen geïdentificeerd.
  3. Gegevensmodel: het gegevensmodel wordt opgebouwd door de in de vorige stap gevonden gegevens te vertalen naar objecttypen (gegevenssoorten). Landelijke standaarden dienen hier zoveel mogelijk als uitgangspunt. Veel van de gebruikte applicaties ondersteunen deze landelijke standaarden, waardoor compatibiliteit zo goed mogelijk wordt gegarandeerd.
  4. Databaseschema: er is generator gerealiseerd waarmee op basis van de definities in het gegevensmodel met ‘een druk op de knop’ databasetabellen gegenereerd kunnen worden. Hiermee is het mogelijk de basis te leggen voor een datawarehouse en is het mogelijk gegevens uit de applicaties te laden waardoor confrontatie van het model met de data mogelijk is.

Aanpak GGM 1

Tooling voor het manipuleren van het GGM

Het tooling-package bevat Jupyter Notebooks voor het manipuleren van de database van het GGM. Hiermee kunnen bijvoorbeeld uitwisselingen met derde partijen worden vormgegeven, wordt de migratie naar MIM bewerkstelligd of kan worden ingezet om JSON-LD of databaseschema's te genereren.

Voor meer informatie ga naar: Informatiepagina Jupyter-tooling