Blog de Miguel Llopis

Update: ¿Qué hay de nuevo por Oslo?

Hace ya más de un mes desde mi último post, concretamente cinco semanas… Para cumplir con mi promesa de “al menos un post al mes” (espero que este mes pueda escribir al menos dos más que guardo en la recámara desde hace varias semanas pero para los que no he encontrado el momento oportuno todavía), vuelvo a la carga para actualizar con las últimas novedades en torno a Oslo. `

[Aviso de antemano: Es un post bastante largo y denso, aún así te agradeceré que lo leas y aportes el feedback que te parezca oportuno, será bien recibido.]

Hablando desde la “línea de combate” del proyecto, hace unos días que terminamos una etapa de desarrollo bastante sustancial en nuestro calendario. Esto incluye nuevas características tanto en el lenguaje M como en Quadrant y nuestro repositorio relacional de modelos, de las cuales os hablaré próximamente. En este momento, dedicamos nuestros esfuerzos a estabilizar todas estas nuevas funcionalidades que apenas acaban de aterrizar en el proyecto, cerrar algunos “asuntillos” pendientes y, básicamente, realizar una parada en boxes para repostar y prepararnos para volver a acelerar en el desarrollo, con una meta parcial en la mente de todos nosotros: PDC 2009.

En otro orden de cosas y hablando desde una perspectiva puramente organizativa del proyecto, la novedad principal es la asociación del equipo de Oslo con el equipo de Data Programmability (responsables de algunas tecnologías de acceso programático a datos como son ADO.Net, Astoria, EDM y Entity Framework).

Este movimiento nos aporta una serie de ventajas que repercuten en una mayor especialización y mejor posicionamiento de nuestras tecnologías, que finalmente resultarán en un beneficio global en el ecosistema de desarrollo en .Net framework.

Para comprender mejor el alcance de dichas mejoras, conviene repasar la evolución de Oslo, sus líneas generales y, por supuesto, también la experiencia adquirida a través del feedback recibido desde la comunidad.

Hace ya casi dos años desde el primer anuncio oficial sobre Oslo, realizado en la SOA & BP Conference, en Octubre de 2007 en Redmond. En aquel momento, nos referimos a Oslo como un conjunto de esfuerzos combinados a través de diferentes tecnologías y productos, para simplificar el ciclo de desarrollo de aplicaciones. Dichos esfuerzos se verían reflejados en diferentes tecnologías existentes: Visual Studio, .Net framework, BizTalk y SQL Server.

Acercándonos un poco más en la línea cronológica al momento actual, el siguiente punto de inflexión tuvo lugar hace casi un año, en el PDC 2008. En dicho evento, realizamos una serie de sesiones presentando las diversas tecnologías de modelado que formaban parte de Oslo, así como publicamos nuestra primera CTP. Al aproximarnos a este hito, nos dimos cuenta de algunos aspectos reseñables, principalmente en la forma de canalizar nuestro discurso para que llegara de forma clara y unívoca al público: en primer lugar, el hecho de englobar bajo el codename Oslo diferentes tecnologías como BizTalk, Workflow Foundation, herramientas de modelado (M & Quadrant), etc, generaba cierto grado de confusión en la audiencia. De modo que, para evitar dicho efecto, optamos por canalizar diferentes tecnologías de Oslo en nuevas versiones de productos ya existentes, en lugar de crear una nueva generación de herramientas bajo el nombre de Oslo.

Debido a esto último, algunas de las tecnologías integrantes del proyecto en su origen ya han sido liberadas. Cuando hablamos de algunas partes de .Net framework 4.0, como las nuevas versiones de Workflow Foundation y WCF, BizTalk Server 2009, el servidor de aplicaciones Dublin, MEF o la pila unificada de XAML; debemos tener en cuenta que dichas tecnologías formaron parte del proyecto Oslo en su momento, y por tanto, la motivación con la que fueron desarrolladas, el objetivo común subyacente, se encuentra totalmente alineado con las metas de Oslo.

Realizando un poco de autocrítica sobre este proceso, encontramos aspectos positivos y negativos. En el lado positivo, la habilidad del equipo para liberar partes del proyecto consolidadas (WCF 4.0, WF 4.0, etc) que fueran introduciendo en el ecosistema de desarrollo algunas de las metas transversales de Oslo, mientras que otras partes del proyecto aún en fase temprana han ido evolucionando de forma apropiada (M, Quadrant). En el lado negativo de la balanza, quizá sería reprochable el hecho de haber mantenido el codename Oslo activo durante mucho tiempo, y por ello haber contribuido a la confusión de la que os hablaba un par de párrafos más arriba… En el momento actual, emplearemos el codename Oslo para referirnos única y exclusivamente a la plataforma de modelado: M, Quadrant, repositorio.

La piedra angular de Oslo fue desde sus orígenes la evolución hacia la creciente utilización de contenidos declarativos en plataforma .Net (XAML), que fueran dinámicos y, al mismo tiempo, que pudieran ser empleados para dirigir nuestras aplicaciones y entornos de ejecución (MDD/MDA). Si pensamos en el repositorio de modelos de Oslo, concretamente, siempre hemos hablado de un repositorio relacional de modelos, implementado sobre SQL Server. Dicho repositorio contiene (meta)datos, hablando sobre datos que contienen información sobre nuestras aplicaciones y empleo el término “meta” entre paréntesis puesto que a menudo también induce a confusión el uso de dicho prefijo. Dichos metadatos son fácilmente maleables mediante nuestras tecnologías de modelado: M y Quadrant. (podéis encontrar una explicación profunda sobre esto en este artículo, y en estas dos presentaciones: 1 y 2)

Continuando con este análisis desde una perspectiva evolutiva del proyecto, cabe destacar que, especialmente en este último año, existe un hecho que se ha puesto notablemente de manifiesto para nosotros. Este hecho es la estrecha vinculación entre nuestra plataforma de modelado y la pila de programación de acceso a datos (ADO.Net, EF/EDM, Astoria, etc.).

Tal es así, que consideramos necesaria una alineación consistente entre ambos “mundos”, y es por ello que decidimos realizar esta asociación a nivel organizativo.

Por tanto, y después de una reflexión que espero no os haya aburrido demasiado…

¿Qué significa este cambio para los mortales desarrolladores en plataforma .Net?

Significa que, de ahora en adelante, vais a escuchar hablar sobre el lenguaje M de una forma mucho más ligada a EDM y Entity Framework; de la herramienta de modelado Quadrant asociada a diferentes herramientas de Visual Studio y, por último, podréis apreciar cómo el concepto un tanto abstracto de MDD/MDA (quizá rayando lo esotérico en algunos casos, jeje) evoluciona de la mano de los avances que se produzcan en las versiones futuras de .Net framework.

Y para terminar, hablando del futuro y puesto que ya he citado el PDC 2009 (por ahí comenzó el post y por ahí va a terminar), os anuncio una excelente sesión en la cual hablaremos largo y tendido sobre el estado actual del proyecto (Data Programming and Modeling for the Microsoft .Net Developer), que será impartida por los señores Don Box y Chris Anderson.

Esperamos veros por allí!!

PD.: Para aquellos ávidos de más información al respecto de estas novedades, podéis echar un vistazo a este post de Doug Purdy, “The Man” :), quien además de dominar mejor que yo la lengua de Shakespeare, explica todo ello en una mejor prosa.

Posted: 19/8/2009 13:06 por Miguel LLopis | con 3 comment(s) |
Comparte este post:

Comentarios

Motivos de un ensamblado ha opinado:

Una característica común a todos los grupos de producto en Microsoft es su trabajo constante

# November 19, 2009 9:59 AM

Miemblogs ha opinado:

Una característica común a todos los grupos de producto en Microsoft es su trabajo constante

# November 19, 2009 10:08 AM