Sobre a arquitetura de aplicações em infraestrutura, analise as afirmativas a seguir e assinale (V) para a verdadeira e (F) para a falsa. ( ) O modelo de cloud computing do tipo Plataforma como Serviço (PAAS, Platform-as-a-Service) oferece ambiente compartilhado de desenvolvimento de software que fornece, às equipes de desenvolvimento e operações, acesso a todas as ferramentas de que necessitam, a partir de qualquer local com uma conexão à Internet, sendo frequente o emprego das tecnologias Docker e Kubernetes. ( ) Quanto ao nível de acoplamento, podemos diferenciar as arquiteturas de aplicação como monolíticas e em N camadas (levemente acopladas), microsserviços (fortemente acopladas); e, orientadas a eventos ou serviços (desacopladas). ( ) No ciclo de vida do desenvolvimento de software (SDLC, Software Development Lifecycle) podem ser aplicadas as metodologias TDD (Test Driven Development), quando o foco está em uma linguagem mais técnica e no objetivo de testar alguma funcionalidade, e o BDD (Behavior Driven Development), quando o foco está em uma linguagem mais próxima da linguagem natural e no objetivo de realização de testes de comportamento. As afirmativas são, respectivamente,
- A)V – V – F.
Errada, porque a segunda e a terceira afirmativas não sustentam essa combinação, já que a de acoplamento está invertida e a de TDD/BDD está correta.
- B)F – V – V.
Errada, porque a primeira afirmativa é considerada verdadeira no contexto cobrado, então não pode começar com F.
- C)F – F – V.
Errada, porque a terceira afirmativa é verdadeira e a primeira também é tratada como verdadeira na lógica da questão.
- D)V – F – V.
Certa, porque a primeira e a terceira afirmativas estão corretas e a segunda erra ao classificar microsserviços como fortemente acoplados.
Gabarito: D
A questão mistura três assuntos que adoram aparecer juntos em prova: computação em nuvem, estilos de arquitetura e práticas de teste. No modelo PaaS, a ideia central é entregar uma plataforma pronta para você desenvolver, testar, implantar e gerenciar aplicações sem se preocupar com a infraestrutura por baixo. Em ambientes modernos, é comum essa plataforma vir acompanhada de ferramentas e automação de contêineres, com Docker e Kubernetes aparecendo bastante no dia a dia. Na segunda afirmativa, a banca tenta trocar os conceitos de acoplamento. Em regra, arquitetura monolítica é mais acoplada, enquanto microsserviços buscam baixo acoplamento e alta independência entre componentes. Arquiteturas em N camadas e orientadas a serviços ou eventos também costumam reduzir dependências, então o erro está justamente em dizer que microsserviços seriam fortemente acopladas. A terceira afirmativa está correta: TDD começa pelo teste e costuma ser escrito em linguagem técnica, com foco na funcionalidade; BDD vai além e descreve o comportamento esperado em linguagem mais próxima do negócio e da fala natural. Em termos práticos: no TDD você pensa em “como testar”, no BDD você pensa em “como o sistema deve se comportar”. Por isso, o gabarito D faz sentido: a primeira e a terceira estão corretas, e a segunda inverte os conceitos de acoplamento. A banca FGV gosta muito desse tipo de troca sutil de termos, então vale ler com calma as palavras que parecem inocentes, porque elas é que derrubam.