Palestra SPIDER em evento M$…

Bruno Braga on April 24th, 2008

Parece estranho mas sábado dia 26 vou pegar carona em um evento do pessoal de .Net (Microsoft) e fechá-lo com uma palestra Java sobre o projeto J2EE Spider.

Como o povo do MG-JUG está um pouco parado em relação a palestras, vai ser uma oportunidade de ter algo sobre Java por aqui.

O evento vai ser o dia todo, mas a palestra do SPIDER será na parte da tarde por volta das 15:30h.

A palestra é mais um bate papo sobre geração de código e apresentação da ferramenta.

Quem quiser chegar antes, desde as 9h tem palestras sobre tecnologias da Microsoft inclusive SilverLight que é concorrente do Java FX.

Até lá!

Subscribe to this blog's RSS feed

Palestras J2EE Spider

Bruno Braga on October 23rd, 2007

Em agosto foi publicado no Jornal da Universidade FUMEC (na qual fiz graduação) a seguinte notícia:


fonte: http://www.fumec.br/jornal/?p=306

Além disso fui convidado e estarei realizando uma palestra sobre o projeto amanhã dia 24 a noite e dia 25 de manhã na FUMEC.

E aproveitando o embalo, dia 26 estarei na UFOP apresentando uma palestra sobre o mesmo assunto no III Workshop de Computação UFOP / UNIPAC.

Segue o link do evento:

http://www.unipacto.com.br/workshop

Aproveitando o assunto sobre o projeto, espero terminar a parte de CRUD até o fim do ano (tempo é um grande problema) e realizar mais algumas palestras em outros lugares ano que vem. Até lá… =)

SOA – Resumo de Palestras

Bruno Braga on May 2nd, 2007

Depois das palestras do Sun Tech Days – BH (19/04), fiz um resumo para o pessoal aqui da empresa sobre SOA, dos principais assuntos abordados no evento. Hoje resolvi publicar este resumo também aqui no blog, para alguém que tenha interesse no assunto. Foram duas palestras diferentes sobre SOA mas que se completaram.
Um detalhe importante: este resumo não é oficial e foi feito com as minhas palavras e percepções, então me desculpem qualquer deslize ou esquecimento de algum detalhe do evento :P

Palestrantes do evento : Marco Aurélio (Squadra) e um Fernando Zuliani, brasileiro que trabalha na IBM americana como um dos arquitetos chefes do projeto Websphere.
O Marco falou mais de conceitos de SOA e o Fernando falou das ferramentas IBM para SOA e mostrou alguns exemplos usando as ferramentas.

SOA (Service Oriented Architecture)

O mundo real é feito de integração, esquecendo um pouco de sistema podemos ver que processos da vida real interagem entre si. Em qualquer lugar, inclusive as regras de negocio de uma empresa são alinhadas focando em objetivos únicos de negocio. Apesar disso, maioria das pessoas ainda vêem sistemas de forma isolada, onde um sistema não interage com outro ou não compartilham as regras de negocio que são compartilhadas no mundo real.

Além de avanços na arquitetura, atualmente o código legado e as próprias limitações tecnológicas estão forçando as pessoas a pensarem em sistemas de forma integrada. Exemplo: não compensa reescrever milhões de linhas de código de sistemas em COBOL que estão funcionando há anos. O custo para reescrever os sistemas legados de algumas empresas, e mesmo o tempo que isso vai gastar podem ser absurdos. O mais natural é que os sistemas novos, em qualquer tecnologia – Java, .Net, etc…, se integrem com sistemas legados; ou mesmo que sistemas novos em Java se integrem com sistemas novos em .Net.

Então para reforçar: o mundo é feito de integração, não deveríamos pensar em partes do negocio de uma empresa de forma isolada.

Mas como integrar sistemas? Utilizando arquivos texto? Webservices?

A resposta correta pensando nos processos de negocio de uma empresa como um todo é nenhum dos dois. Esses métodos trazem basicamente dois problemas:

- Dependência 2 a 2 entre sistemas – ou seja, um sistema depende diretamente de outro, que pode depender diretamente de outro, e assim por diante. Então estaríamos criando malhas infinitas de dependências de sistemas.

- Falta de integração, controle e regras nos serviços disponibilizados por cada sistema. Um serviço neste cenário é uma parte de um sistema que está sendo compartilhada para reutilização.

Uma forma de contornar isso e melhorar a integração de serviços de negocio é utilizando SOA.
Mas o que afinal é SOA? A primeira coisa que temos que pensar é que SOA não é uma tecnologia, SOA não é webservices, muito menos compramos SOA como um produto de prateleira. SOA é um conceito arquitetural, uma forma de pensar e projetar integração entre serviços de negocio, mas veremos que não só integrar – definir processos. A integração é um meio para conseguir SOA. Então podemos dizer que SOA é uma nova forma de pensar TI – com ela desaparece a idéia de sistemas monolíticos e aparece a idéia de processos de negócio.

A integração entre vários serviços (cada serviço pode ser uma parte de um sistema) é que forma um processo de negocio. Em SOA, estes serviços são plugados a um barramento central chamado de ESB (Enterprise Service Bus). Esse barramento possui uma serie de conectores que permitem a comunicação com diferentes tecnologias, desde SOAP (webservices), CORBA, RMI a tecnologias legadas. Por esses exemplos, podemos relembrar que Webservices é uma possível tecnologia utilizada para integração (talvez a mais recente), mas não a única. Além disso o correto seguindo a arquitetura SOA é que essa integração seja feita através do ESB, e não entre sistemas.
O grande motivo para isso é que serviços isolados não conseguem refletir os processos de negocio do cliente de forma adequada. É necessário haver uma orquestração e controle entre eles – em alguns casos somente fluxos de serviços, em outros regras que devem ser aplicadas a cada serviço, ou mesmo questões transacionais, controlando serviços em N servidores e tecnologias diferentes.

A forma de modelar processos de negocio da arquitetura SOA é utilizando BPEL (Business Process Execution Language). BPEL é uma linguagem baseada em XML onde podemos definir toda a orquestração dos serviços e regras do processo. Existem várias ferramentas visuais que permitem criar processos em BPEL e impedem que a pessoa trabalhe diretamente no XML. Uma dessas ferramentas é o IBM Websphere Business Modeler.
Para ESB, o produto da IBM é o Websphere Process Server, que possui uma série de recursos voltados para execução de processos de negócio.
Atualmente a maioria dos middlewares de integração dos ESBs são feitos em Java, como produtos da IBM, Oracle, Sun, BEA, open source, etc… Um dos motivos é que eles precisam se comunicar (plugar) com uma grande quantidade de tecnologias diferentes. Isso seria difícil de fazer utilizando algumas linguagens proprietárias que não se integram com muitas coisas.

Como conclusão, podemos dizer que o mundo real é baseado em processos de negocio, não em sistemas. Com SOA estamos alinhando a TI com esses conceitos. Isso gera agilidade, evita retrabalhos facilitando a componentização e reuso, diminui custos e facilita mudanças no processo do cliente. Devemos ter em mente que uma constante do mundo é que tudo muda, seja no processo das empresas ou na forma de trabalhar com TI. Devemos estar preparados para isso, oferecendo melhores soluções para o cliente, com mais agilidade e gerando maior lucro para a empresa.