viernes, 22 de febrero de 2013

2.7 SERVICIOS DE LA ARQUITECTURA (EMAIL, WEB, BASE DE DATOS, APLICACIONES, TRANSACCIONES, SISTEMAS OPERATIVOS, FIREWALL)


SERVICIO WEB

Es un conjunto de protocolos y estándares que sirven para intercambiar datos entre aplicaciones. Distintas aplicaciones de software desarrolladas en lenguajes de programación diferente y ejecutada sobre cualquier plataforma pueden utilizar los servicios web para intercambiar datos en redes de ordenadores como internet.

Protocolos utilizados:

  * XML: Es el formato estándar para los datos que se vayan a intercambiar.

  * SOAP o XML-RPC: Protocolos sobre los que se establece el intercambio.

  * HTTP, FTP, o SMTP: los datos en XML también pueden enviarse de una aplicación a otra mediante protocolos normales ya bien conocidos.

  * WSDL: Es el lenguaje de la interfaz pública para los servicios Web.

  * UDDI: Protocolo para publicar la información de los servicios Web.

  * WS-Security: Protocolo de seguridad aceptado como estándar por OASIS.

Estos servicios proporcionan mecanismos de comunicación estándares entre diferentes aplicaciones, que interactúan entre sí para presentar información dinámica al usuario. Para proporcionar interoperabilidad y extensibilidad entre estas aplicaciones, y que al mismo tiempo sea posible su combinación para realizar operaciones complejas, es necesaria una arquitectura de referencia

estándar.

 

SERVICIO EMAIL


Aplicaciones para envío y recepción de emails

BASE DE DATOS

Conjunto de datos pertenecientes a un mismo contexto y almacenados sistemáticamente para su posterior uso. Un servidor de base de datos es un programa que provee servicios de base de datos a otros programas u otras computadoras, como es definido por el modelo cliente-servidor. También puede hacer referencia a aquellas computadoras (servidores) dedicadas a ejecutar esos programas, prestando el servicio.

APLICACIONES

Programa informáticos que permiten a un usuario utilizar una computadora con un fin especifico. Son parte del software de una computadora y suelen ejecutarse sobre el sistema operativo.

¿Qué es un proveedor de servicios de aplicación?

El modelo de negocios Proveedor de Servicios de Aplicación o mas conocido en ingles como ASP (Application Service Provider) permite a una organización utilizar un software de aplicación bajo el concepto de servicio, sin la necesidad de comprar licencias, equipos y otros activos, pagando sólo una cuota mensual.

El proveedor esta especializado en manejar volúmenes mas eficientes con costos fijos consiguiendo una mayor calidad de servicio.

Las   ventajas del modelo son muchas, entre las cuales podemos destacar:

  * Menores costos de implementación

  * Costos de mantenimiento predecible y acordado.

  * Ahorra la inversión inicial para construir la infraestructura requerida para correr las aplicaciones.

  * No se requiere disponer de recursos técnicos para la implementación.

  * Rápida puesta en producción y con menor riesgo.

  * Mayor seguridad.

  * Mayor escalabilidad.

TRANSACCIONES

Una transacción es una interacción con una estructura de datos compleja compuesta por varios procesos que se han de aplicar uno después del otro.

FIREWALL

es una parte de un sistema o una red que esta diseñada para bloquear el acceso no autorizado permitiendo al mismo tiempo comunicaciones autorizadas cortafuegos, mecanismo de seguridad en internet frente a acceso no autorizados.

2.6 INTEGRACIÓN DE TECNOLOGÍAS HETEROGÉNEAS Y HOMOGÉNEAS.


Existen diferentes motivos para la heterogeneidad y homogeneidad. Una razón son los cambios tecnológicos que siempre se dan en un periodo de tiempo corto. En este contexto, dichos cambios se refieren a mejor calidad, mejor desempeño, costos más económicos, seguridad, entre otras características que se toman en cuenta.   Otra razón es que la diversidad en una red de computadoras puede hacerla más resistente que cualquier problema dado en algún tipo de máquina, sistema operativo o aplicación son poco probables que afecten a otros sistemas corriendo en diferentes sistemas operativos y aplicaciones.

HOMOGENEO

En los sistemas homogéneos, todos los sitios emplean idéntico software de gestión de base de datos, son conscientes de la existencia de los demás sitios y acuerdan cooperar en el procesamiento de las solicitudes de los usuarios

Un sistema distribuido homogéneo tiene múltiples conexiones de datos ; integra múltiples recursos de datos. Los sistemas homogéneos se parecen a un sistema

