Saltar a contenido

Flujo de Navegacion - Onboarding

Identificador: UIF-ONB-001 Modulo: MTS-ONB-001 - Onboarding 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 Onboarding, adaptado a los 4 roles de MedTime (PI, CR, CS, PD) y los 3 tiers (Free, Pro, Perfect).

REGLAS CRITICAS: - PI y CR seleccionan tier durante onboarding - CS siempre es Free (no ve pantalla de tier) - PD no tiene onboarding (su perfil lo crea el CR)

1.1. Pantallas del Modulo

ID Nombre Proposito Prioridad
SCR-ONB-001 Bienvenida Primera pantalla post-auth, propuesta de valor Critica
SCR-ONB-002 Seleccion de Rol Usuario elige PI o CR Critica
SCR-ONB-003 Datos Personales Nombre, fecha nacimiento (opcional) Alta
SCR-ONB-004 Informacion Medica Tipo sangre, alergias, condiciones Media
SCR-ONB-005 Primer Medicamento Wizard rapido para primer med Media
SCR-ONB-006 Configuracion Notificaciones Permisos y preferencias de alertas Alta
SCR-ONB-007 Agregar Cuidadores Invitar CS (Pro/Perfect) Media
SCR-ONB-008 Tour Funcionalidades Tour guiado interactivo Baja

2. Diagrama de Flujo Principal

flowchart TD
    subgraph Entry["Entrada"]
        AUTH[Post Auth exitoso]
        INVITE[Invitacion CS]
    end

    subgraph CoreFlow["Flujo Core - Obligatorio"]
        WELCOME[SCR-ONB-001<br/>Bienvenida]
        ROLE[SCR-ONB-002<br/>Seleccion Rol]
        TIER[Seleccion Tier<br/>incluido en ROLE]
        PERSONAL[SCR-ONB-003<br/>Datos Personales]
        NOTIF[SCR-ONB-006<br/>Notificaciones]
    end

    subgraph OptionalFlow["Flujo Opcional - Skippable"]
        MEDICAL[SCR-ONB-004<br/>Info Medica]
        FIRSTMED[SCR-ONB-005<br/>Primer Medicamento]
        CAREGIVERS[SCR-ONB-007<br/>Agregar Cuidadores]
        TOUR[SCR-ONB-008<br/>Tour]
    end

    subgraph CSFlow["Flujo CS - Simplificado"]
        CS_ACCEPT[Aceptar Invitacion]
        CS_PERSONAL[Datos Basicos]
        CS_TOUR[Tour CS corto]
    end

    subgraph CRFlow["Flujo CR - Adicional"]
        TUTELAGE[Declaracion Tutela]
        ADD_PD[Agregar Dependiente]
    end

    subgraph Exit["Salida"]
        DASHBOARD[Dashboard]
    end

    %% Entry
    AUTH --> WELCOME
    INVITE --> CS_ACCEPT

    %% PI Flow
    WELCOME --> ROLE
    ROLE -->|PI seleccionado| TIER
    TIER --> PERSONAL

    PERSONAL --> NOTIF
    NOTIF --> MEDICAL
    MEDICAL -->|Completar| FIRSTMED
    MEDICAL -->|Saltar| FIRSTMED

    FIRSTMED -->|Completar| CAREGIVERS_CHECK
    FIRSTMED -->|Saltar| TOUR

    CAREGIVERS_CHECK{Tier Pro/Perfect?}
    CAREGIVERS_CHECK -->|Si| CAREGIVERS
    CAREGIVERS_CHECK -->|No| TOUR

    CAREGIVERS --> TOUR
    TOUR --> DASHBOARD

    %% CR Flow
    ROLE -->|CR seleccionado| TIER
    TIER -->|CR| PERSONAL
    PERSONAL -->|CR| TUTELAGE
    TUTELAGE --> ADD_PD
    ADD_PD --> NOTIF

    %% CS Flow
    CS_ACCEPT --> CS_PERSONAL
    CS_PERSONAL --> CS_TOUR
    CS_TOUR --> DASHBOARD

    %% Skip paths
    TOUR -->|Saltar| DASHBOARD

    %% Styling
    classDef core fill:#E8F5E9,stroke:#388E3C
    classDef optional fill:#FFF3E0,stroke:#F57C00
    classDef cs fill:#E3F2FD,stroke:#1976D2
    classDef cr fill:#FCE4EC,stroke:#C2185B

    class WELCOME,ROLE,TIER,PERSONAL,NOTIF core
    class MEDICAL,FIRSTMED,CAREGIVERS,TOUR optional
    class CS_ACCEPT,CS_PERSONAL,CS_TOUR cs
    class TUTELAGE,ADD_PD cr

