29 de maio de 2009

SOA - Arquitetura Orientada a Serviços

Me espanto com a complicação que vejo no mercado quando o assunto é SOA. Também me espanta o desinteresse que vejo muitos desenvolvedores tratarem o assunto. Me espanta mais ainda a confusão que essa complicação e desinteresse juntos estão causando.

Costumo dizer que a maior contribuição que SOA trás para TI é a unificação do vocabulário em torno de uma palavra: serviço. Essa palavra permite que todos os interlocutores, desde o usuário, passando pelos analistas, desenvolvedores, gerentes de projeto até a área de operações/produção falem a mesma língua. Ao saber que num determinado servidor roda um serviço crítico para o negócio, a área de operações pode calcular o resultado de uma melhora no desempenho dessa máquina. A área de desenvolvimento pode mapear quais serviços suportam os processos de negócio e focar seus esforços no desenvolvimento dos serviços mais importantes.

Técnicamente, SOA não muda a maneira de desenvolver software. Mas do ponto de vista estratégico, permite que pela primeira vez se use um termo simples e que tem significado para quem depende do software. E isso unifica esforços e garante que todos os membros de toda a cadeia produtiva do software falem a mesma língua. SOA permite preencher o "gap" que existe entre o software (componentes) e o negócio (processos). É isso!

Aqui vocês podem ver uma palestra que ministrei na abertura de um curso de pós graduação em Engenharia de Software com UML.

Sobre modelagem de software utilizando SOA com UML, recomendo um estudo da técnica SOMA, e também do profile para serviços de software, desenvolvidos pela IBM.

Depois para descontrair, recomendo uma visita ao site www.soafacts.com. É hilário.

Grande abraço!

Nenhum comentário: