Prévia do material em texto
Questão 1/10 - DevOps e Integração Contínua Nos primórdios da TI, um muro alto separava desenvolvimento e operações. Desenvolvedores concentravam-se na criação de códigos, enquanto equipes de operações lidavam com implantação, infraestrutura e manutenção. Essa divisão frequentemente resultava em ciclos de desenvolvimento demorados, lançamentos pouco frequentes e desafios significativos de comunicação. Para tentar resolver esse problema, surgiu o(a): A Programação Orientada a objetos B Programação estruturada C Comunicação entre pares D Desenvolvimento ágil Você assinalou essa alternativa (D) E Persistência de dados Questão 2/10 - DevOps e Integração Contínua Em DevOps temos uma representação visual que é uma série automatizada de processos que facilitam o desenvolvimento, o teste e a implantação contínua de software. Essa representação visual e automatizada do fluxo de trabalho do desenvolvimento de software, que envolve várias etapas, desde a escrita do código até a entrega do produto, onde cada etapa é um estágio no ciclo de vida do desenvolvimento de software e pode incluir tarefas como compilação, testes automatizados, revisões de código, empacotamento, implantação e monitoramento. Essa representação visual é conhecida como: A Integração Contínua B Automatização de processos C Implementação automática D Entrega Contínua E Pipeline Você assinalou essa alternativa (E) Questão 3/10 - DevOps e Integração Contínua Para Pressman e Maxim (2014), a qualidade de software é definida como “conformidade com requisitos funcionais e de desempenho explicitamente declarados, normas de desenvolvimento explicitamente documentadas e características implícitas, que são esperadas em todo software desenvolvido profissionalmente”. Diante disso temos que a medição da qualidade em DevOps envolve a avaliação de diversos aspectos ao longo do ciclo de vida do desenvolvimento e operações. Dentre essas práticas e métricas que podem ser usadas para medir a qualidade em ambientes DevOps, podemos citar algumas das principais: A Tempo de desenvolvimento, taxa de digitação e satisfação integral B Taxa de entrega e sucesso, qualidade do código e satisfação do cliente Você assinalou essa alternativa (B) C Indentação do código, domínio e qualidade da linguagem D Conhecimento avançado do desenvolvedor e tempo de entrega E Controle de versões, gerenciamento da equipe e implementação Questão 4/10 - DevOps e Integração Contínua O Git é o sistema de controle de versão mais popular do mundo. Ele é um projeto de código aberto maduro e ativamente mantido, desenvolvido por Linus Torvalds, o criador do kernel do Linux. O Git é usado em uma ampla variedade de projetos de software, tanto comerciais quanto de código aberto. O Git é um sistema de controle de versão distribuído (DVCS). Para utilizar o Git, os desenvolvedores empregam comandos específicos para copiar, criar, alterar e combinar código, portanto, dominar branching, merging e pull requests é essencial para um fluxo de trabalho eficiente no Git. Relacione corretamente os comandos do Git: 1. Commits 2. Merge 3. Criação de Branch 4. Pull Requests 5. Push ( ) Registra o progresso dos códigos na ramificação local ( ) Inicia uma revisão do código e uma discussão ( ) Enviar a ramificação para o repositório remoto para colaboração e backup ( ) Iniciar uma nova ramificação para trabalhar em uma funcionalidade ou correção ( ) Após a aprovação, a ramificação é mesclada na branch principal Agora, selecione a alternativa que apresenta a sequência correta: Você não pontuou essa questão A 2 – 1 – 5 – 3 – 4 B 1 – 4 – 5 – 3 – 2 C 1 – 4 – 2 – 5 – 3 D 4 – 3 – 5 – 2 – 1 E 1 – 4 – 2 – 3 – 5 Você assinalou essa alternativa (E) Questão 5/10 - DevOps e Integração Contínua A automação do processo em backup é uma abordagem que envolve a implementação de ferramentas e scripts automatizados para realizar operações de backup de forma consistente e eficiente. Essa prática visa reduzir a dependência de intervenção manual, minimizar erros humanos e assegurar que os backups sejam executados conforme políticas predefinidas, utilizando ferramentas de automação, os backups podem ser agendados em intervalos regulares, proporcionando uma execução previsível e alinhada com as necessidades da organização. Existem diversas ferramentas em DevOps que podem ser utilizadas para gestão de backup. Algumas delas incluem: A Oracle, MySQL, SQL Server e PostgreSQL B Veeam, Rubrik, Veritas NetBackup, AWS Backup e GitLab Você assinalou essa alternativa (B) C PHP, Java, JavaScript e C D Canvas, Nagios, Trello e Asana E Dotcom-Monitor, Zabbix, SolarWinds e Dynatrace Questão 6/10 - DevOps e Integração Contínua A gestão de backup em DevOps é uma parte crucial da estratégia geral de garantir a agilidade e a colaboração inerentes à metodologia DevOps. Existem diversas ferramentas em DevOps que podem ser utilizadas para gestão de backup. Relacione corretamente as ferramentas de backup em DevOps: 1. AWS Backup 2. GitLab 3. Amanda Backup 4. Azure Backup 5. Duplicity ( ) Serviço gerenciado pela Amazon Web Services (AWS) que simplifica a gestão de backup para os recursos da AWS ( ) Serviço de backup nativo da Microsoft Azure que oferece backup e recuperação para máquinas virtuais e serviços na nuvem ( ) Embora seja conhecido principalmente como uma plataforma de controle de versão, o GitLab também oferece recursos de backup para repositórios Git ( ) Solução de backup de código aberto para ambientes Unix/Linux que oferece suporte a backup em fita, disco e nuvem ( ) Ferramenta de backup baseada em Linux que realiza backup incremental e suporta várias opções de armazenamento Agora, selecione a alternativa que apresenta a sequência correta: A 2 – 1 – 5 – 3 – 4 B 1 – 4 – 5 – 3 – 2 C 1 – 4 – 2 – 5 – 3 D 4 – 3 – 2 – 5 – 1 E 1 – 4 – 2 – 3 – 5 Você assinalou essa alternativa (E) Questão 7/10 - DevOps e Integração Contínua O controle de versão é uma prática essencial no desenvolvimento de software que visa gerenciar as alterações realizadas em um projeto ao longo do tempo. Ele proporciona uma maneira organizada e controlada de rastrear as modificações no código-fonte, facilitando a colaboração entre desenvolvedores e a manutenção do histórico de alterações. Essa prática é fundamental para evitar conflitos entre diferentes contribuições ao mesmo projeto, permitindo que equipes trabalhem simultaneamente em partes distintas do código. Além disso, o controle de versão possibilita reverter para versões anteriores do código em caso de problemas, garantindo a estabilidade do projeto. Analise as afirmativas a seguir que trazem benefícios e desvantagens do controle de versões: 1. Os Sistemas Centralizados de Controle de Versão (CVCSs) são uma solução para a questão crucial de colaborar com desenvolvedores que estão em outros sistemas 2. Facilidade de colaboração: os desenvolvedores podem trabalhar nos mesmos arquivos ao mesmo tempo, sem a necessidade de sincronizar manualmente seus arquivos 3. Controle de acesso: os administradores não gerenciam quem tem acesso aos arquivos de controle de versão 4. Backups: os arquivos de controle de versão são armazenados centralmente, o que dificulta a realização do backup e da recuperação 5. Os CVCSs dependem de um servidor central, o que pode ser um ponto de dificuldade e podem ter um desempenho inferior aos sistemas distribuídos São corretas apenas as afirmativas: Você não pontuou essa questão A I e II B I, II e V C I, II e IV Você assinalou essa alternativa (C) D I, III e V E III e IV Questão 8/10 - DevOps e Integração Contínua Um dos princípios fundamentaisdo DevOps é o investimento em automação, como é visto na figura abaixo. A automação possibilita a execução mais rápida de tarefas ou processos, reduzindo significativamente a probabilidade de erros humanos e diversas ferramentas são empregadas para atingir esse objetivo. Relacione corretamente algumas das ferramentas utilizadas no DevOps: 1. Composer 2. Chef 3. Vagrant 4. Docker 5. Puppet ( ) Como uma plataforma aberta, auxilia desenvolvedores e administradores de sistemas na criação e execução de aplicações distribuídas ( ) Possibilita a automação do processo de construção, implantação e gerenciamento da infraestrutura, tornando-a versionável e testável ( ) Ferramenta de código aberto voltada para o gerenciamento de configuração, centralizando e distribuindo para várias máquinas ou servidores na rede ( ) Essa ferramenta facilita a construção de ambientes de desenvolvimento virtualizados completos ( ) Gerenciador de dependências de aplicação, facilitando a manutenção e inclusão de novos pacotes ou bibliotecas necessárias na aplicação Agora, selecione a alternativa que apresenta a sequência correta: A 1 – 2 – 4 – 3 – 5 B 3 – 5 – 4 – 1 – 2 C 4 – 2 – 3 – 5 – 1 D 4 – 2 – 5 – 3 – 1 Você assinalou essa alternativa (D) E 2– 3 – 5 – 1 – 4 Questão 9/10 - DevOps e Integração Contínua Entender a estrutura de montar backup é essencial para garantir a segurança de seu processo, mas temos também de entender de uma infraestrutura que possibilita gerenciar e provisionar recursos de infraestrutura por meio de código, substituindo processos manuais. Essa abordagem tem ganho crescente popularidade, permitindo criar arquivos de configuração contendo as especificações da infraestrutura, simplificando a edição e distribuição das configurações, assegurando a consistência no provisionamento do ambiente. Essa infraestrutura de gerenciamento de configurações é a: A Gerenciamento automático de backup B Sistemas Centralizados de Controle de cópias C Centralizadores de Infraestrutura de backup D Infraestrutura como Código (IaC) Você assinalou essa alternativa (D) E Sistemas de Controle de Backup Questão 10/10 - DevOps e Integração Contínua Existe uma estrutura que avalia a capacidade de uma empresa adotar processos de DevOps, bem como uma maneira de medir o sucesso durante uma transformação de DevOps. A sigla foi cunhada por Jez Humble, coautor de The DevOps Handbook. Essa estrutura que aplica os conceitos de Cultura, Automação, Lean, Medição e Compartilhamento é conhecida como: A Orientação a objetos B SGBD C RDBMS D NOSQL E CALMS Você assinalou essa alternativa (E)