Gabarito disponível
Resolução comentada
Bons componentes têm alta coesão e baixo acoplamento.
Componentização organiza o software em módulos reutilizáveis. Para isso, cada componente deve ter alta coesão (responsabilidade bem definida) e baixo acoplamento (pouca dependência dos outros), o que facilita reutilização e manutenção. Logo, B.
Análise das alternativas
A) Errada: a componentização não dispensa a modelagem arquitetural. C) Errada: componente não é função recursiva, e a recursão não tem relação com isso. D) Errada: os testes unitários continuam necessários. E) Errada: compartilhar variáveis globais aumenta o acoplamento, o que é indesejável.
Referência: Pressman; Sommerville — projeto baseado em componentes.
Resolução comentada do VaiConcursos.