Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

[Dúvida] Em um diagrama ER, como representar que um controle de acesso poderá utilizar dois tipos diferentes de nomes de usuários?

Na seguinte condição;

  1. O sistema terá dois usuários:
    • Administradores, representando pela classe "Admins"
    • Não administradores, representado pela classe "NaoAdmins"
  2. Ambas as classes herdarão os seguintes atributos de uma classe abstrata chamada "Pessoas":
    • Nome
    • CPF
    • E-mail
  3. A classe abstrata "Pessoas" herdará os seguintes atributos da classe "Usuarios";
    • Nome de usuário
    • Senha
  4. No Banco de Dados, o atributo "CPF" da entidade "Pessoas" será utilizado como chave primária;
  5. No controle de acesso, o atributo "CPF" ou o atributo "E-mail" poderá ser utilizado como nome de usuário.

No diagrama ER:

  1. Utilizando uma "especialização exclusiva", é possível representar que a entidade "Pessoas" herdará os atributos da entidade "Usuarios";
  2. Utilizando uma "especialização não exclusiva", é possível representar que as entidades "Admin" e "NaoAdmin" herdarão os atributos da entidade "Pessoas";
  3. E também é possível indicar que o atributo "CPF" da entidade "Pessoas" será utilizado como chave primária.

Conforme exemplificado na imagem:

Insira aqui a descrição dessa imagem para ajudar na acessibilidade

Mas surgiram as seguintes dúvidas:

  1. No diagrama ER, como representar que o login/ controle de acesso poderá ser realizado através do atributo "cpf" ou do atributo "email" da entidade "Pessoas"?
  2. Algo mais poderá ser melhorado nesse diagrama? Por exemplo, existe uma representação diferente para a classe abstrata "Pessoas"?

Se possível, compartilhar uma imagem.

1 resposta
solução!

Olá!

Para representar que o login/controle de acesso poderá ser realizado através do atributo "CPF" ou do atributo "E-mail" da entidade "Pessoas" em um diagrama ER, você pode adicionar uma entidade associativa ou uma anotação que indique essa condição.

Você pode criar uma entidade associativa chamada "Login" que se relaciona com a entidade "Pessoas" e que contém os atributos "CPF" e "E-mail". Essa entidade associativa pode indicar que o login pode ser feito utilizando um dos dois atributos.

Outra forma é adicionar uma anotação ao diagrama indicando que o login pode ser feito através de "CPF" ou "E-mail". Isso pode ser feito com um texto explicativo próximo à entidade "Pessoas".

A classe abstrata "Pessoas" está bem representada com a especialização. No entanto, se quiser deixar claro que é uma classe abstrata, você pode usar uma notação UML que inclua um itálico ou uma anotação que indique que é abstrata.

Espero ter ajudado. Abraços.