Trabalhadores do SOA, univo-vos !

Eu havia me comprometido a escrever um post sobre SOA, dar a minha visão no meu Blog sobre a importância do tema dentro de uma abordagem de Arquitetura Corporativa, o próprio TOGAF endereça o assunto de forma bem abrangente dentro da gestão entrega de arquitetura na fase C do ciclo do ADM. Este é um assunto fascinante pelo calor que ele gera, é uma dicotomia digna dos debates entre a direita fascista e a esquerda socialista. Eu por natureza me interesso por assuntos polêmicos e atualmente gerencio uma área de integração SOA, por isso me debrucei sobre a literatura do SOA e tive contato com algumas empresas especializadas. Neste Post tenho por objetivo esclarecer sobre os possíveis usos e ganhos que eu enxergo na implementação deste conceito e como ampliar o seu uso nas empresas sem perder a razão e deixar-se levar por parcialidade e puritanismo.

Para situar o leitor eu atuo em uma empresa de grande porte, acho importante dizer isto, pois não é toda empresa que colherá benefícios com uma iniciativa SOA (primeira heresia para os puritanos do SOA).

Uma das primeiras interações que tive com o tema “SOA” tive acesso a um documento relatando a sua morte, logo pensei: trabalhar com SOA é um trabalho inglório, mico, patinho feio, alto custo e baixo valor para a TI e para o negócio. Sei que o SOA não é mais novidade para ninguém, acredito que os profissionais que atuam nesta área  (principalmente os evangelistas e comissários) devem abdicar da pretensão de integrar absolutamente tudo, sem coerência e sem ganhos efetivos para o negócio, indo por este caminho é bem capaz que o SOA morra mesmo.

Alguns evangelistas de SOA lembram a velha guarda do PC (partido comunista), que ainda acredita que há futuro para um comunismo como o que a URSS preconizou no passado.

 Sou adepto da maiêutica que é o (péssimo) hábito de fazer perguntas – Por qual motivo a sua empresa deseja adotar/implementar o SOA?

  1. Para transformar TODOS os sistemas da empresa para arquitetura de serviços?
  2. Para resolver problemas de comunicação com legados?
  3. Por imposição da matriz?
  4. Para reduzir custos de TCO?
  5. Para integrar com o BPM e atuar mais rápido em processos carve-out e carve-in?
  6. Para desativar dblinks ?
  7. Pois tenho roadmap de construção apenas dos serviços que façam sentido dentro das métricas de reuso e relevância para organização.

Depois de entender e responder algumas das perguntas elencadas acima é necessária a realização do planejamento. Este é um projeto de longa duração, é muito difícil cobrir todas as etapas e sistemas num único ciclo de implementação e também não é um projeto meramente técnico, é importante ter uma visão de custo benefícios. Minha dica é priorizar as vitórias rápidas para oxigenar o projeto. Dentre a bibliografia que li gostei bastante da metodologia sugerida por um dos “papas do SOA”  David Linthicun que é descrita nas seguintes fases:

  1. Entenda os objetivos de negócio e defina critérios de sucesso;
  2. Defina o domínio do problema;
  3. Entenda todas as aplicações envolvidas;
  4. Descubra e entenda todos os serviços no domínio do problema;
  5. Descubra e entenda todos os processos no domínio do problema;
  6. Identifique a necessidade de criar novos serviços;
  7. Identifique a necessidade de criar novos processos;
  8. Selecione as tecnologias e ferramentas a serem usadas.

Dentre as dificuldades de montar uma área de SOA eu entendo que o trabalho de base para subsidiar todo o entorno que será consumido como artefatos é um dos principais desafios, além disso, dispor de pessoas com perfil e conhecimento nas linguagens correlatas do SOA é bastante desafiador, pois ao contrário do senso comum pude constatar que nem todo desenvolvedor em Java está preparado para produzir bem numa área de desenvolvimento do SOA. Vejo com frequência a baixa relevância que é dada às pessoas, e vivencio no dia-a-dia a dificuldade em conseguir bons profissionais com um perfil generalista para atuar na área de Arquitetura de TI (Processos/Negócio, Informação, Sistemas, Integração e Tecnológica) e quando encontro estes profissionais “mosca branca” nem sempre tenho budget para bancar um profissional deste calibre.

Dentre os erros mais comuns que levam a morte precoce alguns projetos SOA está a definição prematura da ferramenta de suporte antes do planejamento e a visão integral do projeto. É necessário considerar o design de serviço e não se ater a tecnologia ou a um fabricante específico antes de listar os requisitos para a área SOA. E do total dos requisitos para entrega desta área/projeto, não são os requisitos técnicos que são os mais importantes, e sim as necessidades do negócio.

Além disso, é necessário lembrar que o SOA requer uma infraestrutura tecnológica proporcional ao número de serviços que se planeja implementar. Servidores, monitoração e administração especializada no fabricante de ferramenta de SOA que for escolhido como suporte ao processo. Normalmente esta parte do escopo é negligenciada e no computo geral pode chegar a 50% do TCO da área como um todo.

Respondendo ao questionamento se o SOA está morto, sem medo de errar, posso afirmar que o SOA enquanto utopia, propagandeado por fabricantes como a proposta mágica de integração entre TODOS os sistemas das empresas está definitivamente morto.

A integração corporativa vai muito além do SOA.

Minha equipe de integração vai muito além do SOA, nosso foco é no serviço de integração de dados e sistemas, isso pode acontecer utilizando SOA, pode acontecer utilizando-se de web services (que não são tão diferentes em sua forma do próprio SOA) utilizando processos ETL e até Jobs de Autosys. A área de integração deve ser agnóstica quanto a metodologia e sistema, e pensar na integração quanto a real necessidade de negócio e direcionar pelo melhor caminho no que tange a custo e benefício.

Isto significa que nem todas as integrações serão através do SOA, para serviços off-line com baixa necessidade de atualização ou mesmo para serviços que não tenham necessidade de normalização, outros métodos de integração serão mais eficientes e não trarão sobre carga de gestão para o ambiente SOA.

Tentei não chover no molhado e acrescentar um pouco de informações para este assunto que já foi tão debatido. E como certa vez disse o e poeta Humberto Gessinger: Força não há, capaz de mudar uma ideia cujo tempo não tenha chegado. E me parece que o SOA se adotado com os critérios corretos, suporte da alta gestão da TI, planejamento de longo prazo, com estudo de viabilidade financeiro e payback dos investimentos necessários, faz total sentido e ainda não está nem perto de chegar ao fim.

Feliz 2015 para todos.

 

Facebooktwittergoogle_plusredditpinterestlinkedinmailby feather

Você pode gostar...