Uso de ontologías y tecnologías de la web semántica para la integración, recuperación e intercambio de conocimiento de arquitecturas de software
DOI:
https://doi.org/10.33414/ajea.5.747.2020Palabras clave:
arquitectura de software, conocimiento arquitectónico, ontología, aprendizaje automáticoResumen
A medida que los sistemas de software evolucionan, sus arquitecturas de software se vuelven más complejas, y crece la cantidad de datos generados durante los procesos de desarrollo, los cuales contienen alguna forma de conocimiento arquitectónico. Si bien muchas organizaciones han adoptado algunas estrategias y herramientas para brindar soporte a los productores de estos datos, existen aún dificultades para la extracción y/o formalización del conocimiento intrínsicamente embebido en esta información, así como su uso y distribución en proyectos de software posteriores. La importancia del estudio, captura y representación del conocimiento sobre arquitecturas de software (CAS) y su gestión ha dado lugar a numerosos trabajos de investigación, algunos de ellos haciendo uso de ontologías aplicadas como herramienta de soporte al conocimiento. Con el surgimiento del concepto de decisión arquitectónica, aparecieron las primeras ideas en el empleo de ontologías aplicadas al diseño de arquitecturas de software, por ejemplo, para describir decisiones arquitectónicas y relaciones entre ellas, para registrar decisiones arquitectónicas, artefactos de software, hojas de ruta e intereses arquitectónicos. El objetivo general de la investigación abordada es la definición de metodologías, herramientas y mecanismos para explotar el conocimiento de arquitecturas de software que se encuentra codificado en fuentes diversas y heterogéneas, haciendo uso de ontologías, tecnologías de la web semántica y algoritmos de aprendizaje automático; para facilitar el acceso, integración, recuperación, y aplicación en nuevos proyectos de diseño, así como también para inferir nuevo conocimiento a partir del existente.