Questão de Engenharia de Software — Desenvolvimento de Software — FUNDATEC 2023
Engenharia de Software›Desenvolvimento de Software
Código
qq897260
Banca
FUNDATEC
Órgão
PROCERGS
Ano
2023
Nível
Superior
Cargo
ANC - Analista em Computação - Ênfase em Teste de Software e Garantia da Qualidade
O DevOps (desenvolvimento + operação) preza o estreitamento entre as áreas de desenvolvimento e infraestrutura através de ferramentas e metodologias, de modo que seja possível automatizar, monitorar, observar, testar e metrificar todas as etapas de desenvolvimento de software. Dentro dos processos de DevOps, que visam o aumento dessa qualidade e também a facilitação de colocar um projeto em produção, há um que é uma prática em que os times de desenvolvimento lançam novas funcionalidades de forma constante e automatizada. Quando uma nova funcionalidade é finalizada, automaticamente ela será disponibilizada no ambiente de testes e, posteriormente, no ambiente de produção e, em alguns casos, pode ir direto para produção. Assinale a alternativa que cita essa prática.
ADesign Patterns ou Padrões de Projeto.
BTest Driven Development ou Desenvolvimento Orientado a Testes.
CContinuous Delivery ou Entrega Contínua.
DBehavior Driven Development ou Desenvolvimento Orientado ao Comportamento.
EContinuous Integration ou Integração Contínua.
Revelar gabarito e comentário▾
GabaritoC — Continuous Delivery ou Entrega Contínua.
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: Continuous Delivery (Entrega Contínua)
Gabarito: letra C. A prática descrita é a Entrega Contínua (Continuous Delivery), que automatiza o processo de liberação de novas funcionalidades, preparando-as para produção de forma constante e automatizada, com deploy automatizado para ambientes de teste e, em alguns casos, diretamente para produção. Esse é um dos pilares do DevOps, conforme o próprio enunciado e o contexto apresentado.
A banca testa a distinção entre os conceitos de Integração Contínua (CI) e Entrega Contínua (CD). Enquanto a CI foca na integração e teste automáticos do código a cada commit, a CD vai além, automatizando a entrega até o ambiente de produção (ou deixando pronto para um deploy manual). A questão descreve exatamente o fluxo de CD.
Alternativa A — ❌ Incorreta
Design Patterns são soluções reutilizáveis para problemas comuns de design de software, não estão relacionados ao processo de deploy automatizado descrito.
Alternativa B — ❌ Incorreta
Test Driven Development (TDD) é uma prática de desenvolvimento onde os testes são escritos antes do código, visando qualidade, mas não trata da automação de deploy.
Alternativa C — ✅ Correta ⟵ GABARITO
Continuous Delivery (Entrega Contínua) é a prática que automatiza todo o pipeline de liberação, desde a construção, testes, até a preparação para produção, com deploy automático nos ambientes de teste e, eventualmente, em produção. Exatamente o que o enunciado descreve.
Alternativa D — ❌ Incorreta
Behavior Driven Development (BDD) é uma técnica de desenvolvimento ágil baseada em comportamento, voltada para comunicação entre stakeholders, não para automação de deploy.
Alternativa E — ❌ Incorreta
Continuous Integration (Integração Contínua) é uma prática que automatiza a integração de código e a execução de testes a cada alteração, mas não abrange o deploy em ambientes de teste ou produção. A confusão entre CI e CD é comum; a questão deixa claro que o foco está na entrega (entrega contínua), não apenas na integração.
NÃO CAIA NESSA!
Para não confundir CI e CD, lembre-se: CI cuida da integração e testes automáticos; CD cuida da entrega (deploy) automática. O "Delivery" no nome já indica o foco na entrega ao cliente. Na prova, se a descrição mencionar "deploy automatizado para ambientes", é CD.