• No se han encontrado resultados

Taller de Sistemas de Información 1. Arquitectura de Software

N/A
N/A
Protected

Academic year: 2021

Share "Taller de Sistemas de Información 1. Arquitectura de Software"

Copied!
41
0
0

Texto completo

(1)

Taller de Sistemas de

Información 1

Clase 1

Clase 1

Arquitectura de Software

(2)

Temas

Decisiones en el diseño arquitectónico

Organización de un sistema de información

Estilos basados en descomposición

Estilos basados en el control

(3)

Arquitectura de software

El diseño arquitectónico es el proceso a

través del cual se identifican los subsistemas que componen un sistema de información, así como los mecanismos de control y

así como los mecanismos de control y comunicación usados por los mismos

El resultado de este proceso es una

(4)

Diseño arquitectónico

Etapa temprana en el proceso de desarrollo

de un sistema de información

Es el enlace entre la especificación del

sistema y el desarrollo del mismo sistema y el desarrollo del mismo

Implica identificar los principales

componentes del sistema y su mecanismo de comunicación

(5)

Ventajas

Comunicación entre los interesados

Reutilización a gran escala

Análisis del sistema (requerimientos no

funcionales) funcionales)

(6)

Estructura del sistema

Descompone el sistema en subsistemas que

interactúan entre si

Se expresa como un diagrama de bloques

presentando una visión general del sistema presentando una visión general del sistema

En caso de que sea necesario, se puede

aumentar el detalle de algún subsistema importante

(7)
(8)

Decisiones arquitectónicas

Existe algún ejemplo de arquitectura

genérica que pueda aplicarse?

Como se distribuirá el sistema?

Algún estilo de arquitectura es aplicable?

Algún estilo de arquitectura es aplicable?

Como se descompondrá el sistema en

módulos?

Como se controlaran y comunicaran esos

(9)

Estilos arquitectónicos

El modelo arquitectónico de un sistema

puede basarse en un estilo o modelo genérico de arquitectura

Conocer estos modelos de antemano puede

Conocer estos modelos de antemano puede

facilitar la tarea de definir la arquitectura de un sistema

(10)

Modelos arquitectónicos

Usados para documentar la arquitectura de

un sistema

Modelos estáticos estructurales

Modelos dinámicos de procesos

Modelos dinámicos de procesos

Modelos de interfaces

Modelos de datos

(11)

Organización del sistema

Refleja la estrategia utilizada para organizar

el sistema

Tres estilos organizacionales se utilizan

ampliamente ampliamente

o Repositorio de datos compartido

o Servidores y servicios compartidos

(12)

Repositorio común

Los subsistemas deben intercambiar datos

o Los datos se almacenan en un repositorio o base

de datos central, y los subsistema acceden a estos

estos

o Los subsistemas mantienen los datos

internamente, intercambiándolos explícitamente según sea necesario

Para grandes volúmenes de datos, la primer

(13)
(14)

Ventajas

Es una forma eficiente de compartir grandes

volúmenes de información

Los subsistemas no tienen que preocuparse

