A arquitetura orientada a serviços é uma abordagem de design de software que se concentra na construção de sistemas de software funcionais, modulares e escaláveis a partir de componentes individuais. Com relação às vantagens dessa arquitetura em comparação com a abordagem monolítica de desenvolvimento de software, analise os itens a seguir. I. Manutenção simplificada - A baixa integração e reutilização de serviços faz com que seja mais seguro desenvolver novas aplicações. Os desenvolvedores precisam sempre criar serviços do zero assim como nas aplicações monolíticas. II. Adaptabilidade - Preserva a compatibilidade de antigas versões dos serviços e facilita o planejamento serviços futuros. Os desenvolvedores podem trazer serviços mais antigos para um ambiente operacional mais novo, até mesmo substituir serviços desatualizados por versões mais recentes que aproveitam hardwares atualizados. III. Escalabilidade - Como os serviços são autossuficientes e independentes podem ser monitorados pela camada de gerenciamento do SOA, se o desempenho de um serviço cair devido ao aumento da demanda, novas instâncias poderão ser iniciadas. As aplicações que utilizam o serviço não saberão sobre as novas instâncias, apenas perceberão que os SLA permanecem aceitáveis. Está correto o que se afirma em
- A)I, apenas.
Errada, porque a SOA aumenta a reutilização e reduz a necessidade de criar serviços do zero.
- B)II, apenas.
Correta, pois a SOA favorece compatibilidade entre versões e evolução gradual dos serviços.
- C)I e II, apenas.
Errada, porque o item I está incorreto e derruba essa combinação.
- D)I e III, apenas.
Errada, porque o item I está incorreto, embora o item III esteja correto.
- E)II e III, apenas.
Correta, porque os itens II e III refletem vantagens reais da SOA: adaptabilidade e escalabilidade.
Gabarito: E
Na arquitetura orientada a serviços (SOA), a ideia central é quebrar o sistema em serviços independentes, com interfaces bem definidas, para facilitar reutilização, integração e evolução. Em vez de um bloco único e pesado, você trabalha com peças menores que podem ser combinadas conforme a necessidade. Isso costuma trazer ganhos de manutenção, escalabilidade e adaptabilidade. O item I está errado porque inverte a lógica da SOA. Justamente o contrário do que ele diz: a reutilização de serviços e o baixo acoplamento tornam o desenvolvimento mais ágil e menos repetitivo. Você não precisa criar tudo do zero o tempo todo; essa é mais a cara de um sistema monolítico ou mal reaproveitado. O item II está certo. A SOA favorece a adaptabilidade porque serviços podem ter versões, evoluir sem quebrar consumidores e até serem substituídos por implementações mais novas, mantendo compatibilidade com as anteriores. Esse reaproveitamento e essa convivência entre versões são bem coerentes com a doutrina de SOA, que valoriza interoperabilidade e evolução gradual. O item III também está certo. Como os serviços são independentes, é possível escalar apenas o componente que está sob pressão, criando novas instâncias e usando camadas de gerenciamento para monitorar desempenho e SLA. A aplicação cliente continua consumindo o serviço sem precisar saber quantas instâncias existem por trás. É a mágica do "cresce aqui sem bagunçar o resto".