Programación de Dispositivos Móviles · Tema 5

Gestión de Proyectos Móviles

Metodologías, plataformas, monitoreo y mantenimiento — todo lo necesario para gestionar un proyecto de app de principio a fin.

🏗️ Metodologías Tradicionales ⚡ Metodologías Ágiles 📱 Plataforma 🔧 Seguimiento 🏋️ Actividades 📖 Glosario
01
Metodologías Tradicionales
Waterfall · Modelo en V · Espiral

🤔 ¿Qué es una metodología de proyecto?

Una metodología es el "método de trabajo" que el equipo sigue para desarrollar la app: cómo organiza las tareas, en qué orden, quién hace qué y cuándo. Sin metodología, cada miembro trabaja de forma diferente y el proyecto se descontrola.

Las metodologías tradicionales son secuenciales: primero se hace todo el análisis, luego todo el diseño, luego toda la programación... como construir un edificio planta por planta sin poder cambiar los cimientos una vez puestos.

💡 ¿Cuándo usar metodologías tradicionales?

Cuando los requisitos están completamente cerrados desde el inicio y no van a cambiar: apps para banca, sanidad, gobierno, o proyectos con contrato de precio fijo.

🌊 Modelo en Cascada (Waterfall)

Es el modelo más antiguo y sencillo: cada fase debe completarse al 100% antes de empezar la siguiente. Como una cascada de agua, nunca sube.

Analogía: es como construir un LEGO siguiendo las instrucciones en orden estricto. No puedes poner el tejado antes de las paredes, ni puedes volver atrás a cambiar los cimientos.

1 Requisitos — SRS completo
▼ Solo se avanza cuando la fase está terminada y aprobada
2 Diseño — Arquitectura, BD, UI
3 Codificación — APK/IPA
4 Pruebas — Verificación completa
5 Despliegue — Publicación en tiendas
6 Mantenimiento — Parches y actualizaciones
FaseDescripciónEntregable
1. RequisitosCaptura y análisis de todos los requerimientosDocumento SRS
2. DiseñoArquitectura, diseño de BD y UIDocumento técnico SDD
3. CodificaciónImplementación basada en el diseñoCódigo fuente, APK/IPA
4. PruebasVerificación y validación completaInforme de bugs
5. DesplieguePublicación y entrega al clienteApp publicada
6. MantenimientoCorrección de bugs, actualizaciones menoresParches

✅ Ventajas

  • Proceso claro y bien documentado
  • Hitos definidos para medir progreso
  • Fácil de gestionar y supervisar
  • Ideal para proyectos regulados (salud, banca)

❌ Desventajas

  • Muy difícil incorporar cambios
  • El cliente no ve el producto hasta el final
  • Errores tardíos son muy costosos
  • En móviles, los requisitos siempre cambian
⚠️ Error frecuente

Usar Waterfall para una startup de app sin requisitos cerrados. Al llegar a la fase de pruebas y enseñarle el producto al cliente por primera vez, lo habitual es que diga «esto no es lo que quería». Corregirlo en ese punto puede costar el mismo tiempo que desarrollarlo de nuevo.

🔡 Modelo en V

Es una extensión del Waterfall que planifica las pruebas desde el inicio. Por cada fase de desarrollo existe una fase de prueba correspondiente. La forma de «V» refleja que el desarrollo baja y las pruebas suben.

Análisis de requisitos
Diseño del sistema
Diseño arquitectónico
Diseño detallado
💻
Codificación
Pruebas de aceptación
Pruebas del sistema
Pruebas de integración
Pruebas unitarias
💡 Ventaja clave

La trazabilidad bidireccional garantiza que cada requisito tiene al menos un caso de prueba que lo valida. Los planes de prueba se elaboran en paralelo con cada fase de desarrollo, no al final.

🌀 Modelo Espiral

El modelo más sofisticado de los tradicionales. Es iterativo con gestión de riesgos integrada: en cada vuelta de la espiral se desarrolla un incremento y se evalúan los riesgos antes de continuar.

Analogía: como ir subiendo una montaña en zigzag. En cada curva puedes decidir si continuar o desviarte según lo que encuentres.

