Mostrando entradas con la etiqueta Métodos Ágiles. Mostrar todas las entradas
Mostrando entradas con la etiqueta Métodos Ágiles. Mostrar todas las entradas

miércoles, 30 de julio de 2014

¿Cómo mejorar la industria del Sw de manera sencilla?

De acuerdo al CHAOS Report 2012 el 43% de los proyectos son “Challenged” (fuera de tiempo, presupuesto, o alcance) y el 18% son cancelados. Y casi ninguno de estos fracasos es analizado. El no analizar estos errores impide que aprendamos, para no volver a cometerlos.

El transporte aéreo tiene una tasa de 0.05 muertes por cada mil millones de kilómetros recorridos. Es una industria que ha mejorado continuamente en la seguridad. El día de hoy es más segura que hace 20 años. Y la razón principal es que el 100% de los accidentes o averías importantes son analizados y convertidos a estándares de seguridad obligatorios. No sucede así en la industria del software. 


En su blog, Bertrand Meyer hace reflexiones contundentes sobre la diferencia entre las dos industrias. A pesar de que existen foros y sitios web que recopilan errores existen muy pocos analizados a profundidad, ejemplo de estos son: el caso de estudio de  Nancy Leveson sobre la Therac-25 y el análisis de Gilles Kahn sobre el accidente del Arian 5. Estos análisis son la excepción. Ambos casos han contribuido a un mejor entendimiento de la industria del software.

No existe una receta única para el éxito en los proyectos de software, generalizando, no existe una receta única para el éxito, como menciona Kough (2011),  “después de una vida en los negocios no puedo dar una receta del éxito, Lo que puedo hacer es hablar acerca de cómo perder. Y garantizo que cualquiera que siga esta fórmula será un perdedor seguro“. El detectar las causas de los fallos y evitarlas asegura en consecuencia mejores resultados. 

Patrick Eha (2012)  hace referencia a la pérdida de 440 millones de dólares por un error en un sistema automático de trading en Nueva York. Pero en ningún lugar se menciona cuales fueron las causas. El análisis sistemático de estos errores podría detectar causas clave: capacidad de los desarrolladores, métodos de calidad poco estrictos, procesos de seguridad deficientes. 

Existen muchas maneras de contribuir a la mejora de la industria del software, la investigación sobre temas de avanzada es una de ellas; Meyer(2009) enfatiza que la manera práctica, de baja tecnología es “ aprobar una ley que obligue a analizar de manera profesional cualquier fallo en un proyecto de software”. 

De inicio hay varias restricciones que deben ser consideradas: la iniciativa privada es renuente a hacer públicas sus fallas, por cuidar el prestigio de su empresa. La hipótesis es que una ley general a nivel nacional o estatal que requiera que analicen los proyectos de software implica cabildeo legislativo y una gran cantidad de recursos. Pero de inicio, los proyectos finalizados que tengan como fuente de financiamiento en México son públicos por la propia Ley Federal de Transparencia o sus equivalentes en los estados de la República. Estos proyectos pueden ser un inicio. Este sería el enfoque top down.

Planeamos hacerlo de otra manera. El desarrollo de casos de negocio basado en proyectos reales de software, así como la recopilación de artículos y bibliografía existentes sobre proyectos fallidos de software y la construcción de un observatorio de estos proyectos fallidos pueden contribuir para el conocimiento real. 

Casi cuarenta años después de la publicación del Mythical Man Month de Frederick Brooks seguimos fallando de la misma manera. Existen varias fuentes de información relacionadas con proyectos fallidos de software: libros, artículos, algunos análisis profundos de fallos en la industria del software en proyectos costosos o críticos a nivel mundial. Pero está información no está disponible para la industria del software de manera directa. Ello hace necesaria un mecanismo para la promoción de los aprendizajes obtenidos del análisis de proyectos fallidos. 

Un mecanismo para ello, puede ser la Gestión del Conocimiento puede proveer la base para que está información esté consolidada en un solo lugar y la creación de un Observatorio de Proyectos de Software Fallidos. Siendo una buena idea en el contexto Mundial, el propio contexto de México y Latino América, donde existe una gran cantidad de PYMES que desarrollan software y que cometen errores en su propio contexto requiere un análisis profundo de fallos de software en este nivel. Así pues el alcance se reduce y es más real. 

Referencias:

miércoles, 16 de octubre de 2013

Guión de conferencia para que los chavos se animen a entrarle a SCRUM. Comenzando por Kanban!

