lunes, 2 de abril de 2007

Usando Crystal Clear en la PyMe de software (Introduccion)

Mejorar nuestras metodologias de desarrollo puede ser el paso mas firme que podemos dar como equipos de desarrollo de software.

Muchos programadores estamos aun acostumbrados a usar un metodo de desarrollo en Cascada (analizar todo el sistema > diseñar todo el sistema > programar todo el sistema -> depurar etc.) o peor aun: nos exponen el problema, y mal nos lo terminan de explicar, ya tiramos unas lineas de codigo -al menos mentalmente-, o tomamos la primer idea que parece cuadrar con el problema como si fuera la iluminacion venida de nuestra propia mente sobreestimada.

Esa "metodologia" se ha ido dejado atras en las potencias en desarrollo de software (India, Alemania, Japon, EUA, etc) desde hace bastante tiempo, incluso en algunos casos desde los 70's u 80's. No esperemos encontrar en estos tiempos una empresa de desarrollo de software de nivel internacional que use esta forma de hacer las cosas, pues es considerada una mala practica que lleva a un software inutil, retrasos exorbitantes, y disgusto en el cliente (sistemas de pesima calidad).

Por otro lado, precisamente a raiz de que los clientes -que antes muy probablemente no tenian una idea clara de lo que esperaban de un sistema- ahora comienzan a saber exigir calidad y saben con mucha mayor precision lo que un sistema puede hacer por ellos. Tambien esperan mucho mas profesionalismo ya que, con todo y pena debo mencionar, historicamente los agentes libres y las PyMEs de informatica en Latinoamerica se han portado como estrellas de rock cuando se trata de servicio al cliente.

Esperando sinceramente -y creyendo- que esos tiempos estan quedando atras, debemos buscar un metodologia que llene nuestras espectativas y con nos guste trabajar (habitabilidad), que nos ayude a asegurar que el software que desarrollamos llena las expectativas de nuestros clientes (seguridad), y nos permita trabajar en equipo una y otra vez, refinando con cada proyecto nuestras practicas y conocimiento (eficiencia).

Personalmente mi recomendacion es Crystal Clear, una metodologia agil muy flexible creada por Alistair Cockburn, que tiene precisamente estos tres conceptos como principios de la metodologia
  • HABITABILIDAD
  • EFICIENCIA
  • SEGURIDAD PARA EL PROYECTO

La metodologia esta basada en ver al desarrollo de software como:

un juego economico de cooperacion, basado en objetivos, buscando un equilibrio entre la ambicion (terminar el proyecto pronto) y la inversion(actividades pensando en el futuro).

Explicando brevemente, por "un juego economico de cooperacion" se refiere a que es una actividad con reglas establecidas, que se practica en equipo y con el objetivo economico, un negocio. Se basa en realizar objetivos claros en los que cada en decision se determina un equilibrio entre terminar el software lo mas pronto posible (usar menos recursos) y las realizar las actividades que ayudaran a asegurar, mantener y posiblemente crecer en un futuro el sistema (invertir para el futuro).

En el siguiente articulo, expondre las Propiedades particulares de esta metodologia, que es la escencia del trabajo diario con ella.

1 comentario:

  1. Artículo muy informativo, que usted ha compartido aquí sobre el desarrollo de software. Estoy impresionado por los detalles que ha compartido en esta publicación y revela lo bien que entiende este tema.

    ResponderBorrar