Los métodos en la etapa de la programación

El desarrollo de un software requiere – además de ser codificado en un lenguaje específico- la manipulación de bases de datos, el diseño de procedimientos y la creación de diversos documentos sobre su operación, así como realizarse bajo un sistema que permita la transformación y el flujo de información en cada una de las etapas, de manera eficiente y a costos razonables.   
Es por ello que la planeación incide directamente sobre la vida del proyecto y en la calidad del producto. Programar un software de calidad requiere especialización y disciplina. Para facilitar esta labor, se recurre al uso de métodos que en palabras de Vasconcelos (2000)

¨…deberían cumplir tres funciones: 

1º Ayudar en la detección y corrección de errores,

2º Asegurar la corrección, tanto de algoritmos como de programas,

3º Ayudar a desarrollar programas fáciles de comprender y modificar.¨

La metodología o método, define las herramientas y técnicas a utilizar en cada una de las etapas del sistema (definición de requerimientos, análisis, diseño, implementación y pruebas, y en algunos modelos: funcionamiento y mantenimiento). Determina los pasos a seguir y la forma en que se realizarán para el éxito del proyecto.  

A continuación veremos el impacto de algunos de estos métodos, en particular dentro la etapa de la programación, que proponen los denominados métodos ágiles y tradicionales. 

1. Metodología Tradicional

Khurana, H. & Sohal, J.S. Agile citado por Navarro(2013) resume las características de estos métodos: se concibe un solo proyecto, de grandes dimensiones y estructura definida; se sigue un proceso secuencial en una sola dirección y sin marcha atrás; el proceso es rígido, los requerimientos son acordados de una vez y para todo el proyecto, demandando grandes plazos de planeación previa y poca comunicación con el cliente una vez ha terminado ésta. Si bien, está definición las pinta negativamente, entiende como ventajas la reducción de riesgos, siendo una buena alternativa para grandes proyectos. El código se elabora conforme al plan.

2. Métodos Ágiles

En cambio, los métodos ágiles basan su fundamento en la adaptabilidad a los cambios. INTECO(2009) detalla entre otros:

• Extreme Programing(XP)

Parten de la idea de que el único producto realmente importante del proceso de desarrollo de sistemas es el código. Se realizan pequeñas entregas, aunque no cuenten con toda la funcionalidad, reestructuración constante del código. Cualquier programador, hará cambios en el código en cualquier momento.

• SCRUM

Los entregables de software intermedios funcionan, permite que el cliente lo pruebe y solicite cambios al Modelo original.

• Test Driven Development (TDD)

Las pruebas se escriben previamente, antes del código, para que éste las satisfaga. Las pruebas definirán los requisitos del código, se ejecutan las pruebas y si todas son superadas finalmente se refactoriza el código para mejorar su diseño.

• Pair Programming

Es una técnica en la que dos programadores trabajan juntos en el mismo ordenador. Uno teclea el código (Driver) mientras que el segundo (navigator) revisa cada línea del código a medida que el primero la escribe cambiando de rol cada determinado periodo.

Cada metodología debe ser analizada a priori, en función del proyecto, el personal disponible, las necesidades del cliente y disponibilidad de participación en el proyecto.

Fuentes:

• Gacitúa Bustos, R. (2003) Métodos de desarrollo de software: El desafío pendiente de la estandarización Theoria Ciencia, Arte y Humanidades, Volumen 12, 23 – 42. Recuperado de http://www.redalyc.org/pdf/299/29901203.pdf

• Laboratorio Nacional de Calidad del Software, Instituto Nacional de Tecnologías de la Comunicación. INTECO Ingeniería del software metodologías y ciclos de vida. Marzo 2009, 183, Recuperado de https://www.incibe.es/file/N85W1ZWFHifRgUc_oY8_Xg

• Navarro Cadavid, A., Fernández Martínez, J., Morales Vélez, J.,(2013) Revisión de metodologías ágiles para el desarrollo de software. Revista Prospecto Vol. 11, 30 – 39 Recuperado de https://dialnet.unirioja.es/descarga/articulo/4752083.pdf

• Vasconcelos Santillán, J.(2000). Manual de Construcción de Programas. México, 2000 Recuperado de http://www.cyta.com.ar/biblioteca/bddoc/bdlibros/construccion_programas/programar.pdf

Anuncios

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión /  Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión /  Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión /  Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión /  Cambiar )

w

Conectando a %s