Ágil es algo que eres, cmmi es algo que usas

38
www.intergrupo.com / Copyright © 2014 - Intergrupo #Intergrupobeyond

Upload: luis-antonio-salazar-caraballo

Post on 06-Jul-2015

144 views

Category:

Software


1 download

DESCRIPTION

Con una actualización debido al cambio de audiencia, presenté en #Agiles2014 mi disertación sobre Ágil y CMMI. Como en la versión 1.0, durante la SEPG LA 2014 en Manizales, mi asunto principal era que los métodos ágiles no tienen por qué entrar en conflicto con otros modelos o enfoques de construcción de software, no es la idea de ser ágil o, al menos, no está en el flujo de un proceso de transformación a ágil echar tierra a las prácticas existentes en una organización. Los líderes de los procesos actuales deben trabajar en conjunto con los nuevos líderes para que estos últimos obtengan los beneficios de ambos universos y aprovechar esa sinergia para mejorar dramáticamente el rendimiento del negocio. Para apoyar este concepto, expliqué que los modelos como CMMI, PMI e ISO nos dan una idea de cuales procesos son necesarios para mantener una organización madura y disciplinada, capaz de predecir y mejorar el desempeño de la organización misma y de los proyectos. Entre tanto, las técnicas ágiles proporcionan guías para un manejo eficiente de los proyectos de una manera que permite alta flexibilidad y adaptabilidad. Al mezclar los dos enfoques, la filosofía ágil asegura que los procesos se implementen eficientemente a la vez que aceptan los cambios; y los modelos tradicionales aseguran que se consideren todos los procesos relevantes. Pero de inmediato fui al centro de mi exposición: una de las grandes diferencias, radicales por demás, entre los métodos tradicionales y los ágiles es que estos últimos son generativos, no prescriptivos. Los procesos necesitan evolucionar según las necesidades, no prescritos con anticipación. Un enfoque prescriptivo genera procesos complejos y complicados, mientras que un enfoque generativo comienza con un conjunto de procesos simples y adiciona otros a medida que se requieren. La filosofía ágil reconoce que los procesos de software más efectivos no pueden definirse por adelantado; es un proceso continuo. Los métodos tradicionales se enfocan en definir y reforzar procesos y gastan muy poco tiempo en identificar y entregar lo que los usuarios necesitan. Aunque su propósito es mejorar la consistencia y la calidad, esto muchas veces se consigue a expensas de la productividad y la entrega. El enfoque tradicional de procesos tipo CMMI también usa herramientas monolíticas y pesadas que causan construcciones frágiles y traspasos inefectivos entre desarrollo, pruebas, despliegue y operaciones. Lo que siguió fue enfatizar en lo que significa ser ágil: específicamente, la interiorización y la práctica de los Valores y Principios del Manifiesto Ágil, nada alejado de lo que se habló en el resto de #Agiles2014. Hacia el final quise poner mi propio manifiesto, el ‘Ágil es algo que eres…’, se trata de la persona, no de las cosas ni de los procesos. Ya lo he dicho en otras oportunidades, ser ágil significa reemplazar la predictibilidad falsa por la eficiencia.

TRANSCRIPT

Page 1: Ágil es algo que eres, CMMI es algo que usas

www.intergrupo.com / Copyright © 2014 - Intergrupo

#Intergrupobeyond

Page 2: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

ÁGIL ES ALGO QUE ERES, CMMI ES ALGO QUE USAS¿Qué significa ser ágil?

Versión 1.8.0 20141017

Page 3: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

LUIS ANTONIO [email protected]

@luchosalazarc

Page 4: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

• Presentación

• Métodos ágiles y Métodos tradicionales

• El Manifiesto por el desarrollo ágil de software

• Sobre la Evolución a Ágil

• Factores clave de éxito para implementar métodos ágiles

• Mitos, Monstruos, leyendas urbanas y otros desvaríos de ágil y Scrum

• Conclusiones

• Referencias

Contenido

Page 5: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

. “Los ingenieros se contratan para crear valor

del negocio, no para programar cosas.”

Patrick McKenzie (Desarrollador)

Page 6: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Presentación

• Precepto 1:

– La calidad de un producto está

dada en gran medida por la

calidad de los procesos que

usamos para crearlo y

mantenerlo

William Edwards Deming (1900 - 1993)

Page 7: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Lo anterior: comando y control + procesos

Page 8: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Personas y sus interacciones…

Lo más importante de un proceso son las personas

Page 9: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Líderes actuales vs. Nuevos líderes

Los líderes actuales deberían trabajar con los nuevos líderes

Principios de Lean SW Development*

Optimice el todo

Enfóquese en el cliente

Energice a las personas

Elimine el desperdicio

Entregue rápido

