Modelo Arquitetural de um Projeto
Segue um modelo de arquitetura de um projeto que estou trabalhando atualmente. Um modelo baseado em referencias legadas e o bom e velho Struts.
Classes Actions (métodos) e Forms (objeto que represente os dados que transitam na tela) para tratar as perspectivas de tela junto as JSP`s e JavaScripts. Onde essas classes são configurados no struts-config.xml.
Como todo sistema tem suas funções genéricas guardadas na classe Utils e um tratamento de logs e mensagens.
As classes de Business Delegate fazendo uma ponte entre a camada de visão e a camada de Controle evitando o acesso direto as regras de negocio.
As classes de Business Object que mantem as regras de negocio e se ligam a camada de persistência que esta baseada em um conceito mais antigo (antes do JPA) através de DAO`s (persiste os dados) e TO`s (os beans modernos, ou seja, carregam os dados).