10 things about me (5 min).

  1. Coordinador MIS del CIMAT (Desde hace 5 meses).
  2. Maestro en Innovación y Servicios de TI e Ingeniero en Sistemas
  3. Deporte (Correr)
  4. Maestro de Compu de Prepa por 12 años (Gracias Carlos Kasuga y el Maestro Godo
  5. Leer (18 libros este año). Trello.com
  6. Blogger (Novador, Cartas a Mariano, Academia TEC, JAG Academy...)
  7. Trabaje en Gobierno del Estado por 10 años.
  8. Experiencia de 3 años en proyectos CONACYT y PROSOFT.
  9. He trabajado en conformación de 2 empresas de desarrollo de SW. DEXA, SOFTLOGIK.
  10. Certified Scrum Master. 

Porque SCRUM (2 min).
Que ventajas tiene scrum sobre los métodos rígidos (5 min).

  1. Orientados a la evidencia (DOCUMENTACIÓN!!!!)
  2. Orientado a la generación de valor para el cliente...

¿Qué es SCRUM?
¿Cómo lo utilizamos en CIMAT?

  1. El proyecto Compulogic... Un gráfico y fotos...
  2. Como lo usan en Softlogik. 15 + sin retrazo.
  3. Proyectos con la Industria...

Al salir de aquí:

  • Ejemplo de Trello del proyecto de Consultoría de Clústeres DITTIZAC, A.C.
  • Kanban personal (Perla y mío).


Cuál es el camino para saber más de esto:

  1. Henrik Kniberg (Scrum desde las trincheras)
  2. Las certificaciones avaladas por SCRUM Alliance: Certified Scrum Master, Certified Scrum Developer y Product Owner

Datos de contacto

Así quedó al final!



viernes, 13 de septiembre de 2013

La certificación de SCRUM MASTER. !Vale la pena!


Una vez le preguntaron a un matemático joven:
¿Por qué has avanzado tanto en tu carrera en tan poco tiempo?
A lo que el joven estudiante, respondió.
Es que yo estudio a los maestros, no a los alumnos.

-Anécdota del El Viejo.

Pues con Mike Beedle, tuvimos la fortuna de estudiar a una maestro. Hace tiempo quería certificarme como SCRUM MASTER de manera oficial. Es uno de las cosas que El Viejo, me recomendó para el desarrollo de mi carrera. Al fin, hace un par de meses me llegó un correo sobre un curso de certificación avalado por el SCRUM Alliance y apoyado por México First en Aguascalientes! Así que ni tardo ni perezoso me inscribí (estás oportunidades se presentan pocas veces). Softlogik, empresa zacatecana, también envío a dos de sus integrantes, ya tenían 4 certificados como SCRUM MASTER, pero ahora enviaron a dos representantes (Karina y Kike). 

El curso tuvo que posponerse un par de semanas, por la agenda del instructor, Mike Beedle. Yo no sabía hasta ese momento que Mike es uno de los co-autores del manifiesto ágil, con 18 AÑOS de experiencia en el uso de SCRUM, en sus propias palabras, después de Jeff Sutherland, el creador de SCRUM fue él quien comenzó a utilizarlo en proyectos de desarrollo de software.

Al iniciar el curso, y hablar un poco de lo que había hecho. De entrada es programador de LISP y Doctor en Física. 

Del curso me gustaron varias cosas, a pesar de "haber utilizado SCRUM" durante un par de años y haber leído un par de libros del tema... aprendí mucho del curso... por lo que lo recomiendo ampliamente. Tanto así que creo que es algo que todas las personas relacionadas con el desarrollo de productos de software o de otro tipo de proyectos deben llevar".

INTRO DE SCRUM, porque un marco adaptativo empírico es más adecuado que un marco rígido.

EL CURSO:
1) El argumento científico de que el desarrollo de productos es más eficiente con un marco adaptativo empírico para sistemas abiertos que con un marco rígido definido para sistemas quasi cerrados.

Thomas Kun autor de "The structure of scientific revolution".
  1. Existe una teoría establecida (los procesos rígidos como PMI, CMMi, RUP, etc.).
  2. Está teoría tiene problemas y anomalías (Sólo el 16% de estos proyectos tiene éxito).
  3. Emerge una nueva teoría (los procesos adaptativos empíricos como SCRUM).
  4. Se prueba que la teoría funciona (El 42% de estos proyectos tiene éxito, 3 veces más).

2) Los antecedents históricos de SCRUM basados en el Sistema de Producción Toyota, en Taichi Ohno en el área de manufactura y los gurús de administración japoneses Nonaka y Takeuchi.

