INVESTIGADORES
DIAZ PACE Jorge Andres
congresos y reuniones científicas
Título:
Facilitando el diseño de software mediante una mejor separación de concerns desde etapas tempranas
Autor/es:
ALEJANDRO RAGO; CLAUDIA MARCOS; JORGE ANDRES DIAZ PACE
Lugar:
Buenos Aires
Reunión:
Congreso; Simposio Argentino de Ingenieria de Software - ASSE 2010 (39 JAIIO); 2010
Institución organizadora:
SADIO
Resumen:
Mediante el uso de aspectos es posible encapsular crosscutting concerns (CCC) que atraviesan ortogonalmente los componentes de un sistema. Incorporarlos desde etapas tempranas del desarrollo de software conlleva importantes ventajas, tales como: mejorar la trazabilidad, facilitar las estimaciones de impacto de cambio, reducir los costos de la evolución del software, y particularmente, identificar mejor los atributos de calidad del software (QA) que posteriormente dirigirán el diseño. Los requerimientos de software son, generalmente, capturados en especificaciones textuales, como por ejemplo los casos de uso (UC). Estos siguen una descomposición guiada por la funcionalidad, en la cual los CCC quedan diseminados a través de varios requerimientos, por ejemplo, concerns específicos del dominio del sistema o relacionados con QA (por ej., performance, seguridad, etc.). Estos CCC son early aspects (EA) potenciales que se encuentran ocultos en las especificaciones de los UC. Su detección y modelamiento facilitan significativamente las tareas de analizar y planear tradeoffs de diseño anticipadamente. En la práctica, gran parte de los EA se corresponden con QA relevantes para el sistema. Sin embargo, esta relación no ha recibido la suficiente atención en la comunidad de AOSD. Nuestra propuesta plantea analizar trabajos existentes para identificar aspectos y reconocer atributos de calidad en documentos, desarrollar técnicas que permitan identificar de forma semiautomática EA relacionados con QA desde las especificaciones, e implementar una herramienta que asista a los analistas a especificar los QA y perfeccionar los modelos de requerimientos. Actualmente, estamos investigando técnicas tales como: análisis de lenguaje natural, reconocimiento de patrones sintácticos, algoritmos de aprendizaje supervisado, algoritmos de desambigüación semántica, clustering semántico, uso de ontologías de atributos de calidad, e integración con el framework de requerimientos no funcionales (NFR framework), entre otras. Adicionalmente, hemos considerado adoptar el framework UIMA para los construir los prototipos de evaluación.