ATRIBUTO DE CALIDAD: DESEMPEÑO



Documentos relacionados

Sistemas Operativos. Curso 2014 Planificación

Sistemas Operativos. Curso 2015 Planificación

Introducción. A continuación te presentamos 6 aspectos que todo retailer debe conocer acerca de sus clientes.

PROCESO DE VENTA CONSULTIVA MÓDULO DE GESTIÓN DE OPORTUNIDADES DE NEGOCIO

Sistemas de Información Gerencial

Administración de proyectos. Organizar, planificar y programar los proyectos de software

Microsoft HPC. V 1.0 José M. Cámara (checam@ubu.es)

ING. YURI RODRIGUEZ ALVA

Área Académica: Licenciatura Sistemas Computacionales. Profesor: Lic. Virginia Arguelles Pascual

Proceso Unificado de Rational PROCESO UNIFICADO DE RATIONAL (RUP) El proceso de desarrollo de software tiene cuatro roles importantes:

Resolución de problemas en paralelo

REGISTRO DE PEDIDOS DE CLIENTES MÓDULO DE TOMA DE PEDIDOS E INTEGRACIÓN CON ERP

Estrategia de Cómputo en la Nube. Servicios en la Nube

Simulador Interactivo para Sistemas de Generación Distribuida Basados en Energías Renovables

Estructura de Computadores I Arquitectura de los MMOFPS

10775 Administering Microsoft SQL Server 2012 Databases

Diseño orientado al flujo de datos

Modelo de aplicaciones CUDA

Planificación de Procesos. Módulo 5. Departamento de Informática Facultad de Ingeniería Universidad Nacional de la Patagonia San Juan Bosco

ANEXO A - Plan de Proyecto EDT de la solución EDT GENERAL DEL PROYECTO1

CMMI (Capability Maturity Model Integrated)

Servidores corporativos Linux

Service Desk. InvGate IT Management Software

PROGRAMACIÓN DE SISTEMAS INFORMATICOS. Certificado de profesionalidad IFCT0609

Colección de Tesis Digitales Universidad de las Américas Puebla. Morales Salcedo, Raúl

Capítulo 5. Cliente-Servidor.

Utilidades de la base de datos

+ Cómo ahorrar dinero con Software Quality

E-learning: E-learning:

Quienes Somos? Valor. Estrategia

Procesos. Bibliografía. Threads y procesos. Definiciones

Arquitectura de Software

Taller: Planificación Estratégica. Centro de Iniciativas Comunitarias y Base de Fe

EXIN Cloud Computing Foundation

Arquitectura de sistema de alta disponibilidad

FUNDAMENTOS DE COMPUTACIÓN PARA CIENTÍFICOS. CNCA Abril 2013

Una estructura conceptual para medir la efectividad de la administración

6231 Maintaining a Microsoft SQL Server 2008 R2 Database

LINEAMIENTOS ESTÁNDARES APLICATIVOS DE VIRTUALIZACIÓN

La interoperabilidad se consigue mediante la adopción de estándares abiertos. Las organizaciones OASIS y W3C son los comités responsables de la

Seminario Electrónico de Soluciones Tecnológicas sobre Content Networking

ARC 101 Architecture Overview Diagram

Bases de Datos Especializadas

Componentes de Integración entre Plataformas Información Detallada

CL_50400 Designing, Optimizing, and Maintaining a Database Administrative Solution for Microsoft SQL Server 2008

La Digitalización del Ayuntamiento. Gestión Integral

El grupo de trabajo IEEE ha definido tres clases de WPANs que se

Introducción HPC. Curso: Modelización y simulación matemática de sistemas. Esteban E. Mocskos (emocskos@dc.uba.ar) Escuela Complutense Latinoamericana

Monitorización de sistemas y servicios

Transferencia Electrónica de Archivos (TEA) Normas Técnicas

OBJETIVOS GENERALES DE LA EMPRESA

3. GESTIÓN DE CONFIGURACIÓN DE SOFTWARE

Artículo dedicado a la Innovación y Mejores Prácticas en la Ingeniería de Negocios

Mesa de Ayuda Interna

MACROPROCESO GESTIÓN TECNOLÓGICA

Introducción. Componentes de un SI. Sistema de Información:

PLANIFICACIÓN DE PROCESOS

4. Programación Paralela

La medición funcional de software con SCRUM

MS_10974 Deploying Windows Server

GESTION OPERATIVA. Niveles de gestión

Unidad VI: Supervisión y Revisión del proyecto

Nombre de producto. Dexon Workflow Manager

Calidad Escuela de Ingeniería de Sistemas y Computación Desarrol o de Software II Agosto Diciembre 2007

Optimización de modelos multidimensionales en SSAS

Estrategia de Backup para los Sistemas SAP R/3 GOBERNACIÓN DE CUNDINAMARCA