3) La gestión de riesgos en SCRUM.
Mike habló de las siguientes variables de proyecto:

  • Tiempos y materiales. Aquí se obtiene el costo por iteración del equipo y se multiplica por el número de operaciones. Riesgo posible: no pago, recursos insuficientes o que el proyecto se alargue.

  • Fecha fija. Se establece un porcentaje de para los requisitos obligatorios y se deja un buffer para los deseables. Se agrega un o un buffer adicional al proyecto. Riesgos posibles por no terminar en tiempo: multas, reputación de la empresa, rescisión del contrato o no pago. 

  • Precio fijo. En el costo fijo una regla es 2 veces la desviación estándar. En un proyecto tiene una probabilidad de terminarse en un 50%, a través de una curva normal se determina en base al histórico y se agrega un buffer de dos veces la desviación estándar. Para el ejemplo, queda casi el doble de tiempo para minimizar el riesgo de no terminar el proyecto. 90% de probabilidad de terminar en tiempo.

  • Y proyecto de gobierno (fecha fija, costo fijo y alcance variable). Estos son los proyectos se festeje ahora, llore después. Por el precio más bajo + fecha fija + alcance variable. Para sobrevivir se podría agregar una claúsula de "los cambios" los paga el cliente y no están incluidos y negociar que % de manejo de cambios. En Softlogik el porcentaje es del 35% de lo que resta.


4) La gestión de defectos con SCRUM.
En SCRUM, a través de la integración continua se asegura que se cumplan las pruebas de aceptación del usuario. Según Mike, un equipo que no hace integración continua no hace scrum. Y para ello recomienda contratar a un experto, que ya haya utilizado test driven development. No a un teórico, a alguien que ya lo haya hecho. 

En la típica rivalidad contra los modelos de calidad estándar como CMMi, PSP-TSP o RUP, entre otros. Mike siempre tuvo el comentario puntilloso a las preguntas u observaciones de los asistentes: 
  1. He implementado CMMi, PSP... "lo siento por ti".
  2. PSP es lo mismo que SCRUM... "no, no es li mismo. En SCRUM haces planeación en base a la productividad del equipo en PSP es individual".
  3. "Da coraje cuando tienes que customizar un marco el 90%".
  4. "Riesgos se manejan diferente en SCRUM que en PMI".
  5. "SCRUM es un sistema de retroalimentación"
  6. "En distintas empresas ya se está pidiendo SCRUM como requisito para subcontrtación de servicios".
  7. "Del porcentaje total del desarrollo mundial de software menos del 1% se hace con SCRUM, sin embargo en 10 años más del 80% de estos proyectos se realizarán con SCRUM".
  8. "Scrum se mejora usando Scrum"
  9. "Como un marco de trabajo de 6 pasos, 3 roles, 2 reportes y 1 documento es tan poderoso".
  10. "Scrum es una estrategia de 3M para vender más postits".

UN SCRUM MASTER debe de tener un perfil... 
"Tiene un ojo social".
"Es mala idea que sea parte del equipo de desarrollo".

ALGUNOS DATOS
Las historias de usuarios son utilizadas el 90% de las empresas que utilizan SCRUM.
99.9% de los clientes requieren un plan de entrega

LIBROS RECOMENDADOS por Mike
  1. Succeding with Agile de Mike Cohn (me falta por leer)
  2. Death March... (me falta por leer)
  3. Blue Ocean... (ya lo leí)
  4. Lean startup... (he leído algo)
  5. Entre otros. Pero si los recomienda alguien que sabe, hay que tomarlo en cuenta ;)

La verdad vale la pena la certificación y además, vale la pena desarrollar utilizando SCRUM. Estén atentos, porque primero Dios gestionaremos un curso de SCRUM para los alumnos de Maestría de CIMAT. 

miércoles, 27 de junio de 2012

Scrum desde las trincheras

Este libro escrito por Henrik Kniberg es lectura obligada para administradores de proyecto que utilicen métodos ágiles. El libro es una versión gratuita no imprimible, pero si gustan lo pueden comprar en Amazon.


lunes, 5 de marzo de 2012

¿Qué es mejor? Pensar y trabajar en la solución perfecta o tener una mejor solución...

Este enfoque se basa en proponer una solución que esté alineada con una solución ideal, pero que pueda ser lograda con los recursos disponibles...

El enfoque convencional es pensar en una visión... Pero al enfocarse en crear una solución que permita abatir la totalidad de la brecha, causa sentimientos de depresión... Y me invita a pensar que proyectos valiosos se abandonen.

El enfoque delta o enfoque en la solución. Busca dar pequeños pasos sin perder la visión...

El siguiente es un artículo interesante que el viejo me pasó acerca de este enfoque... "Solutions Focus aka Deltha Method"