Uma pequena duvida em como começar minhas classes

Boa noite gente boa do forum!
Primeiramente bom final de semana para vcs…

Pessoal eu estou tentando refazer um trabalho de faculdade da maneira correta (eu digo do jeito bonito, sem pressa, usando boas praticas sem POG’s).
Eu iniciei meu projeto fazendo o modelo de banco de dados, o mesmo ficou como na figura abaixo:

Uploaded with ImageShack.us
Minha duvida esta em como fazer minhas classes, pois como utilizarei DAO para executar a persistência do meu sistema eu devo fazer que meus POJO’s sejam condizentes com minhas tabelas do banco de dados.
O que eu preciso é somente que alguém me de uma luz que após isso eu me viro…
Vamos la:
Como vcs podem ver, minha tabela funcionario por exemplo, ela se relaciona com duas tabelas, Funcao e Telefone…
No Java eu devo fazer uma classe para Funcionario e uma para telefone, ou faço apenas a tebela de Funcionario e deixo os demais dados de telefone como atributos comuns?
Eu devo fazer classes para representar as tabelas de ligação (ItemEscala, EntregaRealizada e etc) ou devo tratar isso quando meu sistema for “executar” as querys no BD?

Pessoal, essas são minhas duas duvidas.
Agradeço desde ja pela ajuda.
Flw :thumbup:

Olá

No Java eu devo fazer uma classe para Funcionario e uma para telefone, ou faço apenas a tebela de Funcionario e deixo os demais dados de telefone como atributos comuns?
Pelo jeito que você modelou são duas entidades Funcionário e Telefone.

Para implementação sugiro que começe a fazer por etapas, digo assim vamos fazer o fluxo de gravar um funcionário.

  1. Cria seu DAO (CRUD)
  2. Cria seu BD
  3. Gere as interfaces visuais para Gravar, Consultar, Editar e Excluir.

Faz o teste deste Caso de Uso Funcionário, validado e aprovado, próximo passo gravar telefone para esse funcionário… e assim por diante.

Fiz o exemplo de funcionário, mas pode ser qualquer outra entidade (Caso de Uso), mas o truque é definir suas iterações.
Iterações (image

) com:
Levantamento de requisito, análise de requisito, projeto, implementação, teste e implantação. Repetir esse ciclo até o final do seu projeto.

Isso faz com que você tenha sempre algo para entregar, e tenha também algo visual para demonstrar para seu cliente.
E caso tenha que mudar algo que já está implementado torna mais fácil.
Em resumo estou falando da Metodologia RUP, Modelo Iterativo e Incremental de desenvolvimento.
Creio que deva ter uma metodologia de desenvolvimento, caso não veja o RUP ou Scrum (Ágil), vai ajudar bastante para desenvolver esse projeto.

Espero ter ajudado
Flwss

[quote=thiago.filadelfo]Olá

No Java eu devo fazer uma classe para Funcionario e uma para telefone, ou faço apenas a tebela de Funcionario e deixo os demais dados de telefone como atributos comuns?
Pelo jeito que você modelou são duas entidades Funcionário e Telefone.

Para implementação sugiro que começe a fazer por etapas, digo assim vamos fazer o fluxo de gravar um funcionário.

  1. Cria seu DAO (CRUD)
  2. Cria seu BD
  3. Gere as interfaces visuais para Gravar, Consultar, Editar e Excluir.

Faz o teste deste Caso de Uso Funcionário, validado e aprovado, próximo passo gravar telefone para esse funcionário… e assim por diante.

Fiz o exemplo de funcionário, mas pode ser qualquer outra entidade (Caso de Uso), mas o truque é definir suas iterações.
Iterações (image

) com:
Levantamento de requisito, análise de requisito, projeto, implementação, teste e implantação. Repetir esse ciclo até o final do seu projeto.

Isso faz com que você tenha sempre algo para entregar, e tenha também algo visual para demonstrar para seu cliente.
E caso tenha que mudar algo que já está implementado torna mais fácil.
Em resumo estou falando da Metodologia RUP, Modelo Iterativo e Incremental de desenvolvimento.
Creio que deva ter uma metodologia de desenvolvimento, caso não veja o RUP ou Scrum (Ágil), vai ajudar bastante para desenvolver esse projeto.

Espero ter ajudado
Flwss

[/quote]

Cara, sua dica clareou bastante o meu pensamento.
Vlw mesmo, vou fazer da maneira que vc sugeriu…
Eu estava pensando e planejando de uma forma em que tudo seria feito de primeira, mas na metodologia que vc sugeriu ficara mais simples.
Obrigado, qualquer duvida eu volto aqui.

Obrigado pessoal.

Cara, basicamente se você apenas precisar inserir um telefone?, ele pode ser um atributo da classe Funcionário, já que ele apenas compõe um dado do funcionário.
Legal sua modelagem, fez em qual ferramenta?

espero ter ajudado!

[quote=thiago.filadelfo]Olá

No Java eu devo fazer uma classe para Funcionario e uma para telefone, ou faço apenas a tebela de Funcionario e deixo os demais dados de telefone como atributos comuns?
Pelo jeito que você modelou são duas entidades Funcionário e Telefone.

Para implementação sugiro que começe a fazer por etapas, digo assim vamos fazer o fluxo de gravar um funcionário.

  1. Cria seu DAO (CRUD)
  2. Cria seu BD
  3. Gere as interfaces visuais para Gravar, Consultar, Editar e Excluir.

Faz o teste deste Caso de Uso Funcionário, validado e aprovado, próximo passo gravar telefone para esse funcionário… e assim por diante.

Fiz o exemplo de funcionário, mas pode ser qualquer outra entidade (Caso de Uso), mas o truque é definir suas iterações.
Iterações (image

) com:
Levantamento de requisito, análise de requisito, projeto, implementação, teste e implantação. Repetir esse ciclo até o final do seu projeto.

Isso faz com que você tenha sempre algo para entregar, e tenha também algo visual para demonstrar para seu cliente.
E caso tenha que mudar algo que já está implementado torna mais fácil.
Em resumo estou falando da Metodologia RUP, Modelo Iterativo e Incremental de desenvolvimento.
Creio que deva ter uma metodologia de desenvolvimento, caso não veja o RUP ou Scrum (Ágil), vai ajudar bastante para desenvolver esse projeto.

Espero ter ajudado
Flwss

[/quote]

Cara, sua dica clareou bastante o meu pensamento.
Vlw mesmo, vou fazer da maneira que vc sugeriu…
Eu estava pensando e planejando de uma forma em que tudo seria feito de primeira, mas na metodologia que vc sugeriu ficara mais simples.
Obrigado, qualquer duvida eu volto aqui.

Obrigado pessoal.

[quote=carlowsh]Cara, basicamente se você apenas precisar inserir um telefone?, ele pode ser um atributo da classe Funcionário, já que ele apenas compõe um dado do funcionário.
Legal sua modelagem, fez em qual ferramenta?

espero ter ajudado!
[/quote]

Cara, eu utilizei o DBDesigner da FabForce.
Ele integra com o MySQL 5 e outros BD’s que agora não vou lembrar…
É uma ferramenta muito boa eu recomento, sem fala que é free.