miércoles, 26 de octubre de 2016

Caso de estudio: Latam Digital - Un viaje a la Agilidad

El día 26 de Octubre de 2016 asistí a un meetup, organizado por ChileÁgil. En esta charla Eli Senerman, Director de Plataformas Digitales en Latam Airlines (antes LAN), nos contó cómo ha sido el proceso de transformación digital ágil dentro de la empresa.

Entre otras cosas, Eli nos contó el inicio de la transformación ágil:

“El mejor acceso a talentos lo tiene Latam probablemente…
Pero éramos y somos muy malos en generar entornos donde ese talento pueda florecer… y generar productos digitales de buena manera…
Cuando nos dimos cuenta de eso fuimos a mirar qué podíamos hacer;
Y cualquier empresa que ha hecho bien las soluciones de productos digitales en el mundo, uno mira cómo lo hicieron y es una mezcla de Lean, agilidad… Kanban y Scrum… la agilidad era un básico...
Contratamos una consultora y comenzamos a hacer una transformación digital, una organización que trabaje de una manera ágil… fue hace un año y medio...”

Sobre la importancia de enfocarse en la entrega de valor y no de seguir rigurosamente un plan a largo plazo:

“El resto de la organización lo que debería estar pidiendo de digital es cuál es nuestra capacidad de generar valor con las inversiones que estamos haciendo, no cuál es nuestra capacidad de predecir el futuro en términos de cuánto nos vamos a demorar en ejecutar este producto digital…
Eso no significa que seamos todos unos hippies ágiles. De hecho la agilidad es mucho más rigurosa en tener estimaciones de cuánto nos vamos a demorar en tener nuestro producto digital, pero en períodos más cortos.”

“Cuando mido por cuál es la capacidad de generar valor se preocupan por eso.”

Recalcó que los líderes deben permitir la experimentación y el aprendizaje:

“Los sponsors y stakeholders ven que es mejor aprender que seguir un plan.”
“Generar un entorno donde la gente siente que puede cometer errores, que puede experimentar. Eso es importante.”

Y que los líderes deben permitir el empoderamiento de los equipos:

“Los líderes debemos generar cultura”


Referencias:
Meetup de ChileÁgil: “Latam Digital: Un viaje a la Agilidad”, Universidad UNAB, Santiago, Chile, 26 de Octubre de 2016.
http://www.meetup.com/ChileAgil/events/234727617/

Agile: Modern Agile


Modern Agile

Agile moderno es una comunidad de personas interesadas en descubrir mejores maneras de conseguir resultados impresionantes y de esa manera impulsar una nueva ola de agilismo.
Desde una perspectiva ágil, no es otra cosa que un marco de principios bajo la agilidad, que aprovecha la sabiduría de muchas industrias, orientado por principios y un marco libre. 
fig. 1: En la figura se puede ver la afinidad entre valores y principios por colores.

Al definir un subconjunto de valores y principios o principios alineados al agilismo, lo que se obtiene es un marco de agilismo que refleja nuestras prioridades. Los principios de Modern Agile son:
  • Haz que las personas sean geniales: este se desprende de priorizar a los "individuos e interacciones" y a la búsqueda de la "excelencia". El desafío aquí es cómo lograr que la gente en nuestro ecosistema sea impresionante o extraordinaria.
  • Experimenta y aprende rápido: este en algún sentido deriva de buscar "respuesta ante el cambio". Si prestamos atención a los principios ágiles como buscar "aprovechar el cambio" para proporcionar ventaja competitiva al cliente y "buscar la entrega temprana y continua de software con valor" en procesos de reflexión recurrente que nos permite aprender rápidamente llegamos a esa idea de la agilidad y Scrum de "trabajo empírico". Aprendemos rápidamente mediante la experimentación con frecuencia.
  • Entrega valor continuamente: deriva de priorizar el "software funcionando" y la "entrega continua de valor". Aquí el desafío es dividir grandes cantidades de valor en piezas más pequeñas que se pueden entregar de forma segura en forma temprana.
  • Haz de la seguridad un prerequisito: aquí es donde se prioriza un principio más novedoso que considera a la seguridad tanto una necesidad humana básica y una clave para desbloquear un alto rendimiento. Si bien se puede desprender del agilismo de priorizar a las personas e interacciones y al principio de motivación, por los cuales se busca lograr ambientes de trabajo "psicológicamente seguros" que promuevan personas altamente motivadas. Desde esta perspectiva nos esforzamos para que nuestros equipos sean resilientes y nuestras colaboraciones, productos y servicios sean resistentes y seguros. Se buscan personas libres y motivadas que no le tengan miedo a la culpa. Estimo que también se puede incluir a la seguridad informática.
