{"subject_id":"3a3cc48d009981e39afbc2f2249ed1fc","topico":"DevOps/DevSecOps: CALMS, shift-left, CI/CD, blue-green × canary × rolling, feature flags","stems":["A respeito de governança e gestão de TI, julgue os itens que se seguem.","Acerca de arquitetura de aplicações, julgue os próximos itens.","Julgue os itens subsequentes a respeito de CI/CD (continuous integration/continuous delivery).","A respeito de CI/CD (continuous integration/continuous delivery), julgue os próximos itens.","Considerando o trecho de código precedente, extraído do arquivo .gitlab-ci.yml, julgue os próximos itens.","Acerca do DevOps, julgue os itens seguintes.","Julgue os itens subsequentes, referentes a DevOps, switches, teoria e políticas de backup e recuperação de dados e Apache.","Julgue os itens a seguir, a respeito de conceitos, prática e ferramentas relativos a DevOps e de integração contínua.","Acerca das tecnologias que atendem a PDPJ-Br, julgue os próximos itens.","Julgue os próximos itens, relativos a H2, Keycloak, Webhooks, Git, CD (continuous delivery) e CI (continuous integration).","No que concerne à qualidade do código e de sistemas e à abordagem DevOps, julgue os itens subsequentes.","A respeito de DevOps, GIT e testes de software, julgue os itens a seguir.","Julgue os itens a seguir, em relação a práticas DevOps, CD (continuous delivery) e CI (continuous integration).","Com base na instrução precedente, julgue o item a seguir, considerando o contexto de um arquivo de workflow no GitHub Actions e a função da ação actions/checkout@v2.","No que se refere a práticas de DevOps, julgue o próximo item.","Acerca de CI/CD (continuous integration/continuous delivery), julgue os seguintes itens.","Julgue os próximos itens, relativos a H2, Keycloak, Webhooks, Git, continuous delivery e continuous integration.","Julgue os itens a seguir a respeito dos conceitos de DevOps e DevSecOps.","Em relação a DevOps e DevSecOps, julgue os itens que se seguem.","Julgue o item seguinte com relação ao conceito de integração contínua (CI).","Julgue o item a seguir a respeito do conceito de entrega contínua (CD).","A respeito de ferramentas de controle de versão e ferramentas de integração contínua, julgue os itens subsequentes.","Julgue os próximos itens, relativos ao DevOps.","Julgue os próximos itens, relativos a desenvolvimento seguro.","Julgue os itens a seguir acerca de intranet, extranet, UDDI, XSLT e DevOps.","A respeito de DevSecOps e de técnicas de análise de desempenho, julgue os seguintes itens.","Tendo como referência conceitos e princípios de DevOps e DevSecOps, julgue os itens a seguir, relativos aos 6 Cs.","Acerca dos princípios e das práticas de DevOps e DevSecOps, integração e entrega contínuas, julgue os seguintes itens.","Tendo em vista que, no atual cenário de desenvolvimento de aplicações web, é essencial considerar princípios, como consistência e escalabilidade, e práticas, como automação do processo de implantação e integração do código-fonte, julgue os itens subsequentes.","Julgue os itens que se seguem, com relação a técnicas de integração e implantação contínua de código.","A respeito do Gitlab, julgue os itens a seguir.","A respeito de metodologias e técnicas prescritas pela engenharia de software para o desenvolvimento e para a gestão de produtos, julgue os itens que se seguem.","Acerca de conteinerização e de DevOps, julgue os itens subsequentes.","A respeito de contêineres, máquinas virtuais e DevOps, julgue os itens a seguir.","Julgue os seguintes itens, relativos DevOps, CI/CD, contêiner e arquitetura de banco de dados.","A respeito de conteinerização e DevOps, julgue os itens que se seguem.","A respeito de DevOps, julgue os itens subsequentes.","Acerca de conceitos e fundamentos de metodologias ágeis, julgue os itens que se seguem.","Considerando a figura a seguir, julgue os próximos itens, acerca dos conceitos de DevOps.","No que diz respeito aos conceitos de criptografia, à assinatura digital, aos conceitos utilizados em sistemas operacionais e às noções de DevOps, julgue os itens seguintes.","Julgue os itens a seguir, relativos à gestão de configuração DevOps e CI/CD.","Julgue os itens que se seguem, acerca de DevOps.","Julgue os itens subsecutivos, relativos a DevOps e notação BPMN.","No que se refere ao uso de Jenkins, julgue os itens seguintes.","Tendo como referência as principais fases no ciclo de vida do DevOps, julgue os itens subsequentes.","Julgue os itens a seguir, referentes ao conjunto de práticas de desenvolvimento de software, operação e de apoio envolvidas (DevOps).","Acerca dos fundamentos e dos princípios da qualidade de software e da gestão da configuração, julgue os itens que se seguem.","Com relação a DevOps e TOGAF, julgue os seguintes itens.","Com relação a desenvolvimento de software, julgue os itens a seguir.","Julgue os próximos itens, relativos à governança de TI, à NBR ISO/IEC 38500:2009, ao COBIT 5 e ao DevOps.","Acerca da gestão ágil de projetos com Scrum, de DevOps e da arquitetura corporativa (TOGAF), julgue os próximos itens.","Acerca de TomCat, desenvolvimento seguro de software, refactoring e integração contínua, julgue os próximos itens."],"questions":[{"id":"13d894e5d383","number":54,"stem":0,"statement":"Em DevOps, entrega contínua é a capacidade de implantar novas funcionalidades manualmente após a realização de muitos testes de regressão.","answer":"E","source":{"slug":"MP_CE_25_SERVIDOR","ano":2025},"explanation":{"verdict_reason":"Entrega contínua é a capacidade de manter o software permanentemente em estado liberável por meio de uma esteira automatizada de build, teste e preparação. O que nela pode depender de uma pessoa é apenas a decisão de publicar, não a mecânica da implantação, que é automatizada. Definir a prática pela implantação manual precedida de muitos testes de regressão descreve exatamente o modelo de ciclo longo que a entrega contínua veio substituir.","distortion_type":"inversao","distorted_span":"implantar novas funcionalidades manualmente após a realização de muitos testes de regressão","corrected_statement":"Em DevOps, entrega contínua é a capacidade de manter o software sempre pronto para ser implantado, por meio de build, testes e preparação automatizados a cada alteração.","concept":"Entrega contínua é automação do preparo, não implantação manual","citation":null,"trap_note":"Quando o item define uma prática de DevOps por um procedimento manual, desconfie: automação é a propriedade definidora das três contínuas. O único passo que a entrega contínua admite como humano é a decisão de liberar."}},{"id":"b185d3d30786","number":66,"stem":1,"statement":"Em DevOps, o conceito de distribuição contínua refere-se à prática de criar, testar e preparar as alterações de código automaticamente para a produção.","answer":"C","source":{"slug":"TELEBRAS_25","ano":2025},"explanation":{"verdict_reason":"Distribuição contínua é a tradução corrente de continuous delivery: a cada alteração a esteira constrói, testa e prepara automaticamente o artefato para produção, de modo que ele esteja sempre em condição de ser liberado. O item para exatamente onde a prática para, na preparação.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Distribuição contínua prepara automaticamente para produção","citation":null,"trap_note":"Criar, testar e preparar para produção é entrega contínua. Se aparecesse publicar em produção sem aprovação, seria implantação contínua."}},{"id":"a43e7ece3935","number":69,"stem":2,"statement":"Na etapa de CI, desenvolvedores devem mesclar (merge) suas alterações na branch principal apenas uma vez por semana para reduzir conflitos e economizar tempo de build.","answer":"E","source":{"slug":"TJ_PA_25_SERVIDOR","ano":2025},"explanation":{"verdict_reason":"A regra clássica da integração contínua é o oposto: cada desenvolvedor integra seu trabalho ao tronco pelo menos uma vez por dia. A frequência alta é o que mantém o lote pequeno e o conflito trivial de resolver; espaçar a integração por uma semana recria exatamente o acúmulo que a prática existe para evitar.","distortion_type":"numero_errado","distorted_span":"apenas uma vez por semana","corrected_statement":"Na etapa de CI, desenvolvedores devem mesclar (merge) suas alterações na branch principal pelo menos uma vez por dia para reduzir conflitos e economizar tempo de build.","concept":"Cadência de integração: pelo menos diária","citation":null,"trap_note":"Cadência é o número preferido da banca neste tópico. Integração ao tronco é diária, no mínimo; qualquer periodicidade semanal, quinzenal ou mensal num item de CI está errada."}},{"id":"7aff9ec7263c","number":70,"stem":2,"statement":"O CD exige que toda alteração no código seja automaticamente implantada em produção sem intervenção humana.","answer":"E","source":{"slug":"TJ_PA_25_SERVIDOR","ano":2025},"explanation":{"verdict_reason":"No contexto de continuous delivery, a esteira deixa toda alteração pronta para ir a produção, mas a publicação permanece uma decisão de negócio, acionada por uma pessoa. Implantar automaticamente em produção tudo o que passa na esteira, sem intervenção humana, é implantação contínua (continuous deployment), o degrau seguinte.","distortion_type":"troca_de_termo","distorted_span":"exige que toda alteração no código seja automaticamente implantada em produção sem intervenção humana","corrected_statement":"O CD deixa toda alteração no código pronta para ser implantada em produção, cabendo a uma pessoa a decisão de publicá-la.","concept":"Entrega contínua × implantação contínua: onde fica o botão","citation":null,"trap_note":"A sigla CD é ambígua de propósito. Se o item descreve publicação automática em produção sem aprovação, fala de deployment; se descreve artefato sempre pronto com liberação decidida por alguém, fala de delivery."}},{"id":"82a5d8daf7ce","number":72,"stem":3,"statement":"No trecho de arquivo .gitlab-ci.yml, utilizado no GitLab CI/CD para definir regras de execução de pipelines, só será criada a pipeline se as três regras de ativação do workflow.rules forem verdadeiras.\n\nworkflow:\n  rules:\n    - if: $ CI_PIPELINE_SOURCE ==\n'merge_request_event'\n    - if: $ CI_COMMIT_TAG\n    - if: $ CI_COMMIT_BRANCH ==\n$ CI_DEFAULT_BRANCH","answer":"E","source":{"slug":"STM_25","ano":2025},"explanation":{"verdict_reason":"Em workflow:rules as regras são avaliadas em ordem e a primeira que corresponder decide o resultado — a semântica é de alternativa, não de conjunção. Basta que uma das três condições se verifique (evento de merge request, existência de tag ou commit no branch padrão) para que a pipeline seja criada.","distortion_type":"generalizacao","distorted_span":"só será criada a pipeline se as três regras de ativação do workflow.rules forem verdadeiras","corrected_statement":"No trecho de arquivo .gitlab-ci.yml, utilizado no GitLab CI/CD para definir regras de execução de pipelines, será criada a pipeline se qualquer uma das regras de ativação do workflow.rules for verdadeira, pois elas são avaliadas em ordem e a primeira correspondência decide.","concept":"rules avalia em ordem e a primeira correspondência decide","citation":null,"trap_note":"Listas de regras em ferramentas de CI quase sempre funcionam por primeira correspondência, não por conjunção. Item que exija todas as condições verdadeiras inverte essa semântica."}},{"id":"b42fbe11e1b8","number":73,"stem":3,"statement":"No trecho do arquivo .gitlab-ci.yml, utilizado no GitLab CI/CD para definir regras de execução de pipelines com base em variáveis de ambiente, na execução do bloco job2, o valor da variável ALL_JOBS_VAR será “Different value than default”, pois variáveis definidas no nível do job têm precedência sobre as globais com o mesmo nome.\n\nvariables:\n  ALL_JOBS_VAR: \"A default variable\"\njob1:\n  variables:\n    JOB1_VAR: \"Job 1 variable\"\n  script:\n    - echo \"Variables are '$ ALL_JOBS_VAR'\nand '$ JOB1_VAR'\"\njob2:\n  variables:\n    ALL_JOBS_VAR: \"Different value than\ndefault\"\n    JOB2_VAR: \"Job 2 variable\"\n  script:\n    - echo \"Variables are '$ ALL_JOBS_VAR',\n'$ JOB2_VAR', and '$ JOB1_VAR'\"","answer":"C","source":{"slug":"STM_25","ano":2025},"explanation":{"verdict_reason":"Variáveis declaradas dentro de um job têm precedência sobre variáveis globais de mesmo nome: a definição mais específica vence. Como job2 redefine ALL_JOBS_VAR, é o valor local que aparece na execução dele, enquanto job1, que não redefine, recebe o valor global.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Precedência de variáveis: job sobrepõe global","citation":null,"trap_note":"Precedência em arquivos de configuração vai do mais específico para o mais geral. O item inverso, global sobrepondo job, é falso pela mesma regra."}},{"id":"bf93ec5bdc97","number":90,"stem":4,"statement":"Os jobs build ruby 1/2 e build ruby 2/2 são, por padrão, executados em paralelo no GitLab CI, a menos que haja dependências explícitas configuradas entre eles.","answer":"C","source":{"slug":"SUSEP_25","ano":2025},"explanation":{"verdict_reason":"Nomes de job no formato build ruby 1/2 e build ruby 2/2 são instâncias geradas pela palavra-chave parallel, e no GitLab CI os jobs de um mesmo estágio são executados simultaneamente, limitados apenas pela disponibilidade de runners. A execução deixa de ser paralela somente quando se declara dependência explícita, com needs ou pela separação em estágios distintos.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Jobs do mesmo estágio rodam em paralelo por padrão no GitLab CI","citation":null,"trap_note":"No GitLab CI o paralelismo é o padrão dentro do estágio e a serialização é que precisa ser declarada, por estágios em sequência ou por needs. Itens que invertem esse padrão são falsos."}},{"id":"51d28c8d5abe","number":41,"stem":5,"statement":"Os recursos de monitoramento são de responsabilidade privativa, nessa abordagem, da equipe de operações no processo de CI/CD (continuous integration / continuous delivery).","answer":"E","source":{"slug":"MPO_24","ano":2024},"explanation":{"verdict_reason":"Monitoramento em DevOps é responsabilidade compartilhada: os dados de produção realimentam quem escreve o código, e é essa realimentação que permite corrigir cedo e reduzir o MTTR. Reservar a observação do sistema à operação restabelece o muro entre as equipes que o modelo existe para derrubar.","distortion_type":"generalizacao","distorted_span":"de responsabilidade privativa","corrected_statement":"Os recursos de monitoramento são de responsabilidade compartilhada, nessa abordagem, entre as equipes de desenvolvimento e de operações no processo de CI/CD (continuous integration / continuous delivery).","concept":"Monitoramento é responsabilidade compartilhada","citation":null,"trap_note":"Exclusividade — privativa, apenas, somente a equipe tal — num item de DevOps é quase sempre falsa, porque o modelo se define pela responsabilidade compartilhada."}},{"id":"03b58f51cd6e","number":42,"stem":5,"statement":"O processo de desenvolvimento e entrega de software integrado a um time de operações requer necessariamente a utilização da prática de conteinerização.","answer":"E","source":{"slug":"MPO_24","ano":2024},"explanation":{"verdict_reason":"A conteinerização facilita a paridade entre ambientes e a implantação, mas não é condição de DevOps: a prática é anterior aos contêineres e se realiza igualmente com máquinas virtuais, servidores sob configuração declarativa ou pacotes tradicionais. O que o modelo exige é automação, teste e responsabilidade compartilhada, não uma tecnologia específica.","distortion_type":"generalizacao","distorted_span":"requer necessariamente a utilização da prática de conteinerização","corrected_statement":"O processo de desenvolvimento e entrega de software integrado a um time de operações não requer necessariamente a utilização da prática de conteinerização.","concept":"DevOps não exige contêiner","citation":null,"trap_note":"Necessariamente, obrigatoriamente e somente com transformam recomendação em requisito. DevOps é prática e cultura; a pilha tecnológica é escolha."}},{"id":"e5fd031051a7","number":64,"stem":6,"statement":"Entrega contínua é uma abordagem da engenharia de software na qual se produzem softwares em ciclos curtos, garantindo um software executável a qualquer momento e, ainda, a redução de custos, de tempo e de risco na entrega.","answer":"C","source":{"slug":"CODEVASF_24","ano":2024},"explanation":{"verdict_reason":"A definição corrente de entrega contínua é essa: ciclos curtos que mantêm o software em estado executável e liberável a qualquer momento. O ganho declarado vem da consequência: lote menor significa menos retrabalho, menos tempo parado entre pronto e publicado e menos risco por entrega.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Entrega contínua: ciclos curtos, software sempre liberável","citation":null,"trap_note":"Ciclo curto e software sempre executável são a assinatura da entrega contínua. Se o item acrescentasse publicação automática ao cliente, passaria a descrever implantação contínua."}},{"id":"7731284fdd3a","number":66,"stem":7,"statement":"Uma das boas práticas do DevOps é a adoção de uma cultura livre de culpa por erros nos processos apresentados pelos desenvolvedores ou pelo pessoal de operações.","answer":"C","source":{"slug":"PREF_CACHOEIRO_24_ADM","ano":2024},"explanation":{"verdict_reason":"A cultura livre de culpa é uma das bases do pilar de cultura do CALMS: quando o pós-incidente serve para achar um responsável, as pessoas escondem o erro e a organização perde a informação de que precisa para corrigir o sistema. Tratar a falha como propriedade do processo, e não da pessoa, é o que sustenta a responsabilidade compartilhada entre desenvolvimento e operações.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Cultura sem culpa como base da responsabilidade compartilhada","citation":null,"trap_note":"Itens sem ferramenta nenhuma no enunciado cobram CALMS. Colaboração, confiança, ausência de culpa e compartilhamento do aprendizado são sempre coerentes com DevOps."}},{"id":"9dd680f41e68","number":67,"stem":7,"statement":"Para uma integração contínua efetiva, um dos princípios recomendados é realizar o teste dos builds no ambiente de produção no qual o sistema final será executado.","answer":"E","source":{"slug":"PREF_CACHOEIRO_24_ADM","ano":2024},"explanation":{"verdict_reason":"A prática recomenda testar os builds em um clone do ambiente de produção, uma réplica com a mesma configuração, justamente para detectar diferenças de ambiente sem expor o sistema em uso. Testar no próprio ambiente produtivo elimina a proteção que a réplica existe para dar.","distortion_type":"troca_de_termo","distorted_span":"realizar o teste dos builds no ambiente de produção no qual o sistema final será executado","corrected_statement":"Para uma integração contínua efetiva, um dos princípios recomendados é realizar o teste dos builds em um clone do ambiente de produção no qual o sistema final será executado.","concept":"Testar em clone do ambiente de produção","citation":null,"trap_note":"Uma palavra decide: clone. A recomendação é reproduzir produção, não usá-la. É um dos pontos mais repetidos da lista clássica de práticas de CI."}},{"id":"139bb99fd2bb","number":67,"stem":8,"statement":"O objetivo da entrega contínua (continuous delivery) é diminuir o intervalo de tempo entre a criação de uma ideia e sua respectiva implantação em produção.","answer":"C","source":{"slug":"CNJ_24","ano":2024},"explanation":{"verdict_reason":"Encurtar o intervalo entre conceber e ter em produção é o objetivo declarado da entrega contínua, e corresponde ao lead time das métricas de desempenho de entrega. Todo o restante da prática, da automação do build aos ambientes intermediários, existe para remover as esperas desse caminho.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Entrega contínua encurta o tempo da ideia à produção","citation":null,"trap_note":"Reduzir o intervalo entre ideia e produção é a finalidade da prática; item que lhe atribua o efeito de espaçar entregas ou alongar ciclos a inverte."}},{"id":"b5de913aeee3","number":68,"stem":9,"statement":"CD (continuous delivery) e CI (continuous integration) são práticas afetas ao DevOps: a primeira realiza a implantação automática no repositório da solução após o build; e a segunda realiza implantação automática no ambiente de produção a cada release.","answer":"E","source":{"slug":"STJ_24","ano":2024},"explanation":{"verdict_reason":"As duas metades estão trocadas. Integrar automaticamente o código no repositório compartilhado, com build após cada envio, é integração contínua; preparar e levar a versão ao ambiente produtivo é entrega contínua. Cada descrição está corretamente formulada, mas assinada com o nome da outra prática.","distortion_type":"inversao","distorted_span":"a primeira realiza a implantação automática no repositório da solução após o build","corrected_statement":"CD (continuous delivery) e CI (continuous integration) são práticas afetas ao DevOps: a primeira prepara e realiza a implantação da solução no ambiente de produção a cada release; e a segunda realiza a integração automática do código no repositório da solução, com build a cada envio.","concept":"CI integra no repositório; CD leva a produção","citation":null,"trap_note":"Enunciado que apresenta duas siglas e depois fala em primeira e segunda quase sempre inverte a ordem. Decida de que prática é cada descrição antes de olhar a sequência."}},{"id":"ad1d8623031e","number":69,"stem":10,"statement":"Um dos benefícios do DevOps, no que diz respeito aos testes, é o fato de a integração contínua estimular o princípio do teste antecipado, incentivando os desenvolvedores a entregar códigos de alta qualidade junto com a análise estática.","answer":"C","source":{"slug":"CPNUJE_24","ano":2024},"explanation":{"verdict_reason":"Ao disparar build e verificação a cada alteração, a integração contínua move a detecção do defeito para o momento em que ele é escrito, que é o princípio do teste antecipado. A análise estática entra no mesmo gatilho, examinando o código sem executá-lo, e o efeito conjunto é o desenvolvedor receber o veredito sobre qualidade ainda dentro do seu ciclo de trabalho.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"CI como veículo do teste antecipado e da análise estática","citation":null,"trap_note":"Antecipar o teste é o argumento econômico por trás da CI: defeito custa mais a cada fase que atravessa. Itens que empurrem teste ou segurança para o fim do ciclo contrariam esse princípio."}},{"id":"d7ae1c3e138c","number":70,"stem":11,"statement":"No DevOps, o pipeline de entrega contínua gerencia o processo de desenvolvimento do software, prescindindo-se dos testes, uma vez que a gestão do código-fonte é iterativa com vistas a otimizar a entrega rápida de software de alta qualidade, unindo as equipes de desenvolvimento e de operações.","answer":"E","source":{"slug":"MP_GO_24_SERVIDOR","ano":2024},"explanation":{"verdict_reason":"A entrega contínua não dispensa testes: depende deles. Todo o valor da esteira está em promover o artefato apenas quando ele atravessa portões automatizados de verificação; sem teste, entrega-se rápido e sem nenhuma garantia de qualidade. A justificativa pela gestão iterativa do código-fonte não sustenta a conclusão.","distortion_type":"relacao_causal","distorted_span":"prescindindo-se dos testes, uma vez que a gestão do código-fonte é iterativa","corrected_statement":"No DevOps, o pipeline de entrega contínua gerencia o processo de desenvolvimento do software, apoiando-se em testes automatizados, uma vez que a gestão do código-fonte é iterativa com vistas a otimizar a entrega rápida de software de alta qualidade, unindo as equipes de desenvolvimento e de operações.","concept":"Teste é condição da esteira, não etapa dispensável","citation":null,"trap_note":"Oração explicativa com uma vez que, dado que ou por isso costuma emprestar lógica a uma conclusão que não se sustenta. Item que justifique suprimir teste, aprovação ou monitoramento é falso quase por construção."}},{"id":"50f5f67fb5e8","number":71,"stem":12,"statement":"No modelo gitflow, a branch principal para o ambiente de produção, que deve conter as versões estáveis do código que originam as builds, é denominada feature.","answer":"E","source":{"slug":"STJ_24","ano":2024},"explanation":{"verdict_reason":"No gitflow o branch que espelha produção e guarda as versões estáveis é o master (ou main); paralelo a ele corre o develop, de integração. Branches feature são ramos temporários, criados a partir de develop para uma funcionalidade e removidos depois da incorporação — eles nunca originam as builds de produção.","distortion_type":"troca_de_termo","distorted_span":"é denominada feature","corrected_statement":"No modelo gitflow, a branch principal para o ambiente de produção, que deve conter as versões estáveis do código que originam as builds, é denominada master (ou main).","concept":"gitflow: master é produção; feature é ramo temporário","citation":null,"trap_note":"Fixe os papéis do gitflow: master ou main é produção, develop é integração, feature é temporário, release prepara a versão e hotfix corrige produção. A banca troca esses nomes mantendo a descrição."}},{"id":"a107ef4a1ae1","number":73,"stem":13,"statement":"A instrução apresentada tem como objetivo realizar o checkout, ou seja, baixar o código do repositório no runner para a execução de outras tarefas.","answer":"C","source":{"slug":"TRF6_24","ano":2024},"explanation":{"verdict_reason":"A ação actions/checkout clona o repositório no sistema de arquivos do runner e posiciona a revisão que disparou o workflow. Sem ela o runner começa com um diretório vazio, e por isso ela costuma ser o primeiro passo: compilar, testar e empacotar dependem de haver código ali.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"actions/checkout baixa o repositório no runner","citation":null,"trap_note":"Em GitHub Actions o runner não tem o código por padrão. Item que trate o checkout como opcional, ou que lhe atribua build ou implantação, está errado."}},{"id":"ca5e13e73dd3","number":74,"stem":14,"statement":"As práticas de DevOps, ao focarem em automação, monitoramento contínuo e feedback rápido, melhoram o tempo médio de recuperação (MTTR) após uma falha.","answer":"C","source":{"slug":"TRF6_24","ano":2024},"explanation":{"verdict_reason":"MTTR é o tempo médio para restaurar o serviço após uma falha e se decompõe em perceber, diagnosticar e corrigir. Monitoramento contínuo encurta a percepção, a realimentação rápida encurta o diagnóstico e a automação da esteira encurta a correção, porque voltar à versão anterior deixa de ser operação manual ensaiada uma vez por ano.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"DevOps reduz MTTR encurtando perceber, diagnosticar e corrigir","citation":null,"trap_note":"MTTR é métrica de recuperação, não de prevenção. DevOps não promete falhar menos por decreto: promete restabelecer mais rápido, e é assim que costuma ser cobrado."}},{"id":"fbee2d8a0a39","number":75,"stem":15,"statement":"CI refere-se à liberação automática das mudanças feitas por desenvolvedores, do repositório à produção, onde podem ser usadas por clientes.","answer":"E","source":{"slug":"TRF6_24","ano":2024},"explanation":{"verdict_reason":"Liberar automaticamente ao cliente o que vem do repositório é implantação contínua. A integração contínua termina antes disso: reúne o trabalho de todos no tronco e executa build e testes automáticos, produzindo um artefato validado, sem publicá-lo a usuário nenhum.","distortion_type":"troca_de_termo","distorted_span":"CI refere-se à liberação automática","corrected_statement":"A implantação contínua refere-se à liberação automática das mudanças feitas por desenvolvedores, do repositório à produção, onde podem ser usadas por clientes.","concept":"CI termina no artefato validado, não em produção","citation":null,"trap_note":"Se a frase chega ao cliente, não é integração contínua. Marque onde a descrição termina — repositório, artefato pronto ou produção — e o nome certo cai sozinho."}},{"id":"da0c519267e8","number":76,"stem":15,"statement":"A prática de CD tem como foco o uso de testes de unidade para verificar rapidamente novas mudanças, garantindo a confiabilidade das mudanças consolidadas no código.","answer":"E","source":{"slug":"TRF6_24","ano":2024},"explanation":{"verdict_reason":"Rodar testes de unidade a cada mudança para validá-la rapidamente é o foco da integração contínua. A entrega contínua pressupõe isso resolvido e se ocupa do passo seguinte: empacotar, promover pelos ambientes e manter o artefato em estado liberável a qualquer momento.","distortion_type":"troca_de_termo","distorted_span":"A prática de CD tem como foco o uso de testes de unidade","corrected_statement":"A prática de CI tem como foco o uso de testes de unidade para verificar rapidamente novas mudanças, garantindo a confiabilidade das mudanças consolidadas no código.","concept":"Teste de unidade rápido é CI; preparo para produção é CD","citation":null,"trap_note":"Consolidação de código e verificação rápida pertencem a CI; preparação e promoção a produção pertencem a CD. A banca mantém a descrição e troca a sigla."}},{"id":"8d04350ef6e6","number":78,"stem":16,"statement":"Continuous delivery (CD) e continuous integration (CI) são práticas afetas ao DevOps: a primeira realiza a implantação automática no repositório da solução após o build; e a segunda realiza implantação automática no ambiente de produção a cada release.","answer":"E","source":{"slug":"STJ_24","ano":2024},"explanation":{"verdict_reason":"As duas definições estão trocadas. Quem integra automaticamente o trabalho no repositório compartilhado, com build após cada envio, é a integração contínua; quem prepara e leva a versão ao ambiente produtivo é a entrega contínua. Cada metade do item descreve corretamente a prática do outro nome.","distortion_type":"inversao","distorted_span":"a primeira realiza a implantação automática no repositório da solução após o build","corrected_statement":"Continuous delivery (CD) e continuous integration (CI) são práticas afetas ao DevOps: a primeira prepara e realiza a implantação da solução no ambiente de produção a cada release; e a segunda realiza a integração automática do código no repositório da solução, com build a cada envio.","concept":"CI integra no repositório; CD leva a produção","citation":null,"trap_note":"Item que enuncia duas práticas e depois as descreve como a primeira e a segunda é convite à inversão. Leia as descrições antes dos nomes e só então confira a ordem."}},{"id":"00bf41c9da6d","number":79,"stem":17,"statement":"Um kubelet funciona como um agente em nível de nó para ajudar no gerenciamento e orquestração de contêineres em um cluster kubernetes.","answer":"C","source":{"slug":"MPO_24","ano":2024},"explanation":{"verdict_reason":"O kubelet é o agente que roda em cada nó do cluster: recebe do plano de controle a especificação dos pods que lhe couberam e pede ao container runtime que os execute, reportando o estado de volta. É o braço local do laço de reconciliação e atua no nível do nó, não do cluster inteiro.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"kubelet é o agente por nó","citation":null,"trap_note":"Separe decidir, guardar e executar no Kubernetes: o scheduler escolhe o nó, o etcd guarda o estado, o kubelet executa no nó. A banca troca esses papéis."}},{"id":"462a3bfcd654","number":80,"stem":18,"statement":"Ansible é uma ferramenta escrita em Java e que usa JSON para descrever o estado desejado dos dispositivos e da configuração.","answer":"E","source":{"slug":"CNJ_24","ano":2024},"explanation":{"verdict_reason":"O Ansible é escrito em Python e descreve o estado desejado em YAML, nos chamados playbooks; a escolha do YAML faz parte do argumento de legibilidade da ferramenta. Java e JSON pertencem a outras pilhas e nenhum dos dois descreve a configuração no Ansible.","distortion_type":"troca_de_termo","distorted_span":"escrita em Java e que usa JSON","corrected_statement":"Ansible é uma ferramenta escrita em Python e que usa YAML para descrever o estado desejado dos dispositivos e da configuração.","concept":"Ansible: Python e YAML","citation":null,"trap_note":"Linguagem de implementação e formato de configuração são um par que a banca troca com frequência. No Ansible, Python e YAML, e a operação é sem agente, por SSH."}},{"id":"1a5d40ebc04c","number":80,"stem":17,"statement":"Docker compose é uma ferramenta para definir e executar aplicativos com vários contêineres. É a chave para desbloquear uma experiência de desenvolvimento e implantação simplificada e eficiente.","answer":"C","source":{"slug":"MPO_24","ano":2024},"explanation":{"verdict_reason":"O Docker Compose descreve em um único arquivo declarativo um conjunto de serviços, redes e volumes, e os sobe com um comando. É o que permite reproduzir localmente uma aplicação de vários contêineres sem orquestrador completo, encurtando o ciclo de desenvolvimento e teste.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Compose define e executa aplicações multicontêiner","citation":null,"trap_note":"Compose é para um conjunto de contêineres, tipicamente em um hospedeiro; orquestração em escala, com escalonamento e autorrecuperação em vários nós, é Kubernetes."}},{"id":"11f364a9290c","number":81,"stem":18,"statement":"O gerenciamento das configurações rastreia, atualiza e mantém as configurações dos servidores, das aplicações e de outros ambientes de um sistema, para que este funcione em uma linha de base predeterminada e permaneça seguro independentemente de quaisquer alterações.","answer":"C","source":{"slug":"CNJ_24","ano":2024},"explanation":{"verdict_reason":"O gerenciamento de configuração é a disciplina que mantém servidores, aplicações e ambientes em uma linha de base conhecida: registra o estado desejado, aplica-o e corrige desvios. É dessa linha de base que se extrai a garantia de segurança e de reprodutibilidade, porque qualquer alteração passa a ser divergência detectável, e não estado normal.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Linha de base e correção de desvio no gerenciamento de configuração","citation":null,"trap_note":"A ideia central é a linha de base: estado conhecido, versionado e continuamente reaplicado. É a mesma lógica da infraestrutura como código e o motivo de existirem Ansible, Puppet e Chef."}},{"id":"40709fed3f6d","number":81,"stem":17,"statement":"Um contêiner é uma solução que opera com um sistema operacional completo e independente, proporcionando um isolamento robusto.","answer":"E","source":{"slug":"MPO_24","ano":2024},"explanation":{"verdict_reason":"O contêiner compartilha o núcleo do sistema operacional do hospedeiro e isola apenas o espaço de usuário, por namespaces e cgroups; é justamente por não carregar sistema operacional próprio que ele é leve e sobe em segundos. Sistema operacional completo e independente, com isolamento mais forte, é a máquina virtual.","distortion_type":"troca_de_termo","distorted_span":"opera com um sistema operacional completo e independente","corrected_statement":"Um contêiner é uma solução que compartilha o núcleo do sistema operacional do hospedeiro, isolando o espaço de usuário da aplicação.","concept":"Contêiner compartilha o núcleo; máquina virtual tem SO próprio","citation":null,"trap_note":"Contêiner × máquina virtual se decide por uma pergunta: há sistema operacional convidado próprio? Se há, é VM; se o núcleo é compartilhado, é contêiner."}},{"id":"f5645a5dfb32","number":82,"stem":18,"statement":"Uma branch do Git é simplesmente um ponteiro móvel para um instantâneo das alterações.","answer":"C","source":{"slug":"CNJ_24","ano":2024},"explanation":{"verdict_reason":"No Git, cada commit guarda um instantâneo completo da árvore de arquivos, e um branch nada mais é que um ponteiro leve para um desses commits, ponteiro que avança sozinho a cada novo commit feito nele. É por isso que criar um branch no Git custa praticamente nada: escreve-se um arquivo com um identificador.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Branch é ponteiro móvel para um commit","citation":null,"trap_note":"O modelo do Git é de instantâneos, não de diferenças, e branch é ponteiro, não cópia. Item que descreva branch como duplicação do diretório de trabalho erra."}},{"id":"3fcb75a1f747","number":84,"stem":19,"statement":"A integração contínua é um compilado organizado de vários componentes de serviço que reúne itens, como conectores de banco de dados, interface de usuário e regras de negócio, de forma que essas partes todas juntas possam realizar ações e comandos diversos.","answer":"E","source":{"slug":"MPO_24","ano":2024},"explanation":{"verdict_reason":"O que o item descreve, reunir conectores de banco de dados, interface e regras de negócio para que funcionem em conjunto, é integração de componentes ou de aplicações, assunto de arquitetura. Integração contínua é prática de processo: incorporar frequentemente o trabalho dos desenvolvedores ao repositório comum, com build e testes automáticos a cada alteração.","distortion_type":"troca_de_termo","distorted_span":"um compilado organizado de vários componentes de serviço","corrected_statement":"A integração contínua é a prática de incorporar frequentemente o trabalho dos desenvolvedores a um repositório compartilhado, com build e testes automáticos a cada alteração.","concept":"Integração contínua é prática de processo, não arquitetura de componentes","citation":null,"trap_note":"A palavra integração tem dois sentidos em TI: juntar componentes de um sistema e juntar o trabalho de pessoas no repositório. Integração contínua é sempre o segundo."}},{"id":"df433613ac71","number":86,"stem":20,"statement":"O processo de CD apresenta como uma de suas vantagens à possibilidade de atualização anual concomitantemente à atualização do sistema operacional.","answer":"E","source":{"slug":"MPO_24","ano":2024},"explanation":{"verdict_reason":"A entrega contínua existe para encurtar o ciclo de liberação, levando-o a semanas, dias ou horas; atualização anual é o modelo de ciclo longo que a prática substitui. Nada nela vincula a liberação da aplicação ao calendário de atualização do sistema operacional.","distortion_type":"numero_errado","distorted_span":"atualização anual","corrected_statement":"O processo de CD apresenta como uma de suas vantagens a possibilidade de atualização frequente da aplicação, independentemente da atualização do sistema operacional.","concept":"CD encurta o ciclo de liberação","citation":null,"trap_note":"Periodicidade longa — anual, semestral, mensal — apresentada como vantagem de entrega contínua é contradição direta. A unidade de tempo da prática é o dia ou menos."}},{"id":"81ce563255de","number":105,"stem":21,"statement":"Um arquivo .gitlab-ci.yml no GitLab é usado para definir os stages e jobs do pipeline, além de especificar variáveis de ambiente, configurar regras de deploy e definir condições para a execução dos jobs.","answer":"C","source":{"slug":"CPNUJE_24","ano":2024},"explanation":{"verdict_reason":"O .gitlab-ci.yml é o arquivo único que descreve a esteira no GitLab: declara os stages e sua ordem, os jobs e seus scripts, variáveis de ambiente, regras de execução condicional e as configurações de implantação, inclusive ambientes. Tudo o que o item enumera é competência desse arquivo.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"O .gitlab-ci.yml descreve stages, jobs, variáveis e regras","citation":null,"trap_note":"Em GitLab CI a configuração vive num arquivo versionado junto do código, mesmo padrão do Jenkinsfile e dos workflows do GitHub. Itens que atribuam essa configuração a um painel externo ou ao runner erram."}},{"id":"de66f346adf5","number":109,"stem":22,"statement":"A prática continuous delivery permite que as alterações do código sejam automaticamente preparadas para uma liberação para produção e possibilita automatizar testes, inclusive os de unidade e de carga, por exemplo.","answer":"C","source":{"slug":"SEPLAG_CE_24","ano":2024},"explanation":{"verdict_reason":"Entrega contínua é a prática em que cada alteração é automaticamente construída, testada e preparada para liberação em produção. A automação não se limita a testes de unidade: a mesma esteira executa integração, carga e as demais verificações necessárias para atestar que o artefato está liberável.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Entrega contínua prepara automaticamente o artefato para produção","citation":null,"trap_note":"Preparar automaticamente para produção é entrega contínua; liberar automaticamente é implantação contínua. Note que a entrega contínua não restringe quais testes podem ser automatizados."}},{"id":"505477182cc1","number":110,"stem":22,"statement":"Continuous integration é uma prática de desenvolvimento de software do DevOps cujo objetivo é encontrar e investigar erros mais rapidamente, por meio de processo de criação e testes automáticos de código, sempre que um desenvolvedor da equipe realizar alterações de código, para o controle de versão.","answer":"C","source":{"slug":"SEPLAG_CE_24","ano":2024},"explanation":{"verdict_reason":"A definição é a corrente: a cada alteração enviada ao controle de versão dispara-se build e testes automáticos. O objetivo declarado é encurtar o intervalo entre introduzir e descobrir o defeito, porque erro achado minutos depois do commit tem causa localizável e correção barata.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"CI encontra o erro cedo por build e teste automáticos a cada alteração","citation":null,"trap_note":"Descrição que gira em torno de build e teste disparados por commit é sempre integração contínua. Só migre para entrega ou implantação contínua quando aparecer preparação para produção ou publicação ao cliente."}},{"id":"3d7dbdf0e598","number":114,"stem":23,"statement":"Diferentemente do DevOps, no processo de DevSecOps não há integração contínua, em vez dela, devem ser incluídas verificações de bibliotecas e dependências de terceiros, bem como testes de unidade e testes de segurança no código.","answer":"E","source":{"slug":"CPNUJE_24","ano":2024},"explanation":{"verdict_reason":"O DevSecOps não retira a integração contínua: ela é o alicerce sobre o qual as verificações de segurança são penduradas. As análises de bibliotecas e dependências de terceiros, os testes de unidade e os testes de segurança entram como etapas adicionais da mesma esteira de CI, e não em substituição a ela.","distortion_type":"inversao","distorted_span":"no processo de DevSecOps não há integração contínua, em vez dela","corrected_statement":"Assim como no DevOps, no processo de DevSecOps há integração contínua, à qual devem ser somadas verificações de bibliotecas e dependências de terceiros, bem como testes de unidade e testes de segurança no código.","concept":"DevSecOps soma segurança à CI, não a substitui","citation":null,"trap_note":"DevSecOps é DevOps mais controles automatizados de segurança. Item que apresente o Sec como substituto de uma prática do DevOps, e não como acréscimo, inverte a relação."}},{"id":"62db301f5c2e","number":57,"stem":24,"statement":"Com a adoção de DevOps, na fase de operação de um software, as equipes buscam identificar os problemas antes que afetem a experiência do cliente.","answer":"C","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"Na fase de operação o objetivo do monitoramento é antecipar-se ao usuário: métricas, registros e alertas existem para que a degradação seja detectada e tratada antes de virar incidente percebido. É o mesmo princípio de realimentação que reduz o MTTR: quanto antes o problema aparece no painel, menor o tempo até a restauração.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Monitoramento operacional antecipa o problema ao usuário","citation":null,"trap_note":"Monitoramento em DevOps é proativo por definição. Item que o descreva como simples registro para apuração posterior estreita a finalidade da prática."}},{"id":"904f4edcf690","number":71,"stem":25,"statement":"O DevSecOps deve evitar que o ciclo de trabalho do DevOps fique muito lento, observando sempre a segurança da aplicação e a infraestrutura, e, para isso, um dos cuidados que se deve ter é evitar automatizar barreiras de segurança, o que pode inserir pontos de fragilidade no software, comprometendo a segurança e o tempo de desenvolvimento.","answer":"E","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"O DevSecOps preserva a velocidade do fluxo justamente automatizando as verificações de segurança dentro da esteira: SAST, DAST, SCA e políticas como código. O que trava o ciclo é a revisão de segurança manual no fim; evitar automatizar as barreiras reintroduz esse gargalo e deixa a verificação a critério de quem tem pressa.","distortion_type":"inversao","distorted_span":"evitar automatizar barreiras de segurança","corrected_statement":"O DevSecOps deve evitar que o ciclo de trabalho do DevOps fique muito lento, observando sempre a segurança da aplicação e a infraestrutura, e, para isso, um dos cuidados que se deve ter é automatizar barreiras de segurança, o que evita inserir pontos de fragilidade no software, preservando a segurança e o tempo de desenvolvimento.","concept":"Segurança automatizada dentro da esteira","citation":null,"trap_note":"Em DevSecOps, a resposta a qualquer tensão entre velocidade e segurança é automatizar o controle, nunca removê-lo. Item que recomende evitar automação de segurança inverte o princípio."}},{"id":"0adb178ae83a","number":72,"stem":26,"statement":"O processo de entrega contínua envolve a automação de processos de desenvolvimento, testes e integração dos códigos de forma frequente e em um repositório compartilhado.","answer":"E","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"Automatizar desenvolvimento, testes e a integração frequente do código em um repositório compartilhado é a descrição da integração contínua. A entrega contínua começa onde essa termina: empacotar o artefato validado, promovê-lo pelos ambientes e mantê-lo pronto para liberação.","distortion_type":"troca_de_termo","distorted_span":"O processo de entrega contínua","corrected_statement":"O processo de integração contínua envolve a automação de processos de desenvolvimento, testes e integração dos códigos de forma frequente e em um repositório compartilhado.","concept":"Integração frequente em repositório compartilhado é CI","citation":null,"trap_note":"A expressão repositório compartilhado é marca de integração contínua. Sempre que ela aparecer sob o nome entrega contínua, houve troca de termo."}},{"id":"dfc133329798","number":72,"stem":25,"statement":"O DevSecOps trata de segurança integrada, e não da segurança que funciona no perímetro em torno de aplicativos e dados, a qual também inclui a identificação dos riscos que estão envolvidos na cadeia de fornecimento do software.","answer":"C","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"O DevSecOps desloca a segurança do perímetro para dentro do ciclo de desenvolvimento: ela passa a ser propriedade de cada etapa da esteira, e não uma cerca em torno de aplicativos e dados já prontos. Esse escopo integrado inclui a cadeia de fornecimento, isto é, bibliotecas, dependências e componentes de terceiros que entram no produto.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Segurança integrada ao ciclo, inclusive na cadeia de fornecimento","citation":null,"trap_note":"Segurança de perímetro é o modelo que o DevSecOps substitui. Quando o item contrapõe integrada a perímetro e inclui dependências de terceiros, está alinhado à definição corrente."}},{"id":"49b37e742e6a","number":73,"stem":26,"statement":"A monitoração contínua é uma prática que fornece feedback constante aos desenvolvedores e testadores sobre o desempenho e a disponibilidade de suas aplicações, tanto antes quanto após a implantação.","answer":"C","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"A monitoração contínua cobre os dois lados da implantação: antes, medindo desempenho e comportamento nos ambientes de teste e homologação; depois, observando a aplicação em produção. É essa realimentação permanente que fecha o laço do DevOps, devolvendo a desenvolvedores e testadores a informação sobre como o sistema se comporta de verdade.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Monitoração contínua antes e depois da implantação","citation":null,"trap_note":"Monitoração em DevOps não começa em produção. Item que a restrinja à operação, ou ao período posterior ao deploy, estreita indevidamente o escopo da prática."}},{"id":"f7bcecda6378","number":74,"stem":26,"statement":"A implantação contínua se refere ao lançamento automático das mudanças feitas por um desenvolvedor, do repositório à produção, as quais podem ser utilizadas por clientes.","answer":"C","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"É a definição de implantação contínua: aprovada nos testes automatizados, a alteração vai do repositório a produção sem aprovação manual, ficando imediatamente disponível ao cliente. Ela se distingue da entrega contínua exatamente por não haver botão humano no último passo.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Implantação contínua publica automaticamente ao cliente","citation":null,"trap_note":"Chegou ao cliente sem intervenção humana, é implantação contínua; parou no artefato pronto, é entrega contínua. É a fronteira mais cobrada do tópico."}},{"id":"248b11c82485","number":76,"stem":27,"statement":"A realização de testes no DevSecOps apoia-se no uso de ferramentas de teste dinâmico de segurança de aplicativos (DAST) com base nas recomendações do OWASP.","answer":"C","source":{"slug":"BCB_24","ano":2023},"explanation":{"verdict_reason":"O DAST testa a aplicação em execução, atacando-a de fora como faria um adversário, e por isso é o instrumento natural para verificar as classes de falha catalogadas pelo OWASP. Em DevSecOps ele entra como etapa automatizada da esteira, ao lado do SAST, que analisa o código sem executá-lo, e do SCA, que examina dependências de terceiros.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"DAST testa a aplicação em execução, orientado pelo OWASP","citation":null,"trap_note":"Guarde o eixo: SAST é estático e olha o código; DAST é dinâmico e olha a aplicação rodando; SCA olha bibliotecas de terceiros. A banca troca esses três nomes mantendo a descrição certa."}},{"id":"31fe1f0d0680","number":77,"stem":27,"statement":"Integração, entrega e implementação contínuas e com segurança em todo o ciclo de vida do desenvolvimento de software são os princípios básicos do DevOps.","answer":"E","source":{"slug":"BCB_24","ano":2023},"explanation":{"verdict_reason":"Integrar, entregar e implantar continuamente são práticas de DevOps, mas o que caracteriza o acréscimo da segurança embutida em todas as etapas do ciclo de vida é o DevSecOps. É exatamente essa incorporação dos controles de segurança à esteira que dá nome à variação; atribuí-la aos princípios básicos do DevOps apaga a distinção entre os dois.","distortion_type":"troca_de_termo","distorted_span":"são os princípios básicos do DevOps","corrected_statement":"Integração, entrega e implementação contínuas e com segurança em todo o ciclo de vida do desenvolvimento de software são os princípios básicos do DevSecOps.","concept":"Segurança em todo o ciclo é o que define DevSecOps","citation":null,"trap_note":"Quando a frase inclui segurança em todas as fases e assina DevOps, leia de novo: essa é a definição de DevSecOps. O inverso também cai, descrever DevSecOps sem nenhum elemento de segurança."}},{"id":"7891feb877c6","number":78,"stem":28,"statement":"O Ansible é uma ferramenta de integração contínua que permite automatizar o processo de construção, teste e implantação de software e pode ser integrado a outras ferramentas DevOps, como Git, Docker e Kubernetes.","answer":"E","source":{"slug":"SEFIN_FORTALEZA_CE_23","ano":2023},"explanation":{"verdict_reason":"O Ansible é ferramenta de automação de configuração e de infraestrutura como código: leva servidores e ambientes ao estado desejado descrito em playbooks. Integração contínua, isto é, compilar e testar a cada alteração enviada ao repositório, é papel de Jenkins, GitLab CI, GitHub Actions e semelhantes. O Ansible se integra a essa esteira, mas ocupa outra função na cadeia.","distortion_type":"atribuicao_errada","distorted_span":"O Ansible é uma ferramenta de integração contínua","corrected_statement":"O Ansible é uma ferramenta de gerenciamento de configuração e de infraestrutura como código que permite automatizar o provisionamento e a configuração de ambientes e pode ser integrado a outras ferramentas DevOps, como Git, Docker e Kubernetes.","concept":"Ansible é configuração e IaC, não servidor de CI","citation":null,"trap_note":"Separe a cadeia por função: versionar (Git), construir e testar (Jenkins, GitLab CI, GitHub Actions), configurar e provisionar (Ansible, Terraform, Puppet, Chef), executar (Docker, Kubernetes). Quase todo item de ferramenta se resolve pondo o nome na coluna certa."}},{"id":"2ad8d81b3a59","number":79,"stem":29,"statement":"Embora as técnicas de integração contínua sejam essenciais para garantir a qualidade do software e a eficiência do processo de desenvolvimento, elas não possibilitam a realização de testes automatizados de aceitação.","answer":"E","source":{"slug":"SEFIN_FORTALEZA_CE_23","ano":2023},"explanation":{"verdict_reason":"A integração contínua dispara, a cada alteração enviada, a bateria automatizada que o projeto tiver: unidade, integração e também aceitação. Nada na prática impede testes de aceitação automatizados; ao contrário, a esteira é justamente o lugar onde eles rodam sem depender de alguém lembrar de executá-los.","distortion_type":"inversao","distorted_span":"elas não possibilitam a realização de testes automatizados de aceitação","corrected_statement":"Embora as técnicas de integração contínua sejam essenciais para garantir a qualidade do software e a eficiência do processo de desenvolvimento, elas possibilitam a realização de testes automatizados de aceitação.","concept":"CI executa toda a bateria automatizada, inclusive aceitação","citation":null,"trap_note":"Negativa absoluta sobre o que uma prática não permite é formato recorrente de erro: procure um contraexemplo trivial antes de aceitar. Se a ferramenta executa script, executa qualquer teste automatizável."}},{"id":"3b28df5f0638","number":80,"stem":29,"statement":"Para configurar um projeto Freestyle no Jenkins, devem-se definir o pipeline de compilação, o teste e a implantação que serão executados quando o projeto for construído.","answer":"E","source":{"slug":"SEFIN_FORTALEZA_CE_23","ano":2023},"explanation":{"verdict_reason":"No Jenkins, o projeto Freestyle é configurado pela interface, por etapas de construção e ações pós-build encadeadas. O que se descreve como pipeline de compilação, teste e implantação, com estágios declarados em código, é o projeto do tipo Pipeline, tipicamente descrito em um Jenkinsfile. A descrição é correta, mas pertence a outro tipo de projeto.","distortion_type":"troca_de_termo","distorted_span":"o pipeline de compilação, o teste e a implantação","corrected_statement":"Para configurar um projeto Freestyle no Jenkins, devem-se definir as etapas de construção e as ações pós-build que serão executadas quando o projeto for construído.","concept":"Freestyle × Pipeline no Jenkins","citation":null,"trap_note":"O Jenkins tem tipos de projeto distintos e a banca troca um pelo outro mantendo a descrição certa. Estágios declarados em código são o tipo Pipeline; Freestyle é configuração por etapas na interface."}},{"id":"56759a55075a","number":81,"stem":29,"statement":"A implantação contínua é uma prática que envolve a entrega automatizada do software em diferentes ambientes, como ambientes de teste, pré-produção e produção, reduzindo o tempo necessário para implantar novas funcionalidades e corrigir bugs.","answer":"C","source":{"slug":"SEFIN_FORTALEZA_CE_23","ano":2023},"explanation":{"verdict_reason":"A implantação contínua estende a entrega contínua até o último passo: o artefato que atravessa a esteira é promovido automaticamente pelos ambientes, de teste a pré-produção e produção, sem espera por intervenção humana. A consequência direta é encurtar o intervalo entre escrever a mudança e ela estar disponível, o que vale tanto para funcionalidade nova quanto para correção.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Implantação contínua automatiza a promoção até produção","citation":null,"trap_note":"Item que descreve promoção automática por todos os ambientes até produção está descrevendo implantação contínua. Se o nome usado for entrega contínua, procure a aprovação humana no caminho: é ela que separa as duas."}},{"id":"524f5a240822","number":81,"stem":30,"statement":"O runner tem como função a execução de pipelines e o versionamento automático do código-fonte de um repositório.","answer":"E","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"O runner do GitLab é o agente que recebe e executa os jobs definidos no .gitlab-ci.yml: ele constrói, testa e implanta. Versionar o código-fonte não é função dele, e sim do Git e do próprio GitLab como serviço de repositório. A primeira metade do item está certa; a segunda atribui ao runner o papel de outro componente.","distortion_type":"atribuicao_errada","distorted_span":"e o versionamento automático do código-fonte de um repositório","corrected_statement":"O runner tem como função a execução dos jobs dos pipelines, cabendo o versionamento do código-fonte ao Git.","concept":"Runner executa jobs; versionamento é do Git","citation":null,"trap_note":"Itens que somam duas funções a um mesmo componente costumam plantar a segunda. Separe executar, orquestrar e versionar antes de julgar."}},{"id":"ddc1c1d5ebe6","number":84,"stem":30,"statement":"É possível visualizar jobs de um pipeline e executar operações como cancelar e tentar novamente se der erro, mas os registros de log não podem ser apagados, pois registram o comportamento da execução dos jobs.","answer":"E","source":{"slug":"DATAPREV_23","ano":2023},"explanation":{"verdict_reason":"A interface de pipelines do GitLab permite acompanhar os jobs e agir sobre eles, cancelando ou repetindo após erro, e também apagar seus registros: a operação de apagar o job remove o log e os artefatos associados, além de haver expiração configurável para essa retenção. A negativa absoluta sobre os logs é o que torna o item falso.","distortion_type":"inversao","distorted_span":"mas os registros de log não podem ser apagados","corrected_statement":"É possível visualizar jobs de um pipeline e executar operações como cancelar e tentar novamente se der erro, sendo também possível apagar os registros de log dos jobs.","concept":"Logs de job no GitLab podem ser apagados","citation":null,"trap_note":"Impossibilidade categórica (não pode, jamais, em nenhuma hipótese) sobre função de ferramenta raramente se sustenta. Procure a operação equivalente no produto antes de aceitar a proibição."}},{"id":"5df74baae797","number":103,"stem":31,"statement":"Na entrega de software funcionando para a produção de forma ágil, o DevOps prestigia a entrega contínua; nesse sentido, um princípio recomendado é que as atualizações de arquivo do servidor, por meio de uma operação de atualização de arquivos (commit) realizada pelos desenvolvedores, sejam centralizadas em uma máquina de integração.","answer":"C","source":{"slug":"INPI_23","ano":2023},"explanation":{"verdict_reason":"A recomendação clássica da integração contínua é fazer os envios convergirem para um ponto único, onde uma máquina de integração reconstrói e testa o sistema a cada commit. Sem essa centralização não existe veredito comum sobre o estado do tronco, e a entrega contínua perde a base sobre a qual opera.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Centralização dos commits na máquina de integração","citation":null,"trap_note":"Máquina de integração é vocabulário da literatura clássica de CI, e a banca o reaproveita. Reconheça a ideia: um tronco, um build de referência, um resultado para todos."}},{"id":"5e758aecd6c6","number":104,"stem":32,"statement":"O conceito de DevOps envolve a automatização de processos e colaboração entre equipes.","answer":"C","source":{"slug":"CNPQ_23","ano":2023},"explanation":{"verdict_reason":"As duas metades são o núcleo do conceito: automação da esteira que vai do commit à produção e colaboração entre desenvolvimento e operações sob responsabilidade compartilhada. Nenhuma das duas sozinha caracteriza DevOps, porque ferramenta sem cultura e cultura sem automação reproduzem o gargalo original.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"DevOps combina automação e colaboração","citation":null,"trap_note":"Definições amplas e corretas de DevOps costumam ser gabarito Certo. O erro aparece quando o item reduz DevOps a uma ferramenta ou exige uma tecnologia específica."}},{"id":"61daeb94d29f","number":105,"stem":33,"statement":"DevOps opera com base em princípios, entre os quais está a entrega contínua, que permite realizar tarefas repetitivas de maneira eficiente e confiável, reduzindo erros e liberando tempo para atividades de maior valor.","answer":"E","source":{"slug":"INPI_23","ano":2023},"explanation":{"verdict_reason":"Executar tarefas repetitivas de modo eficiente e confiável, reduzindo erros e liberando tempo das pessoas, é a descrição da automação, um dos pilares do modelo. A entrega contínua é outra coisa: manter o software permanentemente em estado liberável, encurtando o intervalo entre a mudança e a produção.","distortion_type":"troca_de_termo","distorted_span":"a entrega contínua, que permite realizar tarefas repetitivas de maneira eficiente e confiável","corrected_statement":"DevOps opera com base em princípios, entre os quais está a automação, que permite realizar tarefas repetitivas de maneira eficiente e confiável, reduzindo erros e liberando tempo para atividades de maior valor.","concept":"Automação × entrega contínua","citation":null,"trap_note":"Os princípios de DevOps têm definições próprias e a banca as embaralha. Tarefa repetitiva executada por máquina é automação; software sempre pronto para publicar é entrega contínua."}},{"id":"d6a119252a1f","number":109,"stem":34,"statement":"Uma das etapas na implementação do DevOps é o processo de build que envolve tarefas necessárias para se conseguir executar um programa, como, por exemplo, vinculação com bibliotecas, compilação, download e resolução de dependências, conforme a linguagem de programação que se estiver utilizando.","answer":"C","source":{"slug":"INPI_23","ano":2023},"explanation":{"verdict_reason":"O build é a etapa que transforma código-fonte em algo executável, e o que ela compreende depende da linguagem: baixar e resolver dependências, compilar, vincular bibliotecas e empacotar. É o primeiro estágio da esteira e o que produz o artefato que os estágios seguintes vão testar e promover.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"O que a etapa de build compreende","citation":null,"trap_note":"Build é processo, não apenas compilação: resolução de dependências e empacotamento fazem parte. Em linguagens interpretadas ele existe do mesmo jeito, com empacotamento e preparação de dependências."}},{"id":"6e3108d6ca27","number":111,"stem":35,"statement":"O build de uma aplicação engloba o resultado das tarefas de compilação e empacotamento em um único arquivo binário.","answer":"E","source":{"slug":"CAPES_23","ano":2023},"explanation":{"verdict_reason":"O build reúne compilação, vinculação e empacotamento, mas o que sai dele não é obrigatoriamente um único arquivo binário: pode ser um conjunto de artefatos, um pacote que agrega arquivos interpretados e recursos, ou uma imagem de contêiner. A restrição a um único binário é o que torna a afirmação falsa.","distortion_type":"generalizacao","distorted_span":"em um único arquivo binário","corrected_statement":"O build de uma aplicação engloba o resultado das tarefas de compilação e empacotamento em um ou mais artefatos, que não são necessariamente um único arquivo binário.","concept":"O produto do build são artefatos, não necessariamente um binário único","citation":null,"trap_note":"Quantificadores como único, exclusivamente e sempre restringem a regra além do que ela diz. Pergunte se existe caso trivial fora da restrição: aqui, qualquer aplicação interpretada ou empacotada em imagem."}},{"id":"b4564031b9c3","number":113,"stem":35,"statement":"Um dos objetivos do processo de entrega contínua é garantir a continuidade da aplicação em produção, por meio de aumento do tempo entre os deploys, minimizando o seu impacto no que está funcionando.","answer":"E","source":{"slug":"CAPES_23","ano":2023},"explanation":{"verdict_reason":"A entrega contínua persegue o contrário: reduzir o intervalo entre implantações, porque lote menor tem menos risco e retorno mais barato. Aumentar o tempo entre deploys recria o lote grande, que é a causa do impacto que se quer evitar.","distortion_type":"inversao","distorted_span":"aumento do tempo entre os deploys","corrected_statement":"Um dos objetivos do processo de entrega contínua é garantir a continuidade da aplicação em produção, por meio de redução do tempo entre os deploys, minimizando o seu impacto no que está funcionando.","concept":"Entrega contínua reduz o intervalo entre implantações","citation":null,"trap_note":"A lógica do tópico é contraintuitiva e a banca explora isso: entregar mais vezes reduz risco. Item que associe segurança a entregas mais espaçadas inverte o princípio."}},{"id":"da4fc900988d","number":68,"stem":36,"statement":"A organização que investir em DevOps deve estar preparada para automatizar seus processos mediante a execução de scripts pré-definidos.","answer":"C","source":{"slug":"BANCO_DO_NORDESTE_22","ano":2022},"explanation":{"verdict_reason":"Automação é um dos pilares do modelo: build, teste, provisionamento e implantação passam a ser executados por scripts versionados, e não por procedimento humano repetido. Adotar DevOps sem essa preparação mantém o gargalo manual que a prática existe para remover.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Automação por scripts como pilar de DevOps","citation":null,"trap_note":"O pilar de automação do CALMS aparece em prova sob várias formas: scripts, esteira, infraestrutura como código. Item que reduza DevOps a cultura sem automação também erra."}},{"id":"567d0c7e1e05","number":69,"stem":36,"statement":"Testes automatizados locais, atualização local a partir do repositório central, novos testes automatizados locais e atualização do repositório central a partir do local são as etapas de integração contínua.","answer":"C","source":{"slug":"BANCO_DO_NORDESTE_22","ano":2022},"explanation":{"verdict_reason":"A sequência descrita é o ciclo canônico do desenvolvedor na integração contínua: testar localmente, trazer o que mudou no repositório central, testar de novo o conjunto já integrado e só então publicar no central. O segundo teste é o ponto da prática: ele verifica a combinação do trabalho próprio com o dos outros antes que ela chegue ao tronco.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Ciclo local de integração: testar, atualizar, testar de novo, enviar","citation":null,"trap_note":"A ordem importa. Enviar ao repositório central antes de reintegrar e retestar localmente inverte o ciclo, e é uma das formas de a banca alterar essa sequência."}},{"id":"95e2c030041f","number":70,"stem":36,"statement":"A recomendação da integração é contínua quando prevê que cada desenvolvedor faça, no mínimo, um commit por semana, atualizando o repositório central a partir do repositório local.","answer":"E","source":{"slug":"BANCO_DO_NORDESTE_22","ano":2022},"explanation":{"verdict_reason":"A recomendação da integração contínua é de pelo menos um commit por dia por desenvolvedor. A frequência diária é o que mantém o lote pequeno e o conflito barato de resolver; com envio semanal volta-se ao acúmulo que a prática combate.","distortion_type":"numero_errado","distorted_span":"no mínimo, um commit por semana","corrected_statement":"A recomendação da integração é contínua quando prevê que cada desenvolvedor faça, no mínimo, um commit por dia, atualizando o repositório central a partir do repositório local.","concept":"Cadência mínima de integração é diária","citation":null,"trap_note":"Mesma alteração de sempre: dia vira semana. Em integração contínua a unidade de tempo correta é o dia."}},{"id":"610c2d89a02c","number":70,"stem":37,"statement":"Em um ambiente de DevOps, o gerenciamento de liberação é geralmente integrado à cadeia de ferramentas de integração contínua e implantação contínua.","answer":"C","source":{"slug":"BANRISUL_22","ano":2022},"explanation":{"verdict_reason":"O gerenciamento de liberação deixa de ser processo separado, com janela e comitê próprios, e passa a ser exercido pela própria cadeia de ferramentas: é a esteira que decide o que é promovido, quando e para qual ambiente, com registro do que foi liberado. Essa integração é o que permite frequência alta sem perder o controle da versão publicada.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Gestão de liberação incorporada à cadeia de CI/CD","citation":null,"trap_note":"DevOps não abole os processos de governança, incorpora-os à esteira. Item que oponha gestão de liberação a CI/CD como coisas incompatíveis erra."}},{"id":"31c400889135","number":104,"stem":38,"statement":"Com base nas etapas do DevOps, é correto afirmar que a ferramenta Jenkins está mais relacionada à etapa monitor que à etapa deploy.","answer":"E","source":{"slug":"BANCO_DO_NORDESTE_22","ano":2022},"explanation":{"verdict_reason":"O Jenkins é servidor de automação de build, teste e implantação: atua nas etapas de construção e entrega do ciclo, disparando pipelines e promovendo artefatos. Monitoração é a etapa de observação da aplicação em execução, atendida por ferramentas como Prometheus, Grafana, Nagios ou Zabbix.","distortion_type":"inversao","distorted_span":"está mais relacionada à etapa monitor que à etapa deploy","corrected_statement":"Com base nas etapas do DevOps, é correto afirmar que a ferramenta Jenkins está mais relacionada à etapa deploy que à etapa monitor.","concept":"Jenkins pertence a build e deploy, não a monitoração","citation":null,"trap_note":"Mapeie as ferramentas nas fases do laço: Git no código, Jenkins e GitLab CI no build e no deploy, Ansible e Terraform no provisionamento, Prometheus e Grafana na monitoração. Itens de figura cobram exatamente esse mapa."}},{"id":"7af2a8a61fae","number":107,"stem":39,"statement":"Colaboração multidisciplinar, teste manual no final do desenvolvimento e implantação contínua são algumas das características marcantes da cultura DevOps.","answer":"E","source":{"slug":"SEPLAN_RR_22","ano":2022},"explanation":{"verdict_reason":"Colaboração multidisciplinar e implantação contínua são mesmo marcas do modelo, mas o teste manual concentrado no fim do desenvolvimento é o oposto do que DevOps pratica: o teste é automatizado e antecipado para o início do ciclo, junto do código. Basta um elemento falso na enumeração para derrubar o item.","distortion_type":"inversao","distorted_span":"teste manual no final do desenvolvimento","corrected_statement":"Colaboração multidisciplinar, teste automatizado desde o início do desenvolvimento e implantação contínua são algumas das características marcantes da cultura DevOps.","concept":"Shift-left: teste automatizado e antecipado","citation":null,"trap_note":"Em enumeração, um elemento falso derruba o item inteiro. E o elemento plantado costuma ser justamente o que empurra atividade para o fim do ciclo, contra o shift-left."}},{"id":"da3c9e066ea1","number":108,"stem":38,"statement":"A entrega contínua (CD) no DevOps é o processo de automatização que inclui a configuração e implantação de um aplicativo em um pipeline de produção, mas não abrange a compilação e o teste.","answer":"E","source":{"slug":"BANCO_DO_NORDESTE_22","ano":2022},"explanation":{"verdict_reason":"A entrega contínua abrange a esteira inteira: compilar, testar, empacotar, configurar e implantar nos ambientes. Ela se define justamente por automatizar todo o caminho do commit ao artefato pronto para produção; excluir compilação e teste retira dela os estágios que produzem a confiança necessária para promover.","distortion_type":"inversao","distorted_span":"mas não abrange a compilação e o teste","corrected_statement":"A entrega contínua (CD) no DevOps é o processo de automatização que inclui a configuração e implantação de um aplicativo em um pipeline de produção, e abrange também a compilação e o teste.","concept":"CD abrange toda a esteira, do build à implantação","citation":null,"trap_note":"CD não substitui CI, engloba-a. Item que separe as duas como se a entrega contínua começasse depois do teste e não o incluísse corta a esteira no lugar errado."}},{"id":"9c051dd1b1d7","number":109,"stem":40,"statement":"O CI/CD aplica monitoramento manual pausado em todo o ciclo de vida das aplicações, incluindo as etapas de teste e de integração.","answer":"E","source":{"slug":"BANRISUL_22","ano":2022},"explanation":{"verdict_reason":"O CI/CD se apoia em monitoramento contínuo e automatizado ao longo de todo o ciclo — build, teste, integração e operação — porque é a telemetria que autoriza cada promoção e dispara o retorno à versão anterior. Monitoramento manual e interrompido é justamente o que a esteira substitui.","distortion_type":"inversao","distorted_span":"monitoramento manual pausado","corrected_statement":"O CI/CD aplica monitoramento contínuo e automatizado em todo o ciclo de vida das aplicações, incluindo as etapas de teste e de integração.","concept":"Monitoramento no CI/CD é contínuo e automatizado","citation":null,"trap_note":"Adjetivos que negam continuidade ou automação — manual, pausado, periódico, sob demanda — dentro de um item de CI/CD marcam a reversão da propriedade essencial."}},{"id":"d6c041965a1a","number":109,"stem":41,"statement":"Cada vez que uma alteração na base de código é detectada, é iniciada uma compilação que testa a qualidade do código recém-enviado, alcançando-se, assim, a integração contínua.","answer":"C","source":{"slug":"BANRISUL_22","ano":2022},"explanation":{"verdict_reason":"O gatilho descrito é o da integração contínua: detectada uma alteração na base de código, dispara-se automaticamente uma construção que exercita os testes sobre o que acabou de ser enviado. É essa realimentação por alteração que realiza a prática.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Alteração detectada dispara build e teste","citation":null,"trap_note":"Build automático disparado por alteração é sempre integração contínua. A frequência do gatilho — a cada alteração, e não por agendamento semanal — é o que a banca costuma alterar."}},{"id":"90d753b60d7b","number":110,"stem":40,"statement":"A integração contínua, a entrega contínua e a infraestrutura como código estão entre as melhores práticas de DevOps.","answer":"C","source":{"slug":"BANRISUL_22","ano":2022},"explanation":{"verdict_reason":"As três constam de qualquer enumeração corrente de boas práticas do modelo: integração contínua encurta o laço entre escrever e validar; entrega contínua mantém o artefato liberável; infraestrutura como código põe o ambiente sob versionamento. Nenhuma delas é exterior ao movimento nem exclusiva de outro corpo de práticas.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"CI, CD e IaC como práticas nucleares de DevOps","citation":null,"trap_note":"Itens de enumeração se resolvem procurando o elemento estranho. Quando todos pertencem ao mesmo campo, o item costuma estar certo."}},{"id":"ba52edb0396c","number":110,"stem":41,"statement":"O repositório de artefatos armazena artefatos de construção produzidos por integração contínua e os disponibiliza para implantação automatizada em ambientes de teste, preparação e produção.","answer":"C","source":{"slug":"BANRISUL_22","ano":2022},"explanation":{"verdict_reason":"O repositório de artefatos é o elo entre integração e implantação: guarda de forma versionada e imutável o que a esteira produziu — pacotes, imagens, bibliotecas — e o disponibiliza para promoção aos ambientes. É o que garante que teste, homologação e produção recebam exatamente o mesmo binário, sem reconstrução.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Repositório de artefatos liga CI à implantação","citation":null,"trap_note":"Não confunda repositório de código com repositório de artefatos: um guarda fonte versionado, o outro guarda o produto do build. Reconstruir a cada ambiente contraria a prática."}},{"id":"d2e117e5659f","number":111,"stem":41,"statement":"Os processos envolvidos no DevOps são denominados, respectivamente, de planejar, construir, testar, codificar, operar, avaliar e relatar.","answer":"E","source":{"slug":"BANRISUL_22","ano":2022},"explanation":{"verdict_reason":"O ciclo de vida do DevOps é planejar, codificar, construir, testar, liberar, implantar, operar e monitorar. O item adianta construir antes de codificar e encerra com avaliar e relatar, que não são fases do modelo: o fechamento do laço é a monitoração, que realimenta o planejamento.","distortion_type":"inversao","distorted_span":"planejar, construir, testar, codificar, operar, avaliar e relatar","corrected_statement":"Os processos envolvidos no DevOps são denominados, respectivamente, de planejar, codificar, construir, testar, liberar, implantar, operar e monitorar.","concept":"Ordem das fases do ciclo DevOps","citation":null,"trap_note":"O advérbio respectivamente avisa que a ordem é o que está sendo cobrado. Decore a sequência do laço e confira par a par."}},{"id":"adb4d05d546d","number":56,"stem":42,"statement":"No DevOps, a integração contínua possui como uma de suas atividades a realização de testes; a fim de se obter os benefícios esperados convém automatizar os testes para poder executá-los para cada alteração feita no repositório principal.","answer":"C","source":{"slug":"PETROBRAS_21_NS","ano":2021},"explanation":{"verdict_reason":"Testar é parte constitutiva da integração contínua, e o benefício só aparece se o teste puder rodar a cada alteração feita no repositório principal, o que exige automação. Teste manual não acompanha a frequência dos commits, e sem essa frequência o defeito volta a ser descoberto tarde.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Automação do teste é o que viabiliza testar a cada alteração","citation":null,"trap_note":"A automação em CI não é conveniência, é condição de frequência. Item que admita teste manual como suficiente para integração contínua desmonta a prática."}},{"id":"770ca91e1350","number":82,"stem":43,"statement":"É possível consumir recursos pela API disponibilizada pelo Jenkins, utilizando-se Python para buscar e instalar artefatos.","answer":"C","source":{"slug":"SERPRO_21","ano":2021},"explanation":{"verdict_reason":"O Jenkins expõe uma API REST sobre as mesmas rotas da interface, o que permite consultar jobs, builds e artefatos por programa. Qualquer linguagem capaz de fazer requisições HTTP, Python entre elas e inclusive com bibliotecas dedicadas, pode buscar e baixar esses artefatos.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Jenkins expõe API REST consumível por qualquer cliente HTTP","citation":null,"trap_note":"Ferramentas de CI são projetadas para automação, então itens que neguem a existência de API, CLI ou integração programática costumam ser falsos."}},{"id":"ede4cf55062f","number":82,"stem":44,"statement":"Uma das vantagens do modelo DevOps para desenvolvimento de soluções em cloud computing é a possibilidade de automação de atividades no fluxo de desenvolvimento, na qual se prescinde a fase de teste, até a entrega para o cliente e o feedback da implementação.","answer":"E","source":{"slug":"PETROBRAS_21_NS","ano":2021},"explanation":{"verdict_reason":"A automação do fluxo em DevOps inclui a fase de teste: é ela que permite promover a mudança com segurança sem revisão manual a cada passo. Dispensar o teste retira o portão que autoriza a promoção e transforma a esteira em um mecanismo de publicar defeitos mais depressa.","distortion_type":"inversao","distorted_span":"na qual se prescinde a fase de teste","corrected_statement":"Uma das vantagens do modelo DevOps para desenvolvimento de soluções em cloud computing é a possibilidade de automação de atividades no fluxo de desenvolvimento, na qual se inclui a fase de teste, até a entrega para o cliente e o feedback da implementação.","concept":"Teste é etapa automatizada, não etapa suprimida","citation":null,"trap_note":"Prescindir dos testes é fórmula recorrente neste tópico e é sempre falsa. Automatizar uma etapa não significa eliminá-la."}},{"id":"4aac8c6d4895","number":83,"stem":44,"statement":"A integração e a entrega contínuas (CI/CD) devem ser implementadas na etapa operar (operate), na qual de fato a solução de software é entregue ao cliente.","answer":"E","source":{"slug":"PETROBRAS_21_NS","ano":2021},"explanation":{"verdict_reason":"CI/CD se realizam nas etapas de construir, testar, liberar e implantar do ciclo de vida; é aí que o código é integrado, verificado e promovido até o cliente. Operar é a fase posterior, em que o software já entregue é mantido em funcionamento e observado: ela consome o resultado da esteira, não a executa.","distortion_type":"atribuicao_errada","distorted_span":"devem ser implementadas na etapa operar (operate), na qual de fato a solução de software é entregue ao cliente","corrected_statement":"A integração e a entrega contínuas (CI/CD) devem ser implementadas nas etapas de construir, testar, liberar e implantar, anteriores à etapa operar (operate).","concept":"CI/CD ficam antes de operar no ciclo de vida","citation":null,"trap_note":"Localize a prática na fase certa do laço: planejar, codificar, construir, testar, liberar, implantar, operar, monitorar. Operar e monitorar são pós-entrega."}},{"id":"743fdc8f3a3c","number":84,"stem":45,"statement":"Para tornar a integração contínua mais efetiva no DevOps, é recomendável centralizar todos os commits em uma máquina de integração.","answer":"C","source":{"slug":"SEFAZ_CE_21","ano":2021},"explanation":{"verdict_reason":"A prática canônica de integração contínua exige uma linha principal única para onde convergem todos os commits e uma máquina de integração que reconstrói e testa o sistema a cada envio. Centralizar as integrações nesse ponto é o que dá ao build um veredito comum: se ele quebra, quebrou para todos, e a correção vira prioridade da equipe.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Máquina de integração e tronco único","citation":null,"trap_note":"Integração contínua pressupõe ponto único de convergência: um repositório, um tronco, uma máquina que constrói. Item que proponha builds isolados por desenvolvedor como suficientes contraria a prática."}},{"id":"2fc4405cb11a","number":98,"stem":46,"statement":"Na gestão da configuração em que se observa os valores do DevOps, é importante implantar imediatamente as versões desenvolvidas no ambiente de produção, cabendo, nesse contexto, à equipe de desenvolvimento a criação de scripts automatizados para a garantia da integração contínua.","answer":"E","source":{"slug":"SERPRO_21","ano":2021},"explanation":{"verdict_reason":"Os valores de DevOps não mandam levar imediatamente a produção o que foi desenvolvido: a mudança percorre estágios de build, teste e homologação e só é promovida quando passa nos portões automatizados. Além disso, a automação da esteira é responsabilidade compartilhada entre desenvolvimento e operações, e não tarefa privativa de uma das equipes.","distortion_type":"generalizacao","distorted_span":"implantar imediatamente as versões desenvolvidas no ambiente de produção","corrected_statement":"Na gestão da configuração em que se observa os valores do DevOps, é importante promover as versões desenvolvidas ao ambiente de produção somente após a aprovação nos estágios automatizados da esteira, cabendo, nesse contexto, a desenvolvimento e operações em conjunto a criação de scripts automatizados para a garantia da integração contínua.","concept":"Promoção por estágios × implantação imediata","citation":null,"trap_note":"Advérbio de imediatismo (imediatamente, diretamente, sem etapas) num item de DevOps costuma marcar o erro: o ganho da prática vem dos portões automatizados, não de pulá-los."}},{"id":"ba6e49c2a9ee","number":65,"stem":47,"statement":"Em DevOps, o princípio monitorar e validar a qualidade operacional antecipa o monitoramento das características funcionais e não funcionais dos sistemas para o início do seu ciclo de vida, quando as métricas de qualidade devem ser capturadas e analisadas.","answer":"C","source":{"slug":"SLU_DF_19","ano":2019},"explanation":{"verdict_reason":"Monitorar e validar a qualidade operacional é um dos princípios do modelo, e seu conteúdo é antecipatório: as características funcionais e não funcionais passam a ser observadas e medidas desde o início do ciclo de vida, e não apenas depois da publicação. É a aplicação do princípio de antecipação à qualidade operacional, com as métricas entrando no projeto junto com o código.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Antecipar monitoramento e métricas ao início do ciclo","citation":null,"trap_note":"Antecipar ao início do ciclo de vida é a assinatura do shift-left, e ele vale para teste, segurança e também para qualidade operacional. Item que restrinja monitoramento à fase de operação contraria o princípio."}},{"id":"92b4602c3933","number":101,"stem":48,"statement":"Na prática de integração contínua para desenvolvimento de software, vários colaboradores criam e mantêm o código de forma organizada e controlada, utilizando ferramentas como Git (controle de versão), Junit (testes), Hudson e Jenkins (deploys em ambientes de desenvolvimento e produção), o que reduz a geração de erros de integração.","answer":"C","source":{"slug":"SLU_DF_19","ano":2019},"explanation":{"verdict_reason":"A prática se materializa por uma cadeia de ferramentas: controle de versão guardando o tronco comum, teste automatizado executado a cada envio e servidor de integração construindo e implantando nos ambientes. O efeito declarado é a redução dos erros de integração, porque o trabalho de todos é combinado e verificado continuamente, e não no fim.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Cadeia de ferramentas da integração contínua","citation":null,"trap_note":"Hudson é o antecessor do Jenkins e aparece ao lado dele em enunciados antigos. O que importa é a função de cada ferramenta na cadeia: versionar, testar, construir e implantar."}},{"id":"cf33e2552285","number":44,"stem":49,"statement":"O gerenciamento de desenvolvimento de software por meio do Scrum pode ser combinado com o ciclo de vida do DevOps, haja vista que o DevOps combina práticas e ferramentas que aumentam a capacidade de uma organização de distribuir aplicativos e serviços; logo, a integração contínua do software pode ser realizada na sprint do Scrum junto com a operação dos serviços da organização.","answer":"C","source":{"slug":"STJ_18","ano":2018},"explanation":{"verdict_reason":"O Scrum organiza o trabalho de desenvolvimento em sprints; o DevOps organiza o fluxo do código até a operação. São planos diferentes e complementares, e é corrente que a integração contínua rode dentro da sprint, produzindo incremento potencialmente utilizável enquanto a operação dos serviços segue em curso.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Scrum e DevOps são complementares","citation":null,"trap_note":"Itens que opõem ágil e DevOps costumam ser falsos: um trata da gestão do trabalho, o outro do fluxo de entrega e operação. A combinação é a prática corrente."}},{"id":"e2cf803afd27","number":69,"stem":50,"statement":"A infraestrutura como código é uma prática DevOps caracterizada pela infraestrutura provisionada e gerenciada por meio de técnicas de desenvolvimento de código e de software, como, por exemplo, controle de versão e integração contínua.","answer":"C","source":{"slug":"MP_PI_18","ano":2018},"explanation":{"verdict_reason":"Infraestrutura como código trata servidores, redes e configurações como artefato de software: o ambiente é descrito em arquivos que entram no controle de versão, passam por revisão e são aplicados pela mesma esteira automatizada do código. É essa submissão da infraestrutura às técnicas de desenvolvimento que define a prática.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"IaC: infraestrutura versionada e aplicada como código","citation":null,"trap_note":"IaC se reconhece por dois elementos: descrição declarativa em arquivo e submissão ao versionamento e à esteira. Configuração manual documentada em procedimento não é IaC."}},{"id":"b795293dd1da","number":98,"stem":51,"statement":"Em um serviço de integração contínua, testes de unidade são executados automaticamente com a finalidade de detectar erros funcionais.","answer":"C","source":{"slug":"STJ_18","ano":2018},"explanation":{"verdict_reason":"O teste de unidade verifica se cada unidade de código produz o resultado especificado, isto é, detecta erro funcional. Num serviço de integração contínua ele roda automaticamente a cada alteração enviada, que é o mecanismo pelo qual o defeito aparece minutos depois de ser introduzido.","distortion_type":"correto","distorted_span":null,"corrected_statement":null,"concept":"Teste de unidade automatizado na CI detecta erro funcional","citation":null,"trap_note":"Teste de unidade verifica comportamento, não desempenho nem segurança. Item que lhe atribua a detecção de gargalos ou vulnerabilidades troca o tipo de teste."}}]}