3. User Journey: Paciente Independiente (PI) - Onboarding Completo

Persona: Maria, 45 anos, quiere gestionar su diabetes con MedTime.

journey
    title Maria completa onboarding como PI
    section Bienvenida
      Ve pantalla bienvenida: 5: Maria
      Entiende propuesta de valor: 5: Maria
    section Configuracion Base
      Selecciona "Soy Paciente": 5: Maria
      Elige tier Free: 4: Maria
      Ingresa nombre: 5: Maria
      Autoriza notificaciones: 5: Maria
    section Personalizacion
      Agrega tipo de sangre: 4: Maria
      Registra alergia a penicilina: 5: Maria
    section Primer Medicamento
      Decide agregar Metformina: 5: Maria
      Configura dosis y horario: 4: Maria
    section Finalizacion
      Ve tour de 5 pantallas: 4: Maria
      Llega al dashboard: 5: Maria

3.1. Pasos Detallados - PI

Paso Pantalla Accion Obligatorio Notas UX
1 SCR-ONB-001 Ver bienvenida Si Propuesta de valor clara
2 SCR-ONB-001 Tap "Comenzar" Si CTA prominente
3 SCR-ONB-002 Seleccionar "Soy Paciente" Si Cards con iconos
4 SCR-ONB-002 Seleccionar tier (Free/Pro/Perfect) Si Comparativa visual
5 SCR-ONB-003 Ingresar nombre Si Pre-llenado de OAuth
6 SCR-ONB-006 Autorizar notificaciones Si Explicar importancia
7 SCR-ONB-004 Agregar info medica No Skippable
8 SCR-ONB-005 Agregar primer medicamento No Wizard simplificado
9 SCR-ONB-007 Invitar cuidadores No Solo Pro/Perfect
10 SCR-ONB-008 Completar tour No 5 pantallas interactivas
11 Dashboard Ver pantalla principal - Onboarding completo

3.2. Tiempo Estimado - PI

Completitud Tiempo
Solo obligatorio 2-3 min
Con info medica 3-4 min
Con primer medicamento 5-6 min
Completo con tour 6-8 min

4. User Journey: Cuidador Responsable (CR) - Onboarding con Dependiente

Persona: Carlos, 38 anos, cuida a su madre de 72 anos.

journey
    title Carlos configura cuenta como CR
    section Bienvenida
      Ve pantalla bienvenida: 5: Carlos
      Tap Comenzar: 5: Carlos
    section Seleccion
      Selecciona "Soy Cuidador Responsable": 5: Carlos
      Elige tier Pro: 5: Carlos
    section Datos Personales
      Ingresa nombre: 5: Carlos
      Confirma email: 4: Carlos
    section Tutela
      Lee declaracion de tutela: 4: Carlos
      Acepta responsabilidad: 5: Carlos
    section Dependiente
      Ingresa nombre de madre: 5: Carlos
      Selecciona relacion "Madre": 5: Carlos
      Ingresa fecha nacimiento: 4: Carlos
    section Configuracion
      Autoriza notificaciones: 5: Carlos
      Completa tour CR: 4: Carlos

4.1. Pasos Adicionales CR

Paso Pantalla Accion Notas
Extra 1 SCR-ONB-002 Seleccionar "Soy Cuidador Responsable" Card con icono familia
Extra 2 Declaracion Tutela Leer y aceptar declaracion Modal con checkbox
Extra 3 Agregar Dependiente Ingresar datos del PD Nombre, relacion, fecha nac
Extra 4 SCR-ONB-008 Tour especifico para CR 5 pantallas diferentes

