[x] Detalles de HH.UU.
| Caso de uso | REQ-41 Como CAEQ quiero registrarme como nuevo gerente para administrar la información de los colegiados. |
|---|---|
| Actores | Usuario CAEQ |
| Tipo | MVP |
| Referencias | ‣ |
| Precondición | - Usuario en la pantalla de registro |
| Postcondición | - Nuevo administrador registrado |
@startuml
start
:Usuario ingresa datos de registro;
if (Datos válidos) then (Sí)
:Sistema crea perfil sin verificar;
:Sistema genera correo de bienvenida;
:Sistema Envia correo;
if (Enviar correo de bienvenida exitoso) then (Sí)
:Usuario recibecorreo de bienvenida;
else (No)
:Error al enviar correo;
endif
else (No)
:Sistema muestra mensaje de error al usuario;
endif
end
@enduml

T-REQ41 | Casos de prueba del registro de gerente


@startuml
database "Mongo DB" {
folder "Architect Users" {
[architect.users]
}
}
node "Backend" {
folder "models" {
[caeq.users.model.js]
}
folder "controllers" {
[auth.controller.js]
}
folder "routes" {
[caeq.users.routes.js]
}
folder "Backend utils" {
[email.js]
[apiFeatures.js]
[catchAsync.js]
}
[App.js]
}
node "Frontend" {
folder "screens" {
[SignupAdmin.js]
}
folder "components" {
folder "inputs" {
[TextInput.js]
}
folder "buttons" {
[BaseButton.js]
}
}
folder "client" {
folder "CaeqUser" {
[CaeqUser.POST.js]
}
}
folder "utils" {
[alertHandler.js]
}
}
[SignupAdmin.js] --> [CaeqUser.POST.js]
[SignupAdmin.js] --> [BaseButton.js]
[SignupAdmin.js] --> [TextInput.js]
[SignupAdmin.js] --> [alertHandler.js]
[CaeqUser.POST.js] --> [caeq.users.routes.js]
[caeq.users.routes.js] --> [auth.controller.js]
[auth.controller.js] --> [email.js]
[auth.controller.js] --> [apiFeatures.js]
[auth.controller.js] --> [catchAsync.js]
[auth.controller.js] --> [caeq.users.model.js]
[caeq.users.model.js] --> [Mongo DB]
@enduml

[x] Diseño de la API
POST /caequser/auth/signup
{
"fullName": "Pablo Jimenez",
"email": "[email protected]",
"password": "password789",
"passwordConfirm": "password789"
}
{
"status": "success",
"message": "Te has registrado con éxito, espera a que un administrador verifique tu perfil."
}
Modelo relacional usado en este requisito
https://miro.com/app/board/uXjVMwY53vA=/?moveToWidget=3458764562849509767&cot=14