Opdrachtbeschrijving
Het in kaart brengen van de technische werking, structuur en afhankelijkheden van het huidige (legacy) DigiD, met specifieke aandacht voor de impact van een te bepalen authenticatie-ingang (flow). Dit inzicht is nodig om gericht en gecontroleerd te kunnen starten met de modernisering van DigiD.
Behoeftestelling
Binnen het moderniseringstraject van DigiD is behoefte aan diepgaand technisch inzicht in het bestaande systeem. Hoewel functionele documentatie grotendeels beschikbaar is, ontbreekt actuele en samenhangende technische documentatie die inzicht geeft in de daadwerkelijke werking van het systeem, met name op het gebied van verwevenheid, state, caching en runtime-gedrag. Dit gebrek aan inzicht belemmert het maken van concrete ontwerpkeuzes voor de modernisering en vergroot het risico op onvoorziene complexiteit bij de eerste implementatiestappen.
Deelvragen
De hoofvraag wordt uitgewerkt aan de hand van de volgende deelvragen. Deze deelvragen zijn bedoeld om het benodigde technische inzicht gestructureerd te verzamelen en vindbaar vast te leggen.
1.Technische werking en opbouw
Hoe is het huidige DigiD technisch opgebouwd, welke applicaties, modules en services zijn aanwezig en wat is hun feitelijke verantwoordelijkheid in de authenticatieketen?
2.Request-, controlflow en beslislogica
Hoe lopen requests en responses door het systeem, waar vinden beslissingen plaats en welke varianten bestaan er binnen en buiten de happy flow?
3.Data, state en sessies
Waar wordt data beheerd, waar leeft state (zoals sessies en context), en welke onderdelen zijn stateful of stateless binnen de huidige architectuur?
4.Cache- en in-memory gebruik
Welke gegevens worden in cache of geheugen gehouden, met welk doel, hoe worden deze ververst of geïnvalideerd en welke impliciete aannames bestaan hierover?
5.Afhankelijkheden en verwevenheid
Welke expliciete en impliciete afhankelijkheden bestaan er tussen onderdelen van DigiD, en in hoeverre zijn verantwoordelijkheden technisch met elkaar verweven?
6.Integraties en externe koppelingen
Welke interne en externe systemen worden aangesproken binnen authenticatieflows, hoe kritisch zijn deze koppelingen en welke contracten of aannames spelen hierbij een rol?
7.Stabiliteit en risicogebieden
Welke onderdelen van legacy DigiD functioneren stabiel en welke delen zijn kwetsbaar of risicovol om te wijzigen?
8.Ingangsopties (flows) voor modernisering
Welke end-to-end authenticatieflows zijn op basis van technische inzichten realistische kandidaten om als eerste te moderniseren, en wat zijn de belangrijkste technische consequenties per optie?
Achtergrond opdracht
DigiD zal worden gemoderniseerd met als doel de bestaande legacy applicatie gefaseerd te ontvlechten en te vervangen door een moderne architectuur. Een eerste stap hierin is het realiseren van een volledige end-to-end authenticatieflow in een nieuwe omgeving. De keuze voor deze ingang (flow) wordt elders in het programma bepaald en vormt input voor dit onderzoek. De centrale vraag is niet of deze modernisering plaatsvindt, maar wat deze keuze technisch betekent voor:
- Het bestaande DigiD-systeem
- De technische mogelijkheden en beperkingen om nieuw en oud van elkaar te scheiden.
- En de mate waarin legacy-complexiteit daadwerkelijk kan worden verminderd
Binnen scope
De opdracht omvat ten minste:
De technische opbouw en werking van het huidige DigiD (as-is), waaronder:
- Applicaties, modules en services
- Request- en controlflows
- Data, state, sessies en caching
- Interne en externe integraties
- Runtime- en productiegedrag
Analyse van cache- en in-memory gebruik, inclusief:
- Welke gegevens worden gecached
- Waar en waarom dit gebeurt
- En wat de implicaties zijn voor ontvlechting
Een technische impactanalyse van de vooraf vastgestelde authenticatieflow, waaronder:
- Welke legacy-onderdelen deze flow raakt
- Welke afhankelijkheden expliciet en impliciet zijn
- Welke delen van legacy noodzakelijk blijven
Analyse van mogelijke technische mechanismen om nieuw en oud te scheiden voor deze flow, inclusief:
- Vertaling tussen oud en nieuw
- Benodigde state en coördinatie
- Risico’s op complexiteitsverplaatsing
Identificatie van legacy-onderdelen die na realisatie van deze flow:
- Kunnen worden uitgefaseerd
- Vereenvoudigd kunnen worden
- Of niet langer relevant zijn
Buiten scope
Uitdrukkelijk buiten scope vallen:
Organisatorische context en cultuur
Logius
Logius gelooft in een overheid die altijd, overal en voor iedereen beschikbaar en toegankelijk is. Daarom bieden we publieke organisaties producten en diensten waarmee we er samen voor zorgen dat burgers en bedrijven digitaal zaken kunnen regelen met de overheid. Dat doen wij betrouwbaar, vakkundig en in eenvoud. Ga je bij Logius aan de slag, dan zet je jouw kennis en ervaring in voor heel Nederland. Samen met fijne en behulpzame collega’s werk je (agile) aan een digitale overheid voor iedereen. En dat in een omgeving waar je de vrijheid en verantwoordelijkheid krijgt om de zaken op te pakken die jij belangrijk vindt. Waar innovatie centraal staat. En waar je alle kansen krijgt om je verder te ontwikkelen. Wees welkom in het hart van de digitale overheid!
KOOP
KOOP, het Kennis- en Exploitatiecentrum voor Officiële Overheidspublicaties, is de drijvende kracht achter de grootste portalen met overheidsinformatie op internet: overheid.nl, wetten.nl en officiëlebekendmakingen.nl. KOOP ondersteunt daarmee alle overheidsorganisaties in Nederland om elke dag informatie zoals wet- en regelgeving, parlementaire stukken, vergunningen en internationale verdragen te publiceren.
- Iedereen heeft recht op betrouwbare en toegankelijke overheidsinformatie.
- Het Kennis- en Exploitatiecentrum Officiële Overheidspublicaties (KOOP) is de digitale uitgever van de overheid en de drijvende kracht achter digitale ontsluiting van wet- en regelgeving.
- Wij staan voor laagdrempelige toegang tot officiële overheidsinformatie.