⬆️ Cuadrante 1
Determinación de objetivos

Definir metas, alternativas y restricciones de la iteración.

⬆️ Cuadrante 2
Evaluación y reducción de riesgos

Identificar y mitigar riesgos técnicos y de negocio.

⬆️ Cuadrante 3
Desarrollo y pruebas

Implementar y verificar el prototipo o incremento.

⬆️ Cuadrante 4
Planificación

Revisar resultados y planificar la próxima iteración.

📱 Ejemplo aplicado

Una app fintech con funciones de pago muy complejas. En cada espiral se prototipa una funcionalidad (p.ej. transferencias), se evalúan los riesgos legales y técnicos, se desarrolla y se evalúa antes de entrar en la siguiente espiral (p.ej. inversiones). Si un riesgo es inaceptable, se detiene el proyecto antes de invertir más dinero.

🙋 Pregunta para el alumno

¿En qué situación de la vida real usarías Waterfall? ¿Y el Modelo en V? ¿Por qué crees que el 90% de las startups de apps eligen metodologías ágiles en lugar de estas?

📋 Mini resumen

Waterfall: secuencial, documentado, sin cambios posibles. V: igual pero con trazabilidad de pruebas. Espiral: iterativo con gestión de riesgos. Los tres son apropiados cuando los requisitos son estables. Para apps con cambios frecuentes → ágil.

02
Metodologías Ágiles
Scrum · Kanban · Herramientas

⚡ ¿Qué diferencia a lo ágil de lo tradicional?

Las metodologías ágiles nacieron en 2001 con el Manifiesto Ágil. Su filosofía: en lugar de planificar todo de antemano, entrega algo que funcione cada 2-4 semanas y ajusta según el feedback del cliente.

👥
Personas antes que procesos
Individuos e interacciones sobre herramientas y documentación.
🚀
Software funcionando
Entregar algo que funcione cada sprint. No documentar, producir.
🤝
Colaboración continua
El cliente está involucrado durante todo el desarrollo, no solo al final.
🔄
Responder al cambio
Los requisitos cambian: es normal y bienvenido, no un problema.

🏉 Scrum: el framework ágil más popular

Scrum organiza el trabajo en sprints de 2-4 semanas. Al final de cada sprint, hay una versión funcional del producto. Es el método más usado en el desarrollo de apps móviles.

Analogía: es como un equipo de rugby (de ahí el nombre): todos empujan juntos en la misma dirección, nadie trabaja solo, y cada 2 semanas se para a evaluar si van bien.

Los 3 roles de Scrum:

RolResponsabilidadHabilidades clave
🎯 Product OwnerDefine y prioriza qué se hace. Representa al cliente.Visión de negocio, decisiones, comunicación
🛡️ Scrum MasterFacilita el proceso y elimina impedimentos del equipo.Coaching, resolución de conflictos, Scrum
⚙️ Dev TeamAutoorganizado, entrega el incremento en cada sprint. 3-9 personas.Desarrollo, testing, diseño, DevOps

Los 4 eventos de un sprint:

Sprint Planning
2–4 horas · Planificar qué hacemos
Daily Scrum
15 min/día · Sincronización
Sprint Review
1–2 horas · Demo al PO
Retrospectiva
1–2 horas · Mejorar el proceso

Los 3 artefactos de Scrum:

📋 Product Backlog
Lista priorizada de todas las funcionalidades pendientes. Ordenada por valor de negocio. Responsabilidad del PO.
✅ Sprint Backlog
Subconjunto del Product Backlog elegido para este sprint, más el plan del equipo para entregarlo.
🚀 Incremento
Resultado del sprint. Debe estar en estado «potencialmente entregable» y funcionando.

📝 User Stories y criterios de aceptación

Las User Stories son la forma de describir funcionalidades desde el punto de vista del usuario, no desde el técnico. Son la unidad básica del Product Backlog.

Formato: «Como [tipo de usuario], quiero [funcionalidad] para [beneficio/valor]»
Ejemplo: «Como usuario registrado, quiero guardar artículos para leer más tarde, para poder acceder a ellos sin conexión»

Criterios de aceptación — formato GIVEN-WHEN-THEN:

