Google

viernes, 9 de febrero de 2007

¿Cuándo está listo?

Cada vez que tenemos una entrevista con un cliente o usuario para levanta requerimientos, siempre surge esta pregunta, después de una sesión en la que el cliente te da todo un discurso explicandote que es lo que el sistema debe hacer, luego, con una sonrisa en la cara te pregunta, ¿Para cuándo está listo?

Esta pregunta no es fácil de responder, sobre todo porque uno como analista no ha terminado de digerir todos los requerimientos, y aunque lo que nos piden parece ser fácil, no lo es. No nos dejemos engañar por las apariencias.

Si uno dice está listo para tal fecha, perfectamente podemos estar poniendonos una soga en el cuello. Solo en los casos en que conocemos perfectamente lo que vamos a desarrollar es que podemos dar una estimación.

En el camino podemos encontrarnos con muchos obstáculos, y generalmente son cosas que no habiamos tomado en cuenta en el momento en que le dijimos con una seguridad a nuestro cliente, "esta listo para tal fecha". Ahora nos damos cuenta que el desarrollo se tomaba más tiempo del previsto.

Solo por poner un ejemplo sencillo, al intentar abrir un archivo, ¿Cuántas cosas pueden suceder que pueden provocar un error?. Vaya, ahora no resulta tan simple como llamar a la ventana de dialogo y listo.... una lista de cosas que pueden pasar son:


  • El archivo es un directorio
  • El archivo fue borrado mientras se seleccionaba el mismo y se presiona el botón Aceptar
  • Si el archivo esta en red, se pierde la conexión
  • El archivo está abierto y bloqueado
  • No se tiene permisos sobre la carpeta
  • ...

Esto es un ejemplo sencillo, imaginense lo que puede suceder en un caso más complejo...

Moraleja: Cuando elicitas los requerimientos solamente te están dando los casos de uso con el flujo normal de los eventos, y alguno que otro curso alterno. Hay que identificar todos los posibles flujos alternos que consigamos, priorizarlos y descartar los que no apliquen para el desarrollo. Una vez hecho esto es que podrás hacer una estimación de tiempo, y recuerda siempre poner un tiempo de holgura, porque Murphy siempre esta cerca ;)