CAP 6
6.1. Cuando se describe un sistema, explique por qué es posible que deba diseñar la
arquitectura del sistema antes de completar a especificación de requerimientos.
6.2. Se le pide preparar y entregar una presentación a un administrador no técnico
para justificar la contratación de un arquitecto de sistemas para un nuevo proyecto.
Escriba una lista que establezca los puntos clave de su presentación. Por supuesto,
debe explicar qué se entiende por arquitecto de sistemas.
6.3. Exponga por qué pueden surgir conflictos de diseño cuando se desarrolla una
arquitectura
para la que tanto los requerimientos de disponibilidad como los de seguridad son los
requerimientos no funcionales más importantes.
6.4. Dibuje diagramas que muestren una vista conceptual y una vista de proceso de
las
arquitecturas de los siguientes sistemas:
UN sistema automatizado de emisión de boletos que utilizan los pasajeros en una
estación de
ferrocarril.
UN sistema de videoconferencia controlado por computadora, que permita que los
datos de
video, audio y computadora sean al mismo tiempo visibles a muchos participantes.
'Un robot limpiador de pisos cuya función sea asear espacios relativamente
despejados, como
corredores. El limpiador debe detectar las paredes y otros obstáculos.
6.5. Explique por qué usted usa normalmente muchos patrones arquitectónicos
cuando diseña la arquitectura de un sistema grande. Además de la información sobre
los patrones estudiados
en este capítulo, ¿qué información adicional puede serle útil al diseñar sistemas
grandes?
6.6. Sugiera una arquitectura para un sistema (como ¡Tunes) que se use para vender y
distribuir música por Internet ¿Qué patrones arquitectónicos son la base para esta
arquitectura?
6.7. Especifique cómo usaría el modelo de referencia de entornos CASE (disponibles
en las páginas Web del libro), para comparar los IDE ofrecidos por diferentes
proveedores de un lenguaje de programación como Java.
6.8. Con el modelo genérico de un sistema de procesamiento de lenguaje presentado
aquí, diseñe la arquitectura de un sistema que acepte comandos en lenguaje natural y
los traduzca en consultas de base de datos en un lenguaje como SQL.
6.9. Con el modelo básico de un sistema de información, como se presentó en la figura
6.16, sugiera los componentes que puedan ser parte de un sistema de información que
permita a los usuarios consultar información de los vuelos que llegan y salen de un
aeropuerto específico.
6.10. ¿Debe existir una profesión separada de “arquitecto de software", cuyo papel
sea trabajar de manera independiente con un cliente para diseñar la arquitectura de
un sistema de software? Entonces, una compañía de software aparte implementaría el
sistema. ¿Cuáles serían las dificultades de establecer tal profesión?
CAP 9
9.1. Con el uso de la arquitectura de una casa o edificio como metáfora, establezca
comparaciones con la arquitectura del software. ¿En qué se parecen las disciplinas de
la arquitectura clásica y la del software? ¿En qué difieren?
9.2. Diga dos o es ejemplos de aplicaciones para cada uno de los estilos
arquitectónicos mencionados en la sección 9.3.1
9.3. Algunos de los estilos arquitectónicos citados en la sección 93.1 tienen
naturaleza jerárquica, mientras que otros no. Elabore una lista de cada tipo. ¿Cómo se
implementarían los estilos arquitectónicos que no son jerárquicos?
9.4. Los términos estilos arquitectónico, patrón arquitectónico y marco (que no se
estudia en este libro) surgen con frecuencia en los análisis de la arquitectura del
software. Investigue y describa en qué difiere cada uno de ellos de los demás.
9.5. seleccione una aplicación con la que esté familiarizado. Responda cada una de
las preguntas planteadas para el control y os datos de la sección 9.3.3.
9.6. Investigue el ATAM (en [Kaz98]) y presente un análisis detallado de los seis pasos
presentados en la sección9.5.1
9.8. Utilice un diagrama de fujo y una narración del procesamiento para describir un
sistema basado en computadora que tenga distintas características de
transformación del flujo. Defina las fronteras del sistema y mapee el diagrama de fujo
de los datos en una arquitectura del software con el empleo de la técnica descrita en
la sección 9.6.1.
8
Cujilema
Campozano
Castro
Caicedo
Lema