GIVEN el usuario no ha iniciado sesión
WHEN   introduce email y contraseña correctos y toca 'Entrar'
THEN   la app navega a la pantalla principal y muestra su nombre

Story Points y Planning Poker:

🃏
Planning Poker
Todos los miembros votan simultáneamente → si hay discrepancia → debate → consenso. Evita el «efecto ancla».
📐
Escala Fibonacci
1, 2, 3, 5, 8, 13, 21. No usar números mayores — la incertidumbre es demasiado alta.
Velocity
Story Points completados por sprint. Se estabiliza en 3–5 sprints. Sirve para predecir sprints futuros.

Burndown Chart — el termómetro del sprint:

Sprint Burndown Chart — 40 story points en 10 días
Día 1Día 5Día 10
Línea ideal
Equipo A (bien)
Equipo B (retraso)

Por encima de la línea ideal: el equipo va retrasado → revisar scope del sprint o pedir ayuda.

Por debajo de la línea ideal: el equipo va adelantado → puede añadir más ítems.

Línea plana (sin bajar): el equipo está bloqueado → el Scrum Master debe actuar inmediatamente.

📋 Kanban: gestión visual del flujo

Kanban no tiene sprints. El trabajo fluye continuamente de izquierda a derecha en un tablero. Lo más importante son los límites de trabajo en progreso (WIP limits): si tienes demasiadas tareas a la vez, todo va lento.

Analogía: como una cadena de montaje de coches. Si la estación de pintura tiene capacidad para 3 coches pero le mandan 10, todo se atasca. El WIP limit evita ese atasco.

📥 Backlog (sin límite)
Pantalla de perfil de usuario5 pts
Integración con Google Pay8 pts
Dark mode3 pts
🔨 En Progreso (máx. 2-3)
Login con biometríaEn curso
Notificaciones pushEn curso
🔍 Revisión (máx. 2)
Pantalla de ajustesPR #47
✅ Hecho (sin límite)
Onboarding — paso 1
Registro de usuario

Métricas clave de Kanban:

MétricaQué mideUso
Lead TimeTiempo desde que se crea una tarea hasta que se entregaEficiencia total del proceso de principio a fin
Cycle TimeTiempo desde que se empieza a trabajar una tarea hasta que terminaVelocidad real del equipo de desarrollo
ThroughputNúmero de tareas completadas por unidad de tiempoProductividad real del equipo
CFDCumulative Flow Diagram — acumulación en cada columnaDetectar cuellos de botella visualmente
⚠️ Error frecuente — ignorar el WIP limit

El error más común en Kanban es crear nuevas tarjetas sin respetar los límites WIP «porque parece que hay capacidad». Si tienes 3 tareas en revisión y el límite es 2, no empieces ninguna tarea nueva — ayuda a que las de revisión avancen.

🛠️ Herramientas de gestión de proyectos

HerramientaMetodologíaPrecioIdeal para
JiraScrum + KanbanGratis hasta 10 usersEquipos medianos/grandes, integración CI/CD
TrelloKanbanGratis (básico)Equipos pequeños, proyectos simples
LinearScrum + KanbanGratis (equipo)Dev teams de startups, UI moderna
NotionFlexibleGratis (personal)Todo en uno: docs + tareas + base de conocimiento
Azure DevOpsScrum + KanbanGratis hasta 5 usersEmpresas grandes, integración con Azure
🙋 Pregunta para el alumno

¿Cuál es la diferencia práctica más importante entre Scrum y Kanban para un equipo de 2 personas desarrollando su primera app? ¿Necesitas un Scrum Master si el equipo es de 3 personas?

📋 Mini resumen

Scrum = sprints de 2-4 semanas + 3 roles + 4 eventos + 3 artefactos. User Stories en formato «Como/quiero/para». Kanban = tablero visual + WIP limits + flujo continuo. Lead Time, Cycle Time y Throughput son las métricas clave de Kanban.

03
Selección de Plataforma y Tecnología
iOS vs Android · Multiplataforma · Flutter · React Native

📱 La primera decisión: ¿iOS, Android o ambas?

