exposicion evaluacion e_arquitecturas_de_softw

18
CURSO DE TOPICOS AVANZADOS DE INGENIERIA DE SOFTWARE Evaluacion de Arquitecturas de Software David Lorett Velasquez Universidad de Cartagena - 2010

Upload: david-lorett

Post on 13-Jun-2015

1.110 views

Category:

Documents


0 download

DESCRIPTION

Exposicion de Evaluacion de Arquitecturas de Software

TRANSCRIPT

Page 1: 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

Page 2: Exposicion evaluacion e_arquitecturas_de_softw

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

Page 3: Exposicion evaluacion e_arquitecturas_de_softw

¿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

 

Page 4: Exposicion evaluacion e_arquitecturas_de_softw

¿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.

Page 5: Exposicion evaluacion e_arquitecturas_de_softw

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

Page 6: Exposicion evaluacion e_arquitecturas_de_softw

Técnicas de Evaluación

Page 7: Exposicion evaluacion e_arquitecturas_de_softw

Fases de Evaluacion

Page 8: Exposicion evaluacion e_arquitecturas_de_softw

¿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

Page 9: Exposicion evaluacion e_arquitecturas_de_softw

Atributos de calidad observables vía ejecución 

Atributo de Calidad

Page 10: Exposicion evaluacion e_arquitecturas_de_softw

Atributos de calidad no observables vía ejecucion

 

Page 11: Exposicion evaluacion e_arquitecturas_de_softw

¿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.

Page 12: Exposicion evaluacion e_arquitecturas_de_softw

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.

Page 13: Exposicion evaluacion e_arquitecturas_de_softw

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.

Page 14: Exposicion evaluacion e_arquitecturas_de_softw

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. 

Page 15: Exposicion evaluacion e_arquitecturas_de_softw

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.

Page 16: Exposicion evaluacion e_arquitecturas_de_softw

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).

Page 17: Exposicion evaluacion e_arquitecturas_de_softw

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

Page 18: Exposicion evaluacion e_arquitecturas_de_softw

GRACIAS