code continuousdelivery. germinando una cultura agile moderna

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

Upload: eduardo-ferro-aldama

Post on 29-Jan-2018

124 views

Category:

Software


1 download

TRANSCRIPT

Continuous DeliveryGerminando una cultura Ágil moderna

Edu Ferro (@eferro)

@eferro

Basado en hechos reales

Describir Aproximación sistemática

@eferro

Objetivos

Describir Agilidad (Moderna)

Entender que no SOLO desarrollamos

@eferro

Entrega ContinuaAgilidad (Moderna)

Agilidad:

@eferro

Gestión riesgo / Adaptabilidad

@eferro

@eferro

50% invalidadas

@eferro

Aproximación sistemáticapara introducir una

Cultura Ágil

@eferro

@eferro

@eferro

@eferro

@eferro

Sistema de Despliegue

confiable y rápido

¿Qué necesitamos?

Commit - Producción <15m

Despliegue sin pérdida servicio

@eferro

¿Qué necesitamos?

Despliegue 100% confiable

@eferro

Recuperarnos rápido

(en caso de fallo)

¿Qué necesitamos?

Feedback (Producción)

Sistema fácil de operar

@eferro

¿Qué necesitamos?

@eferro

Poder confiar en

lo que desplegamos

¿Qué necesitamos?

@eferro

“La esperanza

NOes una estrategia”

Google SRE book

Integración Continua

Tests automáticos TDD/BDD

@eferro

Clean code

¿Qué necesitamos?

Integración Continua

@eferro

Commit a trunk al menos 1 vez/día

Cada commit es verificado/construido

Trunk Based vs Feature branches

Trunk based vs Feature branches

@eferro

Test Automáticos

@eferro

Objetivo: tener confianza en el código

Sostenible en el tiempo

TDD/BDD complementado por otros tests

Clean Code

@eferro

Testear requiere buen diseño

Arquitecturas con infraestructura desacoplada

Mal código/diseño no es sostenible

@eferroMartin Fowler

Design Stamina Hypothesis

@eferro

¿Qué necesitamos?

Diferenciar entre

despliegues y releases

Despliegue Release

VS

@eferro

Despliegue

@eferro

Feature Toggles

Parallel Changes

@eferro

Diferenciar entre despliegues y releases

@eferro

¿Qué necesitamos?

Arquitectura Evolutiva

Arquitectura Evolutiva

@eferro

Cambios incrementales

Función de Aptitud (Fitness function)

Lo que duele, hazlo más

Último momento responsable

@eferro

¿Qué necesitamos?

Aprendizaje Continuo

Aprendizaje Continuo

@eferro

Blameless postmortems para incidentes

Dominio / Producto / Negocio

PainDrivenDevelopment / Operación / On Calls

Retrospectivas

Pairing

MentoringXP / DevOps / Calidad

@eferro

@eferro

Pero en el mundo real....

@eferro

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

convierte en una excusa”Carlos Iglesias (@carlosthesailor)

@eferro

Resumiendo

@eferro

Lean, Lean Startup,

Design Sprints,

Customer research,

Discovery track...

@eferro

@eferro

Recomendados

@eferro

Recomendados

@eferro

Recomendados

@eferro

Para rumiar(Bola extra)

@eferro

@eferro

@eferro

no SOLO construimos

sabemos lo que es POSIBLE y el COSTE

entendemos sistemas complejos

aprendemos de forma continua

@eferro

@eferro

KEEPCALM

AND

MAKE SOFTWARE@eferro

¿Preguntas?

@eferrohttp://www.eferro.net