Поскольку мой первый вопрос был таким долгим, я задаю это как отдельный вопрос. Это еще один вопрос об архитектуре актерского приложения.
Отслеживание путей сообщений через приложение
Возьмем кусок кода Java:
public void deleteTrades(User user, Date date) {
    PermissionSet ps = permissionService.findPermissions(user)
    if (ps.hasPermission("delete")) {
        Set<Trade> ts = peristence.findTrades(date);
        reportService.sendCancelReports(ts);
        positionService.updateWithDeletedTrades(ts);
    }
}
В этом коде у меня есть 4 отдельных компонента, и взаимодействие между ними, необходимое для процедуры deleteTrades, хорошо определено. Он полностью содержится в методе deleteTrades.
Моделируя это с помощью Actor и заменяя мои 4 компонента четырьмя отдельными участниками, как мне отслеживать (на мой взгляд), что включает в себя процедура? В частности, если я избегу использовать оператор  !?, то скорее всего я отправлю сообщение ConditionalDelete на мой PermissionActor, который будет отправлять сообщение GetTradesAndDelete на my PersistenceActor, который затем отправит дальнейшие сообщения и т.д. Код для обработки удаления будет разбросан по моему приложению.
Это также означает, что почти каждому актеру нужен дескриптор для каждого другого актера (для пересылки сообщений).
Как и в моем предыдущем вопросе, как люди справляются с этим? Есть ли хороший инструмент моделирования, который позволяет вам отслеживать все это? Используют ли люди  !? Я превращаю слишком много компонентов в Actor s?
