Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Diseño de Arquitectura
Diseño de Arquitectura
Esta parte define la estructura y las funciones o responsabilidades de los componentes que
formarán la arquitectura una vez identificados los requerimientos de esta y las restricciones
Tipos de arquitecturas:
Arquitectura Centrada en Datos:
Se enfoca en el almacenamiento de datos al que tienen acceso otros componentes se basa en
un almacenamiento central y los componentes tienen acceso a él
Arquitectura de Flujo de Datos:
Se utiliza cuando hay transformaciones en secuencia sobre ciertos datos se basa en el
concepto de tuberías, los componentes (filtros) se comunican a través de conectores (pipe) o
tuberías
Las vistas o modelos de una arquitectura de software pueden expresarse mediante uno o
varios lenguajes. El más obvio es el lenguaje natural, pero existen otros lenguajes tales como
los diagramas de estado, los diagramas de flujo de datos, etc. Estos lenguajes son apropiados
únicamente para un modelo o vista.
Modelos estructurales:
Son similares a la vista estructural, pero su énfasis primario radica en la estructura coherente
del sistema completo, en vez de concentrarse en su composición.
Estos se refieren a dominios o clases de problemas específicos. El trabajo que ejemplifica esta
variante incluye arquitecturas de software específicas de dominios, como CORBA, o modelos
basados en CORBA, o repositorios de componentes específicos, como PRISM.
Modelos dinámicos:
Enfatizan la cualidad conductual de los sistemas, “Dinámico” puede referirse a los cambios en
la configuración del sistema, o a la dinámica involucrada en el progreso de la computación,
tales como valores cambiantes de datos.
Modelos de proceso:
1)- Definir los requerimientos: (funcionales y o funcionales) Involucra crear un modelo desde
los requerimientos que guiarán el diseño de la arquitectura basado en los atributos de calidad
esperados.
Requerimientos no Funcionales
Describen como el software debe comportarse, es decir como hacer algo, no que debe hacer
Están relacionados con los requerimientos funcionales porque describen la forma que se
espera se logren dichos requerimientos
Restricciones:
Priorización de requerimientos:
Media: Requerimientos que necesitan ser soportados en algún momento o etapa del proyecto
pero no necesariamente en esta siguiente versión.
Baja: Se conoce como parte de la “wish-list”. Se pueden implementar cuando sea posible
hacerlo.
Para el desarrollo de un buen modelo hay que tener en cuenta algunos detalles básicos
como la escogencia de la arquitectura de referencia:
Discutir los posibles estilos y patrones más apropiados que den el soporte requerido
para alcanzar los atributos de calidad deseados
(ES LA TAREA MÁS CRÍTICA EN TODO EL PROCESO)
Basarse en Arquitecturas de Referencia reconocidas tanto por la academia como por la
industria
Implementaciones conocidas, de amplia difusión y uso
Buena documentación
Reconocer el tamaño de la aplicación objetivo
Aplicaciones pequeñas (Pocos patrones requeridos )
Aplicaciones grandes (Mezcla de varios patrones
Atributos de calidad
Mantenibilidad: Mantenerse operativo a lo largo del tiempo que sea analizable, confiable,
estabilidad y comprobable