É normal especificar os BOs, VOs, DAOs no diagrama de classes?
Se sim, qual o relacionamento dessas classes com suas entidades? Por exemplo, tenho Empresa e EmpresaDAO. No diagrama de classes, como seria especificada essa relação?
Como essas classes (BOs, VOs, etc) são chamadas? Utilitárias?
Eu as chamaria de “Dominio”, ou Domain Model…
E elas devem aparecer sim nos seus diagramas!
Eu sempre as coloco nessa estrutura, partindo do me objeto de negocio inicial
EmpresaService solicita a criação de um repositorio a RepositoryFactory
RepositoryFactory retorna uma instancia de EmpresaDAO sobre a interface EmpresaRepository
EmpresaDAO executa métodos de acesso no BD, retornando entidades Empresa
[quote=rodrigoallemand]Eu as chamaria de “Dominio”, ou Domain Model…
E elas devem aparecer sim nos seus diagramas!
Eu sempre as coloco nessa estrutura, partindo do me objeto de negocio inicial
EmpresaService solicita a criação de um repositorio a RepositoryFactory
RepositoryFactory retorna uma instancia de EmpresaDAO sobre a interface EmpresaRepository
EmpresaDAO executa métodos de acesso no BD, retornando entidades Empresa
[/quote]
Deixa eu tentar entender essa joça de uma vez por todas.
EmpresaService seria teu BO?
Ainda não entendi essa história de RepositoryFactory. Qual a responsabilidade dessa classe? Ela “atua” com os DAOs?
Qual seria o relacionamento entre essas classe? Associação? Composição?
esse negócio de BOs, VOs e DAOs fazem parte do mundo da modelagem de faz-de-conta que só existe no Java. Dê uma estudada em algum livro que fale de modelagem em UML, repare que eles não mencionam esses patterns. E nem deveria, pois são técnicas utilizadas devido a limitações do J2EE.
Em um diagrama de alto nível, você não coloca os BOs, VOs e DAOs pois é detalhe de implementação. Mas se ainda sim você achar necessário, acredito que o relacionamento entre, por exemplo, Empresa e EmpresaDAO é de dependência (aquela seta tracejada).
esse negócio de BOs, VOs e DAOs fazem parte do mundo da modelagem de faz-de-conta que só existe no Java. Dê uma estudada em algum livro que fale de modelagem em UML, repare que eles não mencionam esses patterns. E nem deveria, pois são técnicas utilizadas devido a limitações do J2EE.
Em um diagrama de alto nível, você não coloca os BOs, VOs e DAOs pois é detalhe de implementação. Mas se ainda sim você achar necessário, acredito que o relacionamento entre, por exemplo, Empresa e EmpresaDAO é de dependência (aquela seta tracejada).[/quote]
Maravilha, vou fazer isso. Não faço questão de colocar as classes no modelo, apenas gostaria de saber a melhor prática. Normalmente não coloco os DAOs (único que utilizo, por enquanto) no modelo.
Eu tenho o UML 2, Guia Rápido e Prático do Dan Pilone e Neil Pitman. Realmente nada disso é citado!
Estou de olho em um livro que vi na Saraiva, se não me engano é “Modelagem UML para Java”, ou algo do tipo.
Obrigado pelos esclarecimentos, principalmente quanto ao relacionamento!