Construya con la calidad en mente

Continúe mejorando

Page 10: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Métodos ágiles y métodos tradicionales

Manejo de:

Complejidad + Cambios en Requisitos + Innovación Tecnológica

= Éxito

• La Complejidad requiere disciplina

• Los cambios en requisitos requieren adaptabilidad

Page 11: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Métodos ágiles y métodos tradicionales

• CMMI, PMI e ISO dan idea de cuales

procesos son necesarios para

mantener una organización madura y

disciplinada.

• Ágil proporciona guías para un manejo

eficiente de los proyectos de una

manera que permite alta flexibilidad y

adaptabilidad.

Page 12: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Métodos ágiles y métodos tradicionales

• El valor de los métodos ágiles solo se

puede conseguir vía su uso

disciplinado

• Institucionalización según CMMI:

– “Forma tradicional de hacer negocios que

una organización sigue de manera rutinaria

como parte de su cultura corporativa”.

• Nosotros la definimos simplemente

como “esta es la forma en que

hacemos las cosas por aquí”.

Page 13: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Ejemplo: GP 2.1 Establecer una política organizacional

• Establecer y mantener una política de la organización para planificar y

realizar el proceso.

• El propósito de esta práctica genérica es definir las expectativas de la

organización en relación con el proceso y hacerlas visibles a aquellos en la

organización que están afectados. En general, la dirección es responsable

de establecer y comunicar los principios, guías, orientación y expectativas

para la organización.

• No toda orientación de la dirección llevará la etiqueta “política”. Lo que se

espera de esta práctica genérica es la existencia de una orientación

apropiada de la organización, independientemente de cómo sea llamada o

comunicada.

Page 14: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

GP 2.1 Ágil - Establecer una política organizacional

• Establecer y mantener una política organizacional para planear y

ejecutar Métodos Ágiles

• El primer paso hacia la institucionalización de Métodos Ágiles es establecer

cómo y cuándo estos se usarán en la organización.

• Una organización podría determinar que los métodos ágiles se usarán en

todos los proyectos o en algún subconjunto de proyectos, basada en el

tamaño, tipo de producto, tecnología u otros factores.

• Esta política es una forma de comunicar claramente la intención de la

organización en cuanto a métodos ágiles se refiere.

Page 15: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Ejemplo: GP 2.5 Entrenar a las personas

• Formar, según sea necesario, a las personas para realizar o dar

soporte al proceso.

• El propósito de esta práctica genérica es asegurar que las personas tengan

las habilidades y la experiencia necesaria para realizar o dar soporte al

proceso.

• Las personas que realizarán el trabajo reciben una formación apropiada.

Se proporciona una formación general para orientar a las personas que

interactúan con los que realizan el trabajo.

• Ejemplos de métodos para proporcionar formación incluyen el autoestudio,

la auto-formación dirigida, a su propio ritmo, instrucción programada,

formación en el puesto de trabajo, tutoría y formación formal en el aula.

Page 16: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

GP 2.5 Ágil – Entrenar a las personas

• Entrenar a las personas en la ejecución de Métodos y Prácticas Ágiles

• El entrenamiento correcto puede aumentar el desempeño de profesionales

competentes y soporta la introducción de nuevos métodos en una organización.

• La institucionalización de Métodos Ágiles en uso requiere un entrenamiento

consistente, que defina el entrenamiento exacto a brindar, y realizando el

entrenamiento necesario.

• El entrenamiento puede hacerse usando diferentes enfoques, incluyendo

instrucción programada, entrenamiento formalizado en-el-trabajo,

acompañamiento, coaching y entrenamiento formal.

• Es importante que se defina un mecanismo para asegurar que el entrenamiento

ha ocurrido y que es benéfico para las personas y para la Organización.

Page 17: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Experiencia en Intergrupo

• Sabemos y hemos probado que con Scrum/Ágil es posible:

• Establecer iteraciones de 2 semanas (10 días hábiles), o menos

• Involucrar (comprometer) al usuario en el proyecto

• Obtener retroalimentación continua (del usuario)

• Ampliar el “ancho de banda” de la comunicación cliente-proveedor y al interior

del equipo.

– Con esto hemos logrado una más alta satisfacción del Cliente/Usuario

Page 18: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Experiencia en Intergrupo

• Es importante tener una discusión franca y abierta con el usuario para

encontrar cuáles son las necesidades reales.

• El éxito no se alcanza haciendo el proyecto más grande, sino haciendo el

proyecto que provea el mayor valor al usuario,

• dejando tiempo para que los desarrolladores trabajen con otros usuarios con

necesidades reales. Scrum soporta fuertemente esta estrategia.

Page 19: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Experiencia en Intergrupo

