That could be a solution but it would highly increase the number of states of my system, and, unfortunately, my state machine already has around 40 states. If there is no other choice I will do it but I prefer to ask a bit more to find a better solution.
My system starts from a initial state that only waits for different commands from the user (for example, start process1, start process2, start process3...). Every time this state receives a command, the workflow is more or less the same, the statemachine jumps to a new state called "waiting Ack", and there, a ping is sent (via socket) to the system in charge of executing the selected process. Once an ack answer is received from the system pinged, the statemachine jumps to the state associated to execute the process selected and once finished it returns to the initial state. According to your solution I should have as many "waiting ack" states as types of process are, but if I could know what transition lead to the single "waiting Ack" state, I could unify all the "waiting Ack" small states in only one by inserting a switch in the entered state slot.
Any idea or suggestion to design my system?
Bookmarks