Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Arquitectura de un sistema
de información o software
Ingeniería de software
Arquitectura de un sistema de
información
Características a tomar en cuenta
• Es necesario definir reglas.
• Hay que basarse en modelos o
prototipos.
• Tiene que buscar adaptabilidad y
evolución.
• Bajos costos de replicación y
distribución.
Ingeniería de software
Arquitectura de un sistema de
información
¿Qué es?
• La arquitectura del software es la
organización fundamental del sistema
que incluye a sus componentes, sus
relaciones entre ellos y el ambiente y
los principios que dictan su diseño y
evolución.
• Involucra un conjunto de decisiones
significativas acerca de la organización
del sistema.
Ingeniería de software
Arquitectura de un sistema de
información
¿Qué es?
• Selección de sus elementos
estructurales y sus interfaces.
• Comportamiento, especificado en
función de la colaboración de los
elementos.
• Composición de sub-sistemas más
grandes a partir de elementos
estructurales y elementos con
comportamiento.
Ingeniería de software
Arquitectura de un sistema de
información
https://app.creately.com/
Ingeniería de software
Arquitectura de un sistema de
información
¿Qué involucra?
La arquitectura de software también
involucra:
1. Funcionalidad.
2. Usabilidad.
3. Tolerancia a cambios.
4. Reutilización.
5. Restricciones económicas y
tecnológicas.
6. Aspectos estéticos.
Ingeniería de software
Arquitectura de un sistema de
información
Patrones
• Un patrón es una solución conocida a
un problema recurrente.
• Un patrón codifica conocimiento
específico recogido de la experiencia
en un dominio.
• Si se estructura bien un sistema, se va
a encontrar patrones ejecutados.
Ingeniería de software
Arquitectura de un sistema de
información
Patrones
• Los patrones de arquitectura son
esquemas base de organización
estructural para sistemas de software.
– Definir susbistemas con sus
responsabilidades.
– Incluir reglas y pautas para
organizar las relaciones entre
ellos.
Ingeniería de software
Tipos de Arquitectura de un
sistema de información
Ingeniería de software
Tipos de Arquitectura de un
sistema de información
• Arquitectura en capas:
– Organiza los componentes
en grupos de sub tarreas,
donde cada grupo se
encuentra en un nivel de
abstracción diferente.
Ingeniería de software
Tipos de Arquitectura de un
sistema de información
• Pipes and Filters
– Sirve en sistemas que procesan un
flujo de datos.
– Cada paso es encapsulado en un
“filtro”.
– Los canales pasan datos de un
filtro a otro.
– Al recombinar filtros puedo
construir familias de sistemas
relacionados.
Ingeniería de software
Tipos de Arquitectura de un
sistema de información
• Arquitectura de pizarra o repositorio
– Contiene 2 componentes
principales:
• Una estructura que representa el
estado actual y el otro una
colección de componentes que
operan sobre el.
• Las transacciones definen el proceso
a ejecutar y los repositorios
representan a los datos
almacenados en una base de datos
tradicional.
Ingeniería de software
Tipos de Arquitectura de un
sistema de información
• Arquitectura orientada a objetos
– Conocida por la aplicación
abstracta de los objetos. Contiene
herencia, polimorfismo y
encapsulamiento de datos,
permite heredar propiedades de
un objeto y puede encapsular
métodos.
Ingeniería de software
Tipos de Arquitectura de un
sistema de información
• Arquitectura de máquinas virtuales
– Conocida como intérpretes
basados en tablas. Utilizado para
mejorar la implementación de
sistemas en cualquier plataforma
o dispositivo a través de estas
máquinas virtuales.
Ingeniería de software
Tipos de Arquitectura de un
sistema de información
• Arquitectura orientada a servicios
– Utilizados en servicios web
basados en XML.
– Servicios transportados por
HTTP,FTP, SMTP, IIOP y MQ
Ingeniería de software
Tipos de Arquitectura de un
sistema de información
• Cliente - Servidor
– Permite estructurar sistemas
distribuidos con
componentes desacoplados
que interactúan por medio
de invocaciones remotas a
servicios.
Ingeniería de software
Tipos de Arquitectura de un sistema de
información
• Cliente - Servidor
– El procesamiento se distribuye
entre:
• Cliente
• Servidor
– Los procesos cliente requieren de
recursos provistos por los
servidores.
– Clientes y servidores pueden
residir en el mismo host o en hosts
diferentes conectados a través de
una red.