Top Banner
Continuous Delivery Germinando una cultura Ágil moderna Edu Ferro (@eferro)
49

CODE ContinuousDelivery. germinando una cultura agile moderna

Jan 29, 2018

Download

Software

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: CODE  ContinuousDelivery. germinando una cultura agile moderna

Continuous DeliveryGerminando una cultura Ágil moderna

Edu Ferro (@eferro)

Page 2: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Basado en hechos reales

Page 3: CODE  ContinuousDelivery. germinando una cultura agile moderna

Describir Aproximación sistemática

@eferro

Objetivos

Describir Agilidad (Moderna)

Entender que no SOLO desarrollamos

Page 4: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Entrega ContinuaAgilidad (Moderna)

Page 5: CODE  ContinuousDelivery. germinando una cultura agile moderna

Agilidad:

@eferro

Gestión riesgo / Adaptabilidad

Page 6: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Page 7: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

50% invalidadas

Page 8: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Aproximación sistemáticapara introducir una

Cultura Ágil

Page 9: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Page 10: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Page 11: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Page 12: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Page 13: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Sistema de Despliegue

confiable y rápido

¿Qué necesitamos?

Page 14: CODE  ContinuousDelivery. germinando una cultura agile moderna

Commit - Producción <15m

Despliegue sin pérdida servicio

@eferro

¿Qué necesitamos?

Despliegue 100% confiable

Page 15: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Recuperarnos rápido

(en caso de fallo)

¿Qué necesitamos?

Page 16: CODE  ContinuousDelivery. germinando una cultura agile moderna

Feedback (Producción)

Sistema fácil de operar

@eferro

¿Qué necesitamos?

Page 17: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Poder confiar en

lo que desplegamos

¿Qué necesitamos?

Page 18: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

“La esperanza

NOes una estrategia”

Google SRE book

Page 19: CODE  ContinuousDelivery. germinando una cultura agile moderna

Integración Continua

Tests automáticos TDD/BDD

@eferro

Clean code

¿Qué necesitamos?

Page 20: CODE  ContinuousDelivery. germinando una cultura agile moderna

Integración Continua

@eferro

Commit a trunk al menos 1 vez/día

Cada commit es verificado/construido

Trunk Based vs Feature branches

Page 21: CODE  ContinuousDelivery. germinando una cultura agile moderna

Trunk based vs Feature branches

@eferro

Page 22: CODE  ContinuousDelivery. germinando una cultura agile moderna

Test Automáticos

@eferro

Objetivo: tener confianza en el código

Sostenible en el tiempo

TDD/BDD complementado por otros tests

Page 23: CODE  ContinuousDelivery. germinando una cultura agile moderna

Clean Code

@eferro

Testear requiere buen diseño

Arquitecturas con infraestructura desacoplada

Mal código/diseño no es sostenible

Page 24: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferroMartin Fowler

Design Stamina Hypothesis

Page 25: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

¿Qué necesitamos?

Diferenciar entre

despliegues y releases

Page 26: CODE  ContinuousDelivery. germinando una cultura agile moderna

Despliegue Release

VS

@eferro

Page 27: CODE  ContinuousDelivery. germinando una cultura agile moderna

Despliegue

@eferro

Page 28: CODE  ContinuousDelivery. germinando una cultura agile moderna

Feature Toggles

Parallel Changes

@eferro

Diferenciar entre despliegues y releases

Page 29: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

¿Qué necesitamos?

Arquitectura Evolutiva

Page 30: CODE  ContinuousDelivery. germinando una cultura agile moderna

Arquitectura Evolutiva

@eferro

Cambios incrementales

Función de Aptitud (Fitness function)

Lo que duele, hazlo más

Último momento responsable

Page 31: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

¿Qué necesitamos?

Aprendizaje Continuo

Page 32: CODE  ContinuousDelivery. germinando una cultura agile moderna

Aprendizaje Continuo

@eferro

Blameless postmortems para incidentes

Dominio / Producto / Negocio

PainDrivenDevelopment / Operación / On Calls

Retrospectivas

Pairing

Page 33: CODE  ContinuousDelivery. germinando una cultura agile moderna

MentoringXP / DevOps / Calidad

@eferro

Page 34: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Pero en el mundo real....

Page 35: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

“Cuando al mundo real le precede un pero, deja de ser un lugar y se

convierte en una excusa”Carlos Iglesias (@carlosthesailor)

Page 36: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Resumiendo

Page 37: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Lean, Lean Startup,

Design Sprints,

Customer research,

Discovery track...

Page 38: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Page 39: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Recomendados

Page 40: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Recomendados

Page 41: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Recomendados

Page 42: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Para rumiar(Bola extra)

Page 43: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Page 44: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Page 45: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

no SOLO construimos

sabemos lo que es POSIBLE y el COSTE

entendemos sistemas complejos

aprendemos de forma continua

Page 46: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Page 47: CODE  ContinuousDelivery. germinando una cultura agile moderna

@eferro

Page 48: CODE  ContinuousDelivery. germinando una cultura agile moderna

KEEPCALM

AND

MAKE SOFTWARE@eferro

Page 49: CODE  ContinuousDelivery. germinando una cultura agile moderna

¿Preguntas?

@eferrohttp://www.eferro.net