┌─────────────────────────────────────────────────┐ │IA │ ┌───────────────────────────────────┐ ├─────────────────────────────────────────────────┤ │Porta │ │- reconhecerVoz: bool │ ├───────────────────────────────────┤ │- autenticarUsuario: str │ │- idPorta: int │ │+ analisarVoz(voz, servidor): (bool, Funcionario)│ │+ autorizacaoAcesso(servidor): void│ └─────────────────────────────────────────────────┘ └───────────────────────────────────┘ ┌──────────────────────────────────────────────────────────────────┐ │Servidor │ ├──────────────────────────────────────────────────────────────────┤ │- dadosFuncionarios: list │ │- vozesCadastradas: list │ │- funcionariosAtivos: int │ │- autorizacaoEspecial: str │ │+ autenticacao(funcionario): bool │ │+ acessoAutorizado(): bool │ │+ cadastrarFuncionario(nomeFuncionario, idade, departamento): void│ │+ cadastrarVoz(funcionario): void │ └──────────────────────────────────────────────────────────────────┘ | ┌──────────────────────┐ │Funcionario │ ├──────────────────────┤ │- nomeFuncionario: str│ │- idade: int │ │- departamento: str │ └──────────────────────┘