Diseño Arquitectónico
Enviado por ajcd240591 • 11 de Octubre de 2014 • 1.725 Palabras (7 Páginas) • 177 Visitas
Diseño arquitectónico
¿Qué es?
El diseño arquitectónico representa la estructura de los datos y de los componentes del programa que se requieren para construir un sistema basado en computadora. Considera el estilo de arquitectura que adoptará el sistema, la estructura y las propiedades de los componentes que lo constituyen y las interrelaciones que ocurren entre sus componentes arquitectónicos.
¿Quién lo hace?
Aunque es un ingeniero de software quien puede diseñar tanto los datos como la arquitectura, es frecuente que si deben construirse sistemas grandes y complejos, el trabajo lo realicen especialistas. El diseñador de una base de datos o data warehouse crea la arquitectura de los datos para un sistema. El “arquitecto del sistema” selecciona un estilo arquitectónico apropiado a partir de los requerimientos obtenidos durante el análisis de los datos.
¿Por qué es importante?
El lector no intentaría construir una casa sin un plano, ¿o sí? Tampoco comenzaría los planos con el dibujo de la plomería del lugar. Antes de preocuparse por los detalles, necesitaría tener el panorama general: la casa en sí. Eso es lo que hace el diseño arquitectónico, da el panorama y asegura que sea el correcto.
¿Cuáles son los pasos?
El diseño de la arquitectura comienza con el diseño de los datos y continúa con la obtención de una o más representaciones de la estructura arquitectónica del sistema. Se analizan alternativas de estilos o patrones arquitectónicos para llegar a la estructura más adecuada para los requerimientos del usuario y para los atributos de calidad. Una vez seleccionada la alternativa, se elabora la arquitectura con el empleo de un método de diseño.
¿Cuál es el producto final?
Durante el diseño arquitectónico se crea un modelo de arquitectura que incluye la arquitectura de los datos y la estructura del programa. Además, se describen las propiedades y relaciones (interacciones) que hay entre los componentes.
¿Cómo me aseguro de que lo hice bien? En cada etapa se revisan los productos del trabajo del diseño del software para que sean claros, correctos, completos y consistentes con los requerimientos y entre sí.
ARQUITECTURA DEL SOFTWARE
¿Qué es la arquitectura?
Cuando se piensa en la arquitectura de una construcción, llegan a la mente muchos atributos distintos. En el nivel más sencillo, se considera la forma general de la estructura física. Pero, en realidad, la arquitectura es mucho más que eso. Es la manera en la que los distintos componentes del edificio se integran para formar un todo cohesivo. Es la forma en la que la construcción se adapta a su ambiente y se integra a los demás edificios en la vecindad. Es el grado en el que el edificio cumple con su propósito y en el que satisface las necesidades del propietario. Es la sensación estética de la estructura —el efecto visual de la edificación— y el modo en el que se combinan texturas, colores y materiales para crear la fachada en el exterior y el “ambiente de vida” en el interior. Es los pequeños detalles: diseño de las lámparas, tipo de piso, color de las cortinas… la lista es casi interminable. Y, finalmente, es arte.
Pero, ¿qué es la arquitectura del software? Bass, Clements y Kazman [Bas03] definen este término tan elusivo de la manera siguiente:
La arquitectura del software de un programa o sistema de cómputo es la estructura o estructuras del sistema, lo que compren a los componentes del software, sus propiedades externas visibles y las relaciones entre ellos.
La arquitectura no es el software operativo. Es una representación que permite
1) analizar la efectividad del diseño para cumplir los requerimientos establecidos
2) considerar alternativas arquitectónicas en una etapa en la que hacer cambios al diseño todavía es relativamente fácil.
3) reducir los riesgos asociados con la construcción del software.
En el nivel arquitectónico, no se especifican las propiedades internas (por ejemplo, detalles de un algoritmo). Las relaciones entre los componentes pueden ser tan simples como una invocación de procedimiento de un módulo a otro o tan complejos como un protocolo de acceso a una base de datos.
Hay una diferencia entre los términos arquitectura y diseño. Un diseño es una instancia de una arquitectura, similar a un objeto que es una instancia de una clase. Por ejemplo, considere la arquitectura de cliente-servidor. Con esta arquitectura es posible diseñar de muchos modos un sistema de software basado en red, con el uso de una plataforma Java (Java EE) o Microsoft (estructura .NET). Entonces, hay una arquitectura, pero con base en ella pueden crearse muchos diseños. Así, no es válido mezclar “arquitectura” y “diseño”.
En el contexto del
análisis precedente, el diseño de los datos permite representar el componente de datos de la
arquitectura con definiciones de sistemas y clase convencionales (que incluyen atributos y operaciones)
en sistemas orientados a objeto. El diseño arquitectónico se centra en la representación
de la estructura de los componentes del software, sus propiedades e interacciones.
¿Por qué es importante la arquitectura?
• Las representaciones de la arquitectura del software permiten la comunicación entre
todas las partes (participantes) interesadas en el desarrollo de un sistema basado en
computadora.
• La arquitectura resalta las primeras decisiones que tendrán un efecto profundo en todo
el trabajo de ingeniería de software siguiente y, también importante, en el éxito último
del sistema como entidad operacional.
• La arquitectura “constituye un modelo relativamente pequeño y asequible por la vía intelectual
sobre cómo está estructurado el sistema y la forma en la que sus componentes
trabajan juntos” [Bas03].
Descripciones arquitectónicas
Cada uno de nosotros tiene una imagen mental de lo que significa la palabra arquitectura. Sin
embargo, la realidad es que tiene significados diferentes para distintas personas. La conclusión es
que los diversos participantes verán una arquitectura desde puntos de vista diferentes motivados
por varios conjuntos de preocupaciones. Esto implica que una descripción arquitectónica en realidad
es un conjunto de productos del trabajo que reflejan puntos de vista distintos del sistema
IEEE Computer Society hizo la propuesta IEEE-Std-1471-2000,
...