Sistemas Call/Return

Sistemas Call/Return

lunes, 14 de octubre de 2013

Arquitectura Orientada a Objetos SOA


Qué significa “Orientado a Objetos”?
Un modelo es orientado a objetos cuando está compuesto por un conjunto de objetos que cooperan entre sí enviándose mensajes. Dichos objetos pertenecen a clases, las cuales pueden relacionarse entre sí por medio de la herencia.

¿Qué es un Objeto?
Un Objeto representa un ítem o entidad individual (ya sea conceptual o real) con un rol bien definido en el dominio del problema.

Objetos: algunos ejemplos

Dominio del Problema

Objetos

Operaciones comerciales
Artículos, Facturas, Ventas, Compras, Clientes, Contratos, Créditos, etc.
Procesos industriales
Orden de Fabricación, Productos y piezas,  Métodos, Máquinas, etc.
Redes de Computadoras
Nodos, Enlaces,  Protocolos, Dispositivos, Usuarios, Permisos, etc.

  Es un término que describe dos cosas muy diferentes: por un lado, las primeras dos palabras describen una metodología de desarrollo de software, mientras que la tercera, Arquitectura, hace alusión al modelo de los componentes software que posee una compañía, es decir, a una representación de todas las piezas software existentes que, de manera conjunta, forman el edificio empresarial.
“Una arquitectura orientada a objetos bien estructurada está llena de patrones. La calidad de un sistema orientado a objetos se mide por la atención que los diseñadores han prestado a las colaboraciones entre sus objetos.” 
“Los patrones conducen a arquitecturas más pequeñas, más simples y más comprensibles”

JERARQUIA DE CAPAS


Definición: Este tipo de estructura se le conoce como sistemas por capas

El objetivo principal es la organización jerárquica del sistema operativo, mediante capas o anillos concéntricos, cada una de las capas está construida sobre la anterior. El primer sistema que fue construido usando una estructura por capas fue desarrollado por E. W. Dijkstra y sus estudiantes en Holanda en el año 1968, el sistema que fue creadose llama THE (Technische Hogeschool Eindhoven), En este sistema consta de 5 capas.

Capa 0: En esta capa se proporciona la multiprogramación básica de la CPU, esto quiere decir que trabaja en la asignación del procesador y también se alteran los procesos cuando se ocurren las interrupciones o expiran los cronómetros. Dichos sistemas constan de procesos secuénciales, estos se pueden programar sin importar que varios procesos se estén ejecutando en el mismo procesador. 

Capa 1: Aquí se administra la memoria, al mismo tiempo se asignaba el espacio de memoria principal para los diversos procesos y un depósito de palabras de 512K en el cual se utilizaba para almacenar partes de los procesos, en este caso las paginas, ya que no existía un lugar en la memoria principal. En esta capa no se debe de preocupar que los procesos que estén en memoria o en el depósito, esto se debe que el software de esta capa se encarga de garantizar que las paginas lleguen a la memoria cuando fueran necesarias. 

Capa 2: En esta capa se encarga de la comunicación entre el proceso y la consola de usuario. Arriba de esta capa, cada proceso tiene su propia consola. 

Capa 3:  Se controlan los dispositivos de E/S y también guarda en buffers los flujos de información entre los diferentes dispositivos. Por encima de esta capa, los procesos pueden trabajar con dispositivos específicos de E/S teniendo propiedades adecuadas.

Capa 4: Aquí se localizan los programas de los usuarios, estos no se preocupan por el proceso, memoria, consola o control de E/S, que se tuvieran que utilizar. 

Capa 5: En esta capa se localiza el proceso operador del sistema, Sistemas basados en Capas Descripción Organizado jerárquicamente en capas, donde cada capa provee servicios a la capa superior y es servido por la capa inferior. Los componentes son cada una de las capas. Los conectores son los protocolos de interacción entre las capas. Restricciones: La interacción está limitada a las capas adyacentes, Ventajas, Facilita la descomposición del problema en varios niveles de abstracción. Soporta fácilmente la evolución del sistema; los cambios sólo afectan a las capas vecinas. Se pueden cambiar las implementaciones respetando las interfaces con las capas adyacentes.

Que es el Sistema Modular:


Es el diseño basado en la modulación reticular de espacios que permitan optimizar el tiempo de construcción y debido a que son transportables, desarmables y reorganizables permiten impulsar múltiples funcionalidades y su reutilización al generar un nuevo uso diferente al que fueron fabricados.
Caracterizar de un Sistema Modular:
  • Partición funcional en discretas módulos escalables y reutilizables que consiste en aislados, autónomos elementos funcionales
  • Uso riguroso de interfaces modulares bien definidas, incluyendo descripciones orientado a objetos de la función del módulo 
  •  Facilidad de cambio lograr transparencia tecnología y, a la medida de lo posible, hacer uso de estándares industriales para interfaces clave
Además de la reducción en los costos (debido a una menor personalización, y menos tiempo de aprendizaje), y la flexibilidad en el diseño, la modularidad ofrece otros beneficios como al incrementar (la adición de una nueva solución con sólo conectar un nuevo módulo), y la exclusión.

Ejemplos de sistemas modulares son


Las computadoras utilizan la modularidad para superar las demandas cambiantes del cliente y poder realizar el proceso de fabricación más de adaptación al cambio. 
El diseño modular es un intento de combinar las ventajas de la estandarización (alto volumen normalmente es igual a los bajos costos de fabricación) con los de personalización. Un aspecto negativo a la modularidad (y esto depende del grado de modularidad) es que los sistemas modulares no están optimizados para el rendimiento. Esto es generalmente debido al costo de la colocación de las interfaces entre los módulos.

Diseño Modular de Vehículos: 
Aspectos del diseño modular se pueden ver en los vehículos en la medida de la existencia de ciertas partes del vehículo que pueden ser añadidos o quitados sin alterar el resto del vehículo. Un ejemplo simple de diseño modular de los vehículo es el hecho de que, mientras que muchos vehículo vienen como modelo básico, actualizaciones permitirá modificaciones con más potencia o neumáticos, los cuales no se requiere ningún cambio de la unidad del vehículo, tales como los sistemas de chasis, dirección o de escape.

Diseño Modular de los Edificios:
El diseño modular se puede ver en algunos edificios, especialmente edificios modulares. Los edificios modulares (y también casas modulares) generalmente consisten en piezas universales (o módulos) que son fabricados en una planta y luego se envían a un sitio de construcción donde se ensamblan en una variedad de disposiciones.
Los edificios modulares se pueden aumentar o reducir de tamaño por la adición o eliminación de ciertos componentes. Esto se puede hacer sin alterar las porciones más grandes de la construcción. Los edificios modulares pueden también experimentar cambios en la funcionalidad utilizando el mismo proceso de agregar o quitar componentes modulares.
Por ejemplo, un edificio de oficinas se puede construir con piezas modulares, tales como paredes, marcos, puertas y ventanas. El interior de la oficina puede ser particionada (o dividido) con más paredes y equipadas con escritorios, computadoras, y todo lo que se necesita un espacio de trabajo funcional. Si la oficina tiene que ser ampliada o redividirlo para dar cabida a los empleados, componentes modulares, tales como paneles de la pared se pueden agregar o cambiar de lugar para hacer los cambios necesarios sin alterar todo el edificio. Más tarde, esta misma oficina se puede dividir y ser reorganizado para formar un espacio comercial, sala de conferencias o cualquier otro tipo de edificio con los mismos componentes modulares que se formó originalmente el edificio de oficinas. El nuevo edificio puede ser reformado con todo los elementos necesarios para llevar a cabo sus funciones deseadas.

Diseño Modular de la Computadora:
Igual que el diseño modular en otras cosas (por ejemplo, automóviles, refrigeradores, hasta muebles). La idea es construir computadoras (ordenador) con piezas de fácil sustitución que utilizan interfaces estandarizadas. Esto le permite actualizar ciertos aspectos de la computadora con facilidad sin tener que comprar otro equipo por completo. Una computadora es realmente uno de los mejores ejemplos de diseño modular. Módulos típicos son la Fuente de alimentación (computadora), procesadores, placas, tarjetas gráficas, discos duros, unidades ópticas, etc. Todas estas partes deben ser fácilmente intercambiables, siempre que se utilicen partes que apoyen la misma interfaz estándar como la parte que ha reemplazado.