Antes de escribir una línea de código hay que decidir para qué plataforma se desarrolla. Esta decisión afecta al presupuesto, al equipo necesario, al tiempo de llegada al mercado y a los usuarios que alcanzas.

iOS / Apple
  • ~29% cuota global de mercado
  • Lidera en EE.UU., Japón, Australia
  • Gasto por usuario 2× mayor que Android
  • Baja fragmentación (~5 tamaños activos)
  • Swift / SwiftUI como lenguaje principal
  • Requiere Mac + Xcode obligatoriamente
  • Revisión manual Apple: 1–7 días
Android / Google
  • ~70% cuota global de mercado
  • Domina en Europa, Asia, LATAM
  • Mayor volumen de usuarios
  • Alta fragmentación (+1.000 modelos)
  • Kotlin / Jetpack Compose como lenguaje
  • Android Studio en Windows, Mac o Linux
  • Revisión automática: pocas horas
DimensióniOSAndroid
Cuota de mercado global~29%~70%
Gasto por usuario2× respecto a AndroidReferencia base
FragmentaciónBaja (~5 tamaños activos)Muy alta (+1.000 modelos)
Actualizaciones del OS~95% actualizan en 2 años~50% actualizan en 2 años
Coste de desarrollo$99/año + Mac obligatorio$25 USD pago único
💡 Regla general de selección

iOS primero si el público está en mercados premium con alto poder adquisitivo (Europa Occidental, EE.UU., Japón). Android primero para máximo alcance global y mercados emergentes (LATAM, África, Asia del Sur). Multiplataforma si el presupuesto es limitado.

🔀 Desarrollo multiplataforma: Flutter vs React Native

En lugar de hacer dos apps distintas (una para iOS y otra para Android), las soluciones multiplataforma permiten escribir un único código que funciona en ambas plataformas.

FrameworkLenguajeRendimientoCuándo elegirlo
Nativa puraSwift/KotlinMáximoSin restricciones de presupuesto, máxima calidad UX
FlutterDartMuy buenoUI consistente, soporte Google, muy popular actualmente
React NativeJavaScript/TSBuenoEquipo web existente, ecosistema npm, gran comunidad
KMP (Kotlin Multiplatform)KotlinNativoCompartir solo la lógica, UI nativa en cada plataforma

🦋 Flutter — Google

  • Dart: curva de aprendizaje moderada
  • Hot reload: cambios en milisegundos
  • Widgets propios (no UI nativa del SO)
  • iOS, Android, Web, Windows, macOS desde un código
  • Compila a código nativo ARM

⚛️ React Native — Meta

  • JavaScript/TypeScript — equipo web puede usarlo
  • Renderiza componentes UI nativos reales
  • Ecosistema npm — miles de librerías
  • Mantenido por Meta (Facebook)
  • Comunidad muy activa y madura
📱 Ejemplo aplicado

Una startup con 3 desarrolladores web quiere lanzar su app de gestión de tareas en iOS y Android al mismo tiempo con un presupuesto de €40.000. La opción correcta es React Native o Flutter: un equipo, un código, dos plataformas. Hacer las dos apps nativas costaría el doble de tiempo y dinero.

FactorSolo iOSSolo AndroidMultiplataforma
Presupuesto limitadoSi target es premiumSi target es masivoMejor opción siempre
Target alto poder adquisitivoIdealFuncionaViable
Mercado global y diversoNo recomendadoBuenoExcelente
Hardware avanzado (cámara, AR)Muy buenoMuy buenoLimitado
Time-to-market urgentePuede serPuede serReact Native/Flutter ✓
🙋 Pregunta para el alumno

Una app de banca con funciones de NFC, biometría avanzada y widgets del sistema operativo. ¿Elegirías nativa o multiplataforma? ¿Cambiaría tu respuesta si el presupuesto es de €500.000? ¿Y si es de €30.000?

📋 Mini resumen

iOS: 29%, mercados premium, 2× más ingresos por usuario, requiere Mac. Android: 70%, alcance global, alta fragmentación. Multiplataforma (Flutter/React Native) = un código, dos plataformas, menos presupuesto. La elección depende del target, presupuesto y capacidades del equipo.

