Saltar a contenido

Flujo de Navegacion - Alertas y Notificaciones

Identificador: UIF-ALT-001 Modulo: MTS-ALT-001 - Alertas y Notificaciones Version: 1.0.0 Fecha: 2025-12-05 Autor: MobileUxUiDrone (Eight of Eight)


1. Resumen del Flujo

Este documento especifica el flujo de navegacion completo para el modulo de Alertas y Notificaciones, incluyendo recordatorios de toma, escalamiento a cuidadores, alertas de emergencia y configuracion de preferencias.

1.1. Pantallas del Modulo

ID Nombre Proposito Prioridad
SCR-ALT-001 Recordatorio de Toma Notificacion push/local de medicamento Critica
SCR-ALT-002 Detalle de Alerta Pendiente Informacion completa de alerta activa Alta
SCR-ALT-003 Historial de Alertas Lista de alertas pasadas Media
SCR-ALT-004 Configuracion de Notificaciones Preferencias de alertas Alta
SCR-ALT-005 Alerta de Emergencia Pantalla de panico/emergencia Critica
SCR-ALT-006 Configuracion de Cuidadores Gestion de escalamiento Alta
SCR-ALT-007 Alerta de Interaccion Aviso de interaccion medicamentosa Critica
SCR-ALT-008 Alerta de Valores Criticos Mediciones fuera de rango Critica
SCR-ALT-009 Centro de Notificaciones Hub central de todas las alertas Alta
SCR-ALT-010 Configuracion de Sonidos Personalizacion de tonos/vibracion Media
SCR-ALT-011 Modo No Molestar Configuracion de silencio inteligente Media
SCR-ALT-012 Contactos de Emergencia Gestion de contactos de emergencia Alta
SCR-ALT-013 Vista Cuidador - Alertas Dashboard de alertas para cuidador Alta
SCR-ALT-014 Resumen Diario Notificacion de resumen del dia Baja
SCR-ALT-015 Confirmacion de Accion Modal de confirmacion de toma/posponer Alta

2. Diagrama de Flujo Principal

