У меня сложилось впечатление, что это не преемник для MVC, а дополнение , например, рисунок 5 в статьи artima о DCI и то и другое. Я думаю, что это должно помочь сделать различие между моделью и контроллером более разумным, или, возможно, между другой частью контроллера или различными частями модели.
Основная идея, по-видимому, заключается в том, чтобы разделить логику для конкретных действий наших классов данных и переместить их в traits / mixins / что угодно, одно действие на пользователя. У вас будет много маленьких кусочков кода вместо нескольких больших кусочков. Кроме того, похоже, что добавление новых миксов должно быть «лучше», чем добавление функциональности в ваши базовые классы. Код для отдельных действий, вероятно, будет (я думаю?) Более распространенным, но код для различных действий должен быть более четко и очевидно разделен.