sexta-feira, 31 de dezembro de 2010

Criando um Processo BPEL usando Sonic ESB

Você trabalha na área de integração de TI numa operadora de telefonia do Brasil e seus gerentes funcionais lhe pedem para criar um serviço que possa dizer se determinado número de celular pode ou não ser portado de uma operadora para outra. Você sabe que para fazer isso, você deve primeiro consultar na base de dados de contratos de clientes da operadora para saber se aquele número está disponível, bem como assegurar que o dado número já não possui um pedido de portabilidade numérica feito por outra operadora concorrente.

Este serviço precisa ser disponibilizado nos próximos 25 minutos, pois o novo portal Web da operadora já contempla esta funcionalidade (de fato uma das funcionalidades mais esperadas neste novo portal) mas devido a problemas de comunicação entre as equipes do projeto, esqueceram de avisar você que o portal deve ser lançado hoje. A unica coisa que você possui em mãos é um Web Service chamado de ProvisioningService que responde se o número de celular está ou não disponível e um Web Service da Anatel chamado GatewayAnatelService que responde se o número possui ou não um pedido de portabilidade numérica. E agora, o que você faz?

Neste post, iremos mostrar como usando o Sonic ESB, podemos criar um Web Service que atenda a funcionalidade especificada. Para isso, criarei passo à passo um Web Service composto, ou seja, um Web Service que é baseado em um ou mais Web Services existentes. E pra isso, usarei a tecnologia BPEL. Utilizando o Sonic ESB, irei criar em apenas 25 minutos, um processo BPEL (Web Service) que irá responder se determinado número de celular está ou não disponível para portabilidade numérica.

Parte 1 - Criação Inicial do Processo BPEL e Definição da Interface da Operação de Consulta de Disponibilidade



Parte 2 - Implementação do Fluxo do Processo BPEL através dos Web Services Previamente Implementados



Parte 3 - Implantação do Processo BPEL dentro do Sonic ESB e Testes usando Cenários e Ferramentas de Depuração




domingo, 26 de dezembro de 2010

Depurando Cenários de Integração usando Sonic ESB

Você lembra do excelente artigo escrito por Gregor Hohpe em 2002 sobre EAI dirigido à testes? Sem dúvida, é até hoje um dos melhores artigos sobre o assunto, mesmo nos dias de hoje. No Artigo, ele fala sobre como conduzir testes de arquiteturas baseadas em integração e de multiplas camadas, cenário este que pode ser bem desafiador sem as ferramentas adequadas. Cenários de integração são por natureza dificeis de testar, pois você envolve diversas plataformas e aplicações distintas para atender a uma necessidade da organização.

Neste post, iremos mostrar os recursos e ferramentas que o Sonic ESB
disponibiliza em seu ambiente de desenvolvimento para realizar complexas tarefas de depuração de cenários de integração, não importanto o tamanho ou natureza do cenário à ser testado. Confira estes recursos no vídeo abaixo.



quinta-feira, 23 de dezembro de 2010

Criando um Web Service usando Sonic ESB

Imagine que você recebe a tarefa de disponibilizar para um parceiro de negócios, cliente ou mesmo fornecedor, um Web Service que ofereça a capacidade de buscar seus produtos em sua base de dados corporativa. Mas você possui apenas uma hora para fazer isso, e a única coisa que você possui pronta é a base de dados contendo os produtos. A equipe de infra-estrutura aguarda que em uma hora você tenha este Web Service pronto e funcional para que eles possam somente disponibilizar no servidor da Web exposto fora do firewall. Você deve implementar os seguintes requisitos funcionais e não-funcionais:
  • Busca de um determinado produto na base de dados, dado o código de identificação (chave primária) deste produto
  • Exibição uma mensagem descritiva de falha caso o produto não seja encontrado no Banco de Dados
  • Exibição uma mensagem descritiva de erro caso ocorra uma falha de comunicação com o Banco de Dados
  • Conectividade com o servidor de banco de dados MySQL 5.1, suporte a transações XA e mecanismo de fail-over para JDBC
  • Expor este Web Service numa porta específica do servidor de aplicações que irá hospedar o Web Service (Ex: Porta 5555)
E agora, o que você faria?

Este é o tipo de cenário que o Sonic ESB visa resolver. Através do Sonic ESB, você pode criar e manter processos de integração complexos como este, como o mínimo de esforço, sem ter que perder tempo com cansativas e errôneas horas de escrita de código em Java, C#, Ruby ou mesmo XML, além de poder garantir os requisitos funcionais e não-funcionais através de cenários de testes integrados e de regressão.