flowchart TD
    subgraph Entry["Puntos de Entrada"]
        PUSH[Push Notification]
        LOCAL[Local Notification]
        TAB[Tab Alertas]
        WIDGET[Widget Home]
        SHAKE[Shake Gesture]
        LOCK[Lock Screen Action]
    end

    subgraph NotificationFlow["Flujo de Notificaciones"]
        NOTIF[Recordatorio Push/Local]
        EXPAND[Notificacion Expandida]
        QUICK[Acciones Rapidas]

        NOTIF --> EXPAND
        EXPAND --> QUICK
    end

    subgraph MainFlow["Flujo Principal"]
        CENTER[SCR-ALT-009<br/>Centro Notificaciones]
        DETAIL[SCR-ALT-002<br/>Detalle Alerta]
        HISTORY[SCR-ALT-003<br/>Historial]
        CONFIRM[SCR-ALT-015<br/>Confirmacion]
    end

    subgraph ConfigFlow["Flujo de Configuracion"]
        CONFIG[SCR-ALT-004<br/>Config Notificaciones]
        SOUNDS[SCR-ALT-010<br/>Sonidos]
        DND[SCR-ALT-011<br/>No Molestar]
        CONTACTS[SCR-ALT-012<br/>Contactos Emergencia]
        CARERS[SCR-ALT-006<br/>Config Cuidadores]
    end

    subgraph EmergencyFlow["Flujo de Emergencia"]
        EMERGENCY[SCR-ALT-005<br/>Alerta Emergencia]
        PANIC[Boton de Panico]
        SMS[Enviar SMS]
        CALL[Llamar Emergencias]
    end

    subgraph CriticalAlerts["Alertas Criticas"]
        INTERACT[SCR-ALT-007<br/>Interaccion]
        CRITICAL[SCR-ALT-008<br/>Valores Criticos]
        SUMMARY[SCR-ALT-014<br/>Resumen Diario]
    end

    subgraph CarerView["Vista Cuidador"]
        CARER_DASH[SCR-ALT-013<br/>Dashboard Cuidador]
        CARER_ACTION[Acciones Cuidador]
    end

    %% Entry Points
    PUSH --> NOTIF
    LOCAL --> NOTIF
    TAB --> CENTER
    WIDGET --> EMERGENCY
    SHAKE --> EMERGENCY
    LOCK --> QUICK

    %% Quick Actions Flow
    QUICK -->|Tomado| CONFIRM
    QUICK -->|Posponer| CONFIRM
    QUICK -->|Ver| DETAIL
    CONFIRM --> CENTER

    %% Main Navigation
    CENTER -->|Tap alerta| DETAIL
    CENTER -->|Historial| HISTORY
    CENTER -->|Config| CONFIG
    DETAIL -->|Accion| CONFIRM
    HISTORY -->|Tap item| DETAIL

    %% Config Flow
    CONFIG -->|Sonidos| SOUNDS
    CONFIG -->|No molestar| DND
    CONFIG -->|Contactos| CONTACTS
    CONFIG -->|Cuidadores| CARERS
    SOUNDS --> CONFIG
    DND --> CONFIG
    CONTACTS --> CONFIG
    CARERS --> CONFIG

    %% Emergency Flow
    EMERGENCY -->|SMS| SMS
    EMERGENCY -->|Llamar| CALL
    PANIC --> EMERGENCY
    SMS --> CENTER
    CALL --> CENTER

    %% Critical Alerts
    DETAIL -->|Es interaccion| INTERACT
    DETAIL -->|Es valor critico| CRITICAL
    CENTER -->|Resumen| SUMMARY
    INTERACT -->|Aceptar riesgo| CENTER
    CRITICAL -->|Reconocer| CENTER

    %% Carer Flow
    CENTER -->|Vista cuidador| CARER_DASH
    CARER_DASH -->|Tap alerta| DETAIL
    CARER_DASH -->|Accion| CARER_ACTION
    CARER_ACTION --> CARER_DASH

    %% Styling
    classDef entry fill:#E3F2FD,stroke:#1976D2
    classDef notif fill:#FFF3E0,stroke:#F57C00
    classDef main fill:#E8F5E9,stroke:#388E3C
    classDef config fill:#F3E5F5,stroke:#7B1FA2
    classDef emergency fill:#FFEBEE,stroke:#D32F2F
    classDef critical fill:#FFCDD2,stroke:#C62828
    classDef carer fill:#E0F7FA,stroke:#00838F

    class PUSH,LOCAL,TAB,WIDGET,SHAKE,LOCK entry
    class NOTIF,EXPAND,QUICK notif
    class CENTER,DETAIL,HISTORY,CONFIRM main
    class CONFIG,SOUNDS,DND,CONTACTS,CARERS config
    class EMERGENCY,PANIC,SMS,CALL emergency
    class INTERACT,CRITICAL,SUMMARY critical
    class CARER_DASH,CARER_ACTION carer

3. Flujo de Estados de Alerta

stateDiagram-v2
    [*] --> Programada: Crear recordatorio

    Programada --> Pendiente: Hora de alerta
    Pendiente --> Confirmada: Usuario toma
    Pendiente --> Pospuesta: Usuario pospone
    Pendiente --> Escalada: Sin respuesta (timeout)

    Pospuesta --> Pendiente: Nueva hora
    Pospuesta --> Omitida: No responde

    Escalada --> ConfirmadaCuidador: Cuidador confirma
    Escalada --> Emergencia: Toma critica omitida

    Confirmada --> [*]
    ConfirmadaCuidador --> [*]
    Omitida --> [*]
    Emergencia --> Atendida: Contacto responde
    Atendida --> [*]

    note right of Pendiente
        Secuencia:
        T+0: Alerta principal
        T+15: Recordatorio 1
        T+30: Recordatorio 2
        T+60: Marcar omitida
    end note

    note right of Escalada
        Solo Pro/Perfect
        Notifica a cuidadores
        con permisos
    end note

