1. ¿El diseño diseño de la arquitec arquitectura tura de de sistemas sistemas de
software
es distinto al de
otros productos? Para responder aplique la definición general este presentada en la sección 3.1.1 en relación con otro dominio (por ejemplo, el diseño de un automóvil ! contrastarla con el diseño de la arquitectura. Es parecido, sin embargo creo que en el software tiene que ser algo mucho mas especifico, ya que no parte de cierta base, si no que se realiza con ciertos objetivos y requisitos desde cero.
". ¿#ómo acota el diseño diseño de de la arquitectur arquitectura a al diseño diseño detallado detallado de los los módulos? Piense, por ejemplo, en un escenario que tenga que ver con el desempeño ! con un tiempo de respuesta limitado. Si se cuenta con una mayor cantidad de módulos, estos tendrían que ser ms detallados.
3. En el momento momento de su diseño, diseño, algunos algunos sistemas sistemas requieren requieren m$s creatividad que otros, ¿cu$les ser%an ejemplos de ello? Si, por ejemplo al crear alg!n software para ni"os, o personas con cierta discapacidad, nos limita y se tiene que tratar de llegar al objetivo incluso con las limitaciones que se puedan llegar a presentar.
&. #onsidere #onsidere un programa programa que lee datos datos de un un arc'ivo, arc'ivo, realia realia un un procesamiento so)re los datos le%dos e imprime el resultado mostrado en pantalla. Elija dos esquemas distintos de modulariación de este programa ! discuta con un(a compañero(a qu* diferencias pueden resultar de ellas acerca de cualesquier atri)utos de calidad, como reutiliación o modifica)ilidad. #odelo orientado a objetos$ Se podría manejar el dato como un objeto. #odelo de capas$ Se podría ir modificando el dato de tal forma que se divida en capas, por ejemplo %lectura, resolución, impresión&
+. uponga dos módulos - ! conectados entre ellos. El módulo contiene un arreglo que guarda datos ! proporciona en su interfa un m*todo que regresa el arreglo. ¿#ómo es el acoplamiento entre - ! ? #onsidere qu* suceder%a si posteriormente se decide cam)iar el arreglo por una lista ligada, ! proponga una manera de resolver el pro)lema si es que e/iste. El acoplamiento es alto, ya que al modificar uno afecta al otro, y si se cambia por una lista ligara, el acoplamiento se reduce, pero igualmente puede afectar al otro modulo.
0. Para elegir un concepto de diseño so)re otro conviene listar los )eneficios ! desventajas de am)os en relación con el pro)lema que se quiere resolver. #onsidere las t$cticas de redundancia pasiva ! de redundancia activa con los que se resuelven pro)lemas de disponi)ilidad. iscuta con un(a compañero(a los pros ! los contras de am)as opciones. 'ependiendo del dise"o que se realiza, la redundancia pasiva cubre un error y la activa cambia el componente. 2. o e/iste un consenso so)re en qu* momento del diseño se de)en elegir las tecnolog%as. -lgunos autores sugieren 'acer primero un diseño puramente conceptual ! luego ligarse a ellas. in em)argo, en la pr$ctica se o)serva a menudo que al menos una parte se elige en etapas tempranas de tal pro!ecto. ¿4u* dificultades podr%a 'a)er con el enfoque que inicia con un diseño solo conceptual? ¿En qu* tipo de pro!ectos o situaciones ser%a recomenda)le? (uede que alguna tecnología resulte inadecuada al momento de implementarla, creo que podría ser recomendable en caso de que se trate de un dise"o con tecnologías simples.
5. iscuta con un(a compañero(a las posi)les raones de por qu* en el diseño de la arquitectura solo se consideran casos de uso primarios ! no todo el conjunto de funcionalidad. (orque de esta forma nos podemos dar una mejor idea del funcionamiento del sistema de manera general, sin necesidad de entrar mucho en detalle. 6. upongamos un sistema pequeño con un diseño 7tradicional8 de tres capas (presentación, negocio ! datos. En ellas se u)ican módulos con los que se soporta tres casos de uso del sistema. #onsidere dos estrategias de desarrollo para un equipo de tres personas9 asignación 7por capa8 ! asignación 7por caso de uso8. En la primera estrategia, un ingeniero es asignado a cada capa, en la segunda, otro ingeniero es asignado a cada caso de uso. iscuta con un(a compañero(a si am)as estrategias requieren un mismo nivel de detalle en la especificación de las interfaces de los módulos. :ustifique la respuesta. (or caso de uso necesitaría un mayor nivel de detalle, ya que se realizarn acciones de manera mucho ms específica, incluyendo la presentación, negocio y datos. En cambio, en el modelo de capas solo se tendría que realizar una especificación de cada una de las capas. 1;. ¿#ómo integrar%a un m*todo de diseño, como el -, en un proceso de desarrollo iterativo? )a arquitectura se dise"a de manera iterativa y en cada iteración se toma una parte o elemento y se descompone en subelementos.