Para mostrar como isso pode ser feito, criei cinco vídeos que mostram passo à passo, a criação deste mesmo cenário, e a fim de suprir as expectativas, o cenário é criado e testado em apenas 48 minutos, menos de uma hora. Desafiador concorda? Pegue seu cronômetro e veja como isso é possível nos vídeos abaixo.

Parte 1 - Definição de um Modelo de Dados Canônico e dos Tipos Complexos



Parte 2 - Implementação da Lógica Inicial do Web Service



Parte 3 - Implementando á Consulta do Produto no Banco de Dados MySQL



Parte 4 - Tratando à Exceção "Produto não Encontrado" usando Faults



Parte 5 - Tratanto o Erro "Falha de Comunicação com o Banco de Dados"



Este é o tipo de velocidade que somente o Sonic ESB pode lhe trazer. Não é a toa que o Sonic ESB é o melhor ESB do mundo: Além de rápido e elegante, ele é super escalável e resiliente. Desculpe a concorrência mas quando o assunto é Sonic, o resto é literalmente, apenas o resto.

domingo, 5 de dezembro de 2010

Introdução ao Progress Savvion BPM

Quem acompanha a Progress Software sabe que, ela é uma empresa que diferentemente dos seus concorrentes, está continuamente a frente do seu próprio tempo, seja tecnologicamente, seja estratégicamente. A sua diferença se dá nas tecnologias e produtos que ela possue, seja por sua própria criação, seja pelas empresas que ela adquiriu ao longo dos anos. Alguns exemplos disso são suas soluções de CORBA, resultado da aquisição da IONA Technologies, líder mundial em soluções CORBA. Outro bom exemplo é o ESB mais rápido, simples e robusto do mundo, o Sonic ESB, resultado da aquisição da Sonic Software. Outro exemplo também interessante é sua plataforma de governança SOA conhecida como Actional, resultado da aquisição da MindReef. Vários outros exemplos podem ser citados também como DataDirect Technologies, Fuse Source, Apama entre outros.

Dentre todas estas aquisições, uma delas sem dúvida foi a melhor semente que a Progress Software plantou: A aquisição da Savvion. A Savvion é uma empresa que foi adquirida pela Progress Software em 11 de Janeiro de 2010, mas que possui uma estória de sucesso de 15 anos com clientes do mundo todo na área de BPM e tecnologia para melhoría contínua de processos de negócio. Agora imagine o que são 15 anos (5.475 dias) sendo uma empresa focada num único nicho, e que a cada ano vivido, investiu cada vez mais em sua tecnologia. O que você espera, no mínimo de uma empresa como essa? Se você pensa como eu, deve imaginar com certeza uma plataforma de BPM que já passou por diversos ciclos de melhoría e que se encontra num nív
el de maturidade muito alto. Deve esperar por uma plataforma de BPM que já foi utilizada por vários clientes do mundo todo, clientes esses que devem ter várias estórias de sucesso para contar. Diferentemente das plataformas de BPM dos concorrentes que possuem alguns poucos anos de experiência (entre 4 à 6 anos de existência), a Savvion definiu e liderou a essência do que é e o que deveria ser uma plataforma de BPM. Afinal de contas, estamos falando de 15 anos, e nada mais justo que ela seja pelo menos um dos líderes do Forrester.


Para apresentar um pouco do que essa plataforma de BPM é capaz, preparei especialmente para vocês uma sequência de vídeos que mostram, passo à passo, a modelagem, automação, simulação, implantação, utilização e monitoramento de um processo de negócio simples, mas que revela o potencial da solução. Neste post irei dar inicio à bateria de demonstrações dos produtos da linha Savvion, onde espero poder demonstrar a realidade que eu vejo: o poder e a supremacia na área de BPM que somente o Progress Savvion pode oferecer. Espero que gostem!

Parte 1: Modelagem de um Processo de Negócio
usando Savvion BPM Studio



Parte 2: Automação do Processo de Negócio usando Savvion BPM Studio



Parte 3: Simulando o Processo de Negócio
usando Savvion BPM Studio



Parte 4: Implantando o Processo de Negócio no Savvion BusinessManager



Parte 5: Utilizando o Processo de Negócio no Savvion BPM Portal



Parte 6: Monitorando o Processo de Negócio usando o BAM do Savvion (Savvion BusinessExpert)