Scrum

Product BackLog

Simulación de Scrum (Extendida)

0

Hace ya unas semanas que estaba con ganas de publicar este post. Lamentablemente, el día a día me fue demorando, pero este mensaje en el foro de metodologías ágiles fue detonante para que finalmente lo haga.

A partir de febrero del 2010 comencé a utilizar en varios de los cursos de Introducción a Scrum una simulación extendida basada en la de Alexey Krivitsky (Lego For Extended Scrum Simulation).

¿Cómo es el desarrollo de la dinámica?

Dejo una guía que te puedes bajar para realizar la dinámica donde y cuando quieras, solo ten en cuenta los términos de la licencia.

Licencia

Licencia de Creative Commons
Esta obra está licenciada bajo una Licencia Creative Commons Attribution-ShareAlike 2.5 Argentina .

Programador no significa Desarrollador

4

A menudo me encuentro frente a situaciones donde se confunde “programador” con “desarrollador”, o más aún, “desarrollador” con “programador”.

Antes de seguir, aclaro que mi postura es la de definir al programador como aquel que no se especializa en otra cosa que no sea codificar nuevas funcionalidades en función de diseños recibidos. No contribuye a escribir o entender las especificaciones. Ni se le ocurre escribir pruebas automatizadas. No colabora para mantener el build actualizado. Ni que hablar de las pruebas. No ayuda al cliente a comprender sus necesidades ni a resolver sus problemas. Se dedica solo a eso, a escribir código.

La tendencia actual del desarrollo de software y las metodologías ágiles está comprendiendo cada vez más la necesidad de contar con equipos multidisciplinarios, o en otras palabras, personas que contribuyan de distintas maneras al objetivo buscado, en lugar de personas que solo se especialicen en una parte del proceso y que no tengan una visión completa de él.

De esta manera, todos son igual de responsables por alcanzar los logros y la existencia de fracasos (si la hubiera). La solución más razonable que algunas organizaciones están ofreciendo frente a los contextos de negocios cambiantes es aumentar la flexibilidad. Incluso es lógico deducir que el hecho de contratar solo especialistas en determinadas áreas generará muchos mayores costos económicos e incluso de comunicación dentro del equipo, lo que puede atentar contra el desarrollo exitoso del producto.

¿Qué se espera de un desarrollador? El desarrollador es básicamente quien aunque no hace TODO al mismo tiempo (eso sería un absurdo), conoce el proceso de principio a fin y por eso logra detectar “a tiempo” cualquier “contratiempo” que pudiera surgir. En otras palabras, sería como esas nuevas cámaras digitales que obtienen una imagen panorámica que ofrece una visión completa de la escena fotografiada.

Entre las tareas de un desarrollador se encuentran:

  • Entender el negocio y los objetivos que se están persiguiendo
  • Colaborar con el Product Owner para identificar las historias de usuario y sus criterios de aceptación
  • Ser parte protagonista a la hora del armado y mantenimiento del entorno de trabajo
  • Garantizar las prácticas ágiles de desarrollo de software como Integración Continua, TDD, ATDD
  • Participar en el diseño de la solución, tanto lógico como arquitectónico

Por un mundo mejor, las responsabilidades del desarrollo del producto deben estar compartidas entre todos los involucrados en el proyecto, con la salvedad de que el Product Owner no requiere, en la mayoría de los casos, tener conocimientos técnicos. Sí, percibo que la siguiente pregunta es: ¿y el Scrum Master? Mi respuesta es otra pregunta ¿Cómo podría el Scrum Master remover impedimientos y garantizar al equipo un adecuado entorno de trabajo si no tiene los conocimientos técnicos necesarios de los desarrolladores? Cito:

“Un conocimiento íntimo y detallado de cómo algo funciona incrementa las posibilidade de que el líder ayude al equipo a descubrir las cuestiones técnicas más sutiles que deban ser tratadas” (LaFasto & Larson, When teams work best, 2001, p. 133).

