Monthly Archives: October 2007

Microsoft e Seu WebSite sobre SOA (finalmente)

Acreditem, a Microsoft acabou de lançar seu site sobre SOA. Um pouco tarde, é bem verdade mas, antes tarde… O mercado é tão cético quanto à estratégia (?) da Microsoft que foi necessário um artigo afirmar que, sim, a turma de Redmond tem uma “SOA Strategy“. O artigo vem do site Redmondmag.Com, que se entitula “A Voz Independente da Comunidade Microsoft” (sic).

Percebem que pelo meu “tom” eu desconfio seriamente das intenções da empresa que criou o Windows em relação a Arquitetura Orientada a Serviços.

Veja o que afirma este post de um blog da MSDN/Microsoft: “…But we’ve seen the error of our ways! SOA remains an important theme for the industry, a key opportunity for customers. And We, Microsoft, have slowly but steadily evolved and matured and broadened our thinking on SOA, and that’s a Good Thing…” Em outras palavras, “nós erramos, SOA é importante, temos avançados lentamente, a prova disso é este novo website” ?!? Novo site é um avanço?

Vamos ao conjunto de soluções que eles oferecem para implementar sua arquitetura orientada a serviços:

  • Visual Studio
  • System Center
  • .NET Framework
  • SharePoint Server
  • BizTalk Server

Conclua você mesmo. No more comments.

Category: SOA

Oracle faz oferta pela BEA (IV)


Na Sexta, 29/Out, a Oracle disse “No BEA, I will not pay US$ 21,00/share!”. No comunicado à BEA afirma, entre outras coisas:

  • Com exceção da Oracle, não houve nenhuma outra oferta pela BEA
  • Larry Ellison acha que US$ 17,00/ação é um preço mais do que justo e
  • Não irão aumentar a oferta – Duvidam que alguém irá pagar o preço solicitado pela BEA (US$ 21,00/ação)

Neste instante (vide data/hora do post abaixo), a ação da BEA está valendo US$ 16,50. Ou seja, o mercado está dando razão à Oracle?

Category: business

SOA e CEP


Primeiramente vamos à algumas definições de CEP:

  • CEP é uma nova tecnologia vide esta definição (Stanford University)
  • CEP envolve a o processamento e análise contínua de um grande volume de dados para detectar situações críticas (relacionadas ao negócio) à medida que estes eventos ocorrem. Veja esta definição de uma artigo da IBM:

CEP involves the continuous processing and analysis of high volume, high-speed data streams from inside and outside an organization to detect business-critical issues as they happen. In comparison to traditional intelligence processes that provide delayed analysis, CEP software processes event data streams and drives resulting business events in real time. Specific application examples include:

  • Real-time financial market data analysis and enrichment to drive algorithmic trading, or capture trading data for regulatory compliance reporting
  • RFID and sensor network data correlation and processing for healthcare asset and patient tracking, or retail distribution chain replenishment
  • Real-time clickstream analysis for customer experience management, interactive personalization, and fraud detection

CEP engines provide infrastructure software that abstracts from the developer the low-level programming details of event processing. This is analogous to the way databases abstracted storage, indexing, and access functions for data management.

Desde 1991 trabalho na industria de Telecom. Mesmo em companhias de médio porte (Operadoras), lidamos diariamente com milhões e milhões de eventos (e.g. as chamadas telefônicas). Algumas ações precisam ser tomadas em tempo real (principamente questões relacionadas com a Engenharia da Rede e Billing).

Juntamente com SOA (interoperabilidade, agilidade, lingua “franca” para integrar sistemas), o CEP se encaixa perfeitamente na realidade das empresas de Telecom.

A infra-estrutura de uma arquitetura SOA é tudo que CEP precisa. Todas as mudanças de status, toda transição de estados entre os participantes de um arquitetura SOA podem ser monitorados através de ferramentas previstas em uma solução de uma service-oriented architecture. CEP adicional “inteligência” no topo disso tudo.

Veja um exemplo desta afirmação neste excelente artigo:

“You can set up CEP to alert you when three parts of the flow start to be longer than five minutes,” he explained. “So you’re adding real-time business intelligence on top of your SOA infrastructure. I think that’s the way CEP is a complement to what you’re doing with SOA. They are generating events from services and CEP is able to add intelligence on top of that. You can see how your business is running by putting a real-time dashboard on top of it.”

Category: CEP SOA

Oracle faz Oferta pela BEA(III): US$ 17,00/share? No Way


O deadline dado pela Oracle termina neste Domingo (28/Out). A BEA, apoiado pelo seu “financial advisor” Goldman Sachs, topa conversar se o valor/ação iniciar em US$ 21,00. Os US$ 17,00 propostos pela Oracle? Nem pensar!

Veja trecho da nota de BEA:

“We continue to believe that Oracle’s unsolicited proposal to acquire BEA at $17.00 per share significantly undervalues BEA, and is therefore not in the best interests of BEA shareholders. Accordingly, we will continue to vigorously oppose a sale to Oracle at $17.00 per share .”

(fonte: Java.sys.com)

Category: business

A [R]evolução da Informação

Vídeo interessante sobe a [R]evolução da Informação (from YouTube.com):

Category: inovation

Conferência SOA: Melhores Práticas e Web Services