04
Seguimiento y Mantenimiento
Crashlytics · Analytics · SLAs · Ciclo de releases

🔥 Firebase Crashlytics: monitoreo de errores

Publicar la app no es el final — es el principio. Firebase Crashlytics te alerta en tiempo real cuando la app falla en los dispositivos de los usuarios reales, con toda la información necesaria para reproducir y corregir el error.

Analogía: es como el caja negra de un avión, pero en tiempo real. Si algo sale mal, tienes el stack trace exacto, el dispositivo, la versión del OS, lo que hizo el usuario justo antes del crash y el estado de la app.

>99%
Crash-free users objetivo
<1%
Crash Rate máximo aceptable
<0.47%
ANR Rate máximo (Play)
24/7
Alertas automáticas configurables
MétricaUmbral objetivoAcción si se supera
Crash-free users> 99%Hotfix urgente + rollback si es necesario
Crash Rate< 1%Pausar rollout, investigar causa raíz
ANR Rate< 0.47%Optimizar operaciones en el hilo principal
Crashes por versión de OSSin regresionesDesactivar feature con Remote Config
✅ Alertas automáticas configurables
  • Nuevo issue: crash que no existía antes en producción
  • Regresión: un issue cerrado vuelve a aparecer
  • Umbral de velocidad: la tasa de crash supera el % definido
  • Canales: Email, Slack, PagerDuty, Google Cloud Alerts
⚠️ Error frecuente

No añadir contexto personalizado a los crashes. Si solo ves «NullPointerException en línea 47», no sabes qué usuario estaba haciendo qué. Con setCustomKey("screen", "CheckoutActivity") y log("Usuario pulsó confirmar"), el diagnóstico es inmediato.

📊 Firebase Analytics: métricas de comportamiento

Firebase Analytics registra automáticamente eventos en la app y te permite añadir eventos personalizados para entender exactamente cómo usan los usuarios el producto. Sin datos, no hay mejoras fundamentadas.

DimensiónMétricas principalesObjetivo típico
📥 AdquisiciónDAU, MAU, fuentes de instalación, CACEntender de dónde vienen los usuarios
🚀 ActivaciónTasa de onboarding, tiempo hasta acción claveReducir fricción en los primeros 5 minutos
🔄 RetenciónD1/D7/D30 retention, churn rate, DAU/MAUD1 >35%, D7 >15%, D30 >5%
💰 IngresosARPU, LTV, tasa de conversión, MRRLTV ≥ 3× CAC para sostenibilidad
📣 ReferralNPS, K-factor viral, shares e invitacionesNPS > 50 es excelente
🖱️ ComportamientoFunnel de conversión, pantallas más vistasDetectar dónde abandonan los usuarios
📱 Ejemplo aplicado

Firebase Analytics muestra que el 45% de los usuarios abandonan durante el paso 3 del onboarding de una app de e-learning. Eso significa que ese paso tiene demasiada fricción. El equipo lo simplifica en el siguiente sprint y la retención D1 sube del 28% al 41%.

📋 SLA: compromisos de servicio

Un SLA (Service Level Agreement) es un contrato que define los tiempos máximos de respuesta y resolución para cada tipo de incidencia. Sin SLA, no hay garantías ni prioridades claras cuando algo falla.

🔴 P1 — Crítico
1h / 4h
App no arranca. Datos perdidos. Respuesta en 1h, resolución en 4h.
🟠 P2 — Alto
4h / 24h
Crash en flujo principal >5%. Respuesta 4h, resolución 24h.
🟡 P3 — Medio
24h / 72h
Feature rota para algunos usuarios. Resolución en 72h.
🟢 P4 — Bajo
48h / 1s
Problema cosmético. Se incluye en la próxima release.

🔁 Ciclo de actualizaciones y release notes

Una app en producción nunca está «terminada». El mantenimiento continuo es lo que diferencia a las apps con alta retención de las que los usuarios abandonan.