En el fondo, aunque el equipo sea el encargado principal de desarrollar el producto y naturalmente es quien mejor conoce su desarrollo, el Scrum Master no debería desconocer los aspectos del desarrollo y en algunos casos, hasta debería ser quien mejor los conozca si es que se quieren evitar problemas de comunicación, interpretación y estimación; pero sobre todo, si se pretende alcanzar un objetivo exitoso.

Volviendo al comienzo: lo que necesitamos son verdaderos desarrolladores, personas que cuenten con las herramientas y prácticas necesarias para lograr un proceso de desarrollo exitoso y un producto de alta calidad. Esto no quiere decir que no se necesite también de los programadores, pero no confundamos un desarrollador o “developer” con un simple programador. Incluso un excelente programador podría ser un pésimo desarrollador y un Scrum Master que no ha adquirido estas herramientas a lo largo de su formación podría eventualmente ser percibido por el equipo de desarrollo como falto de las habilidades necesarias para cumplir su función.

Si apenas podemos entender estas diferencias fundamentales, habremos dado un paso más hacia un mundo de trabajo mejor.

¿Es ésta la perspectiva Ágil del PMI?

3

Actualización: El artículo al que hacía mención este post ya no existe en el sitio del PMI. Gracias a la comunidad Ágil dentro del Project Management Institute y a su esfuerzo por promover la esencia de las metodologías ágiles, hoy podemos decir que la perspectiva del PMI sobre la agilidad es mucho más objetiva.

A continuación mi publicación original:

En la edición de Agosto de “PM Network” se publicó una pequeña presentación sobre lo que es Agile y si conviene adoptarlo. Para esto recorre varios de los principios y sugiere (en una forma un tanto tendenciosa a mi entender) las situaciones donde aplicaría y las situaciones donde no aplicaría. Quien esté interesado en verla, lo puede hacer aquí:

http://www.pmi.org/resources/pages/agile.aspx

También se publicó una respuesta de la comunidad ágil hacia este artículo:

Video: http://www.xtranormal.com/watch/6973505

Espero que en algún momento logremos superar este tipo de cosas. Por cierto, repito, el artículo del PM Network me parece tendencioso y demasiado escueto como para que de por sentadas sus sugerencias.

Leyes

Las Leyes de Mariana para implementar Scrum

0

¿quién es Mariana? Fiel al mejor estilo periodístico que no da a conocer sus fuentes, muchas veces por razones de ética profesional y muchas otras para fastidiar de manera divertida a la audiencia, no revelaré su verdadera identidad . Llamémosla simplemente “Mariana”. Procedo a desarrollar la ancécdota.

“Mariana” es una alumna que asistió a uno de los cursos que dicté este año. Al finalizar el curso, junté todas mis pertenencias, entre ellas el material que usualmente utilizo como cartas, fichas, post-its, rollos de cinta, marcadores, etc. Más tarde cuando llegué a mi casa, al a acomodar las cosas para guardarlas encontré este papel:

Leyes infalibles para Implementar Scrum
1. Hacerlo de forma Iterativa, Incremental
2. No querer abarcar todo desde el principio
3. Controlar las expectativas de los primeros Sprints|
4. No abrumarse frente a los impedimentos que van a surgir (hasta ahora ocultos)
5. Tener coraje, experimentar y dejar experimentar – Errar no es malo, lo malo es no aprender del error.

Bueno, la verdad es que yo tampoco supe quién fue el autor o la autora de esta nota porque no estaba firmada. Solo adivino que fue una mujer porque dobló el papel sospechosamente muy prolijo y por eso adopté llamarla “Mariana”. Hoy lamento que no haya compartido estas ideas con sus compañeros durante el curso, hubiera sido algo muy productivo,  pero al menos lo bueno es que entendió de qué se trata llevar Scrum a la práctica.

