Professional Documents
Culture Documents
Atributos de Calidad
2006
Agenda
#
Tema
Duracin
Introduccin
10 min
15 min
Atributos de Calidad
3.1
Performance
15 min
3.2
Disponibilidad
15 min
3.3
Modifiability
15 min
3.4
Seguridad
10 min
3.5
Testability
10 min
3.6
Usabilidad
10 min
Comentarios Finales
5 min.
Arquitectura de Proyectos de IT
Agenda
#
Tema
Introduccin
Atributos de Calidad
3.1
Performance
3.2
Disponibilidad
3.3
Modifiability
3.4
Seguridad
3.5
Testability
3.6
Usabilidad
Comentarios Finales
Arquitectura de Proyectos de IT
Arquitectura de Proyectos de IT
Agenda
#
Tema
Introduccin
Atributos de Calidad
3.1
Performance
3.2
Disponibilidad
3.3
Modifiability
3.4
Seguridad
3.5
Testability
3.6
Usabilidad
Comentarios Finales
Arquitectura de Proyectos de IT
Arquitectura de Proyectos de IT
Elemento
Descripcin
Estimulo.
Ambiente.
Componentes.
Respuesta.
Medida de la
Respuesta.
Arquitectura de Proyectos de IT
Agenda
#
Tema
Introduccin
Atributos de Calidad
3.1
Performance
3.2
Disponibilidad
3.3
Modifiability
3.4
Seguridad
3.5
Testability
3.6
Usabilidad
Comentarios Finales
Arquitectura de Proyectos de IT
Arquitectura de Proyectos de IT
Agenda
#
Tema
Introduccin
Atributos de Calidad
3.1
Performance
3.2
Disponibilidad
3.3
Modifiability
3.4
Seguridad
3.5
Testability
3.6
Usabilidad
10
Comentarios Finales
Arquitectura de Proyectos de IT
Performance
Es el grado en el cual el sistema o componente lleva a cabo
una funcionalidad especifica dada una restriccin de
velocidad, precisin, etc. y el uso eficiente de los recursos
Patrones de Arribos (Eventos)
Patrones de Respuesta
11
Arquitectura de Proyectos de IT
Performance
Ej. Los usuarios inician 1.000 transacciones X, por minuto
(probabilidad) bajo condiciones normales, de 9 a 18:00hs, el
sistema debe procesarlas (resultado en pantalla) en una latencia
menor a 3 segundos.
12
Elemento
Descripcin
Estimulo.
Ambiente.
Componentes.
Todo el Sistema
Respuesta.
Transaccin procesada
Medida de la
Respuesta.
Arquitectura de Proyectos de IT
Agenda
#
Tema
Introduccin
Atributos de Calidad
3.1
Performance
3.2
Disponibilidad
3.3
Modifiability
3.4
Seguridad
3.5
Testability
3.6
Usabilidad
13
Comentarios Finales
Arquitectura de Proyectos de IT
Disponibilidad (Availability)
Es el grado de operabilidad de un sistema o componente
La disponibilidad relacionada con las fallas del sistema y
las consecuencias asociadas.
Es importante diferenciar entre desperfecto/error
(fault) y falla (failure), el desperfecto puede provocar
una falla, pero si no es controlado. Las fallas son
observables, los desperfectos, en general, no.
14
Arquitectura de Proyectos de IT
Disponibilidad y Costo
15
Arquitectura de Proyectos de IT
16
Arquitectura de Proyectos de IT
Disponibilidad
Ej. Si el Middleware tiene alguna falla y no recibe pedidos, para
transacciones que necesitan ser procesadas de manera asincrnicas se
debe auditar en un archivo de log y se debe reintentar X veces con un
intervalo de Y segundos
17
Elemento
Descripcin
Estimulo.
Ambiente.
En todo momento
Componentes.
Respuesta.
Medida de la
Respuesta.
Arquitectura de Proyectos de IT
Agenda
#
Tema
Introduccin
Atributos de Calidad
3.1
Performance
3.2
Disponibilidad
3.3
Modifiability
3.4
Seguridad
3.5
Testability
3.6
Usabilidad
18
Comentarios Finales
Arquitectura de Proyectos de IT
Maintainability
Interoperability
Relacionado con la integracin con otros Sistemas
19
Arquitectura de Proyectos de IT
20
Elemento
Descripcin
Stakeholder
Estimulo.
Ambiente.
Etapa de Mantenimiento
Componentes.
Respuesta.
Medida de la
Respuesta.
Arquitectura de Proyectos de IT
Agenda
#
Tema
Introduccin
Atributos de Calidad
3.1
Performance
3.2
Disponibilidad
3.3
Modifiability
3.4
Seguridad
3.5
Testability
3.6
Usabilidad
21
Comentarios Finales
Arquitectura de Proyectos de IT
Seguridad
Es la medida sobre la habilidad del sistema para
resistir usos no autorizados mientras sigue
proveyendo sus servicios a los usuarios legtimos.
Cuando se quiere romper la seguridad, es un ataque
que puede intentar acceder a datos y modificarlos,
o a servicios, y como conclusin muchas veces
denegar los servicios a los usuarios.
22
Arquitectura de Proyectos de IT
Seguridad
Se puede caracterizar de la siguiente manera:
No Repudio
Confidencialidad
Integridad
Aseguramiento
Disponibilidad
Auditoria
23
Arquitectura de Proyectos de IT
Seguridad
Ej. Si el administrador de accesos (seguridad) realiza, agrega o
quita algn rol a cualquier usuario, estos cambio deben ser
reflejados de manera inmediata en la sesin del usuario a la cual se
le modificaron los accesos
24
Elemento
Descripcin
Administrador de Accesos
Estimulo.
Cambio de roles
Ambiente.
En cualquier momento
Componentes.
Todo el Sistema
Respuesta.
Medida de la
Respuesta.
Inmediatamente
Arquitectura de Proyectos de IT
Agenda
#
Tema
Introduccin
Atributos de Calidad
3.1
Performance
3.2
Disponibilidad
3.3
Modifiability
3.4
Seguridad
3.5
Testability
3.6
Usabilidad
25
Comentarios Finales
Arquitectura de Proyectos de IT
Testability
Es el grado de facilidad que tiene un sistema para ser probada
en su completitud, ya sea unitariamente, integracin,
aceptacin y regresin
El 40% del costo de un proyecto es consumido por el testing
Cuanto mejor podamos acelerar y completar las tareas de
testeo, tendera a minimizar el costo y los tiempos de testeo.
Es importar tener en cuenta que decisiones arquitectnicas
pueden lograr bajar los tiempos de testeo, pero hay que
tener en cuanta la complejidad y lo que impacta esa decisin
en la construccin.
26
Arquitectura de Proyectos de IT
Testability
Ej. Un testeador unitario que realiza el test de un componente X
debe poder ejecutar los scripts y debe poder llegar a un nivel de
completitud del 70% en 4 horas
27
Elemento
Descripcin
Tester unitario
Estimulo.
Testear el componente
Ambiente.
Componentes.
Componente X
Respuesta.
70% de completitud
Medida de la
Respuesta.
4 horas
Arquitectura de Proyectos de IT
Agenda
#
Tema
Introduccin
Atributos de Calidad
3.1
Performance
3.2
Disponibilidad
3.3
Modifiability
3.4
Seguridad
3.5
Testability
3.6
Usabilidad
28
Comentarios Finales
Arquitectura de Proyectos de IT
Usabilidad
Es el grado de facilidad del sistema para ser operado
reas:
Aprendizaje
Uso eficiente
Minimizar el impacto de los errores
Adaptabilidad
Incrementar la satisfaccin del usuario.
29
Arquitectura de Proyectos de IT
Usabilidad
Si bien este atributo de calidad es
principalmente definido y especificado o en los
casos de uso o en la especificacin de la User
Interface, existen operaciones y features que s
o s deben ser implementadas por la
Arquitectura, como el caso proveer la posibilidad
de cancelar operaciones que estn siendo
procesadas, otro caso interesante de analizar es
el de deshacer una accin ejecutada y
procesada.
30
Arquitectura de Proyectos de IT
Usabilidad
Ej. Los usuarios del modulo X, una vez que ejecutan cualquier accin,
el sistema debe proveer posibilidad de cancelarlas durante su
ejecucin y quedar como antes de la ejecucin de la misma
31
Elemento
Descripcin
Estimulo.
Ambiente.
Componentes.
Mdulo X
Respuesta.
Transaccin cancelada
Medida de la
Respuesta.
Arquitectura de Proyectos de IT
Agenda
#
Tema
Introduccin
Atributos de Calidad
3.1
Performance
3.2
Disponibilidad
3.3
Modifiability
3.4
Seguridad
3.5
Testability
3.6
Usabilidad
32
Comentarios Finales
Arquitectura de Proyectos de IT
Comentarios Finales
La clasificacin planteada no quiere decir que sea estricta, todo lo
contrario, es una buena manera de agrupar pero no siempre tiene que
ser de esta manera.
La clasificacin es siempre buena tenerla desde la arquitectura, con el
objetivo de atacar los problemas de manera ms ordenada.
Existen otros atributos de calidad, que tambin podran clasificarse,
como:
Portabilidad
Escalabilidad
Auditoria o Logging
33
Arquitectura de Proyectos de IT
Referencia
[SAinPractice] Len Bass, Paul Clements, Rick Kazman, Software
Architecture in Practice, Second Edition. Addison Wesley, 2003,
ISBN 0-321-15495-9.
[TheArtSA] Stephen T. Albin , The Art of Software
Architecture: Design Methods and Techniques, John Wiley &
Sons, 2003, ISBN 0-471-22886-9.
[POSA] Buschmann, F.,Meunier, R.,Rohnert, H.,Sommerlad,
P.,Stal, M. 1996. Pattern-Oriented Software Architecture: A
System of Patterns. Chichester: John Wiley and Sons, 1996,
ISBN 0-471 95889-7
34
Arquitectura de Proyectos de IT