4.2. Limites por Tier CR

Tier Dependientes Cuidadores por Dependiente
Free 1 0
Pro 5 3
Perfect 10 5

5. User Journey: Cuidador Solidario (CS) - Onboarding Simplificado

Persona: Ana, 30 anos, es amiga de Maria y acepto ser su cuidadora solidaria.

journey
    title Ana acepta ser cuidadora solidaria
    section Invitacion
      Recibe link por email: 5: Ana
      Abre app con invitacion: 5: Ana
    section Aceptacion
      Ve detalles de invitacion: 5: Ana
      Ve permisos ofrecidos: 4: Ana
      Acepta terminos CS: 5: Ana
    section Configuracion Rapida
      Ingresa nombre: 5: Ana
      Crea PIN: 5: Ana
    section Tour Rapido
      Ve 3 pantallas de tour CS: 4: Ana
      Llega al dashboard CS: 5: Ana

5.1. Flujo CS Simplificado

Paso Pantalla Accion Notas
1 Deep link Abrir invitacion Token en URL
2 Modal invitacion Ver nombre del PI "Maria te invito"
3 Modal invitacion Ver permisos Lista de checkmarks
4 Modal invitacion Tap "Aceptar" Boton prominente
5 SCR-ONB-003 Ingresar nombre Simplificado
6 PIN setup Crear PIN 4-6 digitos CS siempre Free
7 Tour CS 3 pantallas rapidas Especifico para rol CS
8 Dashboard CS Ver vista de cuidador Permisos limitados

5.2. Diferencias CS

  • NO ve pantalla de seleccion de tier
  • NO tiene opcion de invitar cuidadores
  • NO puede agregar medicamentos del PI
  • SI puede ver medicamentos (si permiso)
  • SI recibe alertas (si permiso)

6. Pantalla de Seleccion de Tier

6.1. Comparativa Visual

+-----------------------------------------------+
|            ELIGE TU PLAN                       |
+-----------------------------------------------+
|                                               |
| +-------------+  +-------------+  +-----------+
| |    FREE     |  |     PRO     |  |  PERFECT  |
| |             |  |             |  |           |
| |  $0/siempre |  |  $4.99/mes  |  | $9.99/mes |
| |             |  |             |  |           |
| | [x] Local   |  | [x] FREE +  |  | [x] PRO + |
| | [x] Offline |  | [x] Cloud   |  | [x] MFA   |
| | [x] Alertas |  | [x] OCR     |  | [x] Recov |
| | [x] 3 meds  |  | [x] Ilimit. |  | [x] Prio. |
| |             |  | [x] 1 CS    |  | [x] 3 CS  |
| |             |  |             |  |           |
| | [Elegir]    |  | [Elegir]    |  | [Elegir]  |
| +-------------+  +-------------+  +-----------+
|                                               |
|   Puedes cambiar de plan en cualquier momento |
+-----------------------------------------------+

6.2. Comportamiento Post-Seleccion

Tier Seleccionado Siguiente Paso
Free SCR-ONB-003 (crear PIN local)
Pro OAuth si no completo + SCR-ONB-003
Perfect OAuth + MFA setup + SCR-ONB-003

7. Transiciones y Animaciones

7.1. Transiciones Entre Pantallas

De A Tipo Duracion Ease
Welcome Role Slide left 300ms ease-out
Role Tier Crossfade 200ms ease-in-out
Any Next step Slide left 300ms ease-out
Any Skip Slide left 250ms ease-out
Tour slide Next slide Slide left 250ms ease-out

7.2. Progress Indicator

INDICADOR DE PROGRESO:

Paso 1/8   =====-----------   12%
Paso 4/8   ==========------   50%
Paso 8/8   ================  100%

- Barra horizontal en top
- Numero de paso + total
- Color: primary
- Height: 4dp
- Animacion: fill suave

7.3. Skip Animation

AL SALTAR UN PASO:

1. Boton "Saltar" fade out
2. Pantalla slide left (rapido)
3. Siguiente pantalla slide in
4. Progress bar update
5. Haptic feedback sutil

8. Estados de Pantalla

8.1. SCR-ONB-001 - Bienvenida

