• 6)Construa um diagrama ER para uma Indústria, que atenda ao seguintes requisitos: Cada Funcionário pode estar alocado a somente um Departamento. Cada Funcionário pode pertencer a mais de um Projeto. Um projeto pode utilizar-se de vários Fornecedores e de várias Peças. Uma Peça pode ser fornecida por vários Fornecedores e atender a vários Projetos. Um Fornecedor pode atender a vários Projetos e fornecer várias Peças. Um Depósito pode conter várias Peças. Deseja-se ter um controle das peças utilizadas por cada Projeto, identificando o seu Fornecedor. Gravar as informações de data de Início e Horas Trabalhadas no Projeto.

Passo 1

Resumindo o que o enunciado pede: montar um diagrama Entidade-Relacionamento para uma indústria em que há as seguintes regras de negócio principais:
  • Cada Funcionário está alocado a um só Departamento.
  • Cada Funcionário pode participar de vários Projetos, e cada Projeto pode ter vários Funcionários. No vínculo entre Funcionário e Projeto devemos guardar data de início e horas trabalhadas.
  • Cada Projeto utiliza várias Peças e conta com vários Fornecedores; cada Peça pode ser fornecida por vários Fornecedores e usada em vários Projetos; cada Fornecedor atende vários Projetos e fornece várias Peças. Como precisamos “controlar as peças usadas por cada Projeto identificando o seu Fornecedor”, este vínculo envolverá Projeto+Peça+Fornecedor.
  • Cada Depósito pode conter várias Peças.
Conteúdo aplicado: modelagem ER, identificação de entidades, atributos, relacionamentos (binários e ternários) e cardinalidades.

Passo 2

Identificar as entidades com suas chaves primárias e atributos essenciais:
  • Entidade Departamento:
    • chave: deptID
    • atributo: nomeDepto
  • Entidade Funcionário:
    • chave: funcID
    • atributos: nome, endereço, …
  • Entidade Projeto:
    • chave: projID
    • atributo: nomeProj
  • Entidade Fornecedor:
    • chave: forID
    • atributo: nomeFor
  • Entidade Peça:
    • chave: pecID
    • atributo: descrição
  • Entidade Depósito:
    • chave: depID
    • atributo: local

Passo 3

Relacionamentos envolvendo Funcionário:
  • Alocação entre Funcionário e Departamento (1 para muitos):
    • Cada funcionário está em um único departamento, cada departamento tem vários funcionários.
  • Participação entre Funcionário e Projeto (muitos para muitos), com atributos do relacionamento:
    dataInício
    horasTrabalhadas

Passo 4

Relacionamento ternário Fornecimento(Projeto, Fornecedor, Peça):
  • Justificativa: para saber qual fornecedor forneceu qual peça para qual projeto, usamos um relacionamento ternário.
  • Cardinalidades implícitas do ternário: cada tupla (Projeto, Fornecedor, Peça) indica “o fornecedor X fornece a peça Y ao projeto Z”.
  • Sem atributos extras obrigatórios além da identificação do tripé, mas poderíamos incluir, por exemplo, quantidade se fosse necessário refinar o controle de peças.

Passo 5

Relacionamento Contém entre Depósito e Peça (muitos para muitos):
  • Cada depósito pode conter várias peças.
  • Cada peça (tipo) pode estar em vários depósitos.
  • Poderíamos armazenar no relacionamento, se desejado, uma quantidadeEmEstoque.

Resposta

Entidades e chaves primárias:
• Departamento(deptID)
• Funcionário(funcID)
• Projeto(projID)
• Fornecedor(forID)
• Peça(pecID)
• Depósito(depID)
Relacionamentos e cardinalidades:
• Departamento ←1:N→ Funcionário (Alocação)
• Funcionário ←M:N→ Projeto (Participação) com atributos dataInício e horasTrabalhadas
• Projeto–Fornecedor–Peça (Fornecimento): relacionamento ternário para indicar que um fornecedor fornece uma peça a um projeto
• Depósito ←M:N→ Peça (Contém), opcionalmente com quantidadeEmEstoque

Exercícios relacionados