El rendimiento es un importante atributo de calidad de un sistema de software. La Ingeniería de rendimiento del software comprende las actividades de análisis, diseño, construcción, medición y validación, que atienden los requerimientos de rendimiento a lo largo del proceso de desarrollo de software. En los sistemas de software que utilizan comunicación basada en mensajes, el rendimiento depende en gran medida del middleware orientado a mensajes (Message-Oriented Middleware –MOM). Los arquitectos de software necesitan considerar su organización, configuración y uso para predecir el comportamiento de un sistema que use tal plataforma. La inclusión de un MOM en una arquitectura de software requiere conocer el impacto de la mensajería y de la infraestructura utilizada. Omitir la influencia del MOM llevaría a la generación de predicciones erróneas. En este artículo se explora tal influencia, mediante el modelado y la simulación basados en componentes, utilizando el enfoque Palladio Component Model –PCM. En particular, una aplicación modelada en PCM fue adaptada para incluir comunicación basada en mensajes. Las simulaciones sobre el modelo, mediciones sistemáticas y pruebas de carga sobre la aplicación permitieron determinar cómo cambios introducidos en el modelo influyen en las predicciones del comportamiento de la aplicación en cuanto a rendimiento y confiabilidad. Fue posible identificar un cuello de botella que impacta negativamente el rendimiento y la confiabilidad del sistema original. La introducción de MOM mejoró la confiabilidad del sistema, a expensas del rendimiento. La simulación del rendimiento basado en componentes reveló diferencias significativas respecto de los experimentos basados en pruebas de carga y mediciones.
I. INTRODUCCIÓN
Los métodos de predicción de rendimiento basados en modelos permiten a los arquitectos de software evaluar el desempeño de los sistemas de software durante las primeras etapas de desarrollo [1]. Tales modelos se centran en los aspectos relevantes de la arquitectura y de la lógica del negocio, dejando de lado detalles de la infraestructura subyacente. Sin embargo, estos detalles son esenciales para generar predicciones de rendimiento precisas.
La capacidad de predecir las propiedades de un artefacto con base en su diseño, sin necesidad de construirlo, es una de las características centrales de una disciplina de ingeniería [2]. En contraste con esa visión, la ingeniería del software apenas califica como una disciplina de ingeniería [3-4]: los ingenieros de software suelen carecer del entendimiento sobre el impacto de sus decisiones de diseño en los atributos de calidad, como rendimiento o confiabilidad. Como resultado, se intenta determinar la calidad del software mediante onerosos ciclos de prueba y error.
Esta es una versión de prueba de citación de documentos de la Biblioteca Virtual Pro. Puede contener errores. Lo invitamos a consultar los manuales de citación de las respectivas fuentes.
Artículo:
EELA: una infraestructura para e-ciencia en Latinoamérica
Artículo:
Diagnóstico de COVID-19 con Deep Learning
Artículo:
Sintetizador de frecuencias interpolado basado en agregadores volantes
Artículo:
Esquema de QoS entre capas basado en la diferenciación de prioridades en redes inalámbricas multisalto
Artículo:
Pruebas basadas en modelos aplicadas a componentes de software de simuladores de satélite
Folleto:
Análisis de rentabilidad económica y financiera
Artículo:
Control y vigilancia de la calidad del agua de consumo humano
Artículo:
Estudio sobre la migración global de materiales plásticos de empaque usados en la industria de alimentos
Artículo:
¿Por qué debemos conservar la fauna silvestre?