Tive estudando sobre a divisão e modularização do sistema. Nest link encontrei uma boa discurção sobre a divisão por funcionalidades e nao por camadas.
http://www.javapractices.com/topic/TopicAction.do;jsessionid=84C1D035807B209207C3C185CB643CD4?Id=205
A duvida surgiu quando estou trabalhando com os meus objetos de dominio. Pois, segundo esta referencia, cada objeto deve ficar no mesmo pacote. O problema é que eu tinha imaginado e ja implementado algo como
cia.core // Pacote que possui os objetos de dominio da aplicação
cia.report // pacote das classes de relatorio
cia.persiste // pacote que contem a persistencia dos objetos de dominio
cia.util //pacote que contem as Classes utilitarias
cia.resourse // Recursos da apliacação
E tenho que deixa-lo modularizado de forma que possa entregar o modulo de matricula, gerenciamente, cadastro,frequencia etc. Como resolver isso?
Repito já esta funcionando o problema é que as classes de outros pacotes possem acesso diretos a classes de outros pacotes.
Pra organiza-lo com deveria proceder?