1. MEJORA CONTINUA EN EQUIPOS
DE DESARROLLO SOFTWARE
Qué es, por qué debemos hacerlo, y cómo lo llevaremos a
cabo
@CesTM84
2. James Harrington (1993): Mejorar
un proceso significa cambiarlo
para hacerlo más efectivo,
eficiente y adaptable. Qué cambiar
y cómo cambiar depende del
enfoque específico del empresario
y del proceso.
La búsqueda de la excelencia comprende un proceso que
consiste en aceptar un nuevo reto cada día.
Edwards Deming (1996): La
administración de la Calidad
Total requiere de un proceso
constante, que será llamado
Mejora Continua, donde la
perfección nunca se logra pero
siempre se busca.
¿Qué es la Mejora
Continua?
3. Con la aplicación de la Mejora Continua
se contribuye a mejorar las debilidades
y afianzar las fortalezas de los Equipos,
así como de la Empresa en su conjunto.
De este modo se logra ser más
productivos y competitivos. Las
organizaciones y los Equipos deben
analizar los procesos utilizados, de
modo que si existe algún
inconveniente, problema o ineficiencia
estás puedan mejorarse o corregirse.
¿Por qué debemos
mejorar?
En muchas ocasiones no nos planteamos
que nuestros procesos y nuestra forma de
trabajar puede no ser eficiente, pero
creemos que no podemos pararnos a
repensar la estrategia porque debemos
seguir avanzando apresuradamente.
¿Verdaderamente estamos demasiado
ocupados para mejorar?
5. ¿Qué vamos a
obtener?
Calidad de los Procesos:
Estandarización de procesos
Visibilidad del proceso
Visibilidad de la estrategia
Visibilidad del estado
Calidad del Equipo:
Aprendizaje continuo
Comunicación
Colaboración
Mayor confianza
Calidad del Producto:
Detección temprana de errores
Testeo constante
Diseño continuo
Automatización de pruebas Ciclo de Deming
6. 1. Pair Programming
¿Cómo lo vamos a
implementar?
o Mayor disciplina
o Mejor diseño
o Mejor código
o Menos errores
o Mayor cohesión del equipo
o Enseñanza mutua
The Economist: "Laurie Williams de la universidad de Utah en Salt Lake City ha demostrado que los
programadores emparejados son solamente 15% más lentos de dos programadores trabajando
independientemente, pero producen 15% menos errores. Y ya que la prueba y depuración son a menudo
muchas veces más costosas que la programación inicial, esto es da un resultado impresionante"
(Dr. Williams is currently Assistant Professor of Computer Science at North Carolina State University)
7. 2. Integración Continua
¿Cómo lo vamos a
implementar?
o Automatización de pruebas
o Detección temprana de
errores
o Testeo constante
Jenkins es un servidor de integración continua, gratuito, open-source, fácil de implantar y
de utilizar. Actualmente es uno de los servidores de IC más empleados.
8. 3. Mejora de procesos
¿Cómo lo vamos a
implementar?
o Estandarización de procesos
o Automatización
o Claridad
o Visibilidad
9. 4. SCRUM
¿Cómo lo vamos a
implementar?
o Enfoque Agile
o Historias de Usuario
o Diseño Centrado en el Usuario
o Entrega continua de Software
con valor
o Iterativo e incremental
o Sprints Planning, Daily Scrum,
Sprint Review & Sprint
Retrospective
10. 5. Equipo y Colaboración
¿Cómo lo vamos a
implementar?
o Equipo unido
o Equipo cercano
o Comunicación abierta y
directa
o Ambiente colaborativo
o Sentimiento de pertenencia