Ir al contenido principal

Como Implementar SCRUM en 10 pasos fáciles - Paso #8: Mide el progreso con un gráfico

Continuando con la serie: Como implementar SCRUM en 10 pasos fáciles. Creación de Kelly Waters y traducida con la autorización correspondiente por su servidor.


La entrada original de este artículo es: Step 8: Track Progress With A Daily Burndown Chart


Paso #8: Mide el progreso con un gráfico

Así que tienes tu pila del producto en orden, has estimado la pila, esclarecido los requisitos, planeado tu sprint y has creado un espacio de trabajo colaborativo. Estás haciendo un Sprint para alcanzar tus metas y estás haciendo reuniones diarias. Ahora estás listo para medir el progreso con un gráfico.

"¡Dios mío, parecía ir tan bien!"

A menudo en proyectos de desarrollo tradicionales, todo parece ir tan bien, hasta la finalización del 80% o incluso más tarde. Luego las cosas se vuelven más difíciles. Las cosas empiezan a parecer cada vez menos probable que cumplan con la fecha de finalización prevista. Hasta que finalmente reconoces que no puedes alcanzar la fecha porque ya es demasiado tarde para hacer algo más al respecto ...

Los principios ágiles ayudan

En el desarrollo ágil de software, hay algunos principios claves que destacan los problemas temprano. Aunque esto es preocupante, los problemas se destacan, mientras todavía hay tiempo para hacer algo al respecto.

Una de las razones por qué esto es un problema común en los proyectos tradicionales de desarrollo de software se debe a que las pruebas son un gran bulto al final. Por lo tanto es muy difícil medir la calidad hasta el final y es muy difícil juzgar que tan completo está el producto, porque no sabes cuántos más errores faltan por encontrar.

En el desarrollo ágil, las pruebas están integradas en todo el ciclo de vida, las características se completan una a una, y por cada característica "hecho" realmente significa "HECHO".

Además, el propietario del producto o representante de los usuarios participa activamente con el fin de ver el producto con frecuencia y dirigir su desarrollo en cada paso del camino.

Todos estos principios, junto con la reunión diaria, van por un largo camino para garantizar una visibilidad clara del progreso, y proporcionar una medida clara e inequívoca de la calidad del producto y la completitud, en una base muy regular.


Gráfico Daily Burndown

Pero además de estos principios, la metodología de desarrollo ágil, Scrum, también ofrece una sencilla práctica para seguir el progreso diario - el gráfico Daily Burndown, que supera a cualquier informe de estado en proyectos tradicionales en mi opinión!

El gráfico Daily Burndown es una herramienta sencilla. Pero una muy poderosa.

"Estimación hasta la conclusión"

Tome todas las tareas que se entregarán en un sprint particular en Scrum, es decir, la Pila del Producto que creó en el paso 4. En la Pila del producto, anota el tiempo estimado para completar, que, por supuesto, al principio de la Sprint es el mismo que la estimación original. Actualizar el tiempo estimado para completar (Estimated Time to Complete - ETC) de cada tarea sobre una base diaria.

Los miembros del equipo asumen la responsabilidad

Cada miembro del equipo puede ser responsable de la actualización de sus propios ETC sobre una base diaria antes de la reunión diaria. Actualizarlo diariamente - y compartiendo el esfuerzo entre el equipo - normalmente significa que deberían ser solo 2 o 3 artículos al día por cada persona. Por lo tanto, no debe ser oneroso y significa que los miembros del equipo asumen la responsabilidad de sus propias tareas.

Se honesto acerca del esfuerzo que crees que es necesario para completar cada tarea (y que este sea el esfuerzo necesario para completar cada tarea en realidad), independientemente del tiempo que se ha gastado hasta la fecha y con independencia de lo que se estimó en primer lugar.

Meta del equipo

El objetivo del equipo, simplemente, es que el equipo alcance un faltante de cero horas, al final de la duración del Sprint.

Mide el progreso visualmente en un gráfico


La belleza de este enfoque es que se trata de un punto de vista numérico del progreso y por lo tanto se puede representar visualmente en un gráfico. Mide las estimaciones originales para el Sprint en una línea y las estimaciones actuales para completar en otra línea.

Cuando la línea real este por debajo de la línea de estimación original, estás en el buen camino. Cuando está por encima, te estás quedando retrasado. Realmente es tan simple como eso. Muy visual, información instantánea de todo el equipo.

Anotar los eventos principales


