Questão de Engenharia de Software — Geral — VUNESP 2023
Engenharia de Software›Geral
Código
vu196860
Banca
VUNESP
Órgão
CM Monte Alto
Ano
2023
Cargo
AnTI ( )
O estilo arquitetural de software no qual uma aplicação é autocontida e independente de outras aplicações, sendo implantada como um componente único, é classificado como
Ainterativo.
Bcliente-servidor.
Crelacional.
Dmicrosserviço.
Emonolítico.
Revelar gabarito e comentário▾
GabaritoE — monolítico.
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”.
Estilos arquiteturais de software: monolítico × distribuído
Gabarito: letra E. A aplicação autocontida, independente de outras aplicações e implantada como um componente único é a definição clássica de arquitetura monolítica — todo o sistema (interface, lógica de negócio e acesso a dados) é empacotado e executado como um único artefato. É o oposto direto da arquitetura de microsserviços, que decompõe a aplicação em serviços independentes e distribuídos.
A arquitetura monolítica é o modelo tradicional de desenvolvimento de software, em que a aplicação é construída como um bloco único e indivisível. Nesse estilo, todas as funcionalidades — desde a interface com o usuário até o acesso ao banco de dados — são compiladas e implantadas juntas, formando um único artefato executável. Essa característica de "componente único" é exatamente o que o enunciado descreve: a aplicação é autocontida (não depende de outros serviços externos para funcionar) e independente (pode ser executada isoladamente).
A principal vantagem do monolítico é a simplicidade de desenvolvimento e implantação: basta compilar e subir um único pacote. Porém, essa simplicidade tem um custo: qualquer alteração, por menor que seja, exige recompilar e reimplantar a aplicação inteira, e a escalabilidade é limitada — não é possível escalar apenas uma parte do sistema, é preciso escalar tudo. Foi justamente para superar essas limitações que surgiram as arquiteturas distribuídas, como a de microsserviços.
A arquitetura de microsserviços, por outro lado, decompõe a aplicação em um conjunto de serviços pequenos, independentes e autônomos, cada um responsável por uma funcionalidade de negócio específica. Cada serviço é implantado separadamente e se comunica com os demais por meio de protocolos leves (como HTTP/REST ou mensageria). Essa independência permite escalar apenas os serviços que precisam de mais recursos, além de facilitar a manutenção e a evolução de cada parte isoladamente. No entanto, essa flexibilidade vem acompanhada de maior complexidade operacional: é preciso gerenciar a comunicação entre serviços, a consistência de dados distribuídos e o monitoramento de múltiplos componentes.
A distinção central entre os dois estilos está na granularidade da implantação: o monolítico é um único componente; o microsserviço é uma coleção de componentes independentes. É exatamente essa fronteira que a questão explora — o enunciado descreve uma aplicação "implantada como um componente único", o que elimina qualquer arquitetura distribuída e aponta diretamente para o monolítico.
O estilo interativo não é uma classificação arquitetural de software, mas sim uma característica de interface — refere-se à capacidade de o sistema interagir com o usuário em tempo real (entrada e saída contínuas). Não diz respeito à estrutura interna de implantação da aplicação.
Alternativa B — ❌ Incorreta
A arquitetura cliente-servidor é um estilo distribuído que separa a aplicação em dois papéis: o cliente, que solicita serviços, e o servidor, que os oferece. Essa separação implica que a aplicação não é autocontida nem implantada como um componente único — pelo contrário, há pelo menos dois componentes distintos comunicando-se pela rede.
Alternativa C — ❌ Incorreta
Relacional não é um estilo arquitetural de software, mas sim um modelo de banco de dados (modelo relacional), baseado em tabelas e relações. Refere-se à forma como os dados são organizados e armazenados, não à estrutura de implantação da aplicação.
Alternativa D — ❌ Incorreta
A arquitetura de microsserviços é o oposto do que o enunciado descreve: em vez de um componente único, a aplicação é decomposta em múltiplos serviços independentes, cada um implantado separadamente. A palavra-chave "componente único" elimina essa alternativa — microsserviços são, por definição, múltiplos componentes.
Alternativa E — ✅ Correta ⟵ GABARITO
A arquitetura monolítica é exatamente a que o enunciado descreve: uma aplicação autocontida, independente de outras aplicações e implantada como um componente único. Todo o sistema — interface, lógica de negócio e acesso a dados — é empacotado em um único artefato executável, que pode ser implantado e executado de forma isolada.
PEGA ESSA DICA!
Para identificar o estilo arquitetural na prova, procure a palavra-chave que define a granularidade: "componente único" ou "bloco único" → monolítico; "serviços independentes" ou "decomposto em serviços" → microsserviços; "cliente solicita, servidor responde" → cliente-servidor. Essa distinção resolve a maioria das questões sobre o tema.