Tipo de releaseFrecuenciaQué incluyeProceso
🚨 HotfixCuando sea necesarioCorrección crítica únicaPR urgente → review rápida → deploy directo
🐛 Patch (x.x.X)Cada 1–2 semanas2–5 bugs no críticosSprint bugfix → QA básico → staged rollout
✨ Feature (x.X.0)Cada 4–6 semanasNuevas funcionalidadesSprint completo → QA → beta → staged rollout
🚀 Major (X.0.0)Cada 3–6 mesesRediseño o nueva arquitecturaMúltiples sprints → beta pública → rollout lento

Ejemplo de release notes bien escritas:

Versión 2.5.0 — Enero 2025

🆕 NOVEDADES
• Modo oscuro: ahora disponible en Ajustes > Apariencia
• Sincronización con Google Calendar
• Filtros avanzados por etiqueta y prioridad

🐛 CORRECCIONES
• Solucionado el problema de notificaciones duplicadas en Android 14
• Corregido el crash al adjuntar archivos de más de 50 MB

⚡ MEJORAS
• La carga inicial es un 40% más rápida
• Menor consumo de batería en segundo plano
💡 Las release notes afectan al rating

Los usuarios leen las notas de versión antes de decidir si actualizar. Notas claras, positivas y útiles en lenguaje no técnico impactan directamente en las valoraciones de la app. Nunca escribas «corrección de bugs menores» — explica qué bug se corrigió.

🙋 Pregunta para el alumno

La app de vuestra startup tiene una tasa de retención D7 del 8%, cuando el objetivo es 15%. ¿Qué métricas de Firebase Analytics consultarías primero para entender por qué los usuarios se van? ¿Qué acción concreta tomarías?

📋 Mini resumen

Crashlytics: crash rate <1%, ANR <0.47%, alertas automáticas. Analytics: 6 dimensiones (adquisición, activación, retención, ingresos, referral, comportamiento). SLA: P1(1h/4h), P2(4h/24h), P3(24h/72h), P4(48h/1s). Releases: hotfix, patch semanal, feature 4-6 semanas, major 3-6 meses.

🏋️
Actividades Prácticas
7 ejercicios para consolidar el aprendizaje

Ejercicios ordenados de menor a mayor complejidad. Pueden usarse en clase o como tarea.

1
Comparativa de metodologías
Analiza un proyecto de app real o propuesto y justifica si Waterfall, Scrum o Kanban sería más adecuado, explicando los criterios de decisión.

Debate en clase: ¿habría elegido el mismo método hace 10 años?
2
Product Backlog completo
Define 10 User Stories para una app de tu elección. Cada historia debe incluir el formato «Como/quiero/para» y al menos 2 criterios de aceptación en formato GIVEN-WHEN-THEN.
3
Sprint Planning simulado
Selecciona 5 User Stories del backlog del ejercicio 2. Asigna Story Points con Planning Poker, define el Sprint Goal y elabora el Sprint Backlog con tareas técnicas.
4
Tablero Kanban real
Configura un tablero Kanban en Trello, Linear o Jira para tu proyecto. Crea columnas con WIP limits, añade 10 tarjetas reales y experimenta con el flujo durante una semana. Mide Lead Time y Throughput.
5
Decisión de plataforma
Crea una matriz de decisión para una startup con presupuesto de €30.000 que quiere lanzar una app de fitness. Justifica si elegir iOS, Android o multiplataforma. Incluye criterios técnicos, económicos y de mercado.
6
Crashlytics en práctica
Integra Firebase Crashlytics en una app Android existente. Genera un crash manual, localiza el informe en la consola y documenta qué información proporciona. ¿Qué contexto añadirías con setCustomKey?
7
Dashboard de KPIs
Diseña el dashboard de métricas para tu app: 10 KPIs, herramienta de medición, umbral de alerta y acción a tomar si se incumple cada uno. Conecta los KPIs con las 6 dimensiones de Firebase Analytics.

💬 Reflexiones rápidas para clase

