O que é SOA? (15 Questões comentadas)

No artigo O que é SOA?, estudamos sobre a Computação orientada a serviços, os Serviços e, principalmente, a SOA (Arquitetura Orientada a Serviços). Neste artigo, iremos responder uma boa bateria de questão a fim de treinarmos o que aprenderemos.

Avatar


27 de Maio de 2021

Fala, meus consagrados! Tudo beleza com vocês?

No artigo O que é SOA?, estudamos sobre a Computação orientada a serviços, os Serviços e, principalmente, a SOA (Arquitetura Orientada a Serviços). Neste artigo, iremos responder uma boa bateria de questão a fim de treinarmos o que aprenderemos.

Então, simbora comigo!

Questões de concursos

[1] [UPENET/IAUPE 2017 UPE – Analista de Sistemas – Engenharia de Software] Sobre a Service Oriented Architecture (SOA), analise as afirmativas abaixo: (Marque o texto do item como CERTO ou ERRADO)

[I] É uma abordagem para estruturar um sistema de software como um conjunto de serviços separados, sem estado.

Comentários:

Serviços são funções independentes e sem estado (stateless). Através de uma interface padronizada e bem definida, eles:

  • Aceitam uma ou mais requisições; e
  • Retornam uma ou mais respostas.

A SOA traz a possibilidade de implementar nossas aplicações compostas por serviços, sendo compostos ou não, que implementam tarefas de negócios.

Essa arquitetura é uma abordagem de arquitetura de TI centrada no negócio que oferece suporte à integração de uma empresa na forma de tarefas de negócios ou serviços:

  • Vinculados; e
  • Repetíveis.

É utilizada para interoperabilidade de sistemas por meio de conjunto de interfaces de serviços fracamente acoplados, em que um serviço pode ser descrito como uma representação lógica de uma atividade de negócio que tem um resultado específico.

Nesta questão, foram citadas três dos princípios básicos dos serviços. Foram eles:

  • Os serviços não devem estados da aplicação;
    • Sem estado; e
  • Os serviços devem ser fracamente acoplados; e
  • Os serviços podem ser compostos para formarem outros serviços.

Gabarito: CERTO.

[2] [IADES 2018 ARCON/PA – Assistente Técnico em Regulação de Serviços Públicos] A respeito da arquitetura orientada a serviços, assinale a alternativa correta. (Marque o texto da letra como CERTO ou ERRADO)

[A] Essa arquitetura não facilita a manutenção.

Comentários:

Pegando o texto da questão [1], temos que a SOA é uma abordagem para estruturar um sistema de software como um conjunto de serviços separados, sem estado. Uma aplicação é formada por um conjunto intercambiáveis de serviços, cada um com sua funcionalidade que implementa uma tarefa de negócio, o que facilita sim a manutenção de uma aplicação.

Gabarito: ERRADO.

[3] [IADES 2018 ARCON/PA – Assistente Técnico em Regulação de Serviços Públicos] A respeito da arquitetura orientada a serviços, assinale a alternativa correta. (Marque o texto da letra como CERTO ou ERRADO)

[B] Essa arquitetura é capaz de aumentar a reutilização de código em diferentes aplicações.

Comentários:

SOA:

  • Facilita o reuso de componentes de software fisicamente distribuíveis; e
  • É embasado em uma ligação dinâmica entre:
    • Consumidores de serviços;
      • Quem necessita do serviço; e
    • Provedores de serviços;
      • Quem é o dono do serviço.

Nesta questão, foi citado um dos princípios básicos dos serviços: que eles sejam reutilizáveis.

Gabarito: CERTO.

[4] [IADES 2018 ARCON/PA – Assistente Técnico em Regulação de Serviços Públicos] A respeito da arquitetura orientada a serviços, assinale a alternativa correta. (Marque o texto da letra como CERTO ou ERRADO)

[D] Essa arquitetura resulta em serviços específicos para cada plataforma e tecnologia.

Comentários:

Como vimos na questão anterior, um dos princípios básicos dos serviços é que eles sejam reutilizáveis. Os serviços também são independentes de tecnologia e de plataforma. Uma aplicação em Java pode consumir um serviço feito em C#.

Lembrem-se: um dos princípios básicos dos serviços é que eles sejam reutilizáveis.

Gabarito: ERRADO.

[5] [FCC 2011 TRT 4ª Região – Analista Judiciário – Tecnologia da Informação] Considere: (Marque o texto do item como CERTO ou ERRADO)

