Durante el día a día, los Scrum master solemos encontrar bloqueos e impedimentos técnicos de los desarrolladores, especialmente de aquellos con menos experiencia. La frase más habitual es “La aplicación no funciona. Ya he probado todo y no encuentro solución”. Los programadores suelen atascarse en estos casos durante mucho tiempo, impactando la productividad y la estimación de tareas.
Estos problemas suelen ser recurrentes y se solventan fácilmente si se sigue el protocolo adecuado. A continuación, os propongo una lista de desbloqueo. Lo recomendable es que se encuentre impresa y pegada donde los programadores puedan verla fácilmente.
- ¿Estás en el branch correcto del proyecto o versión?
- ¿Has borrado caché?
- ¿Has borrado las cookies?
- ¿Has borrado el historial del navegador?
- ¿Has hecho un debug paso a paso?
- ¿Las IP son las correctas?
- ¿Has verificado si estas conectado a la VPN?
- ¿Los servicios, bases de datos, etc. apuntan a la dirección correcta o al entorno correcto?
- ¿Has verificado si el servicio está operativo?
- ¿El web server está iniciado? ¿la base de datos se encuentra iniciada? ¿has hecho PING?
- ¿Has revisado la conectividad (incluido el cable)?
- ¿Has reiniciado el IDE, el ordenador, el servidor, y/o bd?
- ¿Has reiniciado el server para que reflejara los cambios?
- ¿Has revisado si han cambiado las contraseñas?
- ¿Han expirado o le han quitado los permisos de usuario de cualquiera de los sistemas?
- ¿El usuario tiene permisos / no tiene permisos?
- ¿Soportamos la versión del navegador y/o del sistema operativo?
- ¿Tienes instaladas correctamente las dependencias?
- ¿Los sistemas base tienen los parches?
- ¿La versión del sistema operativo es soportada?
- ¿Se encuentra sobre la versión correcta del framework?
- ¿Estás trabajando con las últimas versiones de los fuentes?
- ¿Has verificado si la versión del software es la soportada?
- ¿Todos los componentes de la solución corresponden a la misma versión?
- ¿El proxy lo está bloqueando?
- ¿El puerto o la IP están bloqueados en tu ordenador o en el Server
- ¿Has leído bien el mensaje de error?
- Insisto: ¿Has leído bien el mensaje de error y comprendes lo que dice?
- ¿Has revisado los webconfig, web.xml o el xml de configuración de la aplicación?
- ¿Seguro has revisado detalladamente el archivo de configuración
- ¿Las trazas y logs corresponden a la fecha de análisis del problema (fecha y rangos correctos)?
- ¿Has leído bien el log? ¿lo has entendido?
- ¿Has revisado si el problema es de tipo de dato?
- ¿Has hecho una correcta conversión de tipo de dato?
- ¿El tipo de dato en la aplicación es el mismo que en la base de datos?
- Si la consulta esta lenta: ¿el procedimiento almacenado o consulta tiene un MAX, sobre una tabla de millones de registros?
- Problemas de rendimiento: Millones de registros, sugieren el uso de tablas históricas
- ¿La tabla tiene índices?
- ¿Has revisado la documentación oficial del framework o librería?
- ¿Has preguntado si esto había ocurrido antes?
- Si es un bug ¿le has preguntado el funcionamiento correcto al Product Owner?
- ¿La versión sobre la cual se reporta el problema es aún soportada?
- ¿Lo solicitado se encuentra dentro de la garantía o alcance del proyecto?
- ¿Estás lanzando y capturando la excepción?
- ¿Se ejecutaron las pruebas unitarias?
- ¿La memoria RAM está colapsada?
- ¿El disco duro está lleno?
- ¿Has buscado en Google?
- Penúltima opción: ¿Seguro has buscado bien en Google?
- Última opción: pregúntale a un compañero con más experiencia
Siguiendo este sencillo protocolo, eliminamos pérdidas de tiempo, duplicidad de esfuerzo y cuellos de botella en los miembros con más experiencia / technical leaders. El uso continuado acaba por incorporarse a la cultura, y aumentando la velocidad del equipo Scrum.
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-SinObraDerivada 4.0 Internacional.