Esse é o quinto de uma série de artigos do nosso blog que estão abordando o tema SOA, conceito antigo e atual que está enraizado nas atividades cotidianas da iProcess.
No primeiro post nós respondemos à pergunta: o que é SOA? Já no segundo definimos o que é um serviço e, no terceiro, trouxemos algumas estratégias que podem ser utilizadas na definição e na escolha de bons serviços candidatos.
O post seguinte abordou a relação entre SOA e BPM para garantir o sucesso da automação de processos. Neste artigo falaremos sobre Governança SOA como chave para o sucesso de uma implantação.
Objetivo: alinhamento com o negócio
A governança SOA consiste na definição de processos que garantam que os objetivos de SOA e da área de TI sejam atingidos. Para isso, a iniciativa deve:
- definir um conjunto de instrumentos gerenciais que a instituição estabelece para garantir o sucesso e a sustentabilidade da iniciativa SOA;
- definir claramente papéis e responsabilidades.;
- avaliar a criação de estruturas destinadas a gerir a iniciativa de SOA.
Se os processos de governança não forem claros, a iniciativa SOA cairá em descrédito e rapidamente fracassará. Nesse sentido, seu principal desafio é gerencial e não técnico, e o ponto central sempre será o alinhamento dos processos com o negócio.
Os processos de governança
De acordo com a experiência da iProcess e a literatura disponível, podemos citar alguns dos principais processos de governança a serem criados. São eles:
- capacitação das equipes em SOA;
- identificação dos possíveis serviços a serem criados do ponto de vista corporativo (portfólio de serviços);
- desenvolvimento de novos serviços;
- análise do aproveitamento dos serviços existentes;
- modificação/evolução dos serviços existentes;
- desativação de serviços;
- garantia do desempenho e estabilidade dos serviços em operação;
- estimular/recompensar o reuso e a criação de novos serviços que tragam ganhos;
- gestão da arquitetura corporativa (mesmo se a definição não precisa partir de SOA, SOA precisa disto);
- planejamento das iniciativas SOA;
- gestão de projetos SOA;
- gestão da inovação;
- definição de metodologia e padrões;
- gestão dos acordos de nível de serviço (SLA).
Estrutura de trabalho
A governança também define, se necessário, as estruturas de trabalho para a sua equipe. Ela poderá conter um escritório SOA, uma área específica de arquitetura ou um núcleo de conhecimento. Também poderá centralizar a supervisão dos projetos SOA.
Outra opção é implantar um Centro de Excelência SOA. Trata-se de um comitê que conta com a presença de um conselho de especialistas no assunto (técnicos e de negócio) que auxiliam na tomada de decisão e encaminhamento das atividades de SOA.
Responsabilidades
Algumas das atividades que são responsabilidade da equipe de governança são:
- gerência do repositório de serviços;
- gerência do registro de serviços;
- gerência da reutilização de serviços;
- definição de boas práticas e metodologias;
- treinamentos e atualização.
No caso de empresas que estão no estágio inicial de implantação de SOA, não é necessário pensar numa grande infraestrutura ou em soluções muito sofisticada para realizar as atividades de governança. A wiki corporativa ou mesmo planilhas podem ser suficientes para gerenciar e publicar as informações de governança.
Entre os documentos fundamentais a serem criados pela equipe de governança, sugere-se começar com a lista de serviços. Se essa informação não estiver disponível, existe um grande risco da não reutilização dos serviços já existentes.
SOA X Confiança
O sucesso de uma iniciativa SOA é baseada na confiança, já que quem consome os serviços conhece somente a sua interface e desconhece como ele foi implementado.
Nesse sentido temos um grande desafio de implantar SOA no Brasil, onde existe uma cultura muito forte da desconfiança no relacionamento entre desconhecidos. Se você não conhece tudo no detalhe, a premissa é desconfiar. É importante levar isso em consideração na hora organizar as ações de governança, inclusive criando alternativas para que isso não seja motivo de fracasso.