[I] Abordagem arquitetural corporativa que permite a criação de serviços de negócio interoperáveis, que podem ser reutilizados e compartilhados entre aplicações e empresas. (Marque o texto do item como CERTO ou ERRADO)

Comentários:

Texto totalmente correto. SOA é utilizada para interoperabilidade de sistemas por meio de conjunto de interfaces de serviços fracamente acoplados, em que um serviço pode ser descrito como uma representação lógica de uma atividade de negócio que tem um resultado específico. A arquitetura em questão facilita o reuso de componentes de software fisicamente distribuíveis.

Lembrem-se: um dos princípios básicos dos serviços é que eles sejam fracamente acoplamentos.

Gabarito: CERTO.

[6] [FCC 2011 TRT 4ª Região – Analista Judiciário – Tecnologia da Informação] Considere: (Marque o texto do item como CERTO ou ERRADO)

[II] As funcionalidades implementadas pelas aplicações devem ser disponibilizadas na forma de componentes e códigos interconectados por alto grau de acoplamento de controle e de dados.

Comentários:

As funcionalidades implementadas pelas aplicações devem ser disponibilizadas na forma de componentes (serviços) interconectados por fraco grau de acoplamento de controle e de dados.

Lembrem-se: um dos princípios básicos dos serviços é que eles sejam fracamente acoplamentos.

Gabarito: ERRADO.

[7] [FCC 2011 TRT 4ª Região – Analista Judiciário – Tecnologia da Informação] Considere: (Marque o texto do item como CERTO ou ERRADO)

[III] É baseada no princípio de processamento centralizado que utiliza o paradigma de dados distribuídos para estabelecer a comunicação entre os sistemas clientes e os sistemas que implementam os serviços.

Comentários:

SOA é baseada no princípio de processamento distribuído que utiliza o paradigma request/reply para estabelecer a comunicação entre os sistemas clientes e os sistemas que implementam os serviços.

Sobre paradigma request/reply, através de uma interface padronizada e bem definida, os serviços:

  • Aceitam uma ou mais requisições; e
  • Retornam uma ou mais respostas.

Gabarito: ERRADO.

[8] [CONSULPLAN 2017 TRF 2ª Região – Técnico Judiciário – Informática] “A Arquitetura Orientada a Serviços (SOA) estabelece um modelo arquitetônico que visa aprimorar a eficiência, a agilidade e a produtividade de uma empresa […].”

Sobre SOA é correto afirmar que

(A) é um elemento da Computação Orientada a Serviços.

(B) é conceitualmente sinônimo de Computação Orientada a Serviços.

(C) possui um mesmo padrão em todas as empresas em que se implementa.

(D) estabelece um ambiente adequado para a lógica que foi projetada de acordo com princípios do design de orientação a objetos.

Comentários:

A Computação Orientada a Serviços representa uma nova geração de plataforma de computação distribuída, incluindo:

  • Seus próprios paradigmas;
  • Princípios;
  • Padrões de projeto;
  • Linguagens;
  • Modelo arquitetural distinto;
  • Conceitos;
  • Tecnologias; e
  • Frameworks relacionados.

Essa computação orientada a serviços é formada pelos seguintes conceitos:

  • Arquitetura Orientada a Serviços;
  • Orientação de serviço;
  • Lógica de Soluções Orientada a Serviços;
  • Serviço;
  • Composições de serviço; e
  • Inventário de serviço.

Ou seja, a SOA é um elemento da Computação Orientada a Serviços e não é um sinônimo dessa computação. O que faz a letra A ser o gabarito e faz a letra B estar errada.

A SOA possui uma série de princípios para criação de serviços, mas cada empresa pode seguir seu padrão para implementar esses serviços, desde que a empresa siga os princípios da SOA (que vimos alguns neste artigo). Por isso a letra C está errada.

Esse princípios são diferentes dos projetos orientados a objetos. Isso justifica o erro da letra D.

Estudaremos todos os princípios da SOA no próximo artigo.

Gabarito: letra A.

[9] [CESPE 2018 EMAP – Analista Portuário – Tecnologia da Informação] Julgue o item a seguir, relativo a arquiteturas de integração.

Com a SOA (service oriented architecture), os clientes e componentes podem ser escritos em diferentes linguagens de programação e podem usar vários protocolos de mensagens.

Comentários:

Como visto nos comentários da questão [4], os serviços são independentes de tecnologia e de plataforma. O que faz com que os serviços possam ser desenvolvidos em várias linguagens de programação. Com isso, podemos ter uma aplicação em Java consumindo um serviço feito em C#.

Os serviços podem também ser consumidos utilizando vários protocolos de mensagens, principalmente, HTTP.

