Engenharia de Software
Aprovado.ai
2026
Teste de Software
A fase de teste de software é fundamental para garantir a qualidade de um sistema. Dentre as diversas técnicas e abordagens para validação, o Teste de Unidade se destaca por sua aplicação inicial no ciclo de desenvolvimento. Sobre o Teste de Unidade, é correto afirmar que:
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Design de Software e Padrões de Design
No contexto da Engenharia de Software, o design de software é uma fase crucial que envolve a criação de uma representação da estrutura arquitetônica do sistema. A respeito dos princípios e padrões de design, assinale a afirmativa INCORRETA:
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Metodologias Ágeis
A Engenharia de Software aborda conceitos e práticas para o desenvolvimento e manutenção de sistemas de software de forma sistemática e disciplinada. Dentre as diversas metodologias e abordagens que surgiram para gerenciar o ciclo de vida do software, as Metodologias Ágeis ganharam proeminência. Sobre a abordagem Ágil, é correto afirmar que:
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Metodologias Ágeis
Em metodologias ágeis de desenvolvimento de software, o conceito de 'Definition of Done' (DoD) é essencial para garantir a transparência e a qualidade das entregas. Sobre o DoD, assinale a alternativa que descreve sua principal finalidade:
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Qualidade de Software
No contexto da qualidade de software, a métrica de acoplamento (coupling) e coesão (cohesion) desempenham um papel fundamental na avaliação da modularidade e manutenibilidade do código. Considerando esses conceitos, é correto afirmar que um software de alta qualidade tende a apresentar:
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Engenharia de Requisitos
Em um projeto de desenvolvimento de software, a fase de levantamento de requisitos é crucial para o sucesso da entrega. Entre as diversas técnicas disponíveis, aquela que busca extrair informações de usuários através de sessões grupais estruturadas, com mediador e foco na colaboração para identificar necessidades e funcionalidades, é conhecida como:
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Testes de Software
Durante a fase de testes de um software, a cobertura de código é uma métrica importante que indica a extensão em que o código-fonte foi exercitado pelos testes. Dentre as diversas técnicas de cobertura, a 'cobertura de condição' (ou cobertura de decisão) busca assegurar que cada parte de uma condição composta, em uma instrução condicional (como um 'if' ou 'while'), seja avaliada para verdadeiro e falso. Qual das seguintes alternativas descreve corretamente o objetivo principal da cobertura de condição?
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Arquitetura de Software
Ao projetar a arquitetura de um sistema de software complexo, a escolha de padrões arquiteturais adequados é crucial para garantir qualidades como manutenibilidade, escalabilidade e desempenho. Considerando-se um sistema que necessita processar grandes volumes de dados de forma assíncrona, desacoplando a produção de dados de seu consumo por diferentes serviços, qual o padrão arquitetural que melhor se alinha a essa necessidade?
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Métodos Ágeis
A Engenharia de Software, em seu propósito essencial, busca a aplicação de uma abordagem sistemática, disciplinada e quantificável para o desenvolvimento, operação e manutenção de software, conforme definições amplamente aceitas. Dentro desse contexto, qual das alternativas a seguir representa o objetivo primordial de se utilizar métodos ágeis no ciclo de vida de um projeto de software, em detrimento dos modelos tradicionais?
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Arquitetura de Software e Padrões de Projeto
No contexto da arquitetura de software, o padrão Model-View-Controller (MVC) é amplamente utilizado para organizar a estrutura de aplicações, separando responsabilidades. Sobre esse padrão, é CORRETO afirmar que:
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Levantamento de Requisitos
A fase de levantamento de requisitos é crítica para o sucesso de um projeto de software. Diversas técnicas podem ser empregadas para coletar, analisar e documentar as necessidades dos usuários. A respeito das técnicas de levantamento de requisitos, considere as seguintes afirmações:
I. Entrevistas são eficazes para obter informações detalhadas e específicas, mas podem ser demoradas e suscetíveis a vieses do entrevistador.
II. Prototipagem permite validar requisitos com os usuários de forma interativa, mas pode gerar expectativas irrealistas se o protótipo for muito rudimentar ou muito avançado.
III. Brainstorming é uma técnica colaborativa para gerar grande volume de ideias em pouco tempo, porém exige moderação cuidadosa para evitar desvio do foco e garantir a participação de todos.
Assinale a alternativa CORRETA:
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Metodologias Ágeis (Scrum)
Em um projeto de desenvolvimento de software que adota a metodologia ágil Scrum, o Product Owner é um papel fundamental. Dentre as suas responsabilidades diárias e estratégicas, assinale a alternativa que representa uma atribuição PRIMORDIAL do Product Owner:
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Qualidade de Software
A qualidade do software é um aspecto crucial na Engenharia de Software, e seu controle envolve diversas etapas. Dentro do processo de garantia da qualidade, qual o objetivo principal da Revisão de Código (Code Review)?
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Metodologias Ágeis
No contexto do desenvolvimento ágil de software, um dos princípios fundamentais é a entrega contínua de valor ao cliente. Qual das práticas a seguir, comum em metodologias ágeis como Scrum, melhor contribui para garantir essa entrega contínua de software funcional e utilizável em curtos ciclos?
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Modelagem de Software (UML)
A Engenharia de Software, em seu processo de documentação e modelagem, emprega diversas ferramentas e notações. Dentre as notações amplamente utilizadas para representar o fluxo de atividades, decisões e processos em um sistema, qual das alternativas abaixo é a mais apropriada?
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Arquitetura de Software
A arquitetura de software é um componente vital no design de sistemas complexos, influenciando diretamente a manutenibilidade, escalabilidade e robustez. No contexto de padrões arquiteturais, qual das opções abaixo descreve o principal benefício da utilização do padrão de arquitetura em camadas (layered architecture)?
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Engenharia de Requisitos
Durante a fase de levantamento e análise de requisitos em um projeto de software, é crucial identificar e registrar as necessidades dos usuários e do sistema. Qual das alternativas abaixo descreve CORRETAMENTE a principal distinção entre um requisito funcional e um requisito não funcional?
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Metodologias Ágeis
No contexto do desenvolvimento ágil de software, metodologias como Scrum e Kanban buscam promover a adaptabilidade e a entrega contínua de valor. Dentre as características a seguir, assinale aquela que representa um princípio fundamental da abordagem ágil, em contraposição aos modelos tradicionais em cascata.
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Padrões de Projeto
Ao desenvolver um sistema crítico que exige alta disponibilidade e tolerância a falhas, a escolha de padrões arquiteturais torna-se crucial. Dentre as opções a seguir, qual padrão de projeto é mais adequado para garantir que um sistema possa continuar operando, mesmo que um de seus componentes falhe, utilizando uma abordagem de segregação funcional?
Ver gabarito comentado →Engenharia de Software
Aprovado.ai
2026
Metodologias Ágeis
No contexto da metodologia Scrum, qual artefato é essencial para a documentação e ordenação das funcionalidades a serem desenvolvidas, servindo como a principal fonte de requisitos para o time de desenvolvimento?
Ver gabarito comentado →