Teste de arquitetura, criticas e sugestoes por favor

Bom conclui a arquitetura de um sistema e agora queria um feedback, onde posso melhorar ou onde eu errei, la vai o codigo pseudo java para melhor entendimento:

Como é um cliente ria, essa primeira parte é um pouco estranha, basicamente um controller chamando um servico de dominio.

                OrdemServServico service = new OrdemServServico();
                var query = service.ListaOrdemServico();
                service.Load(
                        query,
                        result =>
                        {
                                if (!result.HasError)
                                {
                                        //sucesso
                                }else{
                                        //erro
                                 }
                        },
                        null);

Aqui vou usar o service layer do fowler implementada como domain façade, o que provavelmente vao falar é sobre o uso de repositorios e dao. Pretendo usar um ORM ainda nao sei qual, tambem ha possibilidade de nao usar um ORM oq vcs recomendam??deixo como ta?

   class OrdemServServico.....
    {
        ListaOrdemServico(OrdemServico ordemServico) {
            IRepositorioOrdemServico OrdemServicoRepo = new OrdemServicoDAO();
            OrdemServicoRepo.GetOrdemServico();
        }
   }

o dao e o rep…falem mal


    interface IRepositorioOrdemServico
    {
        Adicionar(OrdemServico ordemServico);
        List getOrdemServico();
    }

   class OrdemServicoDAO : IRepositorioOrdemServico
   {
         Adicionar(OrdemServico _ordemservico){
                  ........................
          }
          GetOrdemServico(){
                  ........................
          }
   } 

para simplificar vai a imagem, acredito que para começar ja basta:

[quote=Crown] class OrdemServServico..... { ListaOrdemServico(OrdemServico ordemServico) { IRepositorioOrdemServico OrdemServicoRepo = new OrdemServicoDAO(); OrdemServicoRepo.GetOrdemServico(); } } [/quote]Bem, está parecendo q vc está confundindo Repository com DAO. :roll: São Patterns (totalmente) diferentes e, por conseguinte, layers totalmente diferentes. Cada existe para um finalidade diferente. Em todo caso seria interessante vc dar 1 olhadinha neste tópico: http://www.guj.com.br/posts/list/15/209085.java#1071740