Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

Existe relacionamento entre as duas entidades expostas abaixo?

Olá!

Pessoal, num sistema hipotético para manipular registros de alunos em uma universidade, temos a entidade "aluno" e a entidade "administrador do sistema", que pode deletar alunos que saiam da universidade.

Como seria esse relacionamento? Os administradores podem deletar zero ou N alunos, então ficaria (0, N)?

E do lado dos alunos, considerando que o relacionamento é adm -> deleta -> aluno, como ficaria a cardinalidade?

Obrigada!

5 respostas

Olá Mariana, tudo bem?

Todos esses pontos dependem das regras de negócio do projeto como também dos requisitos levantados, então podemos analisar alguns pontos:

  • O administrador do sistema ele apenas exclui alunos ou ele pode realizar as quatro operações básicas (criação, consulta, atualização e exclusão) ?

  • Quantos administradores podem existir no sistema, um, dois ou vários?

  • Um aluno pode ser administrado por vários ou apenas um administrador?

  • A entidade Administrador existe sem a entidade Aluno e a entidade Aluno consegue existir sem a entidade Administrador?

Então Mariana, esses são alguns pontos que podem ser analisados para criar o relacionamento entre Administrador e Aluno.

Aguardo o seu retorno!

Oi, Danielle! Sua resposta já abriu minhas vistas pra uma outra pergunta! Mas, primeiro, o que você colocou:

  • O Administrador, nesse caso específico, apenas exclui. Eu sei que por enquanto não faz muito sentido, mas é que outras funções do crud são responsas de outra entidade no projeto.
  • Podem existir vários administradores e qualquer um deles pode deletar um ou mais alunos.
  • O administrador existe sem o aluno e o aluno sem o administrador.

Escrevendo isso, imagino que seja Administrador (0, N) ---> (1,1) entidade associativa[delete] (1,1) ---> (0, N) Aluno... Cheguei nessa conclusão agora...

E lá vai a outra pergunta, já que estamos falando de CRUD, rs:

É bem isso mesmo Mariana, sempre devemos seguir as regras de negócio do projeto, assim conseguiremos identificar os relacionamentos. Mas não consegui compreender muito bem a sua segunda dúvida, você poderia dar algum exemplo?

Aguardo retorno!

Danielle, desculpa a demora!

Ah, sobre a segunda dúvida, fiz um MER pra te dar como exemplo.

Nesse caso, em resumo:

  • A professora pode ler o registro de aluna e vice-versa;
  • A aluna pode criar uma dúvida;
  • A aluna pode atualizar seu próprio registro;
  • A administradora pode deletar qualquer dúvida, se considerar fora das regras.

É isso mesmo? Num esquema de CRUD a gente adiciona "create", "read", "update" e "delete" nos losangos?

solução!

Olá Mariana!

Ao criar um relacionamento é associado a ele um verbo, e esse verbo representa a ligação(ação) existente entre as duas entidades, por exemplo:

  • Funcionário GERENCIA Departamento

relacionamento entre funcionário e departamento

Os relacionamentos são formados em cima das regras de negócio do projeto, esse seu MER precisa ser uma representação do que acontece no mundo real, do que vai acontecer quando o seu banco de dados estiver pronto. Então, a partir do relacionamento existente entre as entidades é que o verbo é definido.

No caso do seu projeto, quais são esses registros que serão acessados, é os dados de cadastro do professor e do aluno ?

O professor e o aluno precisam ser cadastrados no sistema? Se sim, quem vai realizar o cadastro ? Será o Administrador ? Se sim , então ele tem uma relação com aluno e com professor

E a relação entre eles ficaria da seguinte forma:

  • Administrador -- GERENCIA -- Aluno
  • Administrador -- GERENCIA -- Professor

Caso o Administrador faça apenas a exclusão dos professores, então sim, o relacionamento entre eles está correto:

  • Administrador -- Exclui -- Professor

Então, para definir a relação entre as entidades, você precisa analisar as regras do negócio, como instrutor fez na aula 03 Relacionamentos, na atividade 03 Cardinalidade entre os relacionamentos

regras de negocio

Espero ter ajudado e bons estudos!

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software