photografía: http://www.flickr.com/photos/limaoscarjuliet/225249268/

31 de Agosto – Desarrollo Ágil con Scrum

0

Los beneficios de Scrum están ampliamente comprobados, pero ¿cómo implementar Scrum? ¿de qué se trata ser un verdadero equipo Ágil?¿cuáles son las prácticas y herramientas ágiles de gestión de proyectos e ingeniería de software que debo conocer?

Para responder a estas preguntas, este martes 31 de agosto a las 18.30hs estaremos presentamos la nueva certificación de desarrollo ágil de la Scrum Alliance: CSD cuya novedad principal es la comprensión práctica de los valores y principios de Scrum y su aplicación en situaciones reales, lo que permite conocer y experimentar Scrum por dentro para luego poder trasladarlo a la ejecución de proyectos concretos.

Esta charla informativa te servirá para entender aspectos fundamentales de Scrum referidos a su implementación, cuáles son las prácticas ágiles de desarrollo y cómo aplicar los principios ágiles en el día a día, los roles, los errores más comunes y cómo evitarlos, el proceso de adaptación en contextos de negocio cambiantes, y más.

CSD: LA CERTIFICACIÓN DE DESARROLLO ÁGIL DE LA SCRUM ALLIANCE

Sacate todas las dudas y descubrí tu potencial ágil y el de tu equipo de trabajo.

Martes 31 de Agosto

18.30 hs

Av. Córdoba 679, 4º piso, oficina 403
Capital Federal

Te esperamos!

Inscripciones: hello@kleerer.com

(Cupos limitados)

Scrum en Rosario!

0

En una nueva visita a la bella ciudad ribera, esta vez de la mano de Fundación Libertad, tuve la oportunidad de charlar algunas horas de lo que significa Scrum y de poder acercarnos un poco más a las Metodologías Ágiles.

Tuvimos la suerte de aprovechar una fresca mañana de invierno, en un piso alto de un edificio del centro de la ciudad que ofrece al espectador una impactante vista del río Paraná. Bellísimo.

Para empezar, nos valimos de una “dinámica de tribus” a través de la que identificamos los distintos grupos de profesionales y su grado de conocimiento y utilización de Metodologías Ágiles en sus proyectos (es increíble como este tipo de ejercicio siempre funciona, sea cual fuere el contexto o el grupo de personas).

Ya adentrados en la presentación de la temática, estuvimos conversando acerca de los Principios, el Manifesto Ágil, Historias, Sprints, Product Backlog, Release Plan, Task Board, Daily Standup Meetings, Retrospectivas… en fin, intentando entender en profundidad qué es lo que hace que la aplicación de las Medologías Ágiles mejore la calidad de lo que se entrega al cliente y las prácticas de nuestro trabajo cotidiano.

Aunque para algunos escuchar lo que proponemos desde las Metodologías Ágiles pueda sonar llamativo y fuertemente contrastante con lo que conocieron hasta ahora, existen muchos otros que se interesan positivamente y que buscan aprender más del tema para poder llevarlo a su trabajo. Ya el solo hecho de participar de esta experiencia es un gran paso para lograrlo!

Aquí dejo la presentación que utilizamos:

Hasta la próxima, Rosario!

CSD – Certified Scrum Developer en Bs As

2

Durante la semana pasada -de Lunes a Miércoles- tuve la oportunidad de facilitar un workshop intensivo de 24 horas de Desarrollo Ágil de Software perteneciente a la certificación CSD (Certified Scrum Developer).

Dejo aquí un video que ilustra la jornada:

Para más información sobre estos workshops de certificación CSD podés visitar la página de Kleer dedicada a este tema en: http://www.kleerer.com/es/CSD

Procrastinación

0

Al priorizar las historias del BackLog se dice que debemos hacerlo por valor de negocio o por ROI (valor/costo). A mi me gusta además agregar el riesgo inherente en dicha user story y utilizarlo como factor para decidir sobre la priorización.

