Questão de Engenharia de Software — Desenvolvimento de Software — CESPE / CEBRASPE 2023
Engenharia de Software›Desenvolvimento de Software
Código
ce156194
Banca
CESPE / CEBRASPE
Órgão
MPE-RO
Ano
2023
Nível
Superior
Cargo
Analista de Sistemas
Determinada empresa adota a cultura DevOps, com os objetivos de colaboração e integração do desenvolvimento de software e das operações. A mesma empresa também adota práticas de automação em que alterações de código são frequentes e adicionadas a um repositório central de versionamento, para que, em seguida, ocorram as etapas de build e teste para melhorar a qualidade.Nessa situação hipotética, a empresa aplica o conceito de
Aagile scrum.
Bcontinuous integration.
Cmachine learning.
Dblockchain.
Econtinuous delivery.
Revelar gabarito e comentário▾
GabaritoB — continuous integration.
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”.
DevOps e Integração Contínua
Gabarito: letra B (Continuous Integration). A situação descrita — alterações frequentes de código adicionadas a um repositório central, seguidas de build e teste automatizados — é a definição clássica de Integração Contínua (Continuous Integration, CI). A CI é uma prática essencial na cultura DevOps, na qual os desenvolvedores integram seu código várias vezes ao dia, e cada integração é verificada por uma build automatizada e testes para detectar erros rapidamente.
O texto de apoio sobre DevOps destaca que ferramentas de integração contínua (como Jenkins) fazem parte da cadeia de ferramentas DevOps, na categoria de compilação e teste. A descrição do enunciado casa perfeitamente com esse conceito.
Conceito
Descrição
Relação com o enunciado
Gabarito
Continuous Integration (CI)
Prática de integrar alterações de código frequentemente em um repositório central, com build e testes automatizados a cada submissão.
Corresponde exatamente à descrição: alterações frequentes, repositório central, build e teste automatizados.
✅ Correta
Agile Scrum
Framework ágil de gestão de projetos, baseado em sprints, reuniões e papéis.
Descreve um processo de gerenciamento, não a prática técnica de integração e teste contínuos.
❌ Incorreta
Machine Learning
Ramo da IA que permite aprendizado a partir de dados.
Não possui relação com versionamento, build e teste de código.
❌ Incorreta
Blockchain
Tecnologia de ledger distribuído para transações seguras e descentralizadas.
Nenhum elemento do enunciado remete a essa tecnologia.
❌ Incorreta
Continuous Delivery (CD)
Extensão da CI que automatiza a preparação para implantação em produção após build e testes.
O enunciado menciona apenas integração, build e teste, não a implantação automatizada.
❌ Incorreta
1Commit no repositório
2Build automatizado
3Testes automatizados
4Entrega contínua (CD)
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
O Scrum é um framework ágil para gestão de projetos, focado em sprints, reuniões e papéis. Embora seja comum em ambientes DevOps, não se confunde com a prática de integrar e testar continuamente o código. A situação descreve uma ação técnica (integração/build/teste), não um processo de gerenciamento.
Alternativa B — ✅ Correta ⟵ GABARITO
A Integração Contínua (CI) consiste exatamente em: desenvolvedores enviarem suas alterações para um repositório central frequentemente, e cada submissão disparar automaticamente uma build e testes. É o que o enunciado relata. A CI é um dos pilares do DevOps e da entrega de software com qualidade.
Alternativa C — ❌ Incorreta
Machine Learning (aprendizado de máquina) é um ramo da inteligência artificial que permite que sistemas aprendam com dados. Não tem relação com o processo de versionamento, build e teste descrito na questão.
Alternativa D — ❌ Incorreta
Blockchain é uma tecnologia de ledger distribuído usada para transações seguras e descentralizadas. Não há qualquer elemento no enunciado que remeta a essa tecnologia.
Alternativa E — ❌ Incorreta
Continuous Delivery (Entrega Contínua) é uma extensão da Integração Contínua: após a build e testes bem-sucedidos, o software é automaticamente preparado para implantação em produção. O enunciado menciona apenas a integração, build e teste, não a implantação automatizada. Por isso, o conceito correto é CI, não CD.
Resumo: A prática descrita é a Integração Contínua (CI), que garante feedback rápido sobre a qualidade do código. A Entrega Contínua (CD) adicionaria a implantação automática, mas a questão para antes dessa etapa.