Nos dias 23 e 24/Out/07 eu o Denis Bertoluci estaremos ministrando uma palestra e um Workshop no evento “Melhores Práticas Arquitetura Orientada a Serviços (SOA) & Web Services“.

Este é mais um evento onde iremos apresentar um caso prático de implementação da Arquitetura SOA na Transit Telecom (empresa onde trabalhamos).

Será uma abordagem prática, sem muita teoria sobre SOA; o foco da minha palestra, e do Workshop conduzido pelo Denis, será a nossa experiência na implantação de uma arquiteura orientada a serviços.

Volte a este blog a partir do dia 25/10/07 e verifique as novidades desta palestra.

Category: presentation

Performance? WS-* não é a melhor escolha


Estou cada vez mais convencido de que quando a performance é um requisito, devemos avaliar alternativas para os Web Services.

O exemplo detalhado neste artigo é um case da bolsa de mercadorias de Nova York onde, devido a questões de performance, o Java Messaging Service (JMS) foi a escolha da Progress Software para implementação de um projeto baseado em SOA.

Este sistema irá suportar até 1.2 milhões de contratos (negociações)/dia (aumento de 38% no volume atual) e irá processar mais de 50,000 mensagens/segundo.

Segundo o CTO da Progress Software, Hub Vandervoot,

HTTP SOAP just isn’t reliable enough nor does it have the performance for the kind of traffic we’re talking about here.

Category: web-service

SOA e Open Source

David S. Linthicum faz uma interessante abordagem sobre SOA e as alternativas open source para implementar a arquitetura orientada a serviços. Neste artigo ele coloca de forma simples como a discussão deve ser conduzida.

Vou tentar resumir:

  1. SOA é uma arquitetura: você como arquiteto ou líder técnico de um projeto SOA tem que ficar atento às tecnologias corretas para a arquitetura proposta; sejam elas open source ou não.
  2. Open Source custa menos: não há discussão. Sou um fervoroso defensor do software livre e acho, sim, que ele pode ser aplicado em algumas situações. Considere esta alternativa para, no mínimo, validar a sua arquitetura.
  3. Open Source SOA é mais simples: reconheço que, às vezes, pode ser mais difícil de configurar, porém, concordo com o autor que esta abordagem simples e “rústicas” das opções de software livre facilitam o entendimento da arquitetura.

Em um cenário onde você precisa integrar uma aplicação departamental utilizando esta arquitetura, você acha razoável investir milhares de dólares ($$$) em um ESB? SOA pressupõe padrões abertos e está relacionado com uma nova forma de “pensar” os sistemas. Não há porque temer, a menos que seus requisitos de performance tenham um grande peso. Neste caso se faz necessária uma avaliação mais criteriosa.

SOA é um “estilo de vida” e, na minha humilde opinião, “estilo de vida” não pode estar baseado em poder de compra.

Category: SOA, soa-opensource


A Revista Mundo Java n.25 tem uma série de reportagens sobre o Arquiteto de Software.

Destaco nesta edição a excelente de capa com o título “O Papel do Arquiteto de Software“.

Algumas definições são básicas mas, exatamente por serem fundamentais, é sempre bom traze-las à memória:

  • Arquitetura é infra-estrutura na qual a aplicação estará “calçada”. É a fundação que vai garantir que o sistema poderá crescer e expandir sem problemas de “rachaduras”. O arquiteto(a) responde por decisões como:
    • qual framework utilizar
    • como será a integração com os demais sistemas
    • como devem ser tratados os requisitos de performance, segurança, usabilidade…
    • padrões a serem adotados
  • O que deve guiar a arquitetura? Requisitos
  • Um bom arquiteto deve saber ouvir a equipe de desenvolvimento
  • Qualidades como negociação e capacidade de se comunicar na mesma lingua do usuário também são importantes e são esperadas de um bom arquiteto(a)
  • Deve ser adepto da filosofia KISS!: Keep It Simple, stupid!

Por fim uma frase do texto: “A melhor arquitetura é aquela que resolve os requisitos da maneira mais simples possível

Se você pensa em ser arquiteto, é arquiteto ou “pensa que é ” arquiteto, recomendo a leitura.

Category: Architecture

Eclipse Libera 1a. Plataforma AJAX baseada em OSGi

Eclipse Foundation liberou nesta Seg, 15/Out/2007, o release 1.0 do Eclipse Rich Ajax Platform (RAP) . Leia aqui o press-release.

Segundo esta nota do Java Developer’s Journal:
- RAP 1.0 é a primeira plataforma AJAX, baseado no standard OSGi, que permite a criação de aplicações RIA com o Eclipse

- OSGi é um ambiente “service-oriented, component-based” que promove a interoperabilidade de aplicações e serviços. Empresas que irão utilizar o RAP serão capazes de criar aplicações AJAX/RIA que são componente-based e integra-las aos sistemas corporativos.

Mais sobre OSGi direto da Wikipedia:


Definição:

The Framework implements a complete and dynamic component model – something that is missing in standalone Java/VM environments. Applications or components (coming in the form of bundles for deployment) can be remotely installed, started, stopped, updated and uninstalled without requiring a reboot – management of Java packages/classes is specified in great detail. Life cycle management is done via APIs which allow for remote downloading of management policies. The service registry allows bundles to detect the addition of new services, or the removal of services, and adapt accordingly.

Category: RIA