lunes, 13 de octubre de 2008

Como la vida misma, que más da que el proyecto se retrase, así aprende con un caso real

Hola a tod@s, hoy no tengo mucho tiempo de escribir, he vuelto a estudiar, y hoy me comenzron las clases, está claro que prefiero la vida de estudiante, pero los cambios de rutina son duros. xD. Así que debido a mi escaso tiempo y que no me siento muy inspirado, voy a publicar un post comodin, de estos que tengo preparados para un día de los que tienes ganas de publicar algo pero no tienes el día .... Se trata de una imagen que lleva tiempo deambulando por internet, y que en realidad no se cúal fue su origen, pero describe a la perfección las "incongruencias", desajustes, idas de olla, etc... que existe en el desarrollo de un proyecto, no se si sucede en todas las empresas, normalmente en una empresa con un gran equipo y con los roles bien definidos y por supuesto dependiendo de la metodología de trabajo que utilicen, casi se tarda más en generar la documentación de un cambio que en hacerlo. Con esto no quiero decir que no se deba documentar los proyectos, todo lo contrario, la documentación es importantísima, así como un buen análisis y una buena definición de requisitos.





Todo esto se lleva a la perfección en una gran empresa, pero que sucede en la pequeña. En una pequeña empresa puede que tengas tus roles definidos en el contrato, peor a la hora de la verdad haces de todo, si te dedicas a la parte de harware por ejemplo, arrglas todo lo que tenga tornillos, desde ordenadores a cajas registradoras, porque como en tu maletín llevas un par de destornilladores y esas maquinas do demo tienen tornillos.... pues está claro.

Que pasa si te dedicas a la sección de desarrollo, seguramente trabajes con diseñadores, analistas, programadores,etc... claro, estos roles están bien definidos, pero entran proyectos, y la manera de afrontarlos es:
Juanito, ponte con esa web, Pepito cuando acabes con esa web ponte con esa aplicación, y Juanito que es programador, se ve de la noche a la mañana haciendo un análisis de una aplicación web, porque el analista, marquitos, está ocupado testeando otra aplicación que tenía que estar lista hace una semana y que falló a la hora de hacer la implantación en el cliente final, así que Juanito realiza la definición de requisitos el analisis, las visitas al cliente y de todo, seguramente no tenga esperiencia en este campo, pero "que más da que el proyecto se retrase, así aprende con un caso real", así que empieza a desarrollar el proyecto, como un buen programador de recursos, tiene agilidad en el desarrollo, y algunas librerías hechas con anterioridad y siguiendo algún patrón, pues digamos que termina la primera fase de desarrollo medianamente rápido, bien por Juanito, pero ha llegado el punto del proyecto que debe generarse alguna release en versión alpha para presentar al cliente final, y toca diseñar un poco, así que Juanito avisa que necesita la inestimable ayuda de Pepito (el diseñador), pero Pepito no puede ayudar a Juanito, por que? porque está bastante liado con la aplicación, que no tenía mucha idea de programar, pero "que más da que el proyecto se retrase, así aprende con un caso real", y claro luego esa aplicación hecha por un diseñador, con las 4 palabras que sabía de programación, pues funciona... pero como funciona? Recemos a dios que el cliente no pida una modificación y haya que cambiarla, escalarla, etc... Y la documentación? has tenido tiempo a hacerla, mientras aprendías a programar en 7 días con el libro de "aprenda desde 0 con mi método SeSeSe". En realidad, no es culpa del diseñador, sino de quien le mete en esos fregados.

Y que ha pasado con Juanito, nuestro programador, tiene que diseñar un interfaz web, porque el proyecto ya va justo, y no puede esperar a que Pepito acabe su app, así que armado de valor, se instala un programa de retoque de imágenes, repasa los nombres de las fuentes, se crea un css a golpe de tecla, porque recordemos que Juanito es programador, seguramente opte por crear una hoja de estilos picando el código, que fedellando con algún programa de diseño, que le haga cosas raras, por desconocimiento del mismo, porque una aplicación tiene una potencia increible, cuando la controlas, sino el retraso será inminente.

El resultado de todo esto, retraso en la entrega de los proyectos, poca o ninguna documentación de los mismos (si se que es un coñazo, pero hay que hacerlo), aplicaciones enormemente parcheadas, etc...

Esta es alguna de mis barrenadas de esta mañana, cualquier parecido con la realidad es pura coincidencia :-)

Saludos a tod@s