Isso é um pouco semelhante a essa pergunta, mas mais amplo.
Em geral, com ORMs como EF 4.1 suportando POCOs, agora faz sentido que as entidades do seu domínio sejam os objetos que persistem no seu banco de dados?
Com ORMs mais antigos, como EF 4 ou Linq-to-SQL, seus "objetos de banco de dados" eram gerados automaticamente e fortemente acoplados ao seu banco de dados e, portanto, para aplicativos não triviais, eram mapeados para entidades de domínio mais robustas e inteligentes antes de serem colocar para trabalhar.
A ideia dos ORMs mais novos é criar apenas entidades de domínio robustas e, em seguida, ter uma camada de dados que simplesmente forneça um mapeamento entre essas entidades de domínio e o DBMS?
Por escrito, sinto que esse sempre foi o objetivo, mas não é fácil (facilmente) possível com as ferramentas disponíveis, pelo menos não no mundo .NET.