¿Cómo Implantar una Metodología de Desarrollo?
 
Metodología de Desarrollo de Sistemas  

Entendemos como metodología un grupo de pasos ordenados con salidas definidas. Pensando en el desarrollo de aplicaciones, nos referimos a cuales serán las etapas, subetapas y pasos a realizar para desarrollar un sistema y las salidas de cada uno de estos pasos.


Se ha hablado mucho de sus beneficios, pero por mencionar rápidamente algunos de ellos tenemos:


  • La reducción de costos y tiempos de desarrollo,

  • El aumento sustancial de la calidad de las aplicaciones,

  • La mejora de nuestras relaciones con el cliente de la aplicación (y por lo tanto más oportunidades de trabajo); y

  • La mayor resistencia y flexibilidad de los sistemas a los cambios del negocio y de la tecnología.

Cabe aclarar que hay multitud de metodologías y notaciones y son mejores en la medida que nos ayudan a conseguir los beneficios antes mencionados, con el menor esfuerzo.

 
El Proceso de Desarrollo  

Es importante estar seguros que la metodología SIRVE y es PRÁCTICA, que su uso no involucrará aumentar la burocracia y que la documentación que se genere sea realmente ÚTIL, CLARA Y SIMPLE, y expresada en un lenguaje estandarizado (UML, por ejemplo, representa una excelente opción). Para lograr disipar las dudas sobre el uso útil de una metodología es imprescindible realizar un piloto que nos permita adecuar la metodología a la organización sin perder la esencia de ésta y maximizando sus beneficios. En mi opinión, no debiera uno temer contradecir a un connotado autor si el resultado es práctico y conservamos los beneficios del método. Un tip útil es que con el uso de una metodología se debería trabajar menos y mejor. Además como salida del proyecto piloto deberemos generar los estándares que se seguirán en los proyectos siguientes. (La definición de estos estándares puede estar formada por fragmentos de la documentación generada en el proyecto piloto, con comentarios sobre su mejor uso).

 
¿Cómo Implantar una Metodología de Desarrollo?
 
La Gente  

Respecto de la gente, la resistencia al cambio es el principal aspecto a cuidar. Será de suma importancia una cuidadosa labor de venta entre la gente que se vea involucrada. Se deberá programar capacitación adecuada y soporte al desarrollo durante los primeros esfuerzos de implantación. Como salida del piloto deberíamos haber formado nuestro equipo interno de “campeones en la metodología” que en las siguientes fases de la implantación, tengan labores de soporte. Una vez que la gente esté capacitada y se tenga el soporte se dependerá en gran medida del ímpetu de la dirección y de su grado de compromiso en el proyecto de implantación. Es importante mencionar que cuando el uso del método se hace voluntario al equipo de trabajo, NUNCA se logra la implantación.

 
El Producto   Alrededor del producto tenemos que, la definición de requerimientos y la participación controlada del usuario, así como la asignación de responsabilidades a éste último constituyen los puntos básicos de éxito.

Es muy importante que el usuario conozca claramente sus nuevos roles en el desarrollo y que sea capacitado en el correcto desempeño de estos. Habrán de establecerse procedimientos de formalización que le den responsabilidad en el proceso. Por ejemplo, la firma de diseños de pantallas y de procedimientos podría estar incluida.
 
Tecnología  

Sobre la tecnología, se debe cuidar que el uso del método este acorde con la filosofía de las herramientas de desarrollo a usar. Por ejemplo para hacer una especificación del comportamiento de una intefaz gráfica (con ventanitas y controles diversos) no sería de lo más eficiente usar una herramienta procedural (por ejemplo, un pseudocódigo), dado que el comportamiento de la interfaz es orientado a eventos, donde nos convendría más usar un diagrama de transición de estados.


En las actividades de diseño del sistema (entendiendo éstas, como las que tienen que ver con la adecuación de la solución propuesta a determinadas tecnologías) será fundamental antes de proponer estándares y maneras de hacer las cosas, realizar pruebas de concepto. En otras palabras, requeriremos de implementar pequeñas secciones de la aplicación (si, hasta nivel código) que prueben que el uso del método es perfectamente compatible con las herramientas usadas.


Puede ser muy favorable incluir herramientas CASE que ayuden en la labor de hacer diagramas de un modo fácil y para, posiblemente, publicar diagramas en la red interna.

 
 

 
¿Cómo Implantar una Metodología de Desarrollo?
 
Planes Graduales  

En ocasiones, se requiere que la implantación sea gradual , ya sea por el tamaño de la organización, porque la gente esté a la mitad de otros desarrollos o por limitaciones presupuestales.


En ese caso, se recomienda que la implantación se planee por cada equipo de trabajo y que se asignen prioridades a ellos en función de la finalización de sus proyectos vigentes. Adicionalmente, podemos afinar los estándares y procedimientos en la implantación en cada nuevo equipo.

Además se deberán considerar funciones de auditoría y soporte que funcionen permanentemente para que la calidad con la que se usen los métodos sea adecuada.

 
Conclusión  

Como vemos, el proceso de implantación puede parecer complejo, pero es perfectamente viable con la planeación adecuada, con una buena organización del trabajo, con adecuados puntos de control y supervisión y por sobre todo, con un verdadero compromiso de la dirección.

Además, el esfuerzo lo vale.