Al parecer, con Modern Agile, se busca una marco de agilidad ultraligero y tomando algunos aspectos del "Manifiesto por el desarrollo ágil del software", haciendo énfasis en el aspecto humano (por eso agrega lo de la seguridad aunque es redundante) y simplifica la mejora continua y la adaptación en "experimenta y mejora". No se inventa nada nuevo, es solo un emblema de valores basado parcialmente en el manifiesto ágil. Aunque puede ser de utilidad para educar la agilidad en un ámbito donde es necesario hacer hincapié en formar entornos de seguridad psicológica para potenciar a las personas y la colaboración. Como apreciación personal, espero no se transforme en una moda sobrevalorada.



Referencias:

http://modernagile.org/
InfoQ: An Introduction to Modern Agile.
Agile 2016: Modern Agile.



Scrum: Valores de Scrum alineados al Agilismo



Scrum es un marco ágil porque fue creado para practicar los valores ágiles. Por ello sus cinco valores se alinean o desprenden de los valores y principios del manifiesto ágil.


Scrum promueve el coraje como característica que permite la adaptación al cambio y la mejora contínua. Para mejorar, innovar y generar transformaciones digitales son necesarias personas sin miedo al error, sin miedo al castigo, libres de proponer soluciones y cambios, abiertos a experimentar y aprender. Personas con coraje para asumir compromisos desafiantes, empoderarse de los procesos y del producto y responder ante sus propias decisiones. Con coraje para ser jugadores de equipo independientes y no descansar en los demás o en la autoridad.

La apertura para ser flexibles ante el cambio, aceptarlo y actuar ante él. Apertura para trabajar cara a cara, con transparencia y discusiones abiertas, sin miedo al feedback ni al conflicto. Sin miedo a reflexionar en retrospectivas recurrentes para impulsar la mejora contínua. La apertura necesaria para aprender y lograr organizaciones inteligentes.

El compromiso para ser responsables de sus acciones al tener mayor control sobre las acciones propias. El compromiso permite el empoderamiento motivador del éxito. El compromiso proviene de asumir que se priorizan a las personas e interacciones por sobre los procesos y herramientas y, en consecuencia, nos comprometemos humanamente con las personas. El compromiso con el cliente, ya que preferimos colaborar con él y nos respetar estrictamente un contrato escrito en piedra.

El respeto es el pegamento del trabajo colaborativo donde se privilegia a las personas. Se fomenta el respeto mutuo para compartir éxitos y fracasos, para equilibrar el esfuerzo, para asumir compromisos en equipo, para tener apertura y poder discutir cara a cara sin agresiones, para colaborar y cooperar sin competir.

El foco deriva, hasta cierta medida, del principio de simplicidad. Se busca trabajar en las actividades justas y necesarias que nos facilitan un buen rendimiento en entregar valor tempranamente. Se hace foco en el 20% de la funcionalidad que entrega el 80% del valor de negocio. Nos enfocamos en la entrega de valor y no en seguir rigurosamente un plan a largo plazo. Hacemos foco en objetivos a corto plazo (sprints), para avanzar paso a paso hacia el objetivo general y cumplir con nuestra visión de producto.


Referencia:



jueves, 13 de octubre de 2016

Scrum: La adopción de Scrum y sus resultados

La adopción de Scrum y sus resultados


La evolución informática ha hecho que las empresas se digitalicen progresivamente y, en esa vía, han tenido la necesidad de optimizar sus procesos al máximo posible para asegurarse de ser competitivas en el mercado. Es por ello, entre otras cosas, que las metodologías ágiles, como Scrum, han estado adquiriendo una importancia especial dentro de los cambios organizacionales.

¿Quiénes usan Scrum?


