Trabalho concernente à disciplina de Desenho de Software Cliente-Servidor, ofertada para o curso de Tecnologia em Análise e Desenvolvimento de Sistemas, na PUC - GOIÁS.
Decidimos partir para a fase de codificação. Mais especificamente, queremos implementar cadastro de anúncios e usuários na aplicação. Para fazer isso, decidimos voltar na análise dos diagramas de classes e banco de dados, de modo a orientar mais responsavelmente a escrita de algoritmos.
Quanto ao diagrama de classes, observamos que:
[ ] A estrutura MVC deve ser mais bem distribuída, de modo que a aplicação possua responsabilidades bem atribuídas, alinhadas às regras de negócio que discutimos.
[ ] No pacote Entidades, observamos que:
[ ] a classe Boleto deve ser excluída;
[ ] as classes Estado e Cidade devem ser associadas à classe Serviço, em detrimento do relacionamento com a classe Colaborador;
[ ] a classe Cartão continua a relacionar-se com a classe Pessoa (que pode ser abstrata), de modo que torne-se um atributo de implementação facultativa;
[ ] o relacionamento de Herança entre Pessoa, Cliente e Colaborador permanece, de modo que será implementado sem problemas;
[ ] Como observação futura, vale lembrar que Kotlin possui a estrutura de dataclass, que possivelmente possibilita a implementação de beans de maneira otimizada. Tópico a verificar.
[ ] No pacote DAO, observamos que:
[ ] decidimos por refatorar esta estrutura de modo a implementar alguns dos principios SOLID para desacoplamento de código, sendo que, inicialmente, faremos a implementação do acesso a dados de maneira dependente de interfaces, a fim de preservar a integridade das regras de negócio.
[ ] o método +ValidarLogin, contido na classe PessoaDao, foi alvo de dúvidas e, diante disso, decidimos por estruturar a parte de Autenticações à parte no pacote Dao, para que funcionalidades de autenticação não fiquem 'perdidas' em meio a funcionalidades de cadastro individual de usuários do sistema.
Decidimos partir para a fase de codificação. Mais especificamente, queremos implementar cadastro de anúncios e usuários na aplicação. Para fazer isso, decidimos voltar na análise dos diagramas de classes e banco de dados, de modo a orientar mais responsavelmente a escrita de algoritmos.
Quanto ao diagrama de classes, observamos que: