Pete O'Hanlon
Читая ваш вопрос, я сначала подумал, что вы описываете классический подход, основанный на рабочем процессе. В принципе, вы хотите, чтобы механизм рабочего процесса сам решал, какому пути кода следовать. Например, предположим, что вы обрабатываете запрос на страховую квоту, ваш рабочий процесс может выглядеть примерно так:
Enter details > Compare details to risk matrices > Generate quote
Это и есть "счастливый путь" через вашу систему. На самом деле ваш рабочий процесс будет содержать филиалы, где вам нужно уйти и сделать что-то еще; например, если матрицы рисков указывают, что это клиент с высоким риском, вы можете направить запрос предложения в другой отдел для ручного вмешательства.
Теперь не все подходы, основанные на рабочих процессах, потребуют от вас работы над длительными задачами, поэтому вполне приемлемо создавать цепочки рабочих процессов, соответствующие вашим потребностям. Однако в большинстве систем документооборота есть визуальные конструкторы, которые позволяют создавать цепочки правил и задач.
Ты ведь знаешь, что я тебе сейчас предложу? Да, пришло время вам отправиться и исследовать некоторые механизмы документооборота. Я бы начал с Microsoft Workflow Foundation (он находится в свободном доступе, и вокруг него есть множество обучающих ресурсов).