Disclaimer: это лишь мой опыт, и мое мнение.
Я бы рекомендовал почитать вообще про архитектуру Web/Enterprise приложений, и обратить внимание на четырехслойную архитектуру(слои: представлений, сервисы, бизнесс, dao). Картинку и описание этой архитектуры я не нашел, но каждый слой можно прогуглить. Сразу стоит уточнить что слой и уровень это не одно и то же.
Для изучения также можно смотреть на доклады с видео-конференций, например:
Также я видел
описание архитектуры Skyforge.
Если посмотреть Ваши шаги, то я бы так расставил обязанности:
1) (?) сервер приложений (если я правильно понял)
2) слой сервисов
3) dao
4) консистентность к сервисам
5) бизнесс слой
6) представления
Дополнительный свойства обеспечиваются с помощью аспектов (логи, безопасность).
Обработка ошибок, я бы назвал обработкой исключений, происходит вообще в отдельном месте, и она не относится ни к каким слоям, скорее тоже обеспечивается аспектами.
Для обеспечения "понятным, легко поддерживаемым, расшияемым и т.д. " необходимо, как ни странно, соблюдать правила Clean Code и т.п. (см. Парадигмы ООП выше).