4. User Journeys

4.1. Journey: Paciente Independiente (PI) - Recibir Recordatorio

Persona: Maria, 45 anos, diabetes tipo 2, maneja sus medicamentos sola.

journey
    title Maria recibe y confirma su recordatorio de Metformina
    section Notificacion
      Recibe push notification: 5: Maria
      Ve notificacion en lock screen: 4: Maria
      Expande notificacion: 5: Maria
    section Accion Rapida
      Ve medicamentos del evento: 5: Maria
      Toca boton Tomado: 5: Maria
      Recibe feedback haptico: 5: Maria
    section Confirmacion
      Ve notificacion actualizada: 5: Maria
      Continua con su dia: 5: Maria

4.1.1. Pasos Detallados - PI Recordatorio

Paso Pantalla Accion Siguiente Notas UX
1 Lock Screen Notificacion aparece - Vibra segun config
2 Lock Screen Lee preview - Texto configurable por privacidad
3 Lock Screen Expande notificacion EXPAND Swipe down o long press
4 EXPAND Ve medicamentos del evento - Lista clara con iconos
5 EXPAND Tap "Tomado" CONFIRM Feedback haptico
6 CONFIRM Ve animacion exito - Checkmark verde
7 - Notificacion desaparece - Recordatorios cancelados

4.1.2. Flujo Alternativo - Posponer

Paso Pantalla Accion Siguiente Notas UX
1-4 - (igual que arriba) - -
5 EXPAND Tap "Posponer" SNOOZE_MENU Menu de tiempos
6 SNOOZE_MENU Selecciona 30 min CONFIRM Opciones: 15, 30, 60 min
7 CONFIRM Ve confirmacion posponer - Nueva hora mostrada
8 - Nueva notificacion en 30 min - Recordatorio reprogramado

4.2. Journey: Paciente Dependiente (PD) - Recordatorio Simplificado

Persona: Don Alberto, 78 anos, vista reducida, su hija configuro la app.

journey
    title Don Alberto recibe recordatorio con interfaz simplificada
    section Alerta
      Telefono vibra y suena fuerte: 5: Alberto
      Pantalla completa de alerta: 5: Alberto
      Ve icono grande de medicina: 4: Alberto
    section Accion
      Lee texto grande HORA DE TOMAR: 5: Alberto
      Ve un solo boton grande LISTO: 5: Alberto
      Toca boton verde grande: 5: Alberto
    section Resultado
      Escucha confirmacion de voz: 5: Alberto
      Vibra brevemente: 5: Alberto
      Pantalla se cierra sola: 5: Alberto

4.2.1. Pasos Detallados - PD Simplificado

Paso Pantalla Accion Siguiente Notas UX
1 - Alarma suena fuerte FULLSCREEN Volumen bypass DND
2 FULLSCREEN Pantalla completa se abre - Fondo blanco, alto contraste
3 FULLSCREEN Ve icono grande 96dp - Forma farmaceutica clara
4 FULLSCREEN Lee "HORA DE TOMAR" 28sp - Negrita, color primario
5 FULLSCREEN Ve nombre medicamento 24sp - Texto simplificado
6 FULLSCREEN Tap boton LISTO 64dp altura CONFIRM Touch target enorme
7 CONFIRM TTS anuncia "Listo, toma registrada" - Feedback de voz
8 - Vibra patron exito - Haptico largo
9 - Pantalla cierra en 3s HOME Auto-dismiss

4.2.2. Consideraciones Accesibilidad - PD

  • Pantalla completa sin distracciones
  • Contraste minimo 7:1 (WCAG AAA)
  • Texto minimo 24sp
  • Touch target minimo 64dp
  • Feedback multimodal (visual, auditivo, haptico)
  • TTS automatico para instrucciones
  • Sin scroll, todo visible
  • Un solo CTA principal

