Saltar a contenido

UI-MTS-PRN-001: Especificacion UI - Medicamentos PRN

Identificador: UI-MTS-PRN-001 Modulo Funcional: MTS-PRN-001 - Medicamentos PRN Version: 1.0.0 Fecha: 2025-12-05 Estado: Borrador Autor: MobileUxUiDrone (Eight of Eight)


1. Resumen Ejecutivo

1.1. Proposito del Modulo

El modulo de Medicamentos PRN (Pro Re Nata - "segun necesidad") permite a los usuarios registrar, controlar y analizar el uso de medicamentos que se toman bajo demanda, con limites de seguridad configurables y alertas inteligentes.

1.2. Metricas Clave

Metrica Objetivo Justificacion
Tiempo registro toma < 30s Flujo optimizado para dolor
Tasa registro motivo > 80% Mejora analisis patrones
Respeto de limites > 95% Seguridad del paciente
Uso analisis (Pro) > 60% Valor agregado tier Pro

1.3. Pantallas del Modulo

ID Nombre Tipo Prioridad
SCR-PRN-001 Lista de Medicamentos PRN Principal Alta
SCR-PRN-002 Registrar Toma PRN Bottom Sheet Alta
SCR-PRN-003 Motivo de Toma Formulario Alta
SCR-PRN-004 Limites y Alertas Configuracion Alta
SCR-PRN-005 Historial de Tomas PRN Lista Media
SCR-PRN-006 Analisis de Uso Estadisticas Media

2. User Journey Principal

2.1. Contexto del Usuario

Persona: Carmen, 42 anos, Paciente Independiente Situacion: Sufre de migranas y toma Sumatriptan segun necesidad Objetivo: Registrar toma rapidamente durante episodio de dolor

2.2. Journey Map

[Inicio Migrana] -> [Abre App] -> [Tab PRN] -> [Tap Registrar]
       |                                              |
       v                                              v
[Necesita alivio]                          [Selecciona Sumatriptan]
                                                      |
                                                      v
                                           [Indica Motivo: Migrana]
                                                      |
                                                      v
                                           [Intensidad: 7/10]
                                                      |
                                                      v
                                           [Confirma -> Registro OK]

2.3. Momentos Criticos

Momento Emocion Solucion UX
Dolor agudo Urgencia FAB prominente, 2 taps para iniciar
Registro Prisa Presets, valores default
Limite cercano Preocupacion Mensaje claro, accion disponible
Limite alcanzado Frustracion Empatia + alternativa (contactar medico)

3. Arquitectura de Pantallas

3.1. Diagrama de Navegacion

+-------------------+       +-------------------+
|   MTS-MED-001     |------>|   SCR-PRN-001     |
|   (Medicamentos)  | Tab   |   (Lista PRN)     |
+-------------------+       +--------+----------+
                                     |
           +-------------------------+-------------------------+
           |              |                    |               |
           v              v                    v               v
+------------------+ +------------------+ +------------------+ +------------------+
| SCR-PRN-002      | | SCR-PRN-004      | | SCR-PRN-005      | | SCR-PRN-006      |
| (Registrar)      | | (Limites)        | | (Historial)      | | (Analisis)       |
+--------+---------+ +------------------+ +------------------+ +------------------+
         |                                                            ^
         v                                                            |
+------------------+                                                  |
| SCR-PRN-003      |--------------------------------------------------+
| (Motivo)         | (tras registro, acceso a stats)
+------------------+

3.2. Matriz de Navegacion

Desde Hacia Trigger Tipo
MTS-MED-001 SCR-PRN-001 Tab PRN Tab navigation
SCR-PRN-001 SCR-PRN-002 FAB + Bottom sheet
SCR-PRN-002 SCR-PRN-003 Siguiente Push
SCR-PRN-003 SCR-PRN-001 Registrar Pop + snackbar
SCR-PRN-001 SCR-PRN-004 Menu Config Push
SCR-PRN-001 SCR-PRN-005 Menu Historial Push
SCR-PRN-001 SCR-PRN-006 Menu Stats Push
SCR-PRN-005 SCR-PRN-006 Ver estadisticas Push

4. Componentes UI

4.1. Componentes Especificos del Modulo

