Prévia do material em texto
<p>Questão 1</p><p>Correta</p><p>Questão com problema?</p><p>A cultura Devops sugere a integração de todo o ciclo de produção que vai desde a análise de requisitos até a produção em si. A ideia é que essa integração seja feita por processos sistematizados, com testes constantes para garantir que o software satisfaça os requisitos de qualidade.</p><p>QUEIROZ, C. W. Infraestrutura ágil. Londrina: Editora e Distribuidora Educacional S.A, 2021.</p><p>É feito o monitoramento e testes acontecem seguindo a operacionalidade do controle de qualidade e métricas criadas para validar os requisitos de software, sendo assim</p><p>Sua resposta</p><p>Correta</p><p>é possível que seja feito alterações em qualquer fase do desenvolvimento do produto.</p><p>Comentário</p><p>Alternativa correta: é possível que seja feito alterações em qualquer fase do desenvolvimento do produto. O objetivo da questão é reforçar as características do DevOps e fazer com que o aluno compreenda características singulares dessa cultura. o monitoramento identifica os erros que serão alterados na última etapa de desenvolvimento. INCORRETA: O monitoramento deve atuar em todas as etapas do ciclo de produção. após a conclusão de um processo é feito um teste para que se possa passar para outra fase. INCORRETA: A produção não precisa parar para esperar etapas serem concluídas. garante-se qualidade no produto, mesmo que o cliente não tenha tido acesso a ele ainda. INCORRETA: O cliente participa de todas as fases da produção do produto. é possível que seja feito alterações em qualquer fase do desenvolvimento do produto. CORRETA: Com as equipes trabalhando de forma cooperativa, inclusive com a participação do cliente, a entrega contínua de versões garante que a qualquer momento da produção possa-se fazer alterações. a fase de implantação já estará pronta para finalizar o ciclo de produção. INCORRETA: como não se trata de um meio de produção sequencializada, não existem fases preestabelecidas.</p><p>Questão 2</p><p>Incorreta</p><p>Questão com problema?</p><p>Ao apontarmos as transformações digitais não podemos simplesmente citar a infraestrutura, tecnologia e aplicativos de TI, é preciso que se fale também de pessoas e do impacto que essa transformação tem na vida das pessoas. Se a cultura digital mudou os padrões de conduta da sociedade é natural que se tenha uma outra mentalidade que seja capaz de integrar a tecnologia em seu cotidiano e extrair valor.</p><p>Considerando as informações apresentadas, analise as afirmativas a seguir:</p><p>I - É natural que a transformação digital enfrente resistência por profissionais que já estejam acostumados com ferramentas pré-internet.</p><p>II - O mindset digital é um movimento que sugere a sistematização de métodos ágeis no desenvolvimento de softwares.</p><p>III - O mindset digital, trouxe para o ciclo de desenvolvimento de software, o entendimento de que o modelo linear de produção deve mudar.</p><p>IV - O mindset digital compreende as abordagens comportamentais e projeta possibilidades mais centradas em conexões.</p><p>QUEIROZ, C. W. Infraestrutura ágil. Londrina: Editora e Distribuidora Educacional S.A, 2021.</p><p>Considerando o contexto apresentado, é correto o que se afirma em:</p><p>Sua resposta</p><p>Incorreta</p><p>II, III e IV, apenas.</p><p>Solução esperada</p><p>I, III e IV, apenas.</p><p>Comentário</p><p>Questão 3</p><p>Incorreta</p><p>Questão com problema?</p><p>Para melhor sintetizar os processos de DevOps, Jez Humble, criou o acrônimo CALMS, que passou a ser usado a partir de 2008 no livro “O Manual DevOps, no qual ele é co-autor. CALMS é uma estrutura que avalia a capacidade de uma empresa de adotar processos DevOps, bem como uma forma de medir o sucesso durante uma transformação DevOps. (GAEA, 2020).</p><p>GAEA (São Caetano do Sul) (ed.). O guia completo sobre CALMS em DevOps. 2020. Disponível em: https://gaea.com.br/calms-devops/. Acesso em: 18 abr. 2021.</p><p>Assinale a alternativa que apresenta corretamente o significado do acrônimo.</p><p>Sua resposta</p><p>Incorreta</p><p>Cultura, Automação, Lean it, Monitoramento e Sharing.</p><p>Solução esperada</p><p>Cultura, Automação, Metodologia Lean, Mensuração e Compartilhamento.</p><p>Comentário</p><p>Questão 4</p><p>Correta</p><p>Questão com problema?</p><p>Um profissional DevOps deve ter a mentalidade plural, colaborativa e cooperativa; presar continuamente pelo crescimento; ter a compreensão da abordagem ágil; entender que os consumidores são também produtores; possuir a natureza exploratória e uma curiosidade nata; abraçar a diversidade e ir além do óbvio, envolvendo-se em diálogos e abraçando ideias, mesmo que radicalmente diferentes de seus valores e padrões.</p><p>Com relação às prática DevOps, analise o excerto a seguir, completando as lacunas.</p><p>A ____________, ____________ e a ____________ potencializam a ideia central de “mais por menos” e lançam no mercado de desenvolvimento de software uma vertente da infraestrutura ágil que trata os processos de forma colaborativa em setores antes vistos como independentes (desenvolvimento e operação).</p><p>QUEIROZ, C. W. Infraestrutura ágil. Londrina: Editora e Distribuidora Educacional S.A, 2021.</p><p>Assinale a alternativa que preenche corretamente as lacunas.</p><p>Sua resposta</p><p>Correta</p><p>velocidade / adaptabilidade / entrega contínua.</p><p>Comentário</p><p>Questão 5</p><p>Correta</p><p>Questão com problema?</p><p>DevOps é uma cultura de desenvolvimento e entrega contínua que enfatiza a necessidade de comunicação e colaboração entre as equipes de gerenciamento, desenvolvimento e operações de softwares. Uma variedade de ferramentas facilita o emprego dessa cultura. De acordo com as informações apresentadas na tabela a seguir, faça a associação das ferramentas contidas na Coluna A com suas descrições, apresentadas na Coluna B.</p><p>COLUNA A</p><p>COLUNA B</p><p>I. Jira</p><p>II. Jenkins</p><p>III.Docker</p><p>IV. Zabbix</p><p>1. Segrega processos em ambientes isolados para trabalhar de forma independente algumas aplicações específicas.</p><p>2. É uma ferramenta de código aberto que faz monitoramento automático para possibilitar feedbacks.</p><p>3. Com apenas essa ferramenta é possível fazer o planejamento, acompanhamento e gerenciamento de projetos ágeis.</p><p>4. Automatiza o ciclo de produção e serve de suporte à integração das equipes e os processos de entregas continuas.</p><p>QUEIROZ, C. W. Infraestrutura ágil. Londrina: Editora e Distribuidora Educacional S.A, 2021.</p><p>Assinale a alternativa que apresenta a associação CORRETA entre as colunas.</p><p>Sua resposta</p><p>Correta</p><p>I - 3; II - 4; III - 1; IV - 2.</p><p>Comentário</p><p>Questão 1</p><p>Correta</p><p>Questão com problema?</p><p>As metodologias ágeis nascem com o surgimento do movimento ÁGIL em 2001. Forçando o mercado a entregar software cada vez mais ágeis e focado em pequenas entregas ao invés de um único e grande "entregável" ao final do projeto.</p><p>Isso leva ao surgimento da idea do Devops pois,</p><p>Sua resposta</p><p>Correta</p><p>O ambiente de desenvolvimento ágil, leva à uma cultura de colaboração entre o desenvolvimento e a operação de TI.</p><p>Comentário</p><p>A alternativa correta é: "O ambiente de desenvolvimento ágil, leva à uma cultura de colaboração entre o desenvolvimento e a operação de TI." Pois, apesar de algumas das opções propostas serem verdadeiras, elas são parciais. O Devops surge muito mais como um movimento cultural de mudança de escopo e processos humanos, do que simplesmente por ferramentas ou problemas de entregas.</p><p>Questão 2</p><p>Correta</p><p>Questão com problema?</p><p>As estratégias de implantação de um software em produção, são utilizadas para diminuir os problemas com as implantações e reduzir o tempo de indisponibilidade (Downtime), reduzindo o risco de ter paradas totais em produção.</p><p>A estratégia de implantação conhecida como "canário" é a mais sofisticada, pois:</p><p>Sua resposta</p><p>Correta</p><p>Permite que rode simultaneamente cópias da aplicação da versão antiga e nova durante um tempo de avaliação.</p><p>Comentário</p><p>Questão 3</p><p>Correta</p><p>Questão com problema?</p><p>Uma aplicação dentro desse ambiente de Devops, normalmente é construída em cima de uma tecnologia chamada containerização, que visa transformar o código em uma imagem que pode ser portada para diversos ambientes diferentes. Hoje em dia é praticamente unanimidade o uso do Docker como ferramenta de containerização, e os passos para implantar uma aplicação, utilizando o Docker são:</p><p>1</p><p>- Devo criar um arquivo chamado DockerFile, que conterá o passo a passo para instalar e configurar a imagem docker para que a aplicação funcione.</p><p>2 - Devo baixar a imagem criada, utilizando o nome do repositório e a Tag (nome) que eu criei para ela.</p><p>3 - Devo criar uma Tag para a minha imagem, que vai dizer qual o nome dentro do repositório ela vai ter.</p><p>4 - Devo fazer um "push" da imagem para o repositório criado no Dockerhub</p><p>5 - Devo criar uma conta no DockerHub onde hospedará minhas imagens criadas</p><p>Assinale a opção que apresenta a ordem correta dos passos realizados.</p><p>Sua resposta</p><p>Correta</p><p>5 - 1 - 3 - 4 - 2</p><p>Comentário</p><p>Questão 4</p><p>Incorreta</p><p>Questão com problema?</p><p>Pipelines ou esteiras de entrega, são recursos criados para executar comandos sequencialmente, afim de criar um entregável de software.</p><p>As principais características desse tipo de pipeline são:</p><p>Durante o CI ou integração contínua em português, o código da aplicação deve ser _______ e integrado com a equipe, utilizando ferramentas de SCM (Controle de versões), além de criar testes que vão validar o código a cada vez que ele for adicionado no repositório.</p><p>Já durante o CD, temos duas fases que são complementares, na fase de entrega contínua (Delivery), entregamos a aplicação já empacotada e configurada com a infraestrutura correta para funcionar, com a diferença que precisamos de uma ação ______. Diferente no caso da implantação contínua (Deployment) que já é implantada ______.</p><p>Assinale a alternativa que completa as lacunas corretamente.</p><p>Sua resposta</p><p>Incorreta</p><p>Automático / Manual / Centralizada.</p><p>Solução esperada</p><p>Centralizado / Manual / Automaticamente.</p><p>Comentário</p><p>Questão 5</p><p>Incorreta</p><p>Questão com problema?</p><p>Sistemas de Controle de Versão, (SCM) em inglês, são utilizados para controlar as alterações feitas em aplicações, salvando em versões toda e qualquer alteração, sendo possível o rastreamento e controle, além de permitir mesclagem de alterações feitas por outros desenvolvedores simultaneamente.</p><p>I - O SCM usa um diff para todas as alterações feitas no código, e compara com a próxima alteração para saber qual trecho do código mudou, isso proporciona um controle granular.</p><p>PORQUE</p><p>II - Cada alteração realizada é controlada para o usuário que fez a alteração, proporcionando um rastreamento nominal, de quem fez as alterações no código.</p><p>A respeito dessas asserções, assinale a alternativa correta.</p><p>Sua resposta</p><p>Incorreta</p><p>As asserções I e II são proposições verdadeiras, e a II é uma justificativa da I.</p><p>Solução esperada</p><p>As asserções I e II são proposições verdadeiras, mas a II não é uma justificativa da I.</p><p>Comentário</p><p>3; II - 4; III - 1; IV - 2.</p><p>Solução esperada</p><p>I - 2; II - 1; III - 3; IV - 4.</p><p>Questão 2</p><p>Correta</p><p>Questão com problema?</p><p>Os endpoints de métricas dos containers não são estáticos. O uso de um serviço Kubernetes não forneceria endpoints eficientes, pois, é necessário estatísticas mais concentradas em containers separados, em vez de agrupados. As verificações de integridade também podem ser um problema para o monitoramento.</p><p>Com base no texto apresentado, avalie as seguintes asserções e a relação proposta entre elas</p><p>I. Os endpoints de integridade implantados de maneira tradicional costumam ter endereços de rede estáticos quando que os containers são programados para execuções dinâmicas nos nós. Esse é um problema que felizmente tem solução.</p><p>PORQUE</p><p>II. Com o Kubernetes é possível agendar a implantação de uma versão nova e se der problema reverter tudo de forma automática sem comprometer a disponibilidade da aplicação.</p><p>QUEIROZ, C. W. Infraestrutura ágil. Londrina: Editora e Distribuidora Educacional S.A, 2021.</p><p>A respeito dessas asserções, assinale a alternativa correta.</p><p>Sua resposta</p><p>Correta</p><p>As asserções I e II são proposições verdadeiras, mas a II não justifica a I</p><p>Comentário</p><p>Questão 3</p><p>Incorreta</p><p>Questão com problema?</p><p>Sempre que ouvimos a expressão containers já associamos aos containers de transporte dos navios cargueiros. A expressão, inclusive, veio dessa associação. Na cultura DevOps, os containers são muito usados no desenvolvimento, testes e no ambiente de produção de softwares.</p><p>Com relação aos containers, analise o excerto a seguir, completando as lacunas.</p><p>Muitos confundem os containers com máquinas virtuais, no entanto, eles não funcionam tal qual ____________ que conhecemos, uma das diferenças é que o container compartilha o mesmo ____________ do Sistema Operacional. Num sistema como o Linux, por exemplo, a modularidade característica de seu Kernel, permite ____________ de sistemas mais enxutos e com economia de recursos.</p><p>QUEIROZ, C. W. Infraestrutura ágil. Londrina: Editora e Distribuidora Educacional S.A, 2021.</p><p>Assinale a alternativa que preenche corretamente as lacunas.</p><p>Sua resposta</p><p>Incorreta</p><p>a virtualização / hardware / provisionamentos.</p><p>Solução esperada</p><p>a virtualização / Kernel / provisionamentos.</p><p>Questão 4</p><p>Correta</p><p>Questão com problema?</p><p>Os serviços de computação na nuvem são divididos em três classes, que levam em consideração o nível de abstração do recurso provido e o modelo de serviço do provedor. As três classes de serviço são nomeadas da seguinte forma: Infraestrutura como Serviço (IaaS), camada inferior; Plataforma como Serviço (PaaS), camada intermediária; e Software como Serviço (SaaS), camada superior (PEDROZA, NOGUEIRA, 2011).</p><p>Além das classes é importante enfatizar que as nuvens podem ser classificadas em ____________ quando opera para uma única instituição; ____________, ou seja, pode ser dividida entre várias organizações; ____________ é de responsabilidade de uma organização que vende os serviços, mas é disponível para o público e ____________, quando usa mais de um tipo de nuvem.</p><p>PEDROZA, Paulo H.C. NOGUEIRA, Tiago. Computação em Nuvem. Campinas: 2011. Disponível em: https://www.ic.unicamp.br/~ducatte/mo401/1s2011/T2/Artigos/G04-095352-120531-t2.pdf. Acesso em: 30 jun. 2021.</p><p>Assinale a alternativa que preenche corretamente as lacunas.</p><p>Sua resposta</p><p>Correta</p><p>privada / comunitária / pública / híbrida.</p><p>Questão 5</p><p>Incorreta</p><p>Questão com problema?</p><p>Na cultura DevOps, os containers são muito usados no desenvolvimento, testes e no ambiente de produção de softwares. Muitos confundem os containers com máquinas virtuais, no entanto, eles não funcionam tal qual a virtualização que conhecemos.</p><p>QUEIROZ, C. W. Infraestrutura ágil. Londrina: Editora e Distribuidora Educacional S.A, 2021.</p><p>Uma das diferenças é que o container</p><p>Sua resposta</p><p>Incorreta</p><p>pode criar ambientes que utilizam várias ferramentas.</p><p>Solução esperada</p><p>compartilha o mesmo Kernel do Sistema Operacional.</p><p>Questão 1</p><p>Correta</p><p>Questão com problema?</p><p>Testes são usados para validar novas funcionalidades, testar possibilidades, verificar comportamentos do software em casos específicos, testar infraestrutura, validar segurança e etc.</p><p>Com relação aos tipos de testes, complete as lacunas a seguir.</p><p>Os testes mais básicos e que contemplam o nível do código fonte, testando os métodos e seus resultados são os testes _________. Já os testes que validam a interligação entre os diferentes métodos internamente dentro do sistema são os testes __________. Os testes que procuram validar o comportamento do sistema recebendo altas cargas são os testes _________. E os testes que visam validar a segurança de um determinado sistema, veirifcando a possibilidade de acesso não autorizado, são os testes ________.</p><p>Assinale a alternativa que completa as lacunas corretamente.</p><p>Sua resposta</p><p>Correta</p><p>de unidade, de integração, de carga, de intrusão</p><p>Comentário</p><p>A resposta correta é: de unidade, de integração, de carga, de intrusão Os testes que visam verificar a funcionalidade do item, são conhecidos como testes unitários ou de uniddade, os que testar sua integração com os outros do sistema, são os de integração, os que testar o quanto uma aplicação consegue aguentar de solicitações, são os de carga, e os que testam a possibilidade de acesso indevido, são os pentest ou de intrusão.</p><p>Questão 2</p><p>Incorreta</p><p>Questão com problema?</p><p>Existem estratégias de desenvolvimento que priorizam os testes, gerando</p><p>uma forma de criar software conhecida como TDD. Para usar a estratégia de implantar Desenvolvimento orientado a testes, TDD é necessário seguir os seguintes passos:</p><p>1. Criar um teste que valide o requisito.</p><p>2. Liberar o código com o teste.</p><p>3. Refatorar o código até passar no teste.</p><p>4. Criar o código que passe no teste.</p><p>Assinale a opção que apresenta a ordem correta dos passos realizados.</p><p>Sua resposta</p><p>Incorreta</p><p>1 - 4 - 2 - 3</p><p>Solução esperada</p><p>1 - 4 - 3 - 2</p><p>Comentário</p><p>Questão 3</p><p>Correta</p><p>Questão com problema?</p><p>O desenvolvimento orientado a comportamento, BDD trabalha com a criação padronizada de cenários, chamados de "given-when-then", ou "dado-quando-então", esses passos podem ser descritos da seguinte forma:</p><p>1. Quando: Y ocorre</p><p>2. Dado: Contexto X (givens)</p><p>3. Então: Garanta Z resultados</p><p>4. E: mais condições de contexto</p><p>Assinale a opção que apresenta a ordem correta dos passos realizados.</p><p>Sua resposta</p><p>Correta</p><p>2 - 4 - 1 - 3</p><p>Comentário</p><p>Questão 4</p><p>Correta</p><p>Questão com problema?</p><p>O desenvolvimento orientado a comportamento BDD, tem uma forma de escrever os cenários dos testes, que devem sempre seguir um padrão. Para escrever os testes usando esse procedimento, devemos seguir os seguintes passos:</p><p>1. Como: Quem executa essa funcionalidade.</p><p>2. De modo que: A descrição do resultado que se espera alcançar com a funcionalidade.</p><p>3. Funcionalidade - Descrever o que a funcionalidade deve fazer.</p><p>4. Eu quero: O que essa pessoa espera da funcionalidade.</p><p>Assinale a opção que apresenta a ordem correta dos passos realizados.</p><p>Sua resposta</p><p>Correta</p><p>3 - 1 - 4 - 2</p><p>Comentário</p><p>Questão 5</p><p>Correta</p><p>Questão com problema?</p><p>Diversos tipos de testes podem ser usados para dentro de um pipeline de DevOps, alguns são usados para validar as funcionalidades, outros para verificar a relação entre outras funcionalidades existentes, outros para verificar a qualidade, outros para testar a segurança. etc.</p><p>De acordo com as informações apresentadas na tabela a seguir, faça a associação das características dos testes contidos na Coluna A com seus respectivos testes na Coluna B.</p><p>COLUNA A</p><p>COLUNA B</p><p>I. Verificam a quantidade de acessos que um sistema suporta, fazendo um carga excessiva de acessos simultâneos</p><p>1. Testes Unitários</p><p>II. Verificam se a funcionalidade desenvolvida, atende os requisitos e está correta.</p><p>2. Testes de Integração</p><p>III. Verificam se o sistema é seguro e não possui vulnerabilidades que permitam que um atacante acesse o indevidamente</p><p>3. Testes de Desempenho</p><p>IV. Verificam se a funcionalidade não apresenta problemas com outras já existentes no sistema</p><p>4. Testes de Invasão</p><p>Assinale a alternativa que apresenta a associação CORRETA entre as colunas.</p><p>Sua resposta</p><p>Correta</p><p>I - 3; II - 1; III - 4; IV - 2</p><p>Comentário</p>