4.3. Journey: Cuidador Secundario (CS) - Recibir Alerta de Paciente

Persona: Laura, 40 anos, cuida a su padre a distancia, recibe alertas de omision.

journey
    title Laura recibe alerta de toma omitida de su padre
    section Recepcion
      Recibe push notification: 4: Laura
      Lee Tu padre no tomo sus medicinas: 3: Laura
      Preocupada, abre la app: 4: Laura
    section Investigacion
      Ve dashboard de cuidador: 5: Laura
      Identifica medicamento omitido: 4: Laura
      Ve historial de hoy: 4: Laura
    section Accion
      Decide llamar a su padre: 5: Laura
      Toca boton Llamar: 5: Laura
      Confirma que papa tomo la medicina: 5: Laura
    section Registro
      Vuelve a la app: 5: Laura
      Marca como Confirmado por cuidador: 5: Laura
      Agrega nota Papa tomo tarde: 5: Laura

4.3.1. Pasos Detallados - CS Alerta

Paso Pantalla Accion Siguiente Notas UX
1 - Recibe push "Alerta de [Padre]" - Distinguible de propias
2 Lock Screen Lee preview alerta - Nombre paciente visible
3 PUSH Tap notificacion SCR-ALT-013 Abre dashboard cuidador
4 SCR-ALT-013 Ve card de alerta escalada - Banner rojo destacado
5 SCR-ALT-013 Ve medicamento y hora - Info clara
6 SCR-ALT-013 Tap "Llamar" PHONE Abre marcador
7 PHONE Llama al paciente - Numero pre-configurado
8 - Confirma verbalmente - Interaccion real
9 SCR-ALT-013 Tap "Confirmar supervision" CONFIRM Modal con opciones
10 CONFIRM Selecciona "Paciente lo tomo" - Radio buttons
11 CONFIRM Escribe nota opcional - Campo texto
12 CONFIRM Tap "Guardar" SCR-ALT-013 Alerta resuelta

4.3.2. Permisos del Cuidador Secundario

Permiso CS Puede CS No Puede
Ver alertas de omision Si -
Ver historial de tomas Si -
Confirmar supervision Si -
Marcar como tomado Configurable Por defecto no
Llamar al paciente Si -
Modificar medicamentos No -
Ver detalles medicos Configurable Por defecto no
Recibir alertas criticas Si -

4.4. Journey: Cuidador Responsable (CR) - Gestionar Alertas de Dependientes

Persona: Carlos, 38 anos, cuida a su madre y gestiona todas sus alertas.

journey
    title Carlos configura alertas para su madre
    section Acceso
      Abre app con perfil de madre: 5: Carlos
      Va a Configuracion: 5: Carlos
      Entra a Notificaciones: 4: Carlos
    section Configuracion
      Activa escalamiento a si mismo: 5: Carlos
      Configura ventana 30 minutos: 4: Carlos
      Selecciona medicamentos criticos: 5: Carlos
    section Emergencia
      Configura contactos de emergencia: 4: Carlos
      Agrega hermana como backup: 4: Carlos
      Configura boton de panico: 5: Carlos
    section Prueba
      Envia alerta de prueba: 5: Carlos
      Recibe notificacion en su telefono: 5: Carlos
      Confirma que funciona: 5: Carlos

4.4.1. Pasos Detallados - CR Configuracion