Componente Uso Ubicacion
PRNMedicationCard Card con progress de limite SCR-PRN-001
DosageProgressBar Barra con colores por estado SCR-PRN-001
IntensitySlider Slider 1-10 con etiquetas SCR-PRN-003
LimitStepper Selector numerico de limites SCR-PRN-004
UsageTrendChart Grafico de tendencia por semana SCR-PRN-006
HourPatternChart Distribucion horaria de tomas SCR-PRN-006
FactorsBarChart Barras horizontales de factores SCR-PRN-006

4.2. Estados de Progress Bar

Estado Color Rango Significado
Normal Verde #4CAF50 0-50% Uso normal
Caution Amarillo #FFC107 51-79% Moderado
Warning Naranja #FF9800 80-99% Cercano a limite
Blocked Rojo #F44336 100% Limite alcanzado

4.3. Tokens de Diseno

// Colores PRN
$prn-safe: #4CAF50
$prn-caution: #FFC107
$prn-warning: #FF9800
$prn-danger: #F44336

// Espaciado
$prn-card-padding: 16dp
$prn-section-gap: 24dp

// Tipografia
$prn-med-name: Headline6
$prn-dosage: Body1
$prn-status: Caption

5. Patrones de Interaccion

5.1. Registro Rapido (Happy Path)

Paso Accion Usuario Respuesta Sistema
1 Tap FAB "+" Abre bottom sheet
2 Selecciona medicamento Muestra formulario
3 Confirma dosis (default) Valida disponibilidad
4 Tap "Siguiente" Navega a motivo
5 Selecciona motivo Radio seleccionado
6 Ajusta intensidad Slider actualiza
7 Tap "Registrar" Guarda + snackbar

5.2. Manejo de Limites

Situacion Visual Accion Permitida
< 80% limite Progress normal Registrar libremente
80-99% limite Banner warning Registrar con advertencia
100% limite Modal bloqueante No registrar, contactar medico
Intervalo activo Timer countdown Esperar o forzar (con alerta)

5.3. Override de Seguridad

Cuando el usuario intenta registrar fuera de los limites configurados:

  1. Modal de advertencia aparece
  2. Mensaje explica riesgo
  3. Opciones:
  4. "Esperar" -> Cierra modal
  5. "Registrar de todas formas" -> Confirma con PIN/biometrico
  6. Si confirma:
  7. Registro marcado como override
  8. Notificacion a cuidador (si configurado)
  9. Evento en analytics

6. Estados del Sistema

6.1. Estados por Pantalla

6.1.1. SCR-PRN-001 - Lista PRN

Estado Trigger Visualizacion
Loading Cargando datos Skeleton cards
Empty Sin PRN configurados Ilustracion + CTA
WithMeds Con medicamentos Lista de cards
WithAlerts Limites cercanos Cards con badges

6.1.2. SCR-PRN-002 - Registrar Toma

Estado Trigger Visualizacion
SelectMed Sin seleccion Lista de PRN
MedSelected Medicamento elegido Formulario
NearLimit 80%+ uso Banner warning
AtLimit 100% uso Modal bloqueante
IntervalActive Tiempo minimo no cumplido Countdown

6.1.3. SCR-PRN-006 - Analisis de Uso

Estado Trigger Visualizacion
InsufficientData < 10 tomas Mensaje + contador
Loading Calculando stats Skeleton charts
Ready Datos disponibles Charts completos
TierLocked Usuario Free Upsell Pro

7. Logica de Negocio en UI

7.1. Calculo de Disponibilidad

disponible = limite_diario - tomas_hoy
porcentaje = (tomas_hoy / limite_diario) * 100
estado = calcular_estado(porcentaje)

7.2. Intervalo Minimo

ultima_toma = obtener_ultima_toma(med_id)
intervalo_config = obtener_intervalo(med_id)
tiempo_restante = intervalo_config - (ahora - ultima_toma)
disponible_en = ahora + tiempo_restante

7.3. Alertas a Cuidador

Condiciones para notificar:

  • Usuario alcanza 80% del limite diario
  • Usuario hace override de limite
  • Patron inusual detectado (> promedio + 2 desviaciones)

8. Diferenciacion por Tier

8.1. Funcionalidades por Tier

Funcionalidad Free Pro Perfect
Registro toma Si Si Si
Limites basicos 2 PRN Ilimitado Ilimitado
Historial 30 dias 1 ano Ilimitado
Motivos predefinidos Si Si Si
Factores asociados No Si Si
Analisis de uso No Si Si
Patron horario No Si Si
Compartir con medico No Si Si
Exportar datos No PDF PDF + FHIR

8.2. Upsell Points

