I'm trying to understand how to make the code easy to understand and debug. The reason I ask is that it looks like a scenario that has probably been discussed many times before. And if that is the case, I would like to use that as a good starting point, which will expand and adapt it in the future.
I have a web application that must perform many different actions on an existing external system. The trigger is an action performed in the portal. The order of the steps at the time of design and they must be executed in the order. The necessary actions usually consist of a few steps.
Portal action (task) A -> (task A -> task B -> task C) Portal action (task) B -> (task A -> task D -> task E) Portal action (task) C -> (task B -> task D -> task E) Portal action (task) D -> (task C -> task E) etc.
The steps must be executed in order.
Although there are some technological choices (maybe queues), the thing I'm trying to decide is a code structure.
I have looked at some models.
- Chain of Responsibility – After what I understood, it looked more like a filter for authorizations / validation than a method of sequencing steps.
- Event Sourcing – To get the benefit, it seemed better suited to no sequential execution or possibly multiple subscribers to the same event.
I still have trouble accepting the fact that I'm looking for a pattern that does not exist. I seek advice on this front, what is the appropriate model to give me a good starting point?