Professional Documents
Culture Documents
ARQUITECTURA DE
PRODUCTOS DE SOFTWARE
Nivel 0 de
descomposicin
Nivel 1 de composicion
Nivel 2
Nivel 3 de
descomposicin
Modulo
Principal
Modulo 1
Modulo
1.1
Modulo
1.2
Modulo 2
Modulo
2.1
Modulo 3
Modulo
2.2
Modulo
2.2.1
Modulo
2.2.2
Modulo
3.1
Modulo
3.1.1
El diseo modular propone dividir el sistema en partes diferenciadas y definir sus interfaces.
Sus ventajas: Claridad, reduccin de costos y re utilizacin.
Una descomposicin modular debe poseer ciertas cualidades mnimas para que se pueda considerar suficiente validad.
1. Independencia funcional
2. Acoplamiento
3. Cohesin
4. Comprensibilidad
5. Adaptabilidad
Independencia Funcional
Cada mdulo debe realizar una funcin concreta o un conjunto de funciones afines. Es recomendable
reducir las relaciones entre mdulos al mnimo.
Acoplamiento
Fuerte:
Por contenido, cuando desde un mdulo se puede cambiar datos locales de otro.
Comn, se emplea una zona comn de datos a la que tienen acceso varios mdulos.
Moderado:
De control, la zona comn es un dispositivo externo al que estn ligados los mdulos, esto implica que un cambio en el
formato de datos los afecta a todos.
Dbil.
De datos, viene dado por los datos que intercambian los mdulos. Es el mejor.
Cohesin:
Un mdulo coherente ejecuta una tarea sencilla en un procedimiento y requiere poca interaccin con
procedimientos que se ejecutan en otras partes de un programa. Podemos decir que un mdulo coherente es aquel que
intenta realizar solamente una cosa.
Comprensibilidad:
Para facilitar los cambios, el mantenimiento y la reutilizacin de mdulos es necesario que cada uno sea comprensible de
forma aislada.
Para ello es bueno que posea independencia funcional, pero adems es deseable:
Adaptabilidad:
Previsin, es necesario prever que aspectos del sistema pueden ser susceptibles de cambios en
el futuro, y poner estos elementos en mdulos independientes, de manera que su modificacin
afecte al menor nmero de mdulos posibles
DISEO DE SOFTWARE DE LA
ARQUITECTURA MULTIPROCESADOR
Este sistema consiste de varios procesos que pueden ejecutarse sobre procesadores
diferentes (aunque no es necesario), es muy comn en sistemas grandes de tiempo real,
recolectan informacin, toman decisiones, con la afirmacin, y envan seales a los
actuadores que modifican el entorno del sistema.
El uso de mltiples procesadores mejora el rendimiento y adaptabilidad del sistema. La
distribucin de los procesos de los procesadores se puede predeterminar o puede estar bajo
el control de un despachador que decide cuales procesos ubicar en cada procesador. Los
sistemas de mltiples procesos no son necesariamente sistemas distribuidos. Si se dispone de
ms de un procesador, entonces se puede implementar la distribucin, pero los diseadores
del sistema no siempre consideran forzosamente cuestiones de distribucin mediante el
proceso de diseo.
Un ejemplo para este tipo de sistemas es un modelo simplificado de un sistema de control de
trfico. Un conjunto de sensores distribuidos recogen informacin sobre el flujo de trfico y la
procesan localmente antes de enviarla a una sala de control. Los operadores toman
decisiones usando esta informacin y dan instrucciones a un proceso de control de diversas
luces de trfico.
VENTAJAS:
La ventaja de un sistema multiproceso reside en la operacin llamada cambio de contexto. Esta operacin consiste en
quitar a un proceso de la CPU, ejecutar otro proceso y volver a colocar el primero sin que se entere de nada.
Los hilos que se ejecutan comparten ciertos recursos como el espacio del mensaje, la cual permite simplificar el diseo de
una aplicacin que debe llevar a cabo distintas funciones simultneamente.
Es econmica
Las computadoras paralelas son inherentes escalables permitiendo actualizarlas para adecuarse a la necesidad.
El uso de componentes comnmente disponibles, en grandes cantidades, permite ofrecer mayor rendimiento.
DESVENTAJAS:
Puede ser limitante fsica, existen factores que limitan la velocidad mxima de un procesador independiente del factor
econmico.
Las barreras fsicas infranqueables tales como la velocidad de la luz, efectos al reducir el tamao.
Problemas causados por fenmenos elctricos a pequeas escalas restringen la capacidad mxima del sistema
multiprocesador.