Arquitecturas de software
Parte IV. Arquitecturas software y estilos arquitectónicos
Tema 4.1- Vistas y estilos arquitectónicos
Tema 4.2 Arquitecturas de componentes y conectores Tema 4.3 Arquitecturas multiagente Juan Manuel Serrano Máster Oficial en Sistemas Telemáticos e Informáticos Universidad Rey Juan Carlos 2007-2008
Bibliografía
C. Ghezzi et al. Softwarequalities and principles. Computer Science Handbook, 2nd ed. CRC Press, 2004 P. Clements et al. Documenting Software Architectures. Views and Beyond. Addison –Wesley, 2003
Parte I (Software Architecture Viewtypes and Styles)
L. Bass et al. Software architecture in Practice (2nd edition). Addison-Wesley, 2003
Partes I y II
Tema 4.1 Vistas y estilos arquitectónicos
2
Contenido
Conceptosbásicos Vistas modulares Vistas de componentes y conectores Vistas de asignación
Tema 4.1 Vistas y estilos arquitectónicos
3
Conceptos básicos
Principios
abstracción, etc. abstracción, etc.
modularidad, ,separación modularidad separación de aspectos, generalidad, , de aspectos, generalidad
Proceso de desarrollo (métodos, técnicas, herramientas) Producto software “Stakeholders”cliente, usuario cliente, usuario final, ,desarrollador, final desarrollador,
… Productos intermedios (“artifacts”)
requisitos funcionales yyno-funcionales, , requisitos funcionales no-funcionales análisis, arquitectura, ,diseño, casos de análisis, arquitectura diseño, casos de pruebas, etc. pruebas, etc.
de pruebas, etc. de pruebas, etc.
gestor del gestor del proyecto, ,equipo proyectoequipo
Tema 4.1 Vistas y estilos arquitectónicos
4
Cualidades del software
“Quality attributes”/ “Software qualities”/ “non-functional requirements”
Rendimiento “evolvability”
Usabilidad
verificabilidad
Mantenibilidad
Tolerancia a fallos Interoperabilidad
“reparability”
Portabilidad Escalabilidad
Robustez
Corrección
Fiabilidad
Disponibilidad
Seguridad
Tema 4.1Vistas y estilos arquitectónicos
5
Clasificación de cualidades del software
Cualidades internas
desarrolladores, gestor del proyecto, …
Cualidades externas
cliente, usuarios finales, …
Portabilidad
“reparability” “evolvability”
Rendimiento
Disponibilidad
Tolerancia a fallos
Escalabilidad
Interoperabilidad
Fiabilidad
verificabilidad
Corrección
UsabilidadSeguridad
Mantenibilidad
Robustez
Tema 4.1 Vistas y estilos arquitectónicos
6
Cualidades externas (I)
Corrección
El sistema cumple con los requisitos funcionales especificados Medición: experimentalmente (pruebas), analíticamente (verificación formal, inspecciones de código, etc.)
Fiabilidad (“reliability”/ “dependability”)
El usuario puede confiar en el buen funcionamiento delsistema Se trata de una propiedad no booleana
Estadísticamente: probabilidad de que el sistema funcione correctamente durante un intervalo temporal determinado
Subcomponentes: tolerancia a fallos, disponibilidad (“availability”), “safeness”
Robustez
El sistema funciona “razonablemente” bien, incluso ante situaciones no anticipadas en los requisitos funcionales
Tema 4.1 Vistas y estilosarquitectónicos
7
Cualidades externas (II)
Rendimiento
Efectividad con la que el sistema realiza las funciones encomendadas, de acuerdo con los requisitos establecidos por el usuario
Relacionado con la escalabilidad
La eficiencia en el uso de recursos (computacionales y de almacenamiento) por parte del software contribuye al buen rendimiento
Pero la eficiencia es una cualidad internaMedición: monitorización, analíticamente, simulación
Usabilidad
Grado en el que sistema es fácil de utilizar o amigable al usuario (“user-friendly”) No atañe únicamente a los usuarios humanos (por ejemplo, interfaces con otros sistemas) Requisitos: interfaces consistentes y precedibles, más corrección y rendimiento
Seguridad
Privacidad: garantiza que los servicios proporcionados por el...
Regístrate para leer el documento completo.