dev ops. rompiendo barreras

Post on 18-Nov-2014

356 Views

Category:

Software

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

Introducción a DevOps

TRANSCRIPT

DevOpsRompiendo barreras

¿Desarrollo y Operaciones divididos?Desarrollo Operaciones

Entrega frecuente de funcionalidad

Pocos despliegues. Miedo a desestabilizar

Un proceso definido para desarrollo

Otro proceso para administrar las plataformas

Herramientas especificas para desarrollo

Herramientas especificas para operaciones.

Especializados en desarrollo Especializados en infraestructura

Los miden por la cantidad de funcionalidades creadas

Los miden por el tiempo que el servicio esta disponible y los tiempos de respuesta de las aplicaciones

¿Y la división que problemas trae?

Guerra de culpables

• Cultura de súper héroes• Énfasis en los títulos (Desarrollador, tester,

Arquitecto)• Se favorece al plan sobre planear• Equipos separados buscando metas e

intereses propios• Lenguaje no común• Miedo a que el actuar de otro afecte mi

trabajo• Miedo a perder influencia y reputación

DevOps al ataque!!!

¿Qué es DevOps?Conjunto de patrones para incrementar lacolaboración entre desarrollo y operaciones.

Promueve la comunicación entre desarrollo. Ayuda a superar el miedo al cambio y despliegues riesgosos.

Promueve metas, procesos y herramientas compartidas.

Proceso integrado desde el inicio del desarrollo hasta su despliegue en producción y mantenimiento.

¿Qué es DevOps?Equipo de proyecto compuesto por programadores, testers, QA y expertos en operaciones.

Único objetivo: Desarrollar software de valor y entregarlo al usuario final.

El camino hacia DevOps

Cultura.Personas sobre procesos y herramientasPersonas compartiendo herramientas, conocimiento y procesos

ProcesosMétricasQue permitan tener objetivos compartidos.

HerramientasAutomatizaciónEsencial para tener retroalimentación temprana.

Cultura de colaboraciónRespeto entre las personasCompromisos y metas compartidasPracticas y herramientas compartidasPlanes construido entre todos y planeación frecuenteHabilidades y tareas complementarias (No súper héroes)Conocimiento compartidoPropiedad colectivaValores compartidos

Ambiente de colaboraciónAlcances y restricciones claros

Slack time para mejorar continuamente. No a la asignación full time.

Celebrar el triunfo juntos (DevOps)

Ambiente de colaboraciónPermitir la auto organización , evitar el micro

management.

Rotar los roles para promover la colaboración

Desarrollo y operaciones en el mismo espacio físico

Daily meetings DevOps

Retrospectivas compartidas DevOps

El camino hacia DevOps

Cultura.Personas sobre procesos y herramientasPersonas compartiendo herramientas, conocimiento y procesos

ProcesosMétricasQue permitan tener objetivos compartidos.

HerramientasAutomatizaciónEsencial para tener retroalimentación temprana.

ProcesosUn solo proceso de entrega de producto en

producción

Alinear las responsabilidades con entregable no con roles

Utilizar frameworks como kanban para operaciones.

Kanban

Métricas útiles

Software de valor en producción. AVANCE

Funcionalidades construidas y no puestas en producción. NO AVANCE

Cambio como indicador valioso.No distinguir entre BUGS,

Mejoras, Requisitos

Un solo indicador de cambio para Dev – Ops. Software, hardware, middleware

No se mide a operaciones por la estabilidad del ambiente

Objetivos compartidos

Métricas útilesLead timeThroughput

Métricas inútilesTest pass/fail ratios. Tan

pronto como falla lo corregimos.

Número de defectos creado o corregidos: Solo promueven la cultura de culpables. Si hay Bugs no hay valor.

Velocidad personal: Solo logra que cada quien busque lograr sus objetivos.

El camino hacia DevOps

Cultura.Personas sobre procesos y herramientasPersonas compartiendo herramientas, conocimiento y procesos

ProcesosMétricasQue permitan tener objetivos compartidos.

HerramientasAutomatizaciónEsencial para tener retroalimentación temprana.

HerramientasRelease automáticoIncrementa la eficienciaGarantiza procesos exitosos repetiblesSe puede automatizar la creación de

maquinas virtuales, aprovisionamientos, build, ejecución de tests, despliegue de aplicación.

HerramientasChefPuppetVagrantCucumber Puppet

Proceso de release automático de software

Proceso de aprovisionamiento automático

Herramientas PitfallsLos procesos automatizados requieren

mantenimiento.Paradoja de la automatización: Mientras mas

eficiente sea un sistema automatizado,es mas esencial la contribuación humana para que el sistema permanezca en ejecución.

Ironia de la automatización: A mayor nivel de automatización, menos habilidad tendrán las personas para hacerlo por si mismos o arreglar el sistema.

Q&A

top related