centralizado, pero en lugar de almacenar todos los datos en un solo lugar los datos se distribuyen en varios sitios comunicados. No existen usuarios locales y todos ellos   accedan la base de datos global. El esquema global es la unión de todas las descripciones de datos locales y las vistas de los usuarios se definen sobre el esquema global.

HETEROGENEO

Las tecnologías Heterogéneas son aquellas donde Sitios diferentes utilizan diferentes DBMS, siendo cada uno esencialmente autónomo. Es posible que algunos sitios no sean conscientes de la existencia de los demás y quizás proporcionen facilidades limitadas para la cooperación en el procesamiento de transacciones. La heterogeneidad se debe a que los datos de cada BD son de diferentes tipos o formatos. El enfoque heterogéneo es más complejo que el enfoque homogéneo.

VENTAJAS

La potencia que ofrece multitud de computadores conectados en red usando grid es prácticamente ilimitada, además de que ofrece una perfecta integración de sistemas y dispositivos heterogéneos, por lo que las conexiones entre diferentes maquinas no generan ningún problema. Se trata de una solución altamente escalable, potente y flexible ya que evitaran problemas de falta de recursos (cuellos de botellas) y nunca queda obsoleta, debido a la posibilidad de modificar el numero de características de sus componentes.

CONCLUSION

Los sistemas homogéneos son los que están basados en un mismo tipo de aplicación lo que permite una integración más rápida.

Los sistemas heterogéneos manejan diferentes tipos de aplicaciones

en los diferentes sitios lo que provoca que cada equipo pueda ser autónomo y la cooperación entre los diferentes sitios es mas complicada, costosa y no siempre posible.

2.5 DISTRIBUCIÓN DE ELEMENTOS DE UNA APLICACIÓN


Se refiere a la construcción de software por partes, a las cuales les son asignadas un conjunto específico de responsabilidades dentro de un sistema.

También se refiere a la necesidad de distribuir los elementos de un sistema dependiendo de las características y necesidades del lugar.

Una aplicación distribuida es una aplicación con distintos componentes que se ejecutan en entornos separados, normalmente en diferentes plataformas conectadas a través de una red.

La distribución habla de que las partes o componentes se encuentran en entornos separados, entonces para realizar la separación física, primero se debe de tener clara la separación lógica de las partes de una aplicación.

Hay componentes de diferentes tipos: Ejecutables páginas web, librerías, controles, Procedimientos almacenados servicios web…Ejemplo: Paquetería de office, Corel, Reproductor Windows etc.

Los ejecutables

se refieren a programas o aplicaciones de escritorio que corren sobre un sistema operativo

Una página web es una fuente de información adaptada para worldwide web (WWW) que es accesible mediante un navegador de internet y normalmente forma parte de un sitio web

Las librerías se refieren bibliotecas o conjunto de clases que contiene lógica de programación implementada como servicios que pueden ser utilizados desde otras librerías o aplicaciones

Ejemplo: Java(java.io, java.lang), Netbeans entre otros.

2.4 INTEGRACION DE SISTEMAS HEREDADOS


Un sistema heredado (o sistema legacy) es un sistema informático(equipos informáticos o aplicaciones) que ha quedado anticuado pero continúa siendo utilizado por el usuario (típicamente una organización o empresa) y no se quiere o no se puede reemplazar o actualizar de forma sencilla.

Los sistemas heredados no son sólo sistemas de software de aplicación. Son sistemas socio-técnicos, por lo que incluyen procesos de negocio, software de aplicación, software de apoyo y sistema hardware.

Aunque la funcionalidad que un sistema heredado ofrece a los procesos empresariales puede estar disponible a través de una tecnología más moderna, la posibilidad de una interrupción del servicio durante la actualización de sistemas puede impedir una migración hacia el uso de sistemas más nuevos, o incluso la puede impedir dada la dificultad percibida en la conversión del contenido heredado para ajustarse a los nuevos modelos de contenido y formatos

Muchos sistemas heredados todavía se utilizan porque solucionan bien el problema y reemplazarlos sería demasiado costoso.

Las compañías gastan mucho dinero en sistemas informáticos y, para obtener un beneficio de esa inversión, el software o el hardware debe utilizarse varios años. El tiempo de vida de los sistemas informáticos

es muy variable, pero muchos sistemas grandes se pueden llegar a utilizar hasta más de 20 años. Muchos de estos sistemas antiguos aún son importantes para sus respectivos negocios, es decir, las empresas cuentan con los servicios suministrados por estos sistemas y cualquier fallo en estos servicios tendría un efecto serio en el funcionamiento de la organización. Estos sistemas antiguos reciben el nombre de sistemas heredados.

