Hace unos días, alguien me hizo unas preguntas sobre el proceso de desarrollo de un software. En este contexto, hubo una pregunta que me llamó la atención, fue esta: ¿hay algún cambio después o durante la fase de desarrollo? (Creo que la pregunta se refiere sobre un cambio en las fases de análisis y/o diseño cuando estamos en la etapa de desarrollo, entonces, la pregunta sería más precisa de la siguiente manera: ¿durante la etapa de desarrollo, puede haber algún cambio o modificación en los productos generados en las etapas de análisis y/o diseño?)
En mi humilde opinión, DESPUéS de la fase de desarrollo no debería existir ningún cambio, dado que lo siguiente a realizar es la fase de despliegue (deployment), y esta fase nos conduce a un ambiente de producción, donde el cliente puede probar y trabajar con el producto. Pero, ¿qué hay sobre algún cambio DURANTE la fase de desarrollo? He aquí mi opinión:
El desarrollo de un producto de software NO DEBE verse por etapas excluyentes, por ello la relevancia e importancia de las metodologías iterativas. Es decir, en la etapa o fase de desarrollo puede existir la necesidad de iterar hacia la etapa de análisis y/o diseño a fin de atender nuevas problemáticas durante el desarrollo del sistema.
En lo personal, no creo en un análisis y diseño perfecto, y esto es una crítica respecto a la ingeniería de software en comparación con otras ingenierías. Es decir, es muy probable que en casi todos los proyectos de software surjan cambios a medida que se avanza. No obstante, no todo está perdido. Si se sincronizan diagramas con código se puede obtener una conversión fiel de los diagramas a código, y si es necesario realizar algunas modificaciones a nivel lógico (programación) la sincronización realizada nos conducirá a la representación fiel del código a diagramas. En resumen, me refiero al Desarrollo Conducido por Modelos y la Ingeniería Inversa. Espero poder platicarle un poco más sobre estos temas en los próximos posts.
No hay comentarios.:
Publicar un comentario