Con Scrum, desarrollo basado en historias de usuario, automatización de

pruebas y otras prácticas ágiles, y con Lean como fuente de identificación

de nuevas mejoras, la filosofía ágil puede adoptarse mientras mantenemos

el nivel de madurez y capacidad actual de CMMI 5.

Page 20: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

La Filosofía Ágil

• No podemos predecir o planear con absoluta certeza lo que vamos a entregar,

cuándo lo entregaremos y cuánto será su costo.

• Empecemos con planes iniciales alrededor de las estimaciones, fechas y

alcance, pero enfoquémonos en la revisión continua de estas restricciones a

medida que avanzamos.

• La meta es entregar el mejor software posible, dadas estas restricciones, pero

ningún método con el enfoque de receta de cocina mejorará lo que es “mejor”.

Page 21: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

El Manifiesto por el Desarrollo Ágil de Software (Valores)

El Manifiesto NO sugiere abandonar las prácticas de la izquierda...

Page 22: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

El Manifiesto Ágil (Valores)

Page 23: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

El Manifiesto Ágil (Principios)

• Satisfacer al cliente es la prioridad

• Aceptar cambios en los requisitos

• Entregar software funcional con

frecuencia

• Trabajar juntos Usuario y

Desarrolladores

• Desarrollar en torno a individuos

motivados

• Comunicar información cara a cara

• Software funcionando: medida de

progreso

• Promover el desarrollo sostenible

• Atención continua a la excelencia

técnica

• La simplicidad es esencial

• Equipos autoorganizados

• Reflexionar (Inspeccionar) y adaptar

Page 24: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Sobre la evolución a ágil

• Los métodos tradicionales son

prescriptivos

– Se enfocan en definir y reforzar procesos

– Gastan muy poco en identificar y entregar lo

que los usuarios necesitan

– Usan herramientas monolíticas y pesadas

• Los métodos ágiles son generativos

– Los procesos de software más efectivos no

pueden definirse por adelantado

– Es un proceso continuo

Page 25: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Sobre la evolución a ágil

• Entregar software

funcionando y

probado cada 4

semanas o menos

• Entregar lo que el

negocio necesita más

• El proceso está

mejorándose

continuamente

Page 26: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Sobre la evolución a ágil

• Defina un proceso de mejora

continua que lo lleve del enfoque

actual a una estrategia ágil.

• La implementación de ágil empieza

con la interiorización de los valores y

principios ágiles

• La transformación es progresiva,

integre paso a paso las prácticas

ágiles requeridas

• Al tomar elementos actuales, use

prácticas Lean para hacerlos más

livianos y eliminar el desperdicio

• Implemente los conceptos de:

– Valor,

– Software de Valor para el negocio,

– Definición de Terminado,

– Definición de Listo, y

– Criterios de Aceptación

• Despójese y remueva de la

organización los vicios y las

comodidades actuales

• Tenga el coraje para decir que

implementar Ágil no es fácil

Page 27: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Sobre la evolución a ágil

• Para implementar Scrum usando

Scrum:

– Tener una Lista de elementos a

implementar

– Separarlos en sprints de 2 semanas

– Implementar gradualmente

– Haga que las personas se sientan

cómodas con el cambio

• Esto es Scrum Orgánico

Algoritmo general de la implementación de Scrum usando Scrum

Page 28: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Sobre la evolución a ágil (Scrum)

• Scrum (m): Un marco de trabajo

por el cual las personas pueden

resolver problemas complejos

adaptativos, a la vez que entregar

productos del máximo valor posible

productiva y creativamente.*

• Scrum es:

– Liviano

– Fácil de entender

– Extremadamente difícil de llegar a

dominar

* Fuente: la guía de Scrum. http://www.scrum.org/scrum-guides

Page 29: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Factores clave de éxito para implementar métodos ágiles

• Dedíquese al 100%

• Comprometa a la Gerencia

• Reclute al Cliente (DP)

• El Scrum Master es básico

• Defina una estrategia

• No se impaciente

• Empiece con pocas métricas

– Para medir la realidad de los

proyectos

– No a las personas

• Use la Guía a la Agilidad

Page 30: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

“Ágil significa reemplazar

la predictibilidad falsa

por la eficiencia”

Page 31: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

“Ágil significa reemplazar

la predictibilidad falsa

por la eficiencia”

Page 32: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Mitos, Monstruos, leyendas urbanas y otros desvaríos de ágil y Scrum

• Ágil no necesita documentación

• Ágil significa “no hay un plan”

• Ágil es la “bala de plata” a todos los

problemas de la ingeniería de

software

• Ágil no necesita diseño previo

• Ágil siempre usa “Historias de

Usuario"

Page 33: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Mitos, Monstruos, leyendas urbanas y otros desvaríos de ágil y Scrum

