Please enable JavaScript.
Coggle requires JavaScript to display documents.
Diseño Detallado de Arquitecturas de Software - Coggle Diagram
Diseño Detallado de Arquitecturas de Software
Introducción
Es el conjunto de pasos que tenemos que seguir para
conceptualizar
diseñar
definir
verificar
documentar
evaluar los diferentes componentes de software
El método
evalúa de manera iterativa el grado en el cual la arquitectura soporta cada uno de los requerimientos
no funcionales y mejora la arquitectura utilizando la transformación
subsistema
encapsula comportamiento, expone un conjunto de interfaces y empaqueta otros elementos de modelo
Clases y subclases
Notación de UML para modelar
Elementos Dinámicos
Se utiliza para modelar
objetos, mensajes y máquinas de estado finitas
Elementos Estáticos
Se utiliza para modelar
clases, atributos y relaciones.
Se representan mediante diagramas
de estructura estática( (
diagramas de clases
)
Formas
Para modelar colaboraciones de forma sencilla Una colaboración es un conjunto de clases, interfaces y otros elementos que trabajan juntos para proporcionar un comportamiento de cooperación mayor que la suma de todos los elementos.
Para modelar el esquema lógico de una base de datos En muchos dominios podemos querer almacenar información continua (persistent information) en una base de datos relacional u orientada a objetos. Aquí usamos los diagramas de clase para modelar los esquemas de dichas bases de datos.
Para modelar el vocabulario de un sistema Modelar el vocabulario de un sistema implica tomar una decisión sobre qué abstracciones forman parte del sistema y qué otras caen fuera de sus límites. Aquí usamos los diagramas de clases para especificar dichas abstracciones y sus responsabilidades.
Diagrama
de clases
se utilizan para modelar la visión estática de un sistema. Esta visión soporta los requisitos funcionales del sistema.
Perspectivas
Conceptual
Estamos dibujando un diagrama que
representa los conceptos del dominio del sistema
Análisis
Nos fijamos en las interfaces del software, no en su implementación. Es decir, miramos los tipos más que las clases.
Implementación
Estamos poniendo la implementación al descubierto, pues realmente tenemos clases. Es la más utilizada.
Clases
Describen un conjunto de objetos
con características y comportamiento idénticos,
que comparten los mismos atributos, operaciones
y relaciones.
Nombre
Cada clase debe tener un
nombre que la distinga de las otras clases
Atributos
describen las características propias
de los objetos de una clase.
Operaciones
describen el comportamiento de los
objetos de una clase.
Diseño Arquitectónico
Modelos o vistas
La visión dinámica:
describe cómo se comportan los componentes a lo largo del tiempo y como interactúan entre sí
La visión funcional:
describe qué hace cada componente
La visión estática:
describe que componentes tiene la arquitectura
Arquitecturas universales
Descomposición Modular
Cliente-servidor
Arquitectura de tres niveles
Niveles de abstracción
La arquitectura en pequeño se interesa por la arquitectura de programas individuales
La arquitectura en grande se interesa por la arquitectura de sistemas empresariales complejos que incluyen otros sistemas, programas y componentes de programa
Ventajas de la documentación del diseño
Comunicación con los participantes
Análisis del sistema
Reutilización a gran escala
Vistas arquitectónicas
Una vista de proceso, que muestre cómo, en el tiempo de operación, el sistema está compuesto de procesos en interacción
. Una vista de desarrollo, que muestre cómo el software está descompuesto para su desarrollo
Una vista lógica, que indique las abstracciones clave en el sistema como objeto o clases de objeto.
Una vista física, que exponga el hardware del sistema y cómo los componentes de software se distribuyen a través de los procesadores en el sistema