Metodologías de programación

Atención, abrir en una nueva ventana. PDFImprimirE-mail

Hay conceptos que aparentemente todo el mundo conoce pero, que en la práctica, no siempre están bien aprendidos o explicados. Como indica en una interesante página Web, Metodologías de desarrollo del software, "El concepto de metodología, dentro de la Ingeniería del Software es, sin duda, uno de los más oscuros y que más confusión produce tanto en estudiantes como en profesionales involucrados en procesos de desarrollo de software".

Como bien indica esta referencia, muchas veces, las metodologías que se han aprendido han quedado actualmente desfasadas, mientras que se ignoran otras más recientes. Y no se trata de que haya una metodología que resulte claramente superior. Sino simplemente que las más modernas se acomodan a los problemas y necesidades actuales y usan recursos más avanzados.  

El artículo aborda una de las tareas más complicadas sobre el tema: la propia definición. Algo que no resulta sencillo, y que el artículo explica de manera clara, al menos de forma indirecta, precediendo la misma con las aclaraciones necesarias para enfocar el tema. Como se indica muy a menudo, se dice que los distintos componentes de software deben pasar por distintas fases o etapas durante el ciclo de vida y cada una de esas tareas puede ser abordada y resuelta de múltiples maneras... con distintas herramientas y utilizando distintas técnicas. Los detalles organizativos, es decir el estilo de hacer las cosas, pero agrupados bajo un enfoque de rigor y con normas claras es, básicamente, una metodología.

Una importante frase del artículo: todos los integrantes de un equipo de desarrollo deben seguir un criterio común a la hora de realizar las tareas del ciclo de vida (del software). Ese criterio, esa manera común, es una metodología de desarrollo de la empresa.

En el artículo también se mencionan las metodologías más clásicas (JSD, SSADM, Ingeniería de la información, así como la nacional METRICA), junto con las más recientes: RAD, Scrum, Extreme programming, Rational Unified Process y Agile Unified Process. Y para terminar, también se describe lo que NO son metodologías. Y es que a veces, cuando los conceptos no están claros no resulta difícil confundirlos.

Más información por favor visite Metodologías de desarrollo del software.