Pantalla Trigger Mensaje
SCR-PRN-001 3er PRN "Medicamentos PRN ilimitados en Pro"
SCR-PRN-003 Tap factores "Analiza tus factores en Pro"
SCR-PRN-006 Acceso "Estadisticas avanzadas en Pro"

9. Accesibilidad

9.1. Cumplimiento WCAG 2.1 AA

Criterio Implementacion Pantalla
1.4.1 Use of Color Colores + iconos + texto Todas
1.4.3 Contrast 4.5:1 minimo Todas
1.4.11 Non-text Contrast Progress bars con borde SCR-PRN-001
2.1.1 Keyboard Focus visible Todas
2.4.6 Headings Estructura semantica Todas
3.3.1 Error ID Mensajes claros SCR-PRN-002
4.1.2 Name, Role, Value ARIA labels Todas

9.2. Screen Reader Announcements

Elemento Anuncio
PRN Card normal "[Med], [X] de [Y] dosis disponibles hoy"
PRN Card warning "Advertencia: [Med], [X] de [Y] dosis, limite cercano"
PRN Card blocked "Limite alcanzado: [Med], disponible [cuando]"
Intensity slider "Intensidad del dolor, nivel [X] de 10"
Save button "Registrar toma de [Med]"

9.3. Alternativas para Graficos

  • SCR-PRN-006: Tabla de datos debajo de cada grafico
  • Resumen textual de tendencias
  • Valores numericos anunciados

10. Analytics

10.1. Eventos Clave

Evento Trigger Datos Objetivo
prn_list_viewed Pantalla visible count, alerts Engagement
prn_take_started FAB tap med_id Funnel inicio
prn_take_completed Registro exitoso med_id, reason, intensity Conversion
prn_take_abandoned Back/dismiss step Drop-off
prn_limit_warning_shown 80% limite med_id Seguridad
prn_limit_blocked 100% limite med_id Seguridad
prn_limit_override Usuario confirma med_id Riesgo
prn_stats_viewed Pantalla stats period Engagement Pro

10.2. Metricas de Negocio

Metrica Formula Target
Tasa completacion registro completed / started > 85%
Tasa uso motivo with_reason / completed > 80%
Respeto de limites respected / warnings > 95%
Conversion a Pro (stats) upgrades / stats_locked_views > 5%

11. Performance

11.1. Tiempos Objetivo

Pantalla Metrica Target
SCR-PRN-001 First Contentful Paint < 500ms
SCR-PRN-002 Time to Interactive < 300ms
SCR-PRN-006 Chart Render < 1s

11.2. Optimizaciones

  • Precargar lista PRN al entrar a MTS-MED-001
  • Calcular porcentajes en background
  • Cache de 5 minutos para estadisticas
  • Lazy load graficos en SCR-PRN-006

12. Seguridad

12.1. Consideraciones

Aspecto Implementacion
Override limites Requiere PIN/biometrico
Datos sensibles Encriptados en reposo
Compartir con cuidador Requiere consentimiento
Historial Solo visible por usuario/cuidador autorizado

12.2. Audit Trail

Registrar:

  • Cada toma con timestamp, usuario, dispositivo
  • Cada override con justificacion
  • Cada cambio de limites con antes/despues
  • Cada acceso a datos por cuidador

13. Referencias

13.1. Documentos Relacionados

Documento Relacion
MTS-PRN-001 Especificacion funcional
MTS-MED-001 Modulo padre
UIF-PRN-001 Flujo de navegacion
02-component-library.md Biblioteca de componentes

13.2. Pantallas

Pantalla Archivo
SCR-PRN-001 screens/SCR-PRN-001-lista-prn.md
SCR-PRN-002 screens/SCR-PRN-002-registrar-toma.md
SCR-PRN-003 screens/SCR-PRN-003-motivo-toma.md
SCR-PRN-004 screens/SCR-PRN-004-limites-alertas.md
SCR-PRN-005 screens/SCR-PRN-005-historial-tomas.md
SCR-PRN-006 screens/SCR-PRN-006-analisis-uso.md

14. Historial de Cambios

Version Fecha Autor Cambios
1.0.0 2025-12-05 MobileUxUiDrone Version inicial completa

15. Aprobaciones

Rol Nombre Fecha Estado
UX Lead - - Pendiente
Product Owner - - Pendiente
Tech Lead - - Pendiente

Documento generado por MobileUxUiDrone (Eight of Eight) "Control y seguridad en medicamentos segun necesidad."