Software Perfomance Assessment at Architectural Level: A Methodology and its Application

María Elena Gómez Martínez, José Javier Merseguer Hernáiz · Dialnet (Universidad de la Rioja) · 2014

Las arquitecturas software son una valiosa herramienta para la evaluacion de las propiedades cualitativas y cuantitativas de los sistemas en sus primeras fases de desarrollo. Conseguir el diseno adecuado es critico para asegurar la bondad de dichas propiedades. Tomar decisiones tempranas equivocadas puede implicar considerables y costosos cambios en un futuro. Dichas decisiones afectarian a muchas propiedades del sistema, tales como su rendimiento, seguridad, fiabilidad o facilidad de mantenimiento. Desde el punto de vista del rendimiento software, la ingenieria del rendimiento del software (SPE) es una disciplina de investigacion madura y comunmente aceptada que propone una evaluacion basada en modelos en las primeras fases del ciclo de vida de desarrollo software. Un problema en este campo de investigacion es que las metodologias hasta ahora propuestas no ofrecen una interpretacion de los resultados obtenidos durante el analisis del rendimiento, ni utilizan dichos resultados para proponer alternativas para la mejora de la propia arquitectura software. Hasta la fecha, esta interpretacion y mejora requiere de la experiencia y pericia de los ingenieros software, en especial de expertos en ingenieria de prestaciones. Ademas, a pesar del gran numero de propuestas para evaluar el rendimiento de sistemas software, muy pocos de estos estudios teoricos son posteriormente aplicados a sistemas software reales. El objetivo de esta tesis es presentar una metodologia para el asesoramiento de decisiones arquitecturales para la mejora, desde el punto de vista de las prestaciones, de las sistemas software. La metodologia hace uso del Lenguaje Unificado de Modelado (UML) para representar las arquitecturas software y de metodos formales, concretamente redes de Petri, como modelo de prestaciones. El asesoramiento, basado en patrones y antipatrones, intenta detectar los principales problemas que afectan a las prestaciones del sistema y propone posibles mejoras para mejoras dichas prestaciones. Como primer paso, estudiamos y analizamos los resultados del rendimiento de diferentes estilos arquitectonicos. A continuacion, sistematizamos los conocimientos previamente obtenidos para proponer una metodologia y comprobamos su aplicabilidad asesorando un caso de estudio real, una arquitectura de interoperabilidad para adaptar interfaces a personas con discapacidad conforme a sus capacidades y preferencias. Finalmente, se presenta una herramienta para la evaluacion del rendimiento como un producto derivado del propio ciclo de vida software.

Read the paper · More papers on PaperTik