Duvida na modelagem de dados

Boa tarde a todos, tentarei ser objetivo na pergunta, espero que alguém possa me ajudar…

Resumidamente esta é a situação:

Meu sistema é usado para cadastrar projetos de pesquisa e desenvolvimento, ele é divido em duas fases, a Proposta(antes da execução do projeto) e o Execução (durante e depois de o projeto ser executado).

Depois da proposta concluída, começa a execução do projeto, a parte de execução usa muitas tabelas que estão na proposta, porém, depois que a proposta está concluída nenhum dos registros poderão ser editados.

Procurando a reutilização das tabelas e inseri um campo TIPO na tabela PROPOSTA este campo é um tipo de dominio:

Quando o TIPO é proposta, uma versão dela é gerada, e assim consigo guardar o historico da proposta…
Quando o TIPO é Execução, ele pega os registros da proposta e pode editar os campos e inserir novos (sem alterar em nada os registros da PROPOSTA);

O Esquema para resolver isso consegui encontrar, usando o codigo da proposta no execução, usando versionamento (proposta concluida tem versão 10, execução será versão 1), e este TIPO_DOMINIO que pode assumir dois valores…

A minha duvida é: Este campo TIPO_DOMINIO, deve estar em todas as tabelas da proposta que serão usadas na Execução ???

Caso tenha ficado complexa pergunta é só avisar, que tento explica melhor… Valeu, Obrigado a todos!!!

ei LeandroMario, vc esta utilizando alguma ferramenta para modelar o seu banco de dados, tem como voce postar o seu der ou mer, pra mim da uma olhada?

Oi, Leandro

Descreva melhor a regra do que você esta fazendo, de mais enfase ao negocio, ao problema que voce tem que resolver do que a forma como voce esta pensando em resolver. Fica mais facil para nós ajudarmos.

lineofgol, Pois é cara estou usando o ErWin. Devido a politicas da Empresa não posso postar nenhum documento que tem relação com o sistema. Mas mesmo assim obrigado. Quem sabe se explicando melhor, você consegue me dar alguma dica.

YvGa vou tentar ser mais especifico, me perco um pouco para explicar, mas vamos tentar!!!

Para uma proposta concluida, existirá somente uma execução.

Esta proposta, seria a previsão de como será elaborado o projeto, incluindo quais empresas, equipes participarão do projeto, nela também é dito quais etapas serão necessarias para execução, e os recursos financeiros que serão usados.

A Execução será o projeto realizado, trazendo as empresas, equipes, etapas, e recursos usados para execução do projeto.

A proposta(previsto) ficará “guardada” e nada do que foi declarado nela poderá sofrer alterações.

Para a execução do Projeto as informações da proposta deverão ser importadas (replicadas), e já no modulo de EXECUÇÃO, essas informações poderão ser EDITADAS.

Após a conclusão do projeto, será feito uma comparação entre o que estava previsto(proposta), e como foi realizado(execução).

Basicamente o problema a resolver é esse, usar as tabelas e informações da proposta na execução, mas cada uma terá seu proprio historico.

To perdido nessa questão, se tenho o campo TIPO_DOMINIO na proposta (todo), terei que ter este mesmo campo nas tabelas Empresas,Equipes,Etapas,Recursos(partes) ???

Obrigado pela atenção!!!

Entao, Leandro.

Primeiro, desculpe pela demora na resposta.

Agora, ficou um pouco mais claro seu problema. Mas mesmo assim tenho que ter cuidado pra te dar qualquer “dica” porque nao tenho a visao geral do problema.

O ponto é qua as vezes tentamos ser mais real que o rei. Veja se realmente vale a penas você “reaproveitar” a mesma tabela para duas coisas que são distintas na pratica.

A minha primeira impressao é que voce esta pondo complexidade num modelo em que a “duplicacao” talvez fosse mais simples, pois proposta e execucao são de fatos coisas distintas.

Como eu disse eh dificil responder com certeza com tao pouca informacao, mas assim a seco a minha ideia seria tentar eliminar esse campo de tipo.

Opa, tudo certo Yvga???

Pois é meu camarada, também pensei nessa possibilidade de que a duplicação das tabelas, de fato seria uma alternativa menos complexa, e mais tranquilo para manutenções.

Mas infelizmente, essa alternativa citada foi o coordenador do projeto que propôs, e eu como um mero Analista Jr. tive que acatar…

Na verdade a duplicação das tabelas, não caberiam apenas a 5 tabelas mas algo em torno de 20 tabelas, com a duplicação obteríamos 40 tabelas, isso foi o que fez ele pensar nessa alternativa(Tipo_dominio). Como nosso contato não é direto, e a paciência dele não é das maiores, fiquei com duvida em algumas questões… principalmente essa citada.

Ainda estou me batendo neste problema, com um pouquinho mais de claridade…

Mas ainda assim, Muito Obrigado pela atenção Yvga…

Caso alguma luz apareça, eu volto aqui para discutir as possibilidades…

Até mais

Bom, nesse caso de tantas tabelas assim talvez duplicar nao seja realmente a melhor opcao. Mas que esse modelo esta estranho esta.