Las industrias de software son las principales en usar scrum. En diferentes industrias las áreas no-IT como operaciones, producción, e investigación y desarrollo son la principales utilizándolo para proyectos [1].

¿Cómo fue la adopción de Scrum?


Scrum está siendo usado por muchas empresas. En diferentes encuestas casi más de la mitad de los encuestados informó que Scrum se utiliza más de la mitad del tiempo [1][2]. La mayoría de los encuestados utilizan prácticas de Scrum, con un 25% utilizando Scrum para todos desarrollo de software y más de un 50% usan artefactos de Scrum [1].

¿En qué ha ayudado en la industria?


Scrum ha ayudado en:
  • Mejorar la calidad de vida laboral de la mayoría de los equipos [1].
  • Incrementar la satisfacción de los clientes [1][6].
  • Permitir el empoderamiento del trabajo por parte de los equipos [1][6].
  • Colaborar con hacer de las organizaciones más fluidas removiendo problemas [1][6].
  • Identificar oportunidades de mejoras en los procesos [1][6].
  • Acelerar la entrega del producto [2].
  • Mejorar la capacidad para gestionar el cambio de prioridades [2].
  • Mejorar la productividad [2][6].
  • Reducir los costos [6].
  • Minimizar los riesgos de una entrega completa [6].
  • Reducir en gran medida el sobre esfuerzo [6]
  • Mejorar de la calidad del producto y evitar el reproceso [6]

¿Fue exitoso usar metodologías ágiles y Scrum?


El informe Chaos [8] deja claro la superioridad de las metodologías ágiles de desarrollo de Software (Scrum, Kanban, XP, etc.) sobre las tradicionales en cascada (PMBOK, Prince2, etc.) y confirma la creciente adopción en la última década. Según el informe, la combinación de "personas competentes", "proyectos pequeños" y "metodologías ágiles" es una fórmula de éxito [8]. Hay estudios universitarios que indican cómo gracias a la incorporación de los métodos ágiles, sistemáticamente, se logran proyectos exitosos en proyectos reales para empresas. 


En este contexto, Scrum es parte del logro bajo el marco de la agilidad [4][5]. Según encuestas, Scrum se utilizó con éxito más de la mitad del tiempo, de acuerdo con 74% de los encuestados [1].


¿Cuáles son los casos de éxito?


Existen muchísimas compañías que desarrollan software de una forma ágil y exitosa a las que podemos prestarle atención. Como por ejemplo: Google, Spotify, Adobe, Nexus, etc.


Referencias:

[1] The 2015 State of Scrum Report How the world is successfully applying the most popular Agile approach to projects, Scrum Alliance, julio 2015.


[2] State of Agile Survey, 9th anual, VersionOne, 2015.


[3] The CHAOS Manifesto 2012: The Year of the Executive Sponsor.


[4] 84,6% de proyectos ágiles exitosos. Estudio de Caso y Proyecciones, Agustín Villena, Buenos Aires, Argentina - 20 a 25 de octubre de 2008.


[5] Éxitos y fracasos en proyectos Scrum: Spotify Vs. Healthcare, Markos Goikolea, 17 Jul 2014.
http://comunidad.iebschool.com/iebs/agile-scrum/exitos-y-fracasos-en-proyectos-scrum-spotify-vs-healthcare/

[6] Caso de estudio sobre apropiación de Scrum en empresas que han adoptado CMMI, Proyecto de grado para optar al título de magíster en ingeniería, Silvia Isabel Lozano Argel, Universidad EAFIT, Escuela de Ingeniería, 2013.

[7] Facultad de informática universidad politécnica de madrid, tesis de máster, máster en tecnologías de la información, estudio de la aplicación de Metodologías ágiles para la evolución de productos software, Pilar Rodríguez González, Juan Garbajosa Sopeña, septiembre, 2008. 

[8] 2015 CHAOS Report, CHAOS Database 2011 to 2015, Standish Group Store. https://jeronimopalacios.com/2015/09/agile-tiene-cuatro-veces-mas-posibilidades-de-exito-que-waterfall/
(Para elaborar este informe, Standish ha utilizado la base de datos CHAOS con los datos de los anos 2011 a 2015, durante el ano fiscal estadounidense).




martes, 4 de octubre de 2016

Libro: Scrum en las organizaciones

