Это может означать, что ваши установочные инструменты устарели. Вы можете исправить это, выполнив: pip install --upgrade setuptools
Смотрите на Луковую Архитектуру Jeffrey Palermo. Эта архитектура помещает Ядро (Модель предметной области, Domain Services, Прикладные службы) Вашего приложения в центре. Ядро не ссылается ни на что больше, и все остальное действительно ссылается на ядро. Персистентность является слоем сверху ядра, как UI, как тесты.
У Martin Fowler есть Шаблоны Архитектуры приложений для предприятия.
Я предположил бы, что Доменный Управляемый Дизайн Eric Evans - особенно разделяет 3 и 4.