Tesis "Diseño de un Patrón Arquitectónico de Software Mejorado, Aplicable a Proyectos de Desarrollo Ágil"
Alumno: Sergio Iván Ponce Ruiz
Asesor: Dr. Eduardo Rodríguez Tello
Sinodales: Dr. Víctor Sosa Sosa, Dr. Iván López Arévalo
Actualmente en la industria del software existe aún cierta controversia entre las metodologías de desarrollo de software tradicionales y ágiles en cuanto al proceso de diseño. Por una parte los seguidores de las metodologías tradicionales defienden un enfoque de diseño predictivo basado en largas sesiones de planeación. Por otro lado los seguidores de las metodologías ágiles prefieren un enfoque de diseño incremental, argumentando que es imposible predecir con precisión los cambios que puedan llegar a surgir a lo largo del proceso de desarrollo. Respecto a este enfoque, los tradicionalistas resaltan entre otros riesgos, la carencia de un patrón arquitectónico homogéneo para la construcción del software. Esto deriva en costosas y repetitivas sesiones de reestructuración de la arquitectura del software en etapas avanzadas del proyecto.
El presente trabajo de investigación tiene como objetivo proponer un patrón arquitectónico que permita reducir el tiempo en el diseño de una arquitectura, pero que a la vez esté preparado para abordar escenarios de modificabilidad e integrabilidad.
Después de analizar diversos patrones arquitectónicos, se optó por tomar el patrón Datos, Contexto e Interacciones (DCI) como base y marco comparativo para este trabajo. Sobre este patrón se identificaron algunas áreas de oportunidad enmendadas mediante la aplicación de una serie de tácticas y patrones de diseño, resultando en un nuevo patrón arquitectónico denominado Datos, Contexto e Interacciones-Mejorado (EDCI), el cual se propone en esta tesis.
El diseño del patrón EDCI se realizó siguiendo el método de Diseño Dirigido por Atributos (ADD) debido a su enfoque hacia la satisfacción de los atributos de calidad requeridos por un sistema. El método ADD recibe como principales entradas, los requerimientos de un sistema, por lo cual se eligió como caso de estudio un proyecto de planificación de recursos actualmente en proceso de desarrollo para el Centro de Investigación y Estudios Avanzados del Instituto Politécnico Nacional (CINVESTAV) Unidad Tamaulipas.
Con la finalidad de validar las mejoras proporcionadas por EDCI, éste al igual que DCI fueron sometidos a un método de evaluación de arquitecturas de software conocido como Método de Comparación y Análisis de Arquitecturas de Software (SACAM). Este método se especializa en facilitar la elección de un patrón o arquitectura de software con base en la comparación de diversos candidatos.