Bom cara vamos começar, você estereotipou suas classes <> o que me lava a crer que se trata de classes de modelo, então pode tirar tudo relacionado a CRUD, adicionar, excluir, editar e listar! Pois um modelador experiente saberá que esses métodos são subentendidos, todas o terão, pois não há como uma classe dessas ter contexto de banco de dados se você não consegue adicionar, excluir, editar e listar.
Cnpj, cpf, matrícula, e telefone o mais usual é usar o tipo String, você só deve
usar tipo numérico se for fazer algum cálculo, fora isso, não use! Procure estudar os tipos para não usar um tipo muito custoso (em termos de desempenho) para o sistema à toa.
Eu não sei qual linguagem você usará, mas se for Java, comece variáveis com minúscula sempre, só use maiúscula em caso de palavra composta!
Ex: telefone, tipoMaterial…
Método a mesma regra, não use espaço em variáveis (tipo material), use tipo_Material, o seu diagrama deve se aproximar da linguagem, mas só se for um projeto de faculdade, pois os professores são chatos e implicam com tudo. É bom se acostumar, pois não vai gerar mal costume!
Cuidado com esses relacionamentos, estão meio estranhos, no empregado e produto, você esta dizendo que deve haver referência de empregado em produto e/ou vice-versa. Eu como avaliador vou direto procurar na sua classe essa referência e no banco também se não houver, fica errado, concorda?
Abraço, espero ter ajudado.
Site:http://www.jorgeluis.eti.br
Blog:http://blog.jorgeluis.eti.br
E-mail:[email removido]