Estado Condicion Visualizacion
Default Pantalla cargada Ilustracion + titulo + CTA
From Auth Usuario recien autenticado Nombre del usuario incluido

8.2. SCR-ONB-002 - Seleccion de Rol

Estado Condicion Visualizacion
Default Ninguna seleccion 2 cards (PI, CR) sin seleccion
PI Selected Tap en PI Card PI highlighted, tier options
CR Selected Tap en CR Card CR highlighted, tier options
Tier Selected Tier elegido Boton "Continuar" habilitado

8.3. SCR-ONB-006 - Notificaciones

Estado Condicion Visualizacion
Pending Permiso no solicitado Explicacion + boton "Permitir"
Requesting Prompt del sistema Modal nativo
Granted Permiso concedido Checkmark + opciones de config
Denied Permiso denegado Mensaje + link a Settings

9. Persistencia de Estado

9.1. Modelo de Datos Onboarding

interface OnboardingState {
  current_step: number;
  total_steps: number;
  role_selected: 'PI' | 'CR' | 'CS' | null;
  tier_selected: 'free' | 'pro' | 'perfect' | null;
  completed_steps: string[];
  skipped_steps: string[];
  started_at: Date;
  completed_at: Date | null;

  // Datos recolectados
  user_name: string | null;
  birth_date: Date | null;
  blood_type: string | null;
  allergies: string[];
  conditions: string[];

  // CR specific
  tutelage_accepted: boolean;
  dependents: DependentInfo[];

  // CS specific
  invitation_token: string | null;
  pi_id: string | null;
}

9.2. Recuperacion de Estado

  • Estado guardado en local storage
  • Al cerrar app, se retoma donde quedo
  • Solo pasos obligatorios bloquean progreso
  • Pasos skipped se pueden completar despues

10. Validaciones

10.1. Validaciones por Pantalla

Pantalla Campo Validacion
SCR-ONB-002 Rol Requerido
SCR-ONB-002 Tier Requerido
SCR-ONB-003 Nombre Min 2 caracteres
SCR-ONB-003 Email Formato valido (si editable)
Declaracion Tutela Checkbox Requerido para CR
Agregar PD Nombre Requerido
Agregar PD Relacion Requerido
SCR-ONB-006 Notificaciones Solicitar permiso

10.2. Mensajes de Error

Error Mensaje Accion
Nombre vacio "Ingresa tu nombre para continuar" Focus en campo
Nombre muy corto "El nombre debe tener al menos 2 caracteres" Focus en campo
Tutela no aceptada "Debes aceptar la declaracion de tutela" Scroll a checkbox
PD sin nombre "Ingresa el nombre del dependiente" Focus en campo

Deep Link Destino Parametros
medtime://onboarding SCR-ONB-001 -
medtime://onboarding/step/{n} Paso especifico step_number
medtime://invite/{token} Flujo CS invitation_token

11.2. Invitacion CS

LINK DE INVITACION:

medtime://invite/abc123xyz

Comportamiento:
1. Si app instalada: Abrir con token
2. Si no instalada: Store con referrer
3. Post-install: Retomar con token

Token expira en 7 dias

12. Metricas de UX

12.1. KPIs del Flujo

Metrica Objetivo Medicion
Tiempo onboarding completo < 5 min analytics
Tasa abandono step 1 < 5% funnel
Tasa abandono total < 20% funnel
Steps skipped promedio < 2 analytics
Primer medicamento agregado > 50% analytics
Notificaciones autorizadas > 80% analytics

12.2. Puntos de Medicion

Punto Evento
Inicio onboarding_started
Rol seleccionado role_selected
Tier seleccionado tier_selected
Paso completado step_completed
Paso saltado step_skipped
Notificaciones notifications_permission
Primer med first_medication_added
Tour completado tour_completed
Onboarding completo onboarding_completed
Abandono onboarding_abandoned

13. Referencias


14. Historial de Cambios

Version Fecha Cambios
1.0.0 2025-12-05 Version inicial con flujos PI, CR, CS

Documento generado por MobileUxUiDrone (Eight of Eight) "El onboarding es la primera impresion. Esta especificacion asegura que sea memorable."