# EPICA: EPIC-MGN-019 - Apps Moviles por Perfil ## Metadata | Campo | Valor | |-------|-------| | **ID** | EPIC-MGN-019 | | **Nombre** | Apps Moviles por Perfil de Usuario | | **Modulo** | mobile | | **Fase** | Fase 5 - Mobile Platform | | **Prioridad** | P1 | | **Estado** | Backlog | | **Story Points** | 89 | | **Sprint(s)** | Sprint 29-36 | --- ## Descripcion Desarrollo de apps moviles React Native para diferentes perfiles de usuario en cada vertical. Incluye funcionalidades biometricas (reconocimiento facial, huella), modo offline, y sincronizacion con backend. --- ## Objetivo de Negocio - Digitalizar operaciones en campo - Capturar datos en tiempo real - Validar asistencia con biometricos - Aumentar productividad de usuarios moviles --- ## Apps por Vertical ### Construccion (3 apps) | App | Perfiles | SP | Descripcion | |-----|----------|-----|-------------| | App Encargado de Obra | Residente, Supervisor | 21 | Check in/out, avances, fotos, materiales | | App Almacen | Almacenista | 13 | Entradas, salidas, inventario | | App Derechohabiente | Cliente final | 13 | Estado vivienda, citas, documentos | ### Vidrio Templado (2 apps) | App | Perfiles | SP | Descripcion | |-----|----------|-----|-------------| | App Produccion | Operador | 13 | Ordenes, calidad, escaneo | | App Instalador | Instalador | 8 | Asignaciones, fotos, firmas | ### Mecanicas Diesel (1 app) | App | Perfiles | SP | Descripcion | |-----|----------|-----|-------------| | App Tecnico | Mecanico | 13 | Ordenes servicio, diagnosticos | ### Retail (1 app) | App | Perfiles | SP | Descripcion | |-----|----------|-----|-------------| | App Vendedor | Vendedor | 8 | POS movil, inventario | --- ## Historias de Usuario - Core (Todas las apps) | ID | Historia | Prioridad | SP | Estado | |----|----------|-----------|-----|--------| | US-MGN019-001 | Como usuario, quiero hacer login con mi cuenta ERP | P0 | 3 | Backlog | | US-MGN019-002 | Como usuario, quiero hacer check-in con reconocimiento facial | P0 | 8 | Backlog | | US-MGN019-003 | Como usuario, quiero hacer check-in con huella | P1 | 5 | Backlog | | US-MGN019-004 | Como usuario, quiero tomar fotos geolocalizadas | P0 | 5 | Backlog | | US-MGN019-005 | Como usuario, quiero trabajar sin internet | P0 | 8 | Backlog | | US-MGN019-006 | Como usuario, quiero sincronizar datos cuando tenga conexion | P0 | 5 | Backlog | | US-MGN019-007 | Como usuario, quiero recibir notificaciones push | P1 | 3 | Backlog | **Total Story Points Core:** 37 SP --- ## Criterios de Aceptacion **Funcionales:** - [ ] Login con credenciales ERP - [ ] Reconocimiento facial con liveness detection - [ ] Huella dactilar nativa del dispositivo - [ ] Captura de fotos con GPS embebido - [ ] Almacenamiento offline de datos pendientes - [ ] Sincronizacion automatica al recuperar conexion - [ ] Resolucion de conflictos en sincronizacion - [ ] Notificaciones push via Firebase **No Funcionales:** - [ ] Soporte Android 9+ e iOS 14+ - [ ] Tiempo de login < 3 segundos - [ ] Reconocimiento facial < 2 segundos - [ ] Sincronizacion en background - [ ] Tamaño de app < 50MB --- ## Arquitectura Tecnica ### Stack - **Framework:** React Native 0.73+ - **Estado:** Zustand + React Query - **Storage:** WatermelonDB (SQLite) - **Auth:** JWT + Biometrics - **Camera:** react-native-camera - **Facial:** AWS Rekognition / Azure Face - **Push:** Firebase Cloud Messaging ### Monorepo Structure ``` apps/mobile/ ├── packages/ │ ├── core/ # Auth, API, Storage │ ├── biometrics/ # Facial, Fingerprint │ ├── camera/ # Photo capture │ ├── sync/ # Offline sync │ └── ui/ # Shared components ├── apps/ │ ├── construccion-encargado/ │ ├── construccion-almacen/ │ ├── construccion-cliente/ │ ├── vidrio-produccion/ │ ├── vidrio-instalador/ │ ├── mecanicas-tecnico/ │ └── retail-vendedor/ └── package.json ``` --- ## Dependencias **Depende de:** - EPIC-MGN-001 Auth (autenticacion) - APIs de cada vertical **Bloquea:** - Ninguna --- ## Roadmap de Apps | Fase | Apps | Sprint | |------|------|--------| | 1 | Core packages + App Encargado Obra | 29-32 | | 2 | App Almacen + App Derechohabiente | 33-34 | | 3 | App Produccion + App Tecnico | 35-36 | | 4 | Otras apps | 37+ | --- **Creado por:** Requirements-Analyst **Fecha:** 2025-12-05