Probar gratis
6 min lectura Guide 757 of 877

Desarrollo Móvil con GitScrum

El desarrollo móvil tiene desafíos únicos - múltiples plataformas, procesos de app store, y fragmentación de dispositivos. GitScrum ayuda a los equipos a coordinar trabajo móvil efectivamente.

Estructura del Proyecto Móvil

ORGANIZACIÓN DE PROYECTO MÓVIL
══════════════════════════════

APPROACH 1: STORIES COMPARTIDAS
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  Story: Implementar autenticación biométrica               │
│                                                             │
│  Subtasks:                                                  │
│  ├── [📱 iOS] Implementar Face ID/Touch ID                 │
│  ├── [🤖 Android] Implementar Fingerprint                  │
│  ├── [Shared] UI de prompt biométrico                      │
│  └── [Shared] Tests de integración                         │
│                                                             │
│  ✅ Feature completa visible en un lugar                   │
│  ✅ Fácil coordinar trabajo paralelo                       │
│                                                             │
└─────────────────────────────────────────────────────────────┘

APPROACH 2: STORIES POR PLATAFORMA
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  Epic: Autenticación Biométrica                            │
│                                                             │
│  Stories:                                                   │
│  ├── [📱 iOS] Face ID/Touch ID login                       │
│  ├── [🤖 Android] Fingerprint login                        │
│  └── [Backend] Soporte biométrico en API                   │
│                                                             │
│  ✅ Equipos de plataforma tienen ownership clara           │
│  ❌ Más difícil ver progreso de feature completa           │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Configuración de Labels

LABELS PARA PROYECTOS MÓVILES
═════════════════════════════

PLATAFORMA:
┌─────────────────────────────────────────────────────────────┐
│  📱 ios              │ Trabajo específico de iOS           │
│  🤖 android          │ Trabajo específico de Android       │
│  📱🤖 cross-platform │ Código compartido                   │
│  🔧 backend          │ API/servidor                        │
└─────────────────────────────────────────────────────────────┘

RELEASE:
┌─────────────────────────────────────────────────────────────┐
│  🚀 release-2.5      │ Target release                      │
│  🔥 hotfix           │ Fix urgente                         │
│  📦 app-store        │ Relacionado a submission            │
└─────────────────────────────────────────────────────────────┘

TIPO:
┌─────────────────────────────────────────────────────────────┐
│  🎨 ui               │ Trabajo de UI/UX                    │
│  ⚡ performance      │ Optimización                        │
│  📴 offline          │ Funcionalidad offline               │
│  🔔 push             │ Push notifications                  │
└─────────────────────────────────────────────────────────────┘

Flujo de Release

WORKFLOW DE RELEASE MÓVIL
═════════════════════════

BOARD DE RELEASE:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  Development │ QA │ Ready │ Submitted │ Review │ Released  │
│              │    │       │           │        │           │
│     ██ ██    │ ██ │  ██   │   ██      │   ██   │    ██     │
│                                                             │
└─────────────────────────────────────────────────────────────┘

TAREAS DE RELEASE:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  Release 2.5.0                                             │
│                                                             │
│  PRE-SUBMISSION:                                            │
│  ├── ☑ Code freeze                                         │
│  ├── ☑ QA sign-off iOS                                     │
│  ├── ☑ QA sign-off Android                                 │
│  ├── ☑ Actualizar version numbers                          │
│  ├── ☑ Screenshots actualizados                            │
│  └── ☑ Release notes escritos                              │
│                                                             │
│  SUBMISSION:                                                │
│  ├── ☑ Submit a App Store Connect                          │
│  ├── ☑ Submit a Google Play Console                        │
│  ├── ☐ iOS review (esperando...)                           │
│  └── ☐ Android review (esperando...)                       │
│                                                             │
│  POST-APPROVAL:                                             │
│  ├── ☐ Publicar iOS                                        │
│  ├── ☐ Publicar Android                                    │
│  └── ☐ Anunciar release                                    │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Manejo de App Store

