jest has asked for the wisdom of the Perl Monks concerning the following question:
This is a broad question; I'd be happy to be directed to any package for, or discussion of, this issue, even in Python or other languages.
I'm working with a legacy system that has functionality for sending reminder emails in relation to various events. It is unbelievably complicated, involving tens of thousands of lines of spaghetti if-else code, using dozens of non-obvious configuration variables. It seems to me that someone must have dealt with this before, and that there's a cleaner solution in place for this not-unusual problem, but I haven't been able to find anything.
The current system allows for many, many variations: Number of reminders in between "now" and the event; sending reminders every X days from "now"; sending reminders every X days before the event; adjusting the scheduling after a manual event (that is, if you manually cause a reminder to be sent, does that affect the timing of the remaining reminders, and if so, how); changing the timing in between reminders (e.g. the first reminders are a week apart, but the schedule compresses as we draw near to the event); reminders are usually sent by email but can also be sent by other mechanisms, and these don't necessarily work on the same schedule as the emails; etc. etc. etc.
The system is in use among a large number of people, and apparently many people genuinely do use all of these features at one point or another, so we can't simplify it by removing functionality. But any time we do need to make a change, we end up with even more spaghetti mess, and testing is a nightmare.
Is there a term for this, or some widely understood way of handling this problem, that I just haven't encountered? Thanks for any suggestions.
|
---|
Replies are listed 'Best First'. | |
---|---|
Re: System for calculating timing of reminder messages? (Updates:3)
by LanX (Saint) on Sep 19, 2025 at 15:00 UTC | |
Re: System for calculating timing of reminder messages?
by choroba (Cardinal) on Sep 19, 2025 at 15:47 UTC | |
Re: System for calculating timing of reminder messages?
by NERDVANA (Priest) on Sep 23, 2025 at 04:56 UTC | |
Re: System for calculating timing of reminder messages?
by cavac (Prior) on Sep 24, 2025 at 13:05 UTC |