También he encontrado que es útil anotar en el gráfico, con "speech bubbles", que describan los eventos clave en el camino. Esta es una manera útil de registrar los eventos importantes para que no sean olvidados al momento de hacer la revisión del Sprint.
También es útil para comunicar cosas importantes para la gestión y las partes interesadas en lugar de producir un informe por separado.

Scrum destaca tus problemas -  no los resuelve

Usando el gráfico Daily Burndown, cuando usted pasa un día en una tarea y descubrir un montón de problemas o esfuerzo que no habías previsto o estimado, la estimación hasta la conclusión salta, craundo un indicador muy visual del problema para que todos lo vean.

Cuando esto ocurre al principio de un proyecto y / o en gran escala, creeme que es bastante aterrador! De repente, no estamos tan seguros de todo esto visibilidad recién descubierta! Parecía una buena idea en ese momento, pero se puede pegar realmente * ese * gráfico en la pared?

Imagen real

Pero se gana una gran ventaja. Una ventaja enorme.

Tienes la oportunidad de ver dónde está el proyecto en realidad, todos los días, en todo su glorioso color.

Y cuando te topas con problemas en un proyecto, en realidad los ves. Y los ves cuando puedes tener tiempo para hacer algo con ellos.

Kelly.


Serie completa:
#8: Mide el progreso con un gráfico

Entradas populares de este blog

Enumerar filas en una consulta con MySQL

Supongamos que tenemos tablas con la estructura siguiente:
documentos (iddocumento, nombre_documento, url_original, idtipo_documento, idproyecto) proyectos (idproyecto, nombre_proyecto, longitud, unidad_medida) tipo_documentos (idtipo_documento, descripcion_tipo_documento) Tenemos necesidad de hacer una consulta como la siguiente: "Enumerar todos los documentos en la base de datos agrupados por proyecto"

Parece fácil, excepto por el término "enumerar", aquí tienes un truquito para que logres enumerar tus consultas:
SELECT (@rownum:=@rownum+1) AS rownum, nombre_documento, descripcion_tipo_documento, nombre_proyecto FROM (SELECT @rownum:=0) r, documentos AS d INNER JOIN proyectos AS p ON d.idproyecto = p.idproyecto INNER JOIN tipo_documentos AS td ON d.idtipo_documento = td.idtipo_documentoPero que tal si te piden que enumeres los proyectos con sus correspondientes documentos?. Teniendo lo anterior es un poco mas sencillo
SELECT IF(@fila=proyectos.idproyecto, @rownum:…

Como implementar SCRUM en 10 pasos fáciles - Paso #1: Ordena tu "Pila del Producto"

Esta es la continuación de la serie: Como implementar SCRUM en 10 pasos fáciles. Creación de Kelly Waters y traducida con la autorización correspondiente por su servidor.


La entrada original de este artículo es: Get your backlog in order

Ordena tu "Pila del Producto"
¿Así que quieres implementar Scrum?
¿Y te gusta la idea de hacerlo fácilmente?
Entonces escucha. Este es el paso 1 en mi serie: ¿Cómo implementar Scrum en 10 pasos fáciles.
Este no es solo el primer paso. Es el paso más importante.
A menos que puedas llevar a cabo este paso, no sigas. No lo saltes. Te prometo que te arrepentirás si lo haces. Incluso si no continuas, es probable que este paso te beneficie, a tu equipo y a tu organización.
Así que aquí está.
Primero, ¿dónde deberíamos empezar?
Alineación con el negocio
Primero, antes de nada, debes alinear tu equipo de desarrollo con el negocio.
Si eres parte de una unidad de negocio, eso puede ser natural y directo. Si estas en una organización central de desarrol…

jQuery DataTables y CodeIgniter

Ajax Source Datatables permite configurar fácilmente el origen de datos de la tabla, para que esta sea generada dinámicamente desde el servidor, así que con CodeIgniter tendríamos el siguiente código

public function page(){ $data['pedidos'] = $this->pedidos_model->get_pedidos($this->input->post('iDisplayStart')); define('AJAX_REQUEST', 1);//truco para que en nginx no muestre el debug $TOTAL = $this->pedidos_model->total(); echo json_encode(array('aaData'=>$data['pedidos'], 'iTotalRecords'=>$TOTAL, 'iTotalDisplayRecords'=>$TOTAL, 'sEcho'=>$this->input->post('sEcho'))); }
Este método producirá algo parecido a esto:

{"iTotalRecords":83099,"iTotalDisplayRecords":83099,"sEcho":"2", "aaData":[{"Id":"85514","num":"86109",&q…