TRACKING DE REVIEW
══════════════════

ESTADOS DE REVIEW:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  iOS App Store:                                             │
│  ├── Waiting for Review                                    │
│  ├── In Review                                             │
│  ├── Pending Developer Release (aprobado)                  │
│  ├── Ready for Sale                                        │
│  └── Rejected (ver razones)                                │
│                                                             │
│  Google Play:                                               │
│  ├── Pending publication                                   │
│  ├── In review                                             │
│  ├── Ready to publish                                      │
│  ├── Published                                             │
│  └── Rejected (ver policy violation)                       │
│                                                             │
└─────────────────────────────────────────────────────────────┘

SI HAY RECHAZO:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  1. Crear tarea: "Fix: [Razón de rechazo]"                 │
│  2. Priorizar como bloqueador                              │
│  3. Implementar fix mínimo                                 │
│  4. QA enfocado en el fix                                  │
│  5. Re-submit                                              │
│                                                             │
│  Razones comunes:                                           │
│  ├── iOS: Privacy policy issues, metadata inaccurate       │
│  ├── Android: Policy violations, misleading descriptions   │
│  └── Ambos: Crashes, incomplete features                   │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Testing por Plataforma

CHECKLIST DE QA MÓVIL
═════════════════════

FUNCIONALIDAD GENERAL:
┌─────────────────────────────────────────────────────────────┐
│  ☐ Todas las features funcionan                            │
│  ☐ Navigation correcta                                     │
│  ☐ Deep links funcionan                                    │
│  ☐ Push notifications funcionan                            │
└─────────────────────────────────────────────────────────────┘

ESPECÍFICO iOS:
┌─────────────────────────────────────────────────────────────┐
│  ☐ Face ID/Touch ID                                        │
│  ☐ iPad layout (si aplica)                                 │
│  ☐ Dynamic Type (accesibilidad)                            │
│  ☐ VoiceOver                                               │
│  ☐ Notch/Dynamic Island                                    │
└─────────────────────────────────────────────────────────────┘

ESPECÍFICO ANDROID:
┌─────────────────────────────────────────────────────────────┐
│  ☐ Back button behavior                                    │
│  ☐ Diferentes densidades de pantalla                       │
│  ☐ TalkBack                                                │
│  ☐ Split screen/multi-window                               │
│  ☐ Permission handling                                     │
└─────────────────────────────────────────────────────────────┘

EDGE CASES:
┌─────────────────────────────────────────────────────────────┐
│  ☐ Sin conexión / offline                                  │
│  ☐ Conexión lenta                                          │
│  ☐ Interrupciones (llamada, notificación)                  │
│  ☐ Rotación de pantalla                                    │
│  ☐ App en background largo tiempo                          │
│  ☐ Low memory conditions                                   │
└─────────────────────────────────────────────────────────────┘

Coordinación de Equipos

ESTRUCTURA DE EQUIPO MÓVIL
══════════════════════════

EQUIPO UNIFICADO:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  Mobile Team                                                │
│  ├── iOS Developer (2)                                     │
│  ├── Android Developer (2)                                 │
│  ├── QA Mobile (1)                                         │
│  └── Designer (1, compartido)                              │
│                                                             │
│  Ceremonia: Un daily, un planning, un retro                │
│  Board: Compartido con labels de plataforma                │
│                                                             │
└─────────────────────────────────────────────────────────────┘

EQUIPOS SEPARADOS:
┌─────────────────────────────────────────────────────────────┐
│                                                             │
│  iOS Team          Android Team                            │
│  ├── Dev (2)       ├── Dev (2)                             │
│  └── QA (0.5)      └── QA (0.5)                            │
│                                                             │
│  Ceremonia: Syncs separados + sync semanal cross-team      │
│  Board: Separados, epics linkean features                  │
│                                                             │
└─────────────────────────────────────────────────────────────┘

Soluciones Relacionadas de GitScrum