📝 Explica con tus palabras
¿Por qué el WIP limit en Kanban hace que el equipo sea MÁS rápido, aunque parezca que limita la capacidad?
🔗 Relaciona con app real
¿Qué metodología crees que usa WhatsApp para lanzar nuevas funciones? ¿Y el equipo de una app bancaria de una entidad regulada?
🔍 Detecta el error
Un equipo usa versionCode 14 para la nueva actualización, pero la versión anterior era la 15. ¿Qué pasará al intentar subir a Google Play?
🏗️ Completa el esquema
Dibuja el flujo de trabajo de un equipo Scrum desde que el PO tiene una nueva idea hasta que el usuario la puede usar en producción.
📖
Glosario de términos
Definiciones claras de todos los conceptos técnicos del tema
Waterfall (Cascada)
Metodología de desarrollo secuencial donde cada fase debe completarse antes de iniciar la siguiente. Sin posibilidad de retroceder.
SRS (Software Requirements Specification)
Documento formal que recoge todos los requisitos funcionales y no funcionales del sistema. Entregable de la fase de análisis en Waterfall.
Modelo en V
Extensión del Waterfall donde cada fase de desarrollo tiene una fase de prueba correspondiente. Garantiza trazabilidad bidireccional entre requisitos y pruebas.
Trazabilidad bidireccional
Capacidad de conectar cada requisito con su caso de prueba y viceversa. Garantiza que nada queda sin probar.
Modelo Espiral
Metodología iterativa con 4 cuadrantes por iteración: objetivos, análisis de riesgos, desarrollo y planificación. Muy adecuada para proyectos con alta incertidumbre.
Manifiesto Ágil
Documento de 2001 firmado por 17 expertos que establece los 4 valores y 12 principios del desarrollo ágil de software.
Scrum
Framework ágil que organiza el trabajo en sprints de 2-4 semanas. Tiene 3 roles (PO, SM, Dev Team), 4 eventos y 3 artefactos.
Sprint
Iteración de tiempo fijo (2-4 semanas) en Scrum. Al final de cada sprint debe haber un incremento potencialmente entregable.
Product Owner (PO)
Rol en Scrum responsable de maximizar el valor del producto. Define y prioriza el Product Backlog. Representa al cliente o negocio.
Scrum Master (SM)
Facilitador del proceso Scrum. Elimina impedimentos, protege al equipo de interrupciones externas y ayuda a mejorar el proceso.
Product Backlog
Lista priorizada de todas las funcionalidades, mejoras y correcciones pendientes. El PO es su dueño y mantiene el orden por valor de negocio.
Sprint Backlog
Subconjunto del Product Backlog seleccionado para el sprint actual. El equipo se compromete a entregarlo al final del sprint.
Incremento
Resultado al final de un sprint. Suma de todos los ítems completados. Debe estar en estado «potencialmente entregable».
User Story
Descripción de una funcionalidad desde el punto de vista del usuario. Formato: «Como [usuario], quiero [funcionalidad] para [beneficio]».
GIVEN-WHEN-THEN
Formato de criterios de aceptación para User Stories. GIVEN=contexto, WHEN=acción del usuario, THEN=resultado esperado.
Story Points
Unidad de medida abstracta de complejidad en Scrum. No mide tiempo, sino esfuerzo relativo. Escala Fibonacci: 1, 2, 3, 5, 8, 13, 21.
Planning Poker
Técnica de estimación grupal donde todos votan simultáneamente para evitar el efecto ancla. Las discrepancias generan debate y consenso.
Velocity
Story Points completados por sprint. Se estabiliza en 3-5 sprints y permite predecir cuánto trabajo puede asumir el equipo en futuros sprints.
Burndown Chart
Gráfico que muestra el trabajo restante (story points) a lo largo del tiempo del sprint. Detecta desviaciones respecto a la línea ideal.
Kanban
Sistema de gestión visual del flujo de trabajo. No tiene sprints fijos. El trabajo fluye continuamente limitando las tareas en progreso simultáneas (WIP).
WIP Limit (Work In Progress Limit)
Número máximo de tareas que pueden estar simultáneamente en una columna del tablero Kanban. Limitar el WIP mejora el flujo total.
Lead Time
Tiempo total desde que se crea una tarea hasta que se entrega al usuario. Mide la eficiencia de todo el proceso.
Cycle Time
Tiempo desde que el equipo empieza a trabajar en una tarea hasta que la termina. Mide la velocidad interna del equipo.
Throughput
Número de tareas completadas por unidad de tiempo. Métrica de productividad real del equipo Kanban.
CFD (Cumulative Flow Diagram)
Gráfico que muestra la acumulación de tareas en cada columna del tablero a lo largo del tiempo. Detecta cuellos de botella visualmente.
Fragmentación (Android)
Diversidad extrema de dispositivos Android: más de 1.000 modelos distintos con diferentes tamaños, chips y versiones del OS. Implica más trabajo de testing y compatibilidad.
Flutter
Framework multiplataforma de Google que usa Dart como lenguaje. Compila a código nativo ARM. UI propia (no depende del OS). Soporta iOS, Android, Web, Desktop.
React Native
Framework de Meta para crear apps con JavaScript/TypeScript que renderiza componentes UI nativos del sistema operativo.
KMP (Kotlin Multiplatform)
Tecnología de JetBrains para compartir lógica de negocio entre plataformas manteniendo UI nativa en cada una. Kotlin como lenguaje.
Firebase Crashlytics
Herramienta de Google para monitoreo de crashes en tiempo real. Proporciona stack traces, información del dispositivo y estado de la app en el momento del fallo.
ANR (Application Not Responding)
Estado en Android donde la app se congela más de 5 segundos en el hilo principal. El umbral aceptable para Google Play es <0.47% de sesiones.
SLA (Service Level Agreement)
Acuerdo contractual que define los tiempos máximos de respuesta y resolución para cada nivel de prioridad de incidencia.
Hotfix
Actualización urgente para corregir un fallo crítico en producción. Se lanza fuera del ciclo normal de releases con el mínimo proceso posible.
Retención D1/D7/D30
Porcentaje de usuarios que siguen usando la app 1, 7 o 30 días después de instalarla. Indicadores clave de calidad del producto.
DAU/MAU
Ratio de Usuarios Activos Diarios entre Usuarios Activos Mensuales. Mide el engagement. >20% es un buen indicador de hábito de uso.
NPS (Net Promoter Score)
Indicador de lealtad del usuario: «¿Recomendarías esta app?» Rango de -100 a +100. >50 es excelente, >70 es excepcional.
Resumen del Tema 5
Gestión de proyectos móviles de principio a fin

