Обычно для меня реальная проблема заключается в следующем утверждении:
"Этот вопрос задается в отношении
нетривиальные системы, которые включают
сотни таблиц базы данных. "
Добавлены ненужные сложности. Это происходит независимо от того, какие подходы вы упомянули, но обычно это основная часть реальных проблем.
Обратите внимание, что если у вас есть «система, которая состоит из таблиц базы данных», вы должны говорить не об одной системе / контексте, а о наборе приложений / контекстов. Независимо от того, если в конце концов вы в итоге поместите одну и ту же БД, сложность решается тем, что вы не смоделируете ее как одну огромную вещь, которая в единую огромную БД. Ограниченный контекст - это модное слово в наше время.
Начиная с POCO, не означает, что в дальнейшем вы не сможете расширять / настраивать, где это необходимо. Это еще одна реальная проблема, преждевременная оптимизация.