OBA Composition Reference Toolkit - No caminho das aplicações compostas.

Olá pessoal, tudo certo?

E no path da construção de serviços, consumo de suas funcionalidades e composição de processos, encontramos as aplicações compostas. Esse assunto já foi bastante tratado aqui no blog e agora retorna com uma novidade: o OBA Composition Reference Toolkit. Ele foi anunciado publicamente no último ODC 2008 - Microsoft Office System Developer Conference | 2008.

Ref.: https://microsoft.crgevents.com/ODC2008/Content/default.aspx?p=UC3HYF 

Esse pacote de ferramentas da Microsoft permite a construção de soluções sobre a plataforma Office System 2007, coordenando artefatos como Workflows, bibliotecas e documentos do SharePoint, listas, páginas do SharePoint, Web Parts, addin's do VSTO Office Client, relatórios de BI, Dashboards etc. Desse modo, representa uma maior integração e unificação dos vários recursos já conhecidos para a construção de aplicações de composição ou componentes do OBA - Office Business Application.

A descrição original do pacote é muito interessante, veja:

"It integrates seamlessly with the Microsoft Office 2007 System to enable a prescriptive application composition experience for Information Workers to build and deploy Office Business Applications (OBAs) using semantically related OBA Components like Workflows, SharePoint document libraries and lists, SharePoint Pages, Web Parts, VSTO Office Client Add-ins, BI Reports, BI Dashboards etc. The toolkit comprises an OBA Composition Server and an OBA Composer. The OBA Composition Server implements metadata and provisioning services to enable cataloging OBA components, defining semantic relationships between components, defining the bindings between components and LOB systems, and to support deploying OBAs composed by users. The OBA Composer is a WPF application that consumes and uses the services of the OBA Composition Server to enable a rich client and prescriptive user experience for composing and deploying OBAs."

Composição de componentes, metadados, provisionamento, integração semântica, distribuição, etc. são alguns dos objetivos perseguidos pelo OBA Composition Reference Toolkit, como vimos na descrição acima.

Para relembrar, Aplicações Compostas são aplicações construídas através da combinação de apresentação, lógica e dados de múltiplos sistemas e/ou múltiplos componentes. Uma solução OBA - Office Business Application - representa um modelo de aplicação composta que aproveita os recursos e serviços disponíveis na suíte 2007 Office System da Microsoft. Entre os recursos mais conhecidos citamos:

  • Clientes do 2007 Office System, como Word, Excel, PowerPoint e InfoPath;
  • Serviços do Microsoft Office SharePoint Server 2007 (MOSS2007) como Excel Services, Forms Services, Security Services, Storage Services, Enterprise Search, Live Communication Server, entre outros;
  • Componentes de extensão escritos em .Net Framework 3.0, implementados sobre WF - Workflow Foundationou e WCF - Windows Communication Foundation;

Porém, utilizar todos esses elementos de forma integrada é um grande desafio. Por isso, quando pensamos numa solução de composição, algumas perguntas são muito comuns, por exemplo: como realizar a composição de todos os componentes disponíveis, seja de serviços, funcionalidades, interfaces, controles e dados? Sei que tenho disponível uma série de serviços em minha infra-estrutura, mas como integrar ou publilcar esses recursos? Ou ainda, quais mecanismos de integração devo utilizar, entre adaptadores, web services, serviços, assemblies, etc?

Parte destes questionamentos direciona a necessidade de um catálogo de componentes e metadados, para que os vários elementos de composição sejam disponibilizados para uma solução. Ainda, surge a necessidade de uma plataforma de desenvolvimento para a construção das interfaces de composição, que traga maior agilidade na escolha e consumo dos componentes desejados. Para uma solução Web, a imagem que vem é a de WebParts, por exemplo.

Sabemos que a arquitetura de uma solução OBA - Office Business Application é baseada nos serviços do Microsoft Office Sharepoint Server 2007 e nas funcionalidades dos clientes do 2007 Office System, como vemos a seguir:

image

Note que os serviços disponíveis suportam funcionalidades importantes como search de informações, mapeamento de identidades, metadados, catálogo de entidades, segurança, entre outros, podendo ainda haver customizações para uma solução específica. Exemplos de extensões de componentes são controles e funcionalidades integradas aos clientes do Office, que realizam o consumo de serviços ou aplicações LOB - Line Of Business - da empresa, como ERP's, CRM's, etc.