Comparto por este medio el libro que escribí sobre “Scrum en las Organizaciones”. Con este libro comparto una guía para trabajar bajo el marco de trabajo Scrum y para gestionar proyectos de Ingeniería de Software en forma ágil.

Este libro ofrece una guía para el conocimiento e implementación de una manera de trabajar y de gestionar proyectos de Ingeniería de Software, permitiendo encontrar prácticas emergentes en dominios complejos. En él se explica el sistema Scrum de un modo integrador desde diferentes perspectivas y fuentes de conocimiento, proporcionando un marco integral que incluye a los principios filosóficos, estructura, procesos y aspectos complementarios. 

Con este libro se busca ayudar a los equipos a avanzar de intentar emplear Scrum a ejecutarlo correctamente para lograr alcanzar los resultados que aún no se han logrado.

También busca ser una guía y ayuda para quienes se desenvuelven como Scrum Master de equipos de desarrollo de software.


Referencias:

lunes, 3 de octubre de 2016

SCRUM: Gestión Ágil de Riesgos - Modelo

Este post fue origen de datos para que pudiera dar una charla de gestión de riesgos y quería compartirlo con ustedes...
 DevOps Journey LATAM, 02/12/2016, Hotel Atton el bosque. Agile Risk Management in devops Context.

Gestión Ágil de Riesgos


Si bien la gestión de riesgos no es parte de scrum y un facilitador no se encarga de la gestión al modo tradicional como la gestión de riesgos, sí debería velar por mitigar los problemas que surjan en el proyecto y apoyar, en consecuencia, a la gestión de riesgos. En este sentido, no solo se encargaría de ayudar a desbloquear issues y reducir impedimentos para que el sistema de trabajo fluya en el procesamiento de PBIs (Product Backlog Items), sino que también puede preocuparse de prever issues para anticiparse a los problemas y controlar así, de antemano y en la medida de lo posible, los riesgos asociados a bloqueos del flujo de trabajo que atentan contra los objetivos del proyecto.
fig.1: Diagrama riesgos vs problemas.

Lo difícil es lograr una gestión de riesgos ágil en vez de una gestión pesada, dificultosa y que demande mucho esfuerzo de gestión. En esta vía, es preferible mantener un simple registro de riesgos con información concisa. Los datos principales a registrar de un riesgo, además de su nombre, pueden ser: descripción, probabilidad (probability), impacto (severity), criticidad (criticality), acciones de mitigación, dueño y estado.
fig.2: estado de riesgos.

Algo simple que se puede lograr trabajando con criticidad es usar tres valores en la probabilidad de ocurrencia y en el impacto (1, 2 y 3). El impacto representa la severidad de la ocurrencia de un problema asociado al riesgo o el tiempo perdido (size of loss). Por otro lado, la criticidad representa la prioridad del riesgo o el grado en que ese riesgo afecta negativamente al proyecto (exposure). El mismo será resultado del producto entre la probabilidad y el impacto. En consecuencia, la criticidad podría ser: 1, 2, 3, 4, 6, 9.

Las herramientas gráficas que se pueden usar para dar visibilidad de los riesgos son: a) la “matriz de riesgos”; b) el “histórico de criticidad”; c) o el gráfico de curva de riesgo quemado (Risk Burn-down Chart).

La gestión de riesgos no es independiente de la gestión de impedimento o de problemas o “issues”. Muchos de los problemas surgidos en el proyecto están asociados a riesgos identificados. Por tal motivo, la gestión de riesgos es útil, porque podemos mitigar los problemas de antemano. Por dicha razón, puede ser valioso llevar un registro de los issues y su relación con los riesgos. Siempre sin perder de vista no caer en el énfasis de la documentación ni en el afán de reportar. Se debe buscar la simplicidad y el foco en el flujo de trabajo sin impedimentos.

Las herramientas gráficas útiles para dicha gestión son: “Tablero de Obstáculos” (obstacle board) o el calendario de issues (Issues calendars).

Referencia:

Risk Management in Agile, Satheesh Thekku Veethil, Scrum Alliance Org., 3 May 2013

Managing Risk on Agile Projects with the Risk Burndown Chart by Mike Cohn. Mountain goat software, April 8, 2010.