Ve la luz parte de mi trabajo en Redmond: "Oslo", el futuro de las soluciones SOA
Bueno, está uno aquí liado estudiando y preparándose el trabajo para el Tech Ed, liado con el University Tour y disfrutando con la buena racha de mi Atleti, que se me pasó hablaros sobre la conferencia anual "Microsoft SOA & Business Process" del martes 30... En dicha conferencia, uno de los anuncios esperados fue el lanzamiento de Oslo, un conjunto de técnicas y herramientas que harán al desarrollador la vida más facil a la hora de diseñar, implementar, desplegar y monitorizar aplicaciones de negocio basadas en arquitecturas orientadas a servicios (SOA).
Ya desde la distancia, desde España, sigo este anuncio con especial cariño. Éste es uno de los productos de nuevo lanzamiento en los que he tenido la enorme suerte de poner mi granito de arena. Os cuento un poco en qué consiste la idea que hemos desarrollado...
Hoy en día, existe una serie de problemas a la hora de interconectar aplicaciones desarrolladas con distintas tecnologías. Pensad en una red de partners que deseen interconectar sus sistemas de gestión y cada uno de ellos utilice tecnologías diferentes (pongamos por ejemplo Windows Forms, J2EE y ASP.Net).
¿De qué forma hemos comunicado tradicionalmente estos sistemas tan heterogéneos?
Servicios web.
Bien, pero todos sabemos que el modelo de comunicación vía servicios web no es todo lo completo y funcional que quisiéramos, necesitamos otra serie de funcionalidades, sincronización de procesos remotos, invocación de objetos de servidor, etc etc.
¿Qué solución nos aporta Microsoft con el framework 3.0 de .Net?
WCF para la comunicación entre sistemas, y WF para la creación de flujos de trabajo.
Muy bien, pero... nos falta todavía algo, ¿no?
Así es, de alguna forma necesitamos que esa integración esté disponible desde las primeras fases del análisis y diseño de nuestro sistema hasta las fases de despliegue y monitorización del sistema en un entorno real, pasando por las fases de modelado, desarrollo, pruebas...
Esta solución que necesitamos es la que nos propone "Oslo". Uno de los puntos fuertes de esta tecnología radica en la creación de una plataforma unificada que integre servicios, modelado de la aplicación... Cambiando la visión actual en la que "un modelo describe nuestra aplicación" al hecho de que "el modelo ES la aplicación".
Pensad en todo esto, añadiendo todas las características que traerá el framework 4.0 de .Net entre las que cabría citar la total integración de esta tecnología con LINQ (cuántos cafés tuvimos que tomar para garantizar la robustez de esto [C]) sobre orígenes de datos muy diversos (desde servicios web y de WCF hasta listas de objetos de Sharepoint, pasando por BD relacionales, multidimensionales o objetos del CLR), la definición de interfaces de usuario de forma similar a como se realizan con WPF (una de las partes con las que más me "he pegado" yo estos meses) y la existencia de una serie de herramientas que se integrarán en nuestros entornos de trabajo habituales:
-
BizTalk Server: Será el encargado de proporcionar el núcleo de nuestras aplicaciones SOA, encargándose de que sean escalables y posibilitando el despliegue, mantenimiento y monitorización de nuestras aplicaciones.
-
BizTalk Services: Un conjunto de servicios derivados de BizTalk que posibilitarán la comunicación entre plataformas, incorporará tecnologías de WF, autenticación y servicios remotos; entre otras características.
-
.Net Framework 4: Incorporará una serie de tecnologías que facilitarán el uso del paradigma de aplicación dirigida por el modelo (model-driven application paradigm), mediante el uso de WCF y WF.
-
Herramientas para Visual Studio 10: Herramientas que permitirán integrar todas estas fases del desarrollo en nuestro IDE Visual Studio, facilitando el control del ciclo de vida de soluciones end-to-end para el diseño de aplicaciones distribuidas.
-
Repositorio: Esta es una de las partes que más juego van a dar en el futuro. Imaginad disponer de un repositorio de modelos, de forma que en pocos pasos podamos crear, administrar y desplegar nuestras aplicaciones distribuidas. Esta tecnología se integrará tanto en Visual Studio como en BizTalk Server y en Microsoft System Center.
Un pequeño paso para el hombre, pero un gran paso para la Humanidad [:P]