Het oplossen van bugs in Event Sourcing is echt zo moeilijk, toch?
- Gepubliceerd op Oskar Dudycz
- Toegevoegd op
Elk systeem krijgt uiteindelijk te maken met onjuiste data. Een deel daarvan komt door integraties, een deel door gebruikers die dingen doen die niemand had voorzien, en een groot deel komt door ons, omdat we een wijziging hebben doorgevoerd die er tijdens de beoordeling prima uitzag.
Dit gaat over wat we dinsdagochtend kunnen doen, wanneer iemand van de klantenservice schrijft: "De prijs op deze reservering lijkt niet te kloppen" .
Het insect
Stel je voor dat we werken aan een hotelreserveringssysteem. De prijsstelling is daar ingewikkeld: tariefplannen worden herzien, extra's worden na de boeking toegevoegd en de stad bepaalt de toeristenbelasting op eigen tempo.
Stel dat de toeristenbelasting vroeger een vast bedrag was, 4,50 per persoon per nacht, vermenigvuldigd met het aantal nachten en gasten. Dat was jarenlang voldoende, omdat het tarief nooit veranderde.
Vervolgens kondigde de stad een verhoging naar 7,00 aan vanaf 1 april. Het bleek dat één waarde dat niet kon weergeven: een verblijf van 30 maart tot 2 april omvatte nachten aan beide kanten van de grens. Daarom hebben we tarieven met geldigheidsperioden en een opzoekfunctie toegevoegd om deze op te lossen, en deze op 12 maart uitgebracht.