Hoy en día es muy común intercambiar términos como Plataforma de Desarrollos de Aplicaciones y Servidores de Aplicaciones, si bien el primero tiene su origen en los estudios diseñados por la consultora Forrester y el segundo en los estudios de Gartner, ambos se utilizan para designar a una infraestructura que brinda servicios agrupados alrededor de 4 ejes fundamentales.
Interfaces de Usuario Los usuarios finales son claves para la mayoría de los procesos de negocio, habilitarlos de experiencias de usuario mas ricas que puedan llevar información a distintos dispositivos, independiente de la conectividad es vital para acelerar los procesos de adopción.
Servicios de Integración Un proceso de negocio se alimenta de datos que provienen de distintos orígenes, intercambiar mensajes entre aplicaciones es imprescindible, hacerlo de manera segura y mediante distintos protocolos también.
Servicios de Interoperabilidad Un proceso de negocio consume datos desde múltiples aplicaciones, una organización con cierta madurez y experiencia de negocio acumula sistemas heterogéneos en múltiples plataformas, la interoperabilidad de estos sistemas en único proceso de negocio es un desafío
Administración de la Gestión de Datos y del Ciclo de Vida de Aplicaciones La incorporación de nuevos servicios requiere de su catalogación, del descubrimiento de sus dependencias y del cumplimiento de ciertos contratos de servicios con las aplicaciones clientes de los mismos. Se hace necesario además mantener trazabilidad desde el punto de vista de la salud de los componentes físicos de estos sistemas, así como de información de la operación que sea significativa para mejorar la calidad de un proceso de negocio. Por
Como puede observarse la mayoría de los servicios agrupados en los 4 ejes anteriores son fundacionales y constituyen los cimientos para dejar al descubierto la verdadera necesidad de una Plataforma de Desarrollo de Aplicaciones a nivel del Negocio.
Desde el punto de vista del negotiable la agilidad es la premisa mas importante y la promesa de una plataforma de desarrollo de aplicaciones de nivel fundacional tiene poco o ningún valor, primero porque el negocio cuenta generalmente con un conjunto de aplicaciones básicas para su funcionamiento y solo necesita agregarle valor a estas en el contexto de un proceso o flujo de negocio en particular. Segundo, porque de esta visión de negocio como resultado de un conjunto de actividades que pueden estar conducidas por aplicaciones, sistemas y personas organizadas en un proceso de negocio, comienza a generarse todo un conjunto de datos que pueden utilizarse para medir y evaluar la gestión de este proceso y se necesita de una plataforma flexible que permita capturarlos y presentarlos ágilmente con el fin de optimizar dichos procesos.
Es por esto que una infraestructura de servicios como la que brinda Microsoft Office System es vital para darle a las aplicaciones de negocio la agilidad que las organizaciones necesitan.
Permítanme entonces describirles cuales son los servicios presentes en esta plataforma y sus principales responsabilidades.
Procesos de Negocio o workflows Crear Procesos de Negocios, orquestar las actividades que componen los mismos, asociarlos a repositorios de documentos y registrar en estos procesos los servicios que brindarían trazabilidad de la operación y de la efectividad de este proceso desde el punto de vista del negocio
Búsquedas Facilitar e integrar búsquedas desde distintos orígenes de datos y desde las distintas aplicaciones que componen mi línea de negocios.
Catálogo de Datos del Negocio --Business Data Catalog (BDC) Posibilidad de consumir y mostrar datos de las distintas aplicaciones de negocio en portales, desde su origen, sin necesidad de transformarlos ni concéntralos en un repositorio único.
Interfaz de Programación Posibilidad de extender las funcionalidades básicas mediante interfaces de programación, utilizando código .NET administrado y las herramientas estándares de desarrollo.
Formato Abierto XML Facilidad para crear documentos muy ricos del lado del servidor, sin necesidad de tener las herramientas clientes, consumir estos documentos del lado del cliente y enriquecerlos mediante las aplicaciones clientes tradicionales y hacerlos participes de procesos de negocios que se ejecutan y que consumen y alimentan la metadata de estos documentos para tomar decisiones significativas desde el punto de vista del negocio.
Seguridad y Aplicaciones Web Modelo de desarrollo de aplicaciones único, independiente de que las aplicaciones sean expuestas en portales o como aplicaciones Web independientes, posibilidad de adjuntar e integrar distintos repositorios de identidades.
Las principales tecnologías presentes en una aplicación OBA las podemos agrupar en 4 grandes capas: (1) capa de presentación, capa de de productividad, capa de aplicaciones y capa de datos, a continuación enumeramos las distintas tecnologías presentes en cada una de estas capas:
Aplicaciones Clientes: Otulook, Excel e InfoPath
Portales, Sitios, Páginas y Web Parts
Bibliotecas de Documentos Bibliotecas de Formularios Listas de SharePoint
Excel Services Aplicaciones de Negocio Orquestadores de Procesos de Negocio BDC
Repositorios de Identidades Repositorios de Datos Herramientas de Inteligencia de Negocios y de Minería de Datos
En el inicio de este artículo habíamos planteado el paralelo entre una plataforma de desarrollo de aplicaciones y una plataforma de desarrollo de aplicaciones que entrega un alto valor para el negocio, si lo que perseguimos es lo segundo entonces necesitamos comprender cuales son las distintas alternativas presentes en la plataforma para agregar valor en cada una de las secciones o capas en las que agrupamos las tecnologías en el apartado anterior.
Para los clientes contamos con un conjunto de extensiones para Visual Studio conocidas como Visual Studio Tools for Office (VSTO). Estas extensiones brindan un conjunto de herramientas y plantillas para potenciar las aplicaciones Office tradicionales.
Para los portales podemos seleccionar entre: SharePoint Designer y Visual Studio en dependencia de la complejidad y de la tecnología a extender. Por ejmeplo utilizando SharePoint Designer podemos diseñar y agregar valor a los workflows utilizando un conjunto de actividades predefinidas, en cambio con Visual Studio podemos construir Workflows y extender las actividades básicas que componen estos workflows y desarrollar wweb parts y aplicaciones Web completas que pueden residir en el portal
En esta capa podemos agregar valor utilizando las herramientas estándares de Visual Studio y plantillas predefinidas para el manejo y la presentación de documentos e informes.
Esto es todo por ahora, en la segunda parte de este artículo estaremos cubriendo los principales competidores en el mercado. Los principales socios de negocio con los que estamos trabajando en Chile y que pueden agregar valor en esta tecnología y los principales recursos disponibles para comenzar a desarrollar aplicaciones sobre esta plataforma.
Alejandro Pacheco