Gabarito: CERTO.

[10] [CESPE 2017 TRE/PE – Analista Judiciário – Análise de Sistemas] A respeito de arquitetura orientada a serviços (SOA), assinale a opção correta.

[B] Trata-se de uma forma de desenvolvimento de sistemas distribuídos cujos componentes são serviços autônomos, executados em computadores geograficamente distribuídos.

Comentários:

SOA é baseada nos princípios da computação distribuída.

Um dos princípios básicos dos serviços é que eles possam ter autonomia.

Gabarito: CERTO.

[11] [CESPE 2009 TRE/GO – Cargo 11] A respeito dos conceitos do SOA, julgue o próximo item. (Marque o texto do item como CERTO ou ERRADO)

[I] A visibilidade, interação e causas são os conceitos chaves para descrever o paradigma SOA.

Comentários:

São três os conceitos-chave da SOA:

  • Visibilidade:
    • Refere-se à capacidade para aqueles com necessidades (clientes) e aqueles com competências (provedores) estarem aptos a se verem mutuamente;
  • Interação:
    • É tipicamente mediada por troca de mensagens;
    • Prossegue através de uma série de ações de troca de:
      • Informações; e
      • Invocações;
  • Efeitos:
    • São os resultados de uma interação.

O erro da questão é citar que o terceiro conceito-chave é causa. No caso, o terceiro é efeito.

Gabarito: ERRADO.

[12] [CESPE 2009 TCE/TO] Acerca da arquitetura orientada ao serviço (SOA), assinale a opção incorreta. (Marque o texto da letra como CERTO ou ERRADO)

[A] Os principais conceitos do SOA são a visibilidade, a interação e os efeitos.

Comentários:

Exatamente. Como visto nos comentários da questão [11].

Gabarito: CERTO.

[13] [CESPE 2009 FINEP – Cargo 9] A técnica que permite que novas aplicações sejam criadas a partir da combinação de funcionalidades denominadas serviços é definida como

(A) middleware.

(B) object request broker.

(C) arquitetura orientada a serviços.

(D) XML.

(E) groupware.

Comentários:

Depois de várias questões que vimos, essa ficou fácil! Letra C na cabeça!

Gabarito: letra C.

[14] [CESPE 2009 ANTAQ – Cargo 9] No que se refere a arquiteturas e tecnologias de sistemas de informação, julgue o item.

Arquitetura orientada a serviços é um novo paradigma em que aplicações são desenvolvidas a partir de serviços, elementos computacionais dependentes de plataforma que são considerados o nível mais avançado de abstração dentro do processo de criação de sistemas de automação de negócios eletrônicos.

Comentários:

Como visto nos comentários da questão [4], os serviços são independentes de tecnologia e de plataforma. O que faz com que os serviços possam ser desenvolvidos em várias linguagens de programação. Com isso, podemos ter uma aplicação em Java consumindo um serviço feito em C#.

Então o seguinte trecho da questão está errada: “… elementos computacionais dependentes de plataforma…”.

Gabarito: ERRADO.

[15] [CESGRANRIO 2010 PETROBRAS Distribuidora – Profissional Júnior – Analista de Sistemas – Desenvolvimento em ERP (SAP)] SOA é uma abordagem arquitetural corporativa que permite a criação de serviços de negócio interoperáveis que podem facilmente ser reutilizados e compartilhados entre aplicações e empresas. Qual dos conceitos apresentados a seguir, relacionados a SOA, está INCORRETO? (Marque o texto da letra como CERTO ou ERRADO)

[E] SOA pode ajudar uma empresa na implantação de BPM (Business Process Management), sendo que não é necessário se ter SOA para se ter BPM.

Comentários:

BPM (Business Process Management ou Gerenciamento de Processos de Negócio) é uma abordagem de gerenciamento adaptável, desenvolvido com a finalidade de sistematizar e facilitar processos organizacionais individuais complexos, dentro e fora das empresas.

Um serviço pode implementar um processo de negócio. E essa preocupação de implementar processo de negócio através de serviços pode ajudar a empresa a implantar o BPM. Melhor ainda: a empresa pode decidir mapear e gerenciar seus processos de negócios através do BPM e depois implementá-los em forma de serviços.

Com isso, o texto da questão está correta: SOA pode ajudar uma empresa na implantação de BPM (Business Process Management), sendo que não é necessário se ter SOA para se ter BPM.

Gabarito: CERTO.

Então é isso!
[]’s e até a próxima!
_________________________
Professor Rogerão Araújo

Avatar


27 de Maio de 2021