Lo habitual es que los sistemas heredados, que ya suponen un problema para una empresa u organización por la dificultad para sustituirlos, no sean los mismos sistemas que originalmente se empezaron a utilizar en la empresa. Obviamente la modernización de estos sistemas anticuados es deseable, pero muchas veces no es muy asequible, no sólo por razones económicas sino también por razones críticas de entrega de servicios

Muchos factores externos e internos, como el estado de las economías nacional e internacional, los mercados cambiantes, los cambios en las leyes, los cambios de administración o la reorganización estructural, conducen a que los negocios experimenten cambios continuos.

El enfoque del problema de las aplicaciones heredadas es el de evitar cualquier modificación en los sistemas heredados que pueda poner en peligro la entrega de servicios; este enfoque también elimina la formación de los usuarios del sistema heredado al nuevo sistema, con el beneficio evidente del ahorros de costes y tiempos en la adquisición de nuevo equipamiento y el período de adaptación requerido para utilizarlo.

Además que estos

cambios generan o modifican los requerimientos del sistema de información, por lo que éste va sufriendo cambios conforme cambian los negocios. Por esta razón, los sistemas heredados incorporan un gran número de actualizaciones hechas a lo largo de su vida útil. Muchas personas diferentes pueden haber estado involucradas en la realización de estas modificaciones a lo largo del tiempo, y es inusual para cualquier usuario o administrador del sistema tener un conocimiento completo del mismo, sobre todo cuando éste tiene una cierta envergadura.

  * Riesgos de la migración de un sistema heredado

Los sistemas heredados son considerados potencialmente problemáticos por numerosos ingenieros de software por diversos motivos. Dichos sistemas a menudo operan en ordenadores obsoletos y lentos, cuyo mantenimiento tiene elevados costes y son difíciles de actualizar por falta de componentes adecuados o de mantenimiento.

  * Costes de mantenimiento de un sistema heredado

Seguir utilizando los sistemas heredados evita los mencionados riesgos del reemplazo, pero hacer cambios al sistema existente en vez de cambiarlo por uno más moderno puede ser más costoso puesto que éste es cada vez más viejo

  * Alternativas

Los negocios que tienen sistemas informáticos anticuados se enfrentan a un dilema fundamental. Si continúan utilizando los sistemas heredados y realizan los cambios requeridos, sus costos se incrementarán de forma inevitable. Si deciden reemplazar sus sistemas heredados con nuevos sistemas, esto tendrá un coste y puede ocurrir que los nuevos

sistemas no provean apoyo efectivo al negocio como lo hacen los sistemas heredados.

  * Mantener el sistema heredado

Muchos negocios están buscando técnicas de ingeniería de software que prolonguen el tiempo de vida de los sistemas heredados y que reduzcan los costos de seguir utilizando estos sistemas

Los sistemas heredados son considerados por las organizaciones de TI como elementos destacados dentro del nuevo concepto de empresa. Los usuarios ya no preguntan cómo librarse de sus sistemas heredados, sino que buscan formas para aprovechar el valor de negocio de estos sistemas heredados.

¿Qué es la integración de sistemas heredados?

La integración de sistemas heredados puede definirse como la reutilización de sistemas y aplicaciones heredadas existentes, que se logra mediante la integración con aplicaciones corporativas desarrolladas recientemente.

La integración de sistemas heredados brinda un método no intrusivo para reutilizar aplicaciones críticas que residen en sistemas heredados, como un sistema mainframe o AS/400. El poder utilizar estos recursos existentes tiene muchas ventajas, entre ellas un riesgo reducido y ahorros significativos.

Riesgo reducido por medio de fiabilidad, disponibilidad y facilidad de mantenimiento (RAS, por su sigla en inglés)

Para muchas organizaciones, la decisión inicial de recurrir al uso de un equipo mainframe o AS/400 se basaba en la estabilidad sin precedentes del sistema. El término RAS fue acuñado por IBM, y se refiere a la fiabilidad, disponibilidad y facilidad de mantenimiento de un sistema.

Según

IBM, para que un sistema se considere fiable debe ser capaz de realizar pruebas de auto-verificación de errores, y rápidamente aplicar cualquier actualización necesaria para recuperarse de estos problemas sin interacción manual. El concepto de disponibilidad se refiere a la capacidad del sistema de recuperarse de los problemas sin alterar el correcto funcionamiento del resto de sus áreas. Además de la auto-verificación de errores y la auto-recuperación aislada de esos errores, un sistema debería ser también capaz de determinar la causa de la falla. Esto se conoce como facilidad de mantenimiento.