del manejo centralizado de datos (backup, del manejo centralizado de datos (backup, seguridad, etc)

El modelo de compartición es publicado en el

(15)

Desventajas

Los subsistemas deben acordar un modelo

de datos para el repositorio

o Es inevitable un compromiso

La evolución de los datos es compleja y

La evolución de los datos es compleja y

costosa

(16)

Cliente / Servidor

Es un modelo de sistema distribuido que

muestra como el procesamiento y los datos pueden distribuirse en una serie de

componentes componentes

o Serie de servidores que brindan un determinado

servicio (impresión, datos, email, etc)

o Serie de clientes que utilizan esos servidores

(17)
(18)

Ventajas

La distribución de los datos es sencilla

Hace un uso extensivo de los servicios de

red

Puede utilizar hardware menos costoso

Puede utilizar hardware menos costoso

(19)

Desventajas

No existe un modelo de datos compartido o

común

o El intercambio de datos puede dificultarse o

hacerse ineficiente hacerse ineficiente

Administración redundante (en los diferentes

servidores)

(20)

Maquinas abstractas (layers)

Usado para modelar la interacción entre

subsistemas

Organiza el sistema en una serie de capas

(layers) o maquinas abstractas, cada una de (layers) o maquinas abstractas, cada una de las cuales provee una serie de servicios

Soporta el desarrollo incremental de cada

capa

(21)
(22)

Descomposición en módulos

Son los estilos que permiten descomponer

un subsistema en módulos

No hay una frontera clara entre la

organización en subsistemas y la organización en subsistemas y la descomposición en módulos

(23)

Subsistemas vs. módulos

Un subsistema es un sistema por si mismo,

cuya operación es independiente de los servicios provistos por otros subsistemas

Un modulo es un componente de un sistema

Un modulo es un componente de un sistema

que provee servicios a otros componentes pero no seria normalmente considerado como un sistema separado

(24)

Descomposición modular

Se suelen utilizar dos modelos de

descomposición

o Un modelo de objetos, en los que el sistema es

descompuesto en una serie de objetos que descompuesto en una serie de objetos que interactúan

o Un modelo de pipeline o flujo de datos, en los que

el sistema es descompuesto en una serie de

módulos funcionales, que transforman inputs en outputs

(25)

Modelo de objetos

Estructuramos el sistema en un conjunto de

objetos, desacoplados con interfaces claramente definidas

Este tipo de descomposición debe identificar

Este tipo de descomposición debe identificar

clases, atributos y operaciones

Los objetos son creados a partir de estas

(26)
(27)

Ventajas

Los objetos están desacoplados, de forma

que cambios en su interior no afectan el resto del subsistema

Los objetos reflejan la realidad

Los objetos reflejan la realidad

(28)

Desventajas

Cambios en las interfaces pueden generar

gran impacto en el sistema

Entidades de la realidad complejas, pueden

no se fácilmente representadas como clases no se fácilmente representadas como clases

(29)

Pipelining

Transformaciones funcionales transforman

las entradas en salidas

Se suele llamar modelo de pipes & filters, en

referencia al shell de UNIX/LINUX referencia al shell de UNIX/LINUX

Hay variaciones muy comunes

o Si las operaciones son secuenciales, se

(30)
(31)

Ventajas

Facilita la reutilización de transformaciones

Es intuitivo

Fácil agregar / quitar transformaciones

Relativamente sencillo de implementar, a

(32)

Desventajas

Requiere algún formato común para transferir

los datos a través del pipeline

Es difícil soportar interacciones basadas en

eventos eventos

(33)

Estilos de control

Estos estilos se preocupan por el flujo de

control entre los subsistemas

Tenemos dos tipos

Control centralizado, en donde un subsistema es

o Control centralizado, en donde un subsistema es

el encargado de iniciar y detener otros subsistemas

(34)

Control centralizado

Un subsistema de control, toma la

responsabilidad de administrar la ejecución de los demás subsistemas

Tenemos dos métodos

Tenemos dos métodos

o Modelo de Call-Return

(35)
(36)
(37)

Control basado en eventos

Determinado por eventos generados

externamente al subsistema

Tenemos dos modelos basados en eventos

Broadcast models

o Broadcast models

(38)

Modelo de broadcast

Efectivo al integrar subsistemas de diferente

origen y en diferentes ambientes de hardware

Los subsistemas registran su interés en

Los subsistemas registran su interés en

determinados eventos. Cuando estos ocurren, el control es transferido al

subsistema que puede manejar el evento

(39)
(40)

Modelo de interrupciones

Usado en sistemas de tiempo real, en donde

la respuesta inmediata a un evento es importante

Existen tipos definidos de interrupciones, con

Existen tipos definidos de interrupciones, con

un handler asociado a cada tipo

Facilita la respuesta rápida, pero son

(41)

Referencias

Documento similar

Luis Miguel Utrera Navarrete ha presentado la relación de Bienes y Actividades siguientes para la legislatura de 2015-2019, según constan inscritos en el

Fuente de emisión secundaria que afecta a la estación: Combustión en sector residencial y comercial Distancia a la primera vía de tráfico: 3 metros (15 m de ancho)..

La campaña ha consistido en la revisión del etiquetado e instrucciones de uso de todos los ter- mómetros digitales comunicados, así como de la documentación técnica adicional de

Debido al riesgo de producir malformaciones congénitas graves, en la Unión Europea se han establecido una serie de requisitos para su prescripción y dispensación con un Plan

(...) la situación constitucional surgida tras la declaración del estado de emergencia es motivo de preocupación para la Comisión de Venecia. La declaración en sí misma no definió

El estudiante deberá antes de cada clase leer el tema a desarrollar e intentar realizar por lo menos los ejercicios propuestos, en clase el profesor resolverá

• Para ello, la actualización del estudio del aceite de oliva analiza las configuraciones principales de la cadena de valor identificadas en el estudio de la campaña 2007-2008

Pero antes hay que responder a una encuesta (puedes intentar saltarte este paso, a veces funciona). ¡Haz clic aquí!.. En el segundo punto, hay que seleccionar “Sección de titulaciones