Nessa linha, a arquitetura do OBA Composition Reference Toolkit é apresentada a seguir:

image

Note que a visão é fornecer um metadado de serviços e componentes que serão registrados para posterior provisionamento, durante a construção de soluções de composição sobre o Sharepoint. Nesse cenário, o Microsoft Office Sharepoint Server 2007 Business Data Catalog (o conhecido BDC do Sharepoint) tem papel fundamental como infra-estrutura de metadado.

Entre os tipos de componentes OBA que o Toolkit suporta encontramos:

  • SharePoint Lists
  • SharePoint Document Libraries
  • Workflows
  • Site Pages
  • Web Parts
  • Content Types
  • InfoPath Forms e Form Libraries
  • Excel Services Reports
  • BDC Application Definitions
  • SSRS Reports
  • VSTO Application Add-ins
  • VSTO Documents

Com esse suporte de componentes, a construção de diversos patterns de aplicação OBA torna-se mais fácil e flexível, como:

  • Pattern de Aplicação Office como Interface Rica
  • Pattern de Integração de Documentos OpenXML
  • Pattern de Interface de Composição Web, Windows ou Híbrida
  • Pattern de Workflow de Documentos
  • Pattern de Colaboração Web
  • Pattern de Notificações/Tasks integrados com aplicações LOB

E numa visão sobre oportunidades de negócio, o OBA Composition Reference Toolkit pode ser uma infra-estrutura interessante como catálogo de componentes de composição para comunidades de ISV - Independent Software Vendors, enquanto seus componentes agrupados por indústrias ou soluções são disponibilizados para clientes. Esse é um outro assunto interessante que vamos tratar em posts futuros.

Um pouco de infra-estrutura ...

Como pré-requisitos para o OBA Composition Reference Toolkit, temos a seguinte infra-estrutura abaixo (retirado do Setup Guide):

  • Operating System: Windows Server 2003 SP2
  • IIS 6.0
  • SQL Server 2005 Developer or Enterprise Edition with SP2.
    • The SQL Server 2005 Express edition is not supported
    • A default instance accessible as localhost is required
    • SQL Server Reporting Services (SSRS) must be installed to deploy/test SSRS Report components
    • SQL Server Analysis Services (SSAS) must be installed to deploy/test SSAS OLAP Databases and components like SSRS Reports and Excel Services Reports that use an SSAS OLAP Database
  • .NET 3.5 Framework
  • Microsoft Office SharePoint Server 2007 Enterprise Edition
    • Enterprise features like the Business Data Catalog, Excel Services, and InfoPath Forms Services must be installed and activated to deploy/test related components.
    • SQL Server Reporting Services (SSRS) must be configured in the SharePoint integrated mode to deploy/test SSRS Report Components
  • Office 2007 Professional Edition
  • Visual Studio Tools for Office system 3.0 Runtime

Portanto, recomendo fortemente seguir os passos descritos no Guia de Instalação, antes de começar seus primeiros testes com a tecnologia. Veja abaixo:

OBA Composition Reference Toolkit Setup Guide
Ref.: https://files.skyscrapr.net/users/javeds/OBA%20Composition%20Reference%20Toolkit%20Installation%20and%20Setup%20Guide.pdf 

Esta primeira conversa foi só um aperitivo...

Em posts futuros, vamos detalhar um pouco mais a arquitetura do pacote, enquanto consideramos novas alternativas sobre a construção de aplicações de composição. Nesse contexto, o OBA Composer será uma ferramenta importante em nossas próximas discussões. O Mashup Corporativo ou Enterprise Mashup está caminhando para se tornar uma realidade. Nesse sentido, a computação orientada a serviço e o negócio orientado a serviço agradecem!!! :)

Alguns links mais...

OBA Composition Reference Toolkit
Ref.: https://msdn2.microsoft.com/en-us/architecture/cc196391.aspx

OBA Office Business Application
Ref.: https://msdn2.microsoft.com/en-us/architecture/aa699381.aspx

Por enquanto é só! Até o próximo post :)

Waldemir.