oktober 28, 2020

First napkin design

A system for signing up scouts for a national scout jamboree is a great little project to teach some lessons doing. The first 'napkin' design looked like this:

First napkin design

I cleaned it up a bit and now it's more like this:

First napkin design of the system

Dealing with privacy issues pretty soon had the GDPR Monster breathing down our neck so the store had to be a one way street with the frontend facing processes writing to but not reading from 'the store'. That and some IP trickery should keep any hackers firmly at bay! Naming the beast(if you're so inclined here's 3-5 months worth of posts on the subject of GDPR), however required us to design for the right to erasure (be forgotten) and further the right to be informed (of what is in store pertaining to the individual). There's also the right to rectification (I'm mentioning it here) which is somewhat challenging with our initial napkin! In fact all we can offer is for the data subject (the person with an interest in being notified of the availability of sign-up for the SL2022 Danish Scouting Jamboree) to erase his initial registration and to complete a second one.

Sequence Diagrams

Let's start from the right, let's start with the Info Process. A very rudimentary sequence diagram (oh right, new thing - here's a quick <10min Survivors Kit to UML Sequence Diagramming) could be illustrated like this:

The 'info' microservice

This UML diagram clarifies the requirements for the info micro-service affording the user to query what data are in store and to request current data to be purged.

Next up still going right to left we have the Signup Process

The signup micro-service

The signup micro-service details the job to be done in order to allow a user to complete the signup workflow.

...work in progress...