La gestión eficaz de un proyecto de app móvil abarca desde la elección de metodología hasta el monitoreo en producción. Estos cuatro bloques son los pilares:

01
Metodologías Tradicionales
Waterfall, Modelo en V y Espiral para proyectos regulados con requisitos estables. Documentación exhaustiva. Fases secuenciales. Difícil de cambiar una vez iniciado.
02
Metodologías Ágiles
Scrum (sprints, 3 roles, 4 eventos, backlog) y Kanban (tablero, WIP limits, flujo continuo). Las más usadas en apps móviles. Adaptan al cambio de requisitos continuamente.
03
Selección de Plataforma
iOS para mercados premium (2× ingresos). Android para máximo alcance global (70%). Flutter y React Native como opciones multiplataforma más rentables con presupuesto limitado.
04
Seguimiento y Mantenimiento
Crashlytics (<1% crash rate), Analytics (6 dimensiones), SLA por prioridad. Ciclo: hotfix urgente, patch semanal, feature 4-6 semanas, major 3-6 meses. Release notes claras.
Conclusión del tema

El código solo es una parte del trabajo. Una app exitosa necesita la metodología correcta para organizarse, la plataforma adecuada para llegar a los usuarios y el monitoreo continuo para no morir de éxito. La gestión de proyectos no es burocracia — es lo que convierte buenas ideas en productos que funcionan.

🔗 Recursos oficiales

📋 Scrum Guide
scrumguides.org — Guía oficial de Scrum en español, gratuita.
📚 Atlassian Agile Coach
atlassian.com/agile — Guías de Scrum, Kanban y metodologías ágiles.
🔥 Firebase Analytics
firebase.google.com/docs/analytics — Documentación oficial completa.
💥 Firebase Crashlytics
firebase.google.com/docs/crashlytics — Implementación y dashboard.
🦋 Flutter
flutter.dev — Documentación oficial y ejemplos de código.
⚛️ React Native
reactnative.dev — Guía oficial y comunidad activa.