Exposicion evaluacion e_arquitecturas_de_softw

Post on 13-Jun-2015

1.114 views 0 download

description

Exposicion de Evaluacion de Arquitecturas de Software

Transcript of Exposicion evaluacion e_arquitecturas_de_softw

CURSO DE TOPICOS AVANZADOS DE INGENIERIA DE SOFTWARE

Evaluacion de Arquitecturas de Software

David Lorett VelasquezUniversidad de Cartagena - 2010

Escenario

Un escenario es una secuencia especifica de pasos que involucra el uso o la modificación del sistema.

Estimulo   - Ambiente - Respuesta

Escenario de Caso de UsoUn usuario remoto de web requiere un reporte de bases de datos en hora pico y lo recibe a los 10 segundos

Escenario exploratorioLa mitad de los servidores se bajara durante operacion normal sin afectar la disponibilidad del sistema

¿Por que Evaluar Arquitecturas?• Por razones económicas.1• Fuerza la preparación de material para la revisión• Captura las motivaciones detrás de la arquitectura• Detección temprana de problemas• Validación de requerimientos• Para tomar mejores decisiones

1. http://www.gestiopolis.com/administracion-estrategia/procedimiento-para-la-evolucion-de-las-arquitecturas-de-software.htm

 

¿Como saber si mi arquitectura es la correcta?Las decisiones arquitectonicas influyen directamente en la calidad del Software, entonces es posible evaluar dichas decisiones con respecto a su impacto sobre dichos atributos.

Cuanto mas temprano se encuentre un problema en un proyecto de Software, mucho mejor; Revisar la arquitectura es la manera mas economica de evitar desastres.

P recondiciones y Dificultades

1. Alcance definido y controlado

2. Relacion de Beneficio-Costo3. Equipo de evaluacion para

componentes

1. Multiples StakeHolders2. Diferentes Valoraciones de

la utilidad del sistema

Técnicas de Evaluación

Fases de Evaluacion

¿Por qué cualidades puede ser evaluada una Arquitectura?

•  Observables vía ejecución: aquellos atributos que se determinan del comportamiento del sistema en tiempo de ejecución. 

•  No observables vía ejecución: aquellos atributos que se establecen durante el desarrollo del sistema

Atributos de calidad observables vía ejecución 

Atributo de Calidad

Atributos de calidad no observables vía ejecucion

 

¿Qué resultados produce la evaluación de una Arquitectura?

• ¿Se ha diseñado la arquitectura más apropiada para el sistema?

• ¿Cuál de las arquitecturas propuestas es la más apropiada para el sistema a construir?

• Lista priorizada de los atributos de calidad requeridos para la arquitectura que está siendo evaluada.

• Riesgos y no riesgos.

Presentacion de Resultados

 P resentación de los resultados.Para finalizar la aplicación del método se presenta un

resumen de la aplicación del método, de forma oral y/o escrita. Se deben incluir entonces, los siguientes documentos a partir de los cuales se inició la evaluación:

a) Contexto del negocio.b) Requerimientos de Calidad.c) Restricciones.d) Arquitectura producida.e) Análisis de elementos de diseño identificados.f) Conjunto de escenarios negociados.g) Conjunto de preguntas para evaluación de atributos.h) Árbol de Utilidad.i) No-riesgos documentado.j) Puntos sensibles y de negociación.

Arbol de Propiedades

Característica Sub-característica Escenario Fiabilidad Madurez Los componentes del

sistema manejan entradas de datos de datos incorrectas.

Tolerancia a fallas Todas las operaciones ejecutadas por los componentes se realizan correctamente bajo condiciones adversas.

Capacidad de restablecimiento o recuperación

Los componentes del sistema no fallan bajo ciertas condiciones especificadas.Ante problemas con el ambiente un subconjunto determinado de los componentes puede continuar prestando sus servicios.

Metodologias mas utilizadas

ATAM: Encuentra puntos sensitivos y Trade-offs entre atributos de calidad

ALMA: Predice la facilidad de modificaciónARID: El método ARID evalúa mejor la

factibilidad de la arquitectura.SNA: Este método ayuda a identificar la

capacidad que tiene un sistema para completar su misión a tiempo, ante la presencia de ataques, fallas o accidentes. 

Comparativa  ATAM SAAM ARIDAtributos de Calidad Contemplados

Modificabilidad Modificabilidad Conveniencia del diseño evaluadoSeguridad Funcionabilidad

ConfiabilidadDesempeño

Objetos Analizados Estilos Arquitectónicos, Documentación, Flujo de Datos y Vistas Arquitectónicas

Documentación, y Vistas Arquitectónicas

Especificación de los componentes

Etapas del Proyecto en las que se Aplica

Luego que el diseño de la arquitectura ha sido establecido

Luego que la arquitectura cuenta con funcionalidad ubicada en módulos

A lo largo del diseño de la arquitectura

Enfoques Utilizados Árbol de Utilidad y lluvia de ideas para articular los requerimientos de calidad.

Lluvia de ideas para escenarios y articular los requerimientos de calidad.

Revisiones de diseño, lluvia de ideas para obtener escenarios.

Análisis arquitectónico que detecta puntos sensibles, puntos de balance y riesgos.

Análisis de los escenarios para verificar funcionalidad o estimar el costo de los cambios.

CONCLUSIONES

Es bueno destacar que un método de evaluación no es mejor que otro, sino que evalúa mejor, en ciertas condiciones, un atributo de calidad dado por lo que en dependencia de las condiciones y lo que se desea evaluar, será el método de evaluación empleado (que no tiene que ser solo uno).

Bibliografia

http://www.gestiopolis.com/administracion-estrategia/procedimiento-para-la-evolucion-de-las-arquitecturas-de-software.htm

www.fing.edu.uy/.../Evaluacion%20de%20Arquitecturas%20.../Evaluacion%20de%20Arquitecturas.pp

www.lisi.usb.ve/publicaciones/03%20evaluacion/evaluacion_09.pdf

GRACIAS