Não vejo como simplificação de código a necessidade de manter lógica de negócio, lógica de armazenamento e de banco de dados em vários lugares. São poucos casos que exigem isso. Mas não concordo com a parte de simplificação de código. Nos meus sistemas eu mantenho os dados em memória, para carregar somente uma vez e a cada mudança eu salvo localmente quando recebo o retorno da requisição feita. Só isso. E só isso é muuuuito mais complexo do que requisitar os dados a cada vez que entrar na tela. Muito. E eu sequer armazeno localmente, sequer tenho estrutura de sincronização e sequer tenho resolução de conflitos, nem filas etc. Enfim... acho que é válido, sim. Meu sistema foi escrito com esse propósito futuro, mas não é nada simples.