Dicho de otra manera, el grupo de historias de mayor ROI puede dividirse en dos: las historias con mayor riesgo y las historias con menor riesgo. En lo particular, prefiero resolver primero aquellas con mayor riesgo ya que veo en las metodologías ágiles una muy excelente herramienta de mitigación de riesgos. Si dejamos las historias más riesgosas para el final o las posponemos en el tiempo, no estaremos mitigando ningún riesgo.

Solo un pensamiento en voz alta debido al video de procrastinación que vi en YouTube.

Procrastinación

La procrastinación (del latín: pro, adelante, y crastinus, referente al futuro) o posposición, es la acción o hábito de postergar actividades o situaciones que deben atenderse, sustituyéndolas por otras situaciones más irrelevantes y agradables.

Se trata de un trastorno del comportamiento que tiene su raíz en la asociación de la acción a realizar con el cambio, el dolor o la incomodidad (estrés). Éste puede ser psicológico (en la forma de ansiedad o frustración), físico (como el que se experimenta durante actos que requieren trabajo fuerte o ejercicio vigoroso) o intelectual. El término se aplica comúnmente al sentido de ansiedad generado ante una tarea pendiente de concluir. El acto que se pospone puede ser percibido como abrumador, desafiante, inquietante, peligroso, difícil, tedioso o aburrido, es decir, estresante, por lo cual se autojustifica posponerlo a un futuro sine die idealizado, en que lo importante es supeditado a lo urgente.

Fuente: Wikipedia: http://es.wikipedia.org/wiki/Procrastinaci%C3%B3n

Ejemplos más grandes de procrastinación son esas fases de análisis y diseño detallado de la gestión de proyectos tradicional, también conocido como Análisis-Parálisis, pero este será un tema de un futuro post. (procrastinando)… ;)

Agile en Acción! - Marzo 2010

Agile en Acción! – Marzo 2010 – Review

0

Del 16 al 26 de marzo de 2010 se realizó el workshop Agile en Acción! en la ciudad de Buenos Aires.

Esta edición estuvo dirigida a 15 participantes, quienes mediante una serie de talleres basados en requerimientos reales, crearon las EPICs y User Stories, determinaron su priorización y estimación, crearon el Product Backlog, definieron Velocity, armaron el Release Plan, y terminaron realizando una serie de ejercicios de retrspectiva.

Hubo un clíma muy bueno entre las personas y los equipos que se armaron y todos nos divertimos bastante a lo largo de los 4 días. Dejo aquí las fotos del curso: http://bit.ly/alQC2j

Saludos!

Habra un nuevo Agile en Acción! en Abril-2010: http://bit.ly/agile-en-accion–abril-2010

Presentación Charla PMIBA

1

El encuentro de miembros del PMI Buenos Aires estuvo muy bueno. Desde las instalaciones, la convocatoria y hasta la calidad de los asistentes fueron impecables.

Al llegar a la Universidad del CEMA me recibió Anabela Amoresano, quien estaba a cargo de la coordinación del evento. Pocos minutos más tardes llegaron varios otros voluntarios del Capítulo Buenos Aires del PMI.

Mientras esperabamos el arranque, tuve un debate e intercambio muy interesante sobre el universo de aplicación de las metodologías ágiles con Abel Bernal. Seguramente trate el tema en un futuro post, porque vale la pena.

A las 18:30 José Esterkin, Presidente del capítulo Buenos Aires, inició el encuentro comentando acerca de las novedades del capítulo, posibilidades de voluntariado y PMI Tour Buenos Aires. Inmediatamente después, Cecilia Boggi realizó la introducción de la charla y allí fuimos… Abajo dejo la presentación que utilicé durante la misma:

Un agradecimiento a Cecilia y José por el espacio para desarrollar este tema en particular.

Saludos!

Ir arriba