search



Jim Webber's Spaghetti Oriented Architecture

Assisti agora uma palestra relativamente antiga (Jan/2008) do Jim Webber sobre SOA, indicação do amigo Denys Sene. Gostei de modo geral, como lembrete pro motivo de usarmos Service Bus como ponto de integração ou tentarmos adotar SOA com seus requisitos de governança, centralização, etc.

Comentários sobre algumas frases:

  • "Vendor solutions appear: SOA gives IT a business process focus": yeah, sure thing. Essa é o resultado mais imediato da adoção de SOA :-P

  • "I must lock myself to a proprietary ESB": já não estamos travados de uma forma ou de outra, em vários níveis - produto, ferramenta, linguagem, sistema operacional, etc.? Qual o problema em usar mais um produto proprietário?

  • "Integration five years from now": parece que a visão "SOA" dele é a de um Service Bus fazendo integração...

  • "Integration ten years from now": ... e aqui está a confirmação da suspeita acima.

  • "How did this happen (a bagunça, alguns anos depois): tactical decisions": mais decisões, a essa altura do campeonato? Se a iniciativa fosse realmente SOA, entendo que esse tipo de questão não existiria nesse ponto.

  • "How did this happen: Centralised ownership of the ESB sometimes is an inhibitor": concordo muito, pode ser um problema - questões políticas, (falta de) tempo e/ou conhecimento técnico, etc.

  • "How did this happen: we charge DBAs responsible for ESB": tudo bem, o cara tem que exagerar pra provar seu ponto, mas tem limite. Espero que seja só isso, se bem que já vi DAs validando modelo de classes, criando "chaves compostas" pra obedecer a regra de persistência... medo...

  • "Spagetthi is a fact of life": concordo. O que não pode acontecer é não tentarmos minimizar esse problema de alguma forma, como ele mesmo coloca. Vejamos se a solução proposta por ele é razoável.

  • "Business-led integration: Integration is currently opaque to business": pra mim, é o outro lado da moeda da pretensão de que "SOA gives IT a business process focus" - um não entende o outro, ponto.


Desse ponto em diante, ele passa a expor sua proposta de integração, que é basicamente não ter nenhum ponto centralizador e utilizar WS-* para descrever requisitos de segurança, transação, QoS, etc., fazendo com que cada sistema escreva suas próprias integrações que é, como ele nomeou, "Spaghetti Oriented Architecture".

Na sessão de perguntas, a primeira é sobre repositório (governança de serviços). Ele responde que não é necessário, o próprio serviço tem seu contrato, e que algo que ajuda nesse sentido, já que nem tudo consta nele, é um wiki. Se a idéia é ser somente um container de informações assertivas, concordo. Mas, se a idéia é ter controle sobre ciclo de vida dos serviços (principalmente antes da entrada em produção), um repositório é, sim, crucial.


Duas afirmações (minhas):
  • Acho que SOA como abordagem é sim bastante complexa de implementar, e poucas empresas conseguem atingir um nível razoável de adoção.
  • Service Bus não é sinônimo de SOA. Tem quem venda (e quem compre) produtos partindo da premissa inversa, mas isso é assunto pra outra discussão.

Isso dito, um dos benefícios básicos que SOA trouxe foi justamente o conceito de Service Bus e seu uso. Não faz sentido abrir mão dos recursos disponibilizados - os básicos, que pra mim já justificam sua compra: transparência de endpoints, conversão de protocolos, administração centralizada, ponto único de mudança em caso de alteração de contratos.

Conclusão: concordo com vários pontos colocados, mas o central, que é esvaziar o valor de um Service Bus, desculpa, não dá. Ao contrário, acho que ele, por si só, já é de grande ajuda, mesmo que não venha acompanhado do discurso SOA e/ou outras abordagens (BPEL, BPM, etc.).


Sobre o apresentador, legal, tem fluência, liga várias idéias rapidamente, mas uma coisa que aprendi muito cedo: se não sabe fazer piadas, não as faça, principalmente em público. É constrangedor.


Abraço!
Posted by Fabio Mazanatti at May 15, 2010 - 14:20


The author does not allow comments to this entry