Paso Pantalla Accion Siguiente Notas UX
1 HOME Selecciona perfil madre - Switch de perfil
2 HOME Tap menu > Configuracion CONFIG Menu lateral o tab
3 CONFIG Tap Notificaciones SCR-ALT-004 Seccion destacada
4 SCR-ALT-004 Toggle "Escalar a cuidadores" ON - Solo Pro/Perfect
5 SCR-ALT-004 Tap "Ventana de espera" PICKER Selector de tiempo
6 PICKER Selecciona 30 minutos SCR-ALT-004 Rango 15-90 min
7 SCR-ALT-004 Tap "Medicamentos criticos" MEDS_LIST Multi-select
8 MEDS_LIST Marca Insulina como critica - Checkbox por med
9 MEDS_LIST Tap Guardar SCR-ALT-004 Confirma seleccion
10 SCR-ALT-004 Tap "Contactos emergencia" SCR-ALT-012 Navegacion
11 SCR-ALT-012 Tap + Agregar contacto ADD_CONTACT FAB
12 ADD_CONTACT Ingresa datos hermana - Formulario
13 ADD_CONTACT Define como prioridad 2 - Orden de escalamiento
14 SCR-ALT-012 Tap Guardar SCR-ALT-004 Vuelve a config
15 SCR-ALT-004 Tap "Probar alertas" TEST Opcion de prueba
16 TEST Confirma envio de prueba - Modal advertencia
17 - Recibe notificacion prueba - En su dispositivo
18 SCR-ALT-004 Ve confirmacion exitosa - Snackbar verde

5. Flujo de Notificacion Push/Local

5.1. Anatomia de Notificacion

+------------------------------------------+
|  [MedTime Icon]  MedTime           08:00  |  <- Small icon + App name + Time
+------------------------------------------+
|  Hora de tomar tus medicamentos           |  <- Title (configurable)
|                                           |
|  Metformina 850mg                         |  <- Content (privacy mode: oculto)
|  Lisinopril 10mg                          |
|                                           |
|  Con el desayuno                          |  <- Instruction
|                                           |
|  [Tomado]  [Posponer v]  [Ver...]         |  <- Action buttons (max 3)
+------------------------------------------+

5.2. Variantes de Notificacion

5.2.1. Notificacion Simple (Lock Screen)

+------------------------------------------+
|  MedTime                           08:00  |
|  Tienes un recordatorio de MedTime        |  <- Modo privacidad
+------------------------------------------+

5.2.2. Notificacion Expandida

+------------------------------------------+
|  MedTime - Medicinas del desayuno  08:00  |
+------------------------------------------+
|                                           |
|  [Pill] Metformina 850mg                  |
|  [Cap]  Lisinopril 10mg                   |
|  [Drop] Gotas oftalmicas 2 gotas          |
|                                           |
|  Instruccion: Con alimentos               |
|                                           |
|  [Tomado]  [Posponer]  [Agregar nota]     |
+------------------------------------------+

5.2.3. Notificacion de Alerta Critica

+------------------------------------------+
|  ! MedTime - ALERTA CRITICA        08:45  |  <- Icono de alerta
+------------------------------------------+
|                                           |
|  INSULINA OMITIDA                         |  <- Texto urgente
|                                           |
|  No has tomado tu Insulina de las 08:00   |
|  Esto puede afectar tu salud.             |
|                                           |
|  [Ya la tome]  [Necesito ayuda]           |  <- Acciones urgentes
+------------------------------------------+

5.2.4. Notificacion de Emergencia

+------------------------------------------+
|  !! MedTime - EMERGENCIA           09:30  |  <- Doble icono
+------------------------------------------+
|                                           |
|  BOTON DE PANICO ACTIVADO                 |
|                                           |
|  Se enviara alerta a tus contactos        |
|  en 5 segundos...                         |
|                                           |
|  [CANCELAR]              [4...]           |  <- Countdown visible
+------------------------------------------+

6. Transiciones y Animaciones

6.1. Transiciones Entre Pantallas

De A Tipo Duracion Ease
Notification CENTER Slide up 300ms ease-out
CENTER DETAIL Shared element 300ms ease-out
CENTER CONFIG Slide right 250ms ease-out
CONFIG SOUNDS Push 250ms ease-out
* EMERGENCY Instant (full screen) 0ms -
EMERGENCY * Fade out 200ms ease-in
CONFIRM * Scale down + fade 200ms ease-in

6.2. Animaciones de Estado

