Ingeniería de Software Empírica Crítica del paper Towards Architecting for Continuous Delivery
Resumen del artículo - Introducción Entrega Continua (Continuous Delivery, CD): consiste en producir software con valor de manera incremental en intervalos pequeños y garantiza que el software puede ser liberado confiablemente en cualquier momento. Preguntas de investigación: ¿Cuáles son las características de este contexto de CD? ¿Por qué queremos arquitectura para CD? ¿Que implica la arquitectura para CD?
Resumen del artículo - Contexto Organizacional Paddy Power: Empresa de apuestas grande y de rápido crecimiento Servicios en distintos mercados a través de locales, teléfonos e internet Utiliza gran cantidad de aplicaciones a medida de diversas características y con distintas tecnologías Miles de servidores en distintas locaciones geográficas Departamento de tecnología de más de 400 personas
Resumen del artículo - Contexto Organizacional Previo a utilizar CD se observan problemas debido a demoras y a las actividades manuales. Son comunes los incidentes de gravedad en las liberaciones. Se decide adoptar CD y se establece un equipo de 8 personas que migran 22 aplicaciones en 2 años.
Para traer a tierra … Contexto similar en Uruguay Banca de Quinielas del Uruguay Mucho más pequeña que PaddyPower Se puede jugar en locales, teléfono o internet Algunos sorteos salen en radio y TV. Sólo dos apps, Supermatch y La Banca Mobile Permite apostar en eventos deportivos, 5 de oro, quiniela, etc.
Resumen del artículo - Características CD Salidas frecuentes. Salidas automatizadas. Entregas con software valioso. Historias de usuario pequeñas. El cliente puede ver mas fácilmente el avance realizado
Resumen del artículo - Experiencia Estudio de caso en PaddyPower, resultados: Salidas seguidas al mercado Mayor feedback de los usuarios Mejor productividad y eficiencia Mejor calidad Mayor satisfacción del cliente
Resumen del artículo - ¿Qué implica arquitectura para CD? Para obtener mayores beneficios de CD, se deben cumplir ciertos ACR (Requerimientos de arquitectura significativos): Deployability Security Loggability Modifiability Monitorability Testability
Crítica del artículo Fácil de entender y corto En la sección de ¿por qué ajustar la arquitectura para CD? explica las ventajas de CD. Explica de forma correcta pero no exhaustiva qué debería tener una arquitectura hecha para CD. Escrito en primera persona No da datos duros, los menciona por arriba.
Para reflexionar ¿Están las empresas uruguayas lo suficientemente maduras para realizar cambios tan profundos en sus procesos internos?