Questão de Arquitetura de Software — SOA (Service-oriented architecture) — FGV 2024
Arquitetura de Software›SOA (Service-oriented architecture)
Código
fg099052
Banca
FGV
Órgão
TJ-MT
Ano
2024
Nível
Superior
Cargo
Analista Judiciário - Tecnologia da Informação
Um dos estilos de arquitetura de software mais usados nos últimos anos, dadas as suas vantagens em relação aos demais existentes, é a arquitetura orientada a serviços (Service-Oriented Architecture - SOA).A arquitetura orientada a serviços (SOA)
Aorganiza a estrutura de um sistema como um conjunto de serviços independentes que se comunicam por meio de protocolos padrão, como HTTP e SOAP.
Butiliza uma abordagem na qual os serviços são acoplados de forma estreita para garantir maior controle e interdependência entre as partes do sistema.
Cé uma arquitetura em que todos os serviços são integrados em um sistema monolítico, garantindo alta coesão entre os módulos.
Dexige que todos os serviços sejam implementados na mesma linguagem de programação para garantir consistência no sistema.
Eutiliza a comunicação síncrona entre serviços para manter a consistência e a segurança dos dados transmitidos no sistema.
Revelar gabarito e comentário▾
GabaritoA — organiza a estrutura de um sistema como um conjunto de serviços independentes que se comunicam por meio de protocolos padrão, como HTTP e SOAP.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Arquitetura Orientada a Serviços (SOA)
Gabarito: letra A. A SOA organiza o sistema como um conjunto de serviços independentes e fracamente acoplados, que se comunicam por protocolos padrão como HTTP e SOAP — exatamente o que a alternativa A descreve. As demais alternativas distorcem princípios fundamentais: a SOA exige baixo acoplamento, não é monolítica, não exige linguagem única e não impõe exclusivamente comunicação síncrona.
A banca testa o conhecimento dos conceitos centrais de SOA: serviços autônomos, interoperabilidade, independência tecnológica e comunicação por padrões abertos. O contexto fornecido reforça que SOA estabelece um modelo arquitetural que visa eficiência, agilidade e produtividade, posicionando serviços como principal meio de representação da solução lógica.
SOA (Arquitetura Orientada a Serviços): Princípios (Serviços independentes, Baixo acoplamento, Interoperabilidade, Independência tecnológica); Comunicação (Protocolos padrão (HTTP, SOAP), Síncrona ou assíncrona); O que NÃO é (Acoplamento estreito, Monolítica, Linguagem única)
Alternativa A — ✅ Correta ⟵ GABARITO
Define corretamente a SOA: "organiza a estrutura de um sistema como um conjunto de serviços independentes que se comunicam por meio de protocolos padrão, como HTTP e SOAP". Isso reflete os princípios de serviço orientado a serviço: serviços autônomos, baixo acoplamento e comunicação via padrões abertos (SOAP sobre HTTP, por exemplo). A literatura clássica (como Erl, 2008) e os materiais de governança SOA confirmam essa definição.
Alternativa B — ❌ Incorreta
Afirma que os serviços são "acoplados de forma estreita para garantir maior controle e interdependência". A SOA prega exatamente o oposto: {{baixo acoplamento}} (loose coupling). O acoplamento estreito viola a independência dos serviços e dificulta a evolução e reuso. A pegadinha aqui é trocar o termo "acoplamento estreito" pelo que deveria ser "acoplamento fraco".
Alternativa C — ❌ Incorreta
Diz que a SOA é "uma arquitetura em que todos os serviços são integrados em um sistema monolítico". A SOA é uma arquitetura {{distribuída}}, não monolítica. O monolito concentra funcionalidades em um único bloco, enquanto a SOA fragmenta em serviços independentes que se comunicam via rede. A alternativa confunde SOA com arquitetura monolítica.
Alternativa D — ❌ Incorreta
Afirma que a SOA "exige que todos os serviços sejam implementados na mesma linguagem de programação". A SOA promove a {{independência de plataforma}} — serviços podem ser escritos em linguagens diferentes (Java, C#, Python etc.) e interoperam por meio de protocolos padrão (SOAP/REST). A exigência de linguagem única seria contrária ao princípio de heterogeneidade tecnológica.
Alternativa E — ❌ Incorreta
Afirma que a SOA "utiliza a comunicação síncrona entre serviços para manter a consistência e a segurança". Embora a comunicação síncrona seja possível (ex.: SOAP via HTTP), a SOA também suporta comunicação assíncrona (ex.: mensageria, JMS). A alternativa erra ao afirmar que ela "utiliza" exclusivamente comunicação síncrona, e ainda associa isso a consistência e segurança de forma determinística. A SOA não impõe um único mecanismo de troca.
NÃO CAIA NESSA!
A banca explora a confusão entre "baixo acoplamento" e "alto acoplamento" (alternativa B). O candidato que decora apenas o termo "SOA" sem entender o princípio de {{serviços fracamente acoplados}} pode cair na armadilha de achar que mais controle = acoplamento estreito. Na realidade, a SOA busca independência e reuso, não interdependência rígida.