Estado Animacion Duracion
Alerta pendiente Pulse suave icono 2s loop
Alerta escalada Pulse rapido + glow 1s loop
Confirmacion exito Checkmark bounce 400ms
Error Shake horizontal 300ms
Countdown emergencia Numero scale down 1s por numero

6.3. Preferencias de Movimiento Reducido

Cuando prefers-reduced-motion esta activo:

  • Sin pulse animations
  • Transiciones instantaneas o < 100ms
  • Mantener countdown visible sin animacion
  • Mantener feedback haptico

7. Estados de Pantalla

7.1. SCR-ALT-009 - Centro de Notificaciones

Estado Condicion Visualizacion
Empty Sin alertas pendientes Ilustracion + "Todo al dia!"
With Pending >= 1 alerta pendiente Lista con cards de alerta
Critical Alerta critica presente Banner rojo superior
Offline Sin conexion Banner offline + alertas locales
Loading Sincronizando Pull-to-refresh loader

7.2. SCR-ALT-005 - Alerta de Emergencia

Estado Condicion Visualizacion
Countdown Esperando confirmacion Timer 5s + boton cancelar grande
Sending Enviando alertas Progress indicator
Sent Alertas enviadas Confirmacion + lista de contactados
Error Fallo en envio Error + opciones alternativas
Cancelled Usuario cancelo Confirmacion + registro

Deep Link Destino Parametros
medtime://alerts SCR-ALT-009 -
medtime://alerts/{id} SCR-ALT-002 alert_id
medtime://alerts/history SCR-ALT-003 -
medtime://alerts/settings SCR-ALT-004 -
medtime://emergency SCR-ALT-005 -
medtime://alerts/take/{event_id} SCR-ALT-015 event_id, action=take
medtime://alerts/snooze/{event_id} SCR-ALT-015 event_id, action=snooze

8.2. Notificaciones que Abren Pantallas

Tipo Notificacion Destino Contexto
Recordatorio toma SCR-ALT-002 event_id
Toma omitida SCR-ALT-002 event_id, is_overdue=true
Alerta cuidador SCR-ALT-013 patient_id, event_id
Valor critico SCR-ALT-008 measurement_id
Interaccion SCR-ALT-007 interaction_id
Resumen diario SCR-ALT-014 date
Emergencia SCR-ALT-005 emergency_id

9. Gestos Soportados

9.1. Gestos por Pantalla

Pantalla Gesto Accion Alternativa
SCR-ALT-009 Swipe left Descartar alerta Boton X
SCR-ALT-009 Pull down Refrescar Menu > Refrescar
SCR-ALT-002 Swipe down Cerrar Boton back
NOTIFICATION Long press Expandir -
NOTIFICATION Swipe right Descartar -
* Shake x3 Activar panico Widget / Menu

9.2. Gestos de Accesibilidad

  • VoiceOver: Custom actions para cada alerta
  • TalkBack: Acciones contextuales en cada elemento
  • Switch Access: Navegacion secuencial por elementos

10. Metricas de UX

10.1. KPIs del Flujo

Metrica Objetivo Medicion
Tiempo respuesta a alerta < 60 segundos analytics
Tasa de tomas confirmadas desde notif > 70% analytics
Tasa de uso de posponer < 20% analytics
Alertas escaladas a cuidador < 5% analytics
Falsas alarmas de emergencia < 1% analytics
Tiempo configuracion inicial < 3 minutos analytics

10.2. Puntos de Friccion Identificados

Punto Riesgo Mitigacion
Notificacion ignorada Alto Escalamiento automatico
Boton panico accidental Medio Countdown de 5 segundos
Configuracion compleja Medio Wizard guiado + defaults inteligentes
Alertas molestas Alto Modo no molestar inteligente
Cuidador no responde Medio Multiples contactos + fallback

11. Referencias


12. Historial de Cambios

Version Fecha Cambios
1.0.0 2025-12-05 Version inicial con flujo completo de 15 pantallas

Documento generado por MobileUxUiDrone (Eight of Eight) "Las alertas son el latido del sistema - nunca deben fallar."