João trabalha com desenvolvimento na área bancária, e agora sua empresa deseja integrar os serviços oferecidos por EJBs e objetos CORBA dentro de uma arquitetura SOA. Para criar um processo que envolva ambos os componentes, dentro da nova arquitetura, João deve organizar o fluxo de execução com a utilização de:
- A)ESB;
ESB e um barramento de servicos para integrar e mediar comunicacao, mas nao e a linguagem usada para definir o fluxo do processo.
- B)REST;
REST e um estilo arquitetural para APIs e recursos, nao uma ferramenta de orquestracao de processos entre componentes.
- C)BPEL;
BPEL e a linguagem voltada a orquestrar servicos e organizar o fluxo de execucao de um processo em SOA.
- D)WSDL;
WSDL descreve interfaces e contratos de servicos web, mas nao coordena a sequencia de execucao do processo.
- E)XSD.
XSD define estrutura e validacao de documentos XML, sem papel de controle de fluxo ou integracao processual.
Gabarito: C
Em SOA, a ideia nao e apenas expor servicos isolados, mas fazer com que eles trabalhem juntos em um processo de negocio. Quando voce precisa integrar componentes diferentes, como EJBs e objetos CORBA, surge a necessidade de coordenar chamadas, regras, sequencia de execucao, tratamento de excecoes e retorno de resultados. Ou seja: nao basta conectar, e preciso orquestrar. E ai entra o BPEL (Business Process Execution Language). Ele foi criado justamente para descrever e executar processos de negocio compostos por varios servicos web, funcionando como uma linguagem de orquestracao. Na pratica, ele organiza o fluxo entre os componentes, dizendo quem chama quem, em que ordem, sob quais condicoes e com que tratamento em caso de falha. Por isso o gabarito e a letra C. A questao fala em "criar um processo que envolva ambos os componentes" e em "organizar o fluxo de execucao", o que aponta diretamente para orquestracao de processos, e nao apenas para troca de mensagens ou definicao de contratos. Em linguagem de concurso: BPEL faz a cola inteligente do processo, enquanto os outros itens tratam de infraestrutura, estilo de comunicacao ou descricao de interfaces. Um detalhe importante: a literatura de SOA costuma diferenciar orquestracao de coreografia. BPEL e classico exemplo de orquestracao centralizada, muito cobrado em provas quando o enunciado menciona integracao de servicos em um fluxo de negocio.