Diseño y Evaluación de Arquitecturas de Software. Software con calidad

Instalación y configuración servidor WDS

Familia de Windows Server 2003

Symantec Desktop and Laptop Option

Resumen de la solución SAP SAP Technology SAP Afaria. Gestión de la movilidad empresarial para mayor ventaja competitiva

RODRIGO TAPIA SANTIS com) has a. non-transferable license to use this Student Guide

Asignación de Procesadores

MS_20497 Software Testing with Microsoft Visual Studio 2013

CAPÍTULO 5. Un modelo empírico de estimación para software puede utilizar fórmulas

PLAN DE MÉTRICAS EN OCHO PASOS

Microsoft SQL Server Conceptos.

Descripción. Este Software cumple los siguientes hitos:

Unidad 2: Gestión de Procesos

Q-expeditive Publicación vía Internet

UNIVERSIDAD TECNOLÓGICA DE PANAMÁ SECRETARÍA GENERAL FACULTAD DE INGENIERÍA DE SISTEMAS COMPUTACIONALES DESCRIPCIÓN DE CURSO DE LA CARRERA DE

PROCEDIMIENTO PARA CONTROL DE REGISTROS

Monitoreo de red. Inventario de hardware y software. Monitoreo actividad del usuario. Soporte a usuarios. Protección contra fuga de datos.

Gestión de Oportunidades

CONSTRUCCIÓN DEL PROCESO MESA DE AYUDA INTERNA. BizAgi Process Modeler

Ventajas, Características y Aplicaciones de los SGBD Distribuidos.

SOLUCIÓN HOSPEDADA. Introducción a los modelos de asociación de partners de Microsoft Dynamics CRM

Sistemas de Operación II

Unidad II: Administración de Procesos y del procesador

Mesa de Ayuda Interna

Novedades en Q-flow 3.02

Unidad 1. Fundamentos en Gestión de Riesgos

Infraestructura Tecnológica. Sesión 1: Infraestructura de servidores

Transcripción:

ATRIBUTO DE CALIDAD: DESEMPEÑO

Introducción Desempeño: Rapidez con que el sistema realiza su actual carga de trabajo Escalabilidad: Se enfoca en la previsibilidad del desempeño del sistema a medida que la caga de trabajo aumenta

Preocupaciones Tiempo de Respuesta Grado de reacción: La rapidez del sistema en responder a la carga de trabajo de rutina, p.e. solicitudes interactivas de usuarios Segundos Ejemplo: Bajo una carga de 350 transacciones de actualización por minuto, el 98% de las transacciones debe retornar el control al usuario dentro de los siguientes 3 segundos siguientes al envío de la solicitud vía Web

Preocupaciones (2) Tiempo de Respuesta Tiempos de entrega: Tiempo tomado para completar tareas largas Minutos u horas Ejemplo: Debe ser posible sincronizar el sistema con todas las estaciones de monitoreo de la línea de producción y resetear la base de datos para reflejar el estado actual de dicha línea en no más de 5 minutos. Ninguna transacción de actualización será procesada durante dicho período de sincronización.

Preocupaciones (3) Rendimiento Cantidad de carga de trabajo que el sistema es capaz de manejar en un periodo de tiempo Entre más corto sea el procesamiento de una transacción, más alto es el rendimiento del sistema A medida que el la carga del sistema aumenta, el tiempo de respuesta de las transacciones individuales tiende a aumentar también Debido a esto es muy posible que las metas de rendimiento sean logradas sólo a expensas de las metas de tiempo de respuesta o viceversa

Preocupaciones (4) Previsibilidad Transacciones similares deben ser completadas en cantidades muy similares de tiempo, independientemente de cuando son ejecutadas A menudo es una cualidad más deseable que el rendimiento absoluto Ejemplo: Un sistema de servicio al cliente utilizado por agentes comerciales para obtener información de clientes que efectúan solicitudes telefónicamente, necesita ofrecer un tiempo predecible por transacción de 1 a 5 segundos

Aplicabilidad a Puntos de Vista Funcional El análisis de desempeño puede revelar la necesidad de cambios y compromisos para lograr una estructura funcional adecuada Los modelos de esta vista pueden proporcionar entradas para la construcción de modelos de desempeño

Aplicabilidad a Puntos de Vista (2) Información El análisis de desempeño puede identificar aspectos de la vista de información como obstáculos para el cumplimiento de requisitos de desempeño Este punto de vista permite: Identificar recursos compartidos y los requerimientos de transaccionalidad para cada uno de ellos Sugerir elementos de esta vista que pueden ser replicados o distribuidos

Aplicabilidad a Puntos de Vista (3) Concurrencia El análisis de desempeño puede: Identificar problemas como el uso excesivo de un recurso clave en un momento determinado Resultar en que la concurrencia se convierta en el elemento de diseño más importante Los elementos de esta vista (i.e. Mecanismos de comunicación entre componentes - Conectores) pueden proporcionar métricas de calibración para los modelos de desempeño

Aplicabilidad a Puntos de Vista (4) Despliegue El análisis de desempeño normalmente sugiere cambios y refinamientos en el ambiente de despliegue del sistema A su vez, muchas partes de los modelos de desempeño son derivados de los contenidos de esta vista, ya que proporcionan un número de métricas críticas de calibración

Actividades Tomado de [1]

Actividades (2) 1. Capturar los requerimientos de desempeño Especificar requisitos de tiempo de respuesta Especificar requisitos de rendimiento Especificar requisitos de escalabilidad 2. Crear modelos de desempeño Identificar la estructura crítica de desempeño Identificar las métricas claves de desempeño Estimar las métricas de desempeño

Actividades (3) 3. Analizar los modelos de desempeño Caracterizar la carga de trabajo: Priorizar y estimar el volumen de cada tipo de requisitos que el sistema debe manejar Estimar el desempeño 4. Ejecutar pruebas prácticas Medir las métricas de desempeño 5. Evaluar contra los requerimientos 6. Rehacer la arquitectura

Pensando acerca de Desempeño La meta de las tácticas de desempeño es generar una respuesta a un evento que llega al sistema dentro de alguna restricción de tiempo Dos aspectos básicos a tener en cuenta son: Consumo de recursos Tiempo de bloqueo de recursos Luego de que un evento llega, el sistema está procesando dicho evento o el procesamiento está bloqueado por alguna razón

Pensando acerca de Desempeño (2) Consumo de Recursos Unidad Central de Procesamiento (CPU) Unidades de almacenamiento de datos Ancho de banda Memoria Tiempo de Bloqueo Un cálculo puede ser bloqueado porque: El recurso está en uso El recurso no está disponible El cálculo depende del resultado de otros cálculos que no están disponibles aún

Ejemplo de Modelo de Desempeño Parameters: Arrival rate Scheduling algorithm Service time Topology Network bandwidth Routing algorithm Latencia (tiempo para ejecutar un evento) Puede sólo ser afectada por el cambio en uno de los parámetros

Administrando Desempeño Las decisiones de arquitectura deben controlar los parámetros de un modelo de desempeño: Arrival rate Restringir acceso a recursos Service time Incrementar la eficiencia computacional (algoritmos) Reducir la sobrecarga (reducir comunicación entre procesos, usar pools de threads, utilizar pool de conexiones a bases de datos, etc.) Utilizar procesadores rápidos Scheduling algorithm First-Come First Served (FCFS), priridades dinámicas, etc. Topology Adicionar/eliminar procesadores Network bandwidth Redes rápidas Routing algorithm Balanceo de carga

Architectural Tactics Performance tactic categories and their goals: Control Resource demand: Reduce or manage the demand for resources Manage Resources: Manage resources even though the demand for resources is not controllable Arbitrate Resources: Control contention for resources through scheduling

Architectural Tactics (2) Resource demand: Increase computational efficiency: Improving algorithms used in critical areas will have the effect of decreasing latency Reduce computational overhead: reducing the need for and use of resources, thereby reducing processing Manage event rate: Reducing the arrival rate of variables to which the system monitors or responds Control frequency of sampling: Queuing the arrival of events and sample at a lower frequency

Architectural Tactics (3) Resource management: Introduce concurrency: Processing requests in parallel thereby reducing blocked time Maintain multiple copies: Reducing the contention that would occur if all data were accessed at a single location or computations were performed on a single resource Increase available resources: using more and/or faster processors, more and/or faster memory, more and/or faster networks, and so forth

Architectural Tactics (4) Resource arbitration: Scheduling policy: Analyzing the usage characteristics of each resource and choose compatible scheduling strategies First in first out: Treats all requests as equals Fixed priorities: Assigns resources in fixed order of priority Dynamic priorities: Re-orders priorities (round robin) or schedule those resources with the earliest deadlines Static scheduling: Preemption and the sequence of priority assignments are determine offline (compile time)

Architectural Tactics (5)

Algunos problemas Metas imprecisas de desempeño Construcción de modelos poco realistas Partición de procesamiento inapropiado Supuestos inválidos con respecto al ambiente y la plataforma Poca importancia a la ubicación física de los recursos Contención relacionada con la concurrencia

Material preparado por Rafael Meneses

Referencias 1. Rozanski Nick, Woods Eoin. Presentation on Software Architecture with Viewpoints and Perspectives. BCS SPA Specialist Group, 6th July 2005 2. Len Bass et Al. Software Architecture in Practice. Second Edition, Addison Wesley, 2007 3. Len Bass, Paul Clements, Rick Kazman. Aspectos Avanzados en Arquitectura de Software. Universidad de los Andes, Curso de Verano 2010, Bogotá, Colombia