UNIVERSIDAD CONTINENTAL CONTINENTAL
FACULTAD DE INGENIERÍA ESCUELA ACADÉMICA PROFESIONAL DE INGENIERÍA DE SISTEMAS E INFORMÁTICA
EXAMEN ORAL DE SUFICIENCIA PROFESIONAL PARA OPTAR EL TÍTULO PROFESIONAL DE INGENIERO DE SISTEMAS E INFORMÁTICA
ALUMNO: Bachiller Rubén, NAVARRO ARANGO
HUANCAYO-PERÚ DICIEMBRE 2014
ÍNDICE
INTRODUCCIÓN La Arquitectura Orientada a Servicios (SOA, Service Oriented Architecture) supone una estrategia general de organización de los elementos de TI, de forma que una colección abigarrada de sistemas distribuidos y aplicaciones complejas se pueda transformar en una red de recursos integrados, simplificada y sumamente flexible. Un proyecto SOA bien ejecutado permite alinear los recursos de TI de forma más directa con los objetivos de negocio, ganando así un mayor grado de integración con clientes y proveedores, proporcionando una inteligencia de negocio más precisa y más accesible con la cual se podrán adoptar mejores decisiones, y ayuda a las empresas a optimizar sus procesos internos y sus flujos de información para mejorar la productividad individual. El resultado neto es un aumento muy notable de la agilidad de la organización. Las empresas necesitan poder interconectar los procesos, personas e información tanto con la propia organización como atravesando sus fronteras con subsidiarias y socios comerciales. Las aplicaciones distribuidas se vuelven cada día más complejas, y es primordial que los negocios estén conectados. Esta globalización informática requiere la interacción y la conectividad entre diferentes plataformas e incontables dispositivos. Windows Comunication Foundation fue concebido con el objetivo de simplificar el desarrollo de aplicaciones distribuidas Windows Comunication Foundation es un conjunto de tecnologías .NET para la creación y puesta en marcha de sistemas interconectados, el cual basado en el modelo de programación unificado de Microsoft, se puede generar aplicaciones orientadas a servicios ya que fue creado con el fin de permitir una programación rápida de sistemas distribuidos permitiendo a los programadores generar soluciones con transacción seguras y de confianza. Una de sus principales características es que cuenta con un modelo de programación unificado, ya que es la unificación de numerosas capacidades que antes podíamos encontrar en distintas tecnologías. Esto nos libra de tener que estar utilizando más de una tecnología para cumplir satisfactoriamente los requerimientos. De este modo, los desarrolladores harán una tarea de una única manera.
Capítulo 01 Windows Comunication Foundation
1.1 ¿Qué es WCF? Es un modelo de programación para el desarrollo de aplicaciones con arquitectura orientada a servicios (SOA). Aplicaciones distribuidas basadas en la comunicación mediante mensajes. WCF consiste en un número de bibliotecas de clase contenidas en el NET Framework 3, para desarrollar sistemas que envían mensajes entre servicios y clientes sobre diversos mecanismos de transporte. WCF es la nueva plataforma de comunicación y mensajería que forma parte del ya conocido entorno de trabajo .NET (en su versión 3.0). La idea fundamental de WCF es la de permitir a las empresas desarrollar aplicaciones distribuidas basadas en la arquitectura orientadas a servicios (SOA), donde éstas se puedas ejecutar, desde una maquina local hasta internet, de manera simple y segura.
1.2 WCF, Ventajas Proporciona un único modelo de programación tipado de aplicaciones distribuidas basadas en servicios.
Encapsula y simplifica el desarrollo de aplicaciones soportadas por las diversas tecnologías distribuidas.
Permite el desarrollo de aplicaciones .NET capaces de interoperar con aplicaciones desarrolladas con otras tecnologías (J2EE, SAP).
1.3 WCF, Principales Características Una aplicación WCF está compuesta por: Clientes: Son aplicaciones que inician la comunicación. Servicios: Son aplicaciones que esperan los mensajes de los clientes y responden a los mismos. Los mensajes son enviados entre Endpoints. Un Endpoint es un lugar donde un mensaje es enviado, o recibido, o ambos. Un servicio expone uno o más aplicaciones Endpoints, y un cliente genera un Endpoint compatible con uno de los Endpoints de un servicio dado. La combinación de un servicio y un cliente compatibles conforman un communication stack.
1.4 Componentes básicos de WCF (DÓNDE, CÓMO Y QUÉ) En primer lugar, el desarrollo con WCF se basa en servicios. Un servicio es un programa que expone una colección de Endpoints (Puntos de Acceso). Cada Endpoint, es una puerta hacia el mundo exterior mediante una determinada tecnología de transporte. Un cliente es un programa que intercambia mensajes con uno o más Endpoints. Y un cliente puede exponer también un Endpoint para recibir mensajes de un servicio. Un Endpoint de un servicio está compuesto por una Address (Dirección), un Binding (Enlace) y un Contract (Contrato).
La dirección de un Endpoint es una dirección de red donde reside dicho Endpoint, el Binding especifica cómo se comunica dicho Endpoint con el resto del mundo, incluyendo aspectos como el protocolo de transporte (TCP, HTTP, etc.), tipo de codificación(texto, Binario) y requerimientos de seguridad (SSL, y seguridad basada en mensajes SOAP, etc.). Por último el Contrato especifica qué comunica dicho Endpoint y básicamente está compuesto por una colección d mensajes organizados internamente en operaciones que tienen un patrón de intercambio de mensajes (Message Exchange Patterns ó MEPS), como One-Way 8un asentido), Duplex y Request/Reply (petición /Respuesta). 1.5 ¿ Por qué usar Windows Communication Foundation? Cuando hay que decidir que tecnología usar para determinado sistema distribuido nos encontramos con varias opciones: Servicios Web XML con extensiones WSE, Microsoft Queue (MSMQ), el ambiente de ejecución Enterprice Service/COM+, y .NET Remoting. Escoger entre una u otra depende de qué se necesite más-seguridad, interoperabilidad, performance, transacciones. Y escoger una de las primeras tecnologías mencionadas conlleva a sacrificar seguridad, performance u otros aspectos del desarrollo. Estos inconvenientes nos plantean el porqué de la utilidad de WCF: Cuando sea necesario crear aplicaciones conectadas: Actualmente la conectividad es la primera consideración en la arquitectura de un sistema distribuido. La orientación a servicios ayuda a lograrlo. WCF se diseñó desde sus inicios con la orientación a servicios en la mente. Modelo de programación Unificado: Con la frecuencia los desarrolladores de aplicaciones tienen que escoger entre múltiples tecnologías, cada una con un único modelo de programación; una tecnología para llamar a procedimientos remotos, otra para Queuing, otra para componentes transaccionales y otras para lograr interoperabilidad entre plataformas. WCF provee un solo modelo de programación para la comunicación. Requisitos Amplios de interoperabilidad: la interoperabilidad entre plataformas se ha vuelto una necesidad obligatoria de todas las aplicaciones conectadas. WCF usa los protocolos estándares de la industria que permiten a éste interoperar con cualquier plataforma que soporte estos protocolos. 1.6 Mirada al Futuro Es evidente que la idea fundamental de WCF es poder desarrollar aplicaciones SOA de manera simple, rápida y segura. Planteando un modelo de desarrollo practico en contrapartida a otras implementaciones de SOA sobre Java, como es el caso de IBM y Oracle, que cuentan con entonos de desarrollo más complicado y más difíciles de utilizar. Donde el tiempo de aprendizaje e implementación es mucho más costoso.
Lo que si queda en claro es que las soluciones SOA utilizando Java se basan en herramientas y tecnologías abiertas y permiten su desarrollo y ejecución en cualquier entorno, no solo dentro del mundo Microsoft Windows. Aún falta mucho tiempo para poder observar los frutos del desarrollo basado en SOA, pero sin lugar a duda WCF ayudará a que esto sea logrado con éxito. 1.7 WCF, Pasos para desarrollar un servicio. Definir el Contrato (ServiceContract): Se escribe la interfaz en un lenguaje de programación de .NET, agregando los distintos métodos que serán incluidos en el contrato. Implementar el Contrato (ServiceContract): Se escribe una clase mediante la cual se implemente la interfaz. Es posible establecer comportamientos a la definición del servicio usando el atributo ServiceBehavior. Configurar el Servicio: Especificar los endpoints y metadata del servicio, estos son definidos en un archivo de configuración de .NET (Web.config o App.config). Diseñar una aplicación Hosting del servicio: Web Host dentro del IIS - Self-Host dentro de cualquier proceso .NET - Managed Windows Services - Windows Process Activation Service. Diseñar una aplicación cliente del servicio: Acá definiremos las aplicaciones clientes que consumirán el servicio.
Capítulo 02 Caso Práctico
Bibliografía
Windows Communication Foundation, http://msdn.microsoft.com/eses/library/ms731082(v=vs.110).aspx. Application Platform Infrastructure Optimization (APIO), http://www.microsoft.com/business/peopleready/appplat/strategic_analysis.mspx Service Orientation and Its Role in Your Connected Systems Strategy http://msdn.microsoft.com/architecture/solutions_architecture/service_orientation/def ault.aspx?pull=/library/en-us/dnbda/html/srorientwp.asp A Business-Oriented Foundation for Service Orientation http://msdn.microsoft.com/architecture/solutions_architecture/service_orientation/def ault.aspx?pull=/library/en-us/dnbda/html/ServOrient.asp Enabling People-Ready Processes through Business Process Management, http://www.microsoft.com/biztalk/solutions/bpm/whitepaper.mspx Introducing Windows Communication Foundation download.microsoft.com/.../Introducing_WCF_in_N...
Traducir esta página
2.
Contents.
DESCRIBING
WINDOWS COMMUNICATION Interoperability with Microsoft‟s Pre -WCF Technologies
FOUNDATION
.
...