Anda di halaman 1dari 22

Arquitectura de

Software
Jeimy Cardona
Victor Sierra
Nicolas Silva
Carlos Sanz
Mauro Martinez
Ingeniería de Sistemas Prof. Isabel Mahecha
¿Qué es el software?
• Conjunto de programas Tipos de Software
y rutinas que permiten a
la computadora realizar
determinadas tareas. • Software de aplicación
• Software libre
• software propietario
• Software educativo
• Software de programación
• Software malicioso

Ingeniería de Sistemas Prof. Isabel Mahecha


La Arquitectura de Software
“las estructuras de un sistema, compuestas de elementos con
propiedades visibles de forma externa y las relaciones que
existen entre ellos.”
Define de manera abstracta, los componentes que llevan a cabo
algún tarea de computación, sus interfaces y la comunicación
entre ellos.
Una Arquitectura de software se selecciona y diseña con base en
objetivos (requerimientos) y restricciones.

Ingeniería de Sistemas Prof. Isabel Mahecha


Propiedades de un diseño
arquitectónico
• Propiedades estructurales: • Propiedades extra-funcional
Defina los componentes de un Debe indicar como el diseño
sistema y la manera en la que arquitectónico alcanza los requisitos
dichos componentes se agrupan no funcionales como: rendimiento,
en paquetes e interaccionan
entre ellos capacidad, fiabilidad, seguridad, etc.

• Familias de sistemas relacionados


Debe permitir reconocer su estructura en los patrones
repetitivos que se encuentran de manera habitual en el diseño
de los sistemas similares.

Ingeniería de Sistemas Prof. Isabel Mahecha


Estilos arquitectónicos de software
• Modelos de descomposición • Modelos de control
de sistemas • Arquitectura OO
• Modelos de descomposición • Arquitectura centrada en
modular flujo de datos
• Modelos de dominio • Arquitectura centrada en
especifico datos
• Arquitectura Call and Return
• Arquitectura de capaz

Ingeniería de Sistemas Prof. Isabel Mahecha


Arquitectura centrada en datos
• Un almacén de datos se encuentra en
el centro de esta arquitectura, otro
componente tiene acceso al él y cuenta
con la opción de gestionar los datos de
ese almacén. El software cliente tiene
acceso a un almacén central, en
algunos casos este es pasivo, el
software cliente accede a los datos
independientemente de cualquier
cambio hecho en los datos o las
acciones de otro software cliente.

Ingeniería de Sistemas Prof. Isabel Mahecha


Sistemas centrados en los datos
• Enfatiza en la integración de datos
• Es apropiada para sistemas que se fundamentan en el
acceso y actualización de datos en estructuras de
almacenamiento.
• Sub-estilos
–Repositorios
–Bases de datos
-Hipertextos
-pizarras
Repositorios (Sistemas centrados
en los datos)
• En un estilo repositorio existen dos clases de componentes:
-Una estructura de datos central que representa el
estado actual
-Una colección de componentes independientes que
operan sobre los datos centrales
-Las interacciones entre el repositorio y los
componentes externos puede variar significativamente
entre sistemas
Repositorios
• Bases de datos clásicas
- Repositorio central tiene esquemas diseñados
especificamente para la aplicación
- Operadores independientes
+Operaciones sobre la BD
• Ventajas
- Es una forma eficiente de compartir grandes
cantidades de datos.
- Los Subsistemas no necesitan proporcionar un
manejo centralizado de como los datos son producidos.
Por ejemplo: respaldo, seguridad, etc.
• Desventajas
- Los sub-sistemas deben coincidir en modelo de
datos del repositorio, lo cual es inevitablemente un
compromiso
- La evolución de los datos es difícil y costosa.
- No existen políticas para un manejo específico.
- Se dificulta una distribución eficiente.
Pizarras (Blackboard)

• La pizarra envía notificación a los suscriptores cuando


los datos cambian
• En ocasiones esto se refiere a repositorios activos
• Los datos almacenados son independientes de los
clientes, este estilo es escalable; nuevos clientes pueden
ser adicionados facilmente
Arquitectura Gráfica
SISTEMAS DE PIZARRA
SISTEMAS DE PIZARRA

• Un sistema de pizarra se implementa para


resolver problemas en los cuales las entidades
individuales se manifiestan incapaces de
aproximarse a una solución, o para los que no
existe una solución analítica, o para los que sí
existe pero es inviable por la dimensión del
espacio de búsqueda.

Ingeniería de Sistemas Prof. Isabel Mahecha


SISTEMAS DE PIZARRA
La arquitectura en pizarra consta de múltiples elementos funcionales,
denominados agentes, y un instrumento de control
denominado pizarra.

Los agentes suelen estar especializados en una tarea concreta o


elemental. Todos ellos cooperan para alcanzar una meta común, si
bien, sus objetivos individuales no están aparentemente coordinados.

La pizarra tiene un doble papel. Por una parte, coordina a los distintos
agentes y, por otra, facilita su intercomunicación. El estado inicial de la
pizarra es una descripción del problema que resolver y el estado final
será la solución del problema.

Ingeniería de Sistemas Prof. Isabel Mahecha


PROCESO DE RESOLUCIÓN
• Al comienzo del proceso de resolución, se establece
el problema en la pizarra. Las fuentes tratan de
resolverlo cambiando el estado. La única forma en
que se comunican entre sí es a través de la pizarra.
Finalmente, si de la cooperación resulta una
solución adecuada, ésta aparece en la pizarra como
paso final.

Ingeniería de Sistemas Prof. Isabel Mahecha


VENTAJAS

• Esta arquitectura es tremendamente útil cuando


el problema a resolver (o algoritmo a
implementar) es extremadamente complejo en
términos cognitivos. Es decir, cuando el flujo de
control del algoritmo es enrevesado, o
simplemente, no se tiene un conocimiento
completo del problema a resolver.

Ingeniería de Sistemas Prof. Isabel Mahecha


DESVENTAJAS

• No existe garantía de que se alcance una solución.

• Es una arquitectura ineficiente ya que no existe un limite de


receptores al tiempo de computo necesario para resolver el problema.
DESVENTAJAS
• Es difícil obtener los pasos que llevaron a la solución, no genera
solución.
DESVENTAJAS

• Problemas de seguridad ya que pizarra es accesible para todos

DESVENTAJAS
• Problemas de sincronizar al chequear y vigilar la pizarra
GRACIAS.

Ingeniería de Sistemas Prof. Isabel Mahecha


Ingeniería de Sistemas Prof. Isabel Mahecha