В прошлом я работал программистом над некоторыми механизмами рабочих процессов, но никогда не понимал, почему мы выбрали двигатели рабочих процессов в первую очередь. И как программист, я знаю, что есть по крайней мере 100 способов сделать что-нибудь, когда вы пишете код, но только немногие из них являются лучшими!
Я до сих пор не понимаю, какие варианты использования лучше всего решать с помощью механизмов рабочих процессов (или, скорее, их концепции), чем разрабатывать хорошее приложение с поддержкой DI. Я ищу какие-либо общие характеристики случаев использования, не зависящих от предметной области, где рабочие механизмы являются одним из лучших вариантов.
Итак, мой вопрос: каковы общие характеристики требования, которое может быть взято в качестве сигнала для выбора хорошего механизма рабочего процесса и кодирования вокруг него?