• Scrum siempre Funciona

• Scrum Master igual a Gerente de

Proyecto

• Podemos hacer Scrum sin un

Dueño de Producto

• Scrum no funciona con CMMI u

otros modelos de procesos

• Scrum produce equipos de súper

héroes

• Ágil significa más rápido

Page 34: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Conclusiones y Recomendaciones

• Usar CMMI y Scrum arroja un

desempeño significativamente

mejorado mientras se mantiene el

cumplimiento con CMMI

• Los proyectos Scrum muestran una

ganancia significativa en

productividad y calidad sobre los

métodos tradicionales

• Las compañías Ágiles pueden usar

las Prácticas Genéricas de CMMI

para institucionalizar las prácticas

ágiles

• Lean puede usarse para identificar

oportunidades de mejora en una

compañía CMMI 5

• Una organización no puede forzar la

filosofía ágil en su cultura

• Ágil no es una construcción de

conveniencia

• Si no puedes adoptar los valores y

principios del Manifiesto, entonces

eres un ADNS – Ágil De Nombre

Solamente

Page 35: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Referencias Web/Bibliográficas

[1] Salazar-Caraballo Luis Antonio. Asuntos de la Ingeniería del Software: Volumen II.

http://www.amazon.com/Asuntos-Ingenier%C3%ADa-del-Software-Volumen/dp/1494962810/ref=la_B00B1FN726_1_3?s=books&ie=UTF8&qid=1401811341&sr=1-3

[2] Salazar-Caraballo Luis Antonio. Asuntos de la Ingeniería del Software: Volumen I.

http://www.amazon.com/Asuntos-Ingenier%C3%ADa-Software-Art%C3%ADculos-Seleccionados/dp/1482344106/ref=la_B00B1FN726_1_2?s=books&ie=UTF8&qid=1401811393&sr=1-2

• El Gazafatonario

– http://www.gazafatonarioit.com

Page 36: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Acerca del Autor

Lucho Salazar: autor, conferencista, coach ágil, experto en procesos y

métodos de software, incluyendo métodos y prácticas ágiles,

Ingeniería de Requisitos, Arquitectura de software, Análisis y Diseño

de software y Gerencia de Proyectos. Sus artículos han sido

publicados por medios como Líder de Proyecto, Asociación Española

de Profesionales en Dirección de Proyectos, Scrum Alliance y la

revista PROIECTUS, editada también en España.

Lucho es autor de los libros “Asuntos de la Ingeniería de

Software”, Volumen I y Volumen II. Es traductor al español de la guía

oficial de Scrum y de los libros de Ivar Jacobson “Casos de Uso 2.0” y

“La Esencia de la Ingeniería del Software: aplicando el Kernel de

Semat”. Es miembro del Comité Ejecutivo de Semat Latinoamérica,

una iniciativa mundial que busca refundar la Ingeniería del Software.

Es miembro de IEEE.

Lucho ha trabajado durante 14 años en Intergrupo. Actualmente es

Analista de la Vicepresidencia de Innovación desde donde lidera el

proceso de transformación a ágil de la compañía. Su blog se puede

leer en http://www.gazafatonarioit.com. Lucho también escribe

poemas, su libro Ansiedad de un Náufrago fue publicado en 2010. Su

próximo libro, El VademeScrum, una especie de marco referencial de

Scrum y de sus componentes, está en proceso de edición.

@luchosalazarc

[email protected]

[email protected]

http://co.linkedin.com/in/luchosalazar

http://www.gazafatonarioit.com

Page 37: Ágil es algo que eres, CMMI es algo que usas

#Intergrupobeyond www.intergrupo.com / Copyright © 2014 - Intergrupo

Acerca de Intergrupo

Somos una multinacional con presencia en el

mercado latinoamericano, orientada a la

creación de soluciones y servicios basados en

tecnología de punta.

La Ingeniería de la Información con valor

agregado es el eje que mueve nuestro negocio.

Somos reconocidos internacionalmente por

cumplir con los más altos estándares de la

industria.

1400+ Empleados

400+ Clientes

18 años

Presencia en 10 países

CMMI 5

ISO 9001

ISO 20000

Page 38: Ágil es algo que eres, CMMI es algo que usas

Copyright © 2014 Intergrupo - www.intergrupo.comLa información que contiene el documento es confidencial y está dirigido exclusivamente al destinatario. Si Usted ha recibido esta comunicación por error, por favor, notifíquelo inmediatamente al remitente y borre el documento junto con sus archivos adjuntos sin leerlo, copiarlo, grabarlo, distribuirlo o divulgarlo o hacer cualquier otro uso de la información sin el consentimiento del remitente.

Luis Antonio [email protected]