Paul Baquet, un analista de sistemas señor de Duke Health Technology Solutions afirma: "En términos de estabilidad, el mainframe es probablemente el equipo más adecuado para procesar transacciones. Nosotros atendemos las necesidades de 2000 usuarios finales en todo momento, de modo que contar con esa clase de flexibilidad nos permite continuar apoyando el entorno de los servicios de salud, mientras el mainframe procesa aplicaciones y las deriva a otros sistemas". La integración de sistemas heredados permite a las organizaciones capitalizar esta solidez comprobada y utilizarla como base para nuevas aplicaciones de negocios.

Seguridad

Escalabilidad

Ahorros en costos

En una encuesta reciente auspiciada por BMC

software, el 95% de los 1100 gerentes de TI encuestados indicó que el mainframe seguiría cumpliendo un rol central en su infraestructura de tecnología de la información. El 65% de ellos declaró que su uso de la plataforma seguiría creciendo. Los sistemas fiables, disponibles y fáciles de mantener, y que además son seguros y escalables, brindan ventajas demasiado numerosas como para ser ignoradas por cualquier organización que desee mantener un control racional de los costos.

La integración de sistemas heredados permite que las organizaciones aprovechen estas ventajas y las integren con tecnologías actuales.

2.3 CAPA DE PROCESAMIENTO DE DATOS


Es donde residen los datos y es la encargada de acceder a los mismos. Está formada por uno o más gestores de bases de datos que realizan todo el almacenamiento de datos, reciben solicitudes de almacenamiento o recuperación de información desde la capa de negocio.

El acceso a datos se refiere al medio a través del cual podemos acceder y manipular los datos persistentes de un sistema.

El almacenamiento de datos se refiere

a la forma en que se encuentran guardados dichos datos, por ejemplo, en archivos o bases de datos.

  * Servicios

  * Servicios de base de datos
 

En las siguientes secciones se describe la elección de almacenes de datos, el diseño de los componentes lógicos de acceso a datos y las distintas posibilidades disponibles de representación de datos.

Almacenes de datos

Entre los tipos de almacenes habituales se encuentran:

  * Bases de datos relacionales.

  * Bases de datos de mensajería.

  * Sistema de archivos.

  * Componentes lógicos de acceso a datos

2.2 CAPA DE MANEJO DE DATOS


La capa de negocios o de manejo de datos, es donde residen los programas que se ejecutan, se reciben las peticiones del usuario y se envían las respuestas tras el proceso. Se denomina también capa de negocio (e incluso de lógica del negocio) porque es aquí donde se establecen todas las reglas que deben cumplirse.

Esta capa se comunica con la capa de presentación, para recibir las solicitudes y presentar los resultados, y con la capa de datos, para solicitar al gestor de base de datos almacenar o recuperar datos de él. También se consideran aquí los programas de aplicación.

División de la capa de manejo de datos
  * Lógica de negocios

Cuando las aplicaciones adquieren cierto volumen o las entidades implicadas tienen cierta complejidad, la lógica de acceso a datos por sí sola no es suficiente para encapsular convenientemente el acceso a las entidades de datos. En estos casos será necesario añadir objetos más complejos que a su vez encapsulen los objetos de acceso a datos y los expongan de forma más sencilla a las capas superiores, facilitando su manejo.
  * Lógica de acceso a datos

La lógica de acceso a datos incluye los elementos necesarios para que la aplicación se conecte a orígenes de datos y recupere estructuras de datos que serán utilizadas por el resto de la aplicación. En una aplicación distribuida, los únicos elementos que se conectan a la base de datos son los objetos de acceso a datos, y el resto de elementos de la aplicación se limitan a enlazar con estos objetos para solicitar datos y enviar órdenes a los orígenes de datos.

 

2.1 CAPA DE INTERFAZ DE USUARIO


La capa de presentación o interfaz de usuario se refiere al mecanismo de interacción del usuario con el sistema.
Es la que ve el usuario (también se la denomina "capa de usuario"), presenta el sistema al usuario, le comunica la información y captura la información del usuario en un mínimo de proceso (realiza un filtrado previo para comprobar que no hay errores de formato). También es conocida como interfaz gráfica y debe tener la característica de ser "amigable" (entendible y fácil de usar) para el usuario. Esta capa se comunica únicamente con la capa de negocio.

Los tipos de interfaces de software más comunes son las aplicaciones de ventanas y web. Los tipos de interfaces de hardware más comunes son el ratón, el teclado, el micrófono, pantallas táctiles, dispositivos de imagen y audio.

Está formada por los formularios y los controles que se encuentran

en los formularios, capa con la que interactúan el usuario   y es responsable de obtener datos de la capa siguiente, mostrarlos, validar entradas de datos, enviarlas a la siguiente capa donde pueden dividirse en: presentación, código de interfaz de usuario.