Generando productos software mantenibles desde el proceso de desarrollo: El modelo de referencia MANTuS
Creating maintainable software products from the development process: The reference model MANTuS
El mantenimiento de software es una actividad muy importante y crítica para las empresas que conforman la industria del software. Se puede considerar que el problema de costos durante la etapa de mantenimiento reside en que no se tienen en cuenta aspectos de mantenibilidad durante el desarrollo del producto software. Es por esto que este artículo propone el modelo de referencia MANTuS el cual ofrece buenas prácticas para el proceso de desarrollo de software, las que pretenden que los artefactos software generados, durante las diferentes etapas del ciclo de vida de desarrollo, incluyan las subcaracterísticas de mantenibilidad establecidas por la norma ISO/IEC 25010. Este modelo de referencia contiene una serie de prácticas base, definidas para los procesos de análisis de requisitos de software, diseño arquitectural de software, diseño detallado de software, construcción de software, pruebas de evaluación de software y gestión de la documentación del software. Incluir las prácticas en el proceso de desarrollo podría ayudar a potenciar cada una de las subcaracterísticas de mantenibilidad del producto software descritas en ISO/IEC 25010. El modelo de referencia MANTuS ha sido evaluado por medio de un estudio de caso donde se evidenció que llevar a cabo las prácticas propuestas por el modelo de referencia para el proceso de construcción de software permitió potenciar la mantenibilidad del producto obtenido.
INTRODUCCIÓN
La mantenibilidad es una de las características de calidad esenciales del producto, debido a que las tareas de mantenimiento consumen una gran proporción del esfuerzo total gastado en el ciclo de vida del software [1]. El costo de esta etapa consume entre el 50% y el 80% de los recursos del proyecto [2] y el 66% de los costos del ciclo de vida del software son invertidos en el mantenimiento del producto [3]. Además, el 61% del tiempo que dedican los programadores al desarrollo es invertido en la etapa de mantenimiento, y solo el 39% es empleado en nuevos desarrollos [4]. Lo anterior refleja que la etapa de mantenimiento: (1) requiere el mayor porcentaje de los costos del ciclo de vida del software, (2) incrementa el esfuerzo realizado, (3) impide que una gran parte del tiempo sea utilizado para nuevos desarrollos.
Para facilitar la ejecución de la etapa de mantenimiento es conveniente tener en cuenta la característica de mantenibilidad del producto software. La norma ISO/IEC 25010 [5] define la mantenibilidad como el grado de efectividad o eficiencia con la que un producto o sistema puede ser modificado y la divide en cinco subcaracterísticas: modularidad (modularity), reusabilidad (reusability), capacidad para ser analizado (analysability), capacidad para ser modificado (modifiability) y capacidad para ser probado (testability).
Recursos
-
Formatopdf
-
Idioma:español
-
Tamaño:274 kb