Questões de Concurso Público UFLA 2026 para Analista de Tecnologia da Informação

Foram encontradas 5 questões

Q4071610 Engenharia de Software
Considere a seguinte situação hipotética:

Uma equipe de desenvolvimento adotou práticas de DevOps em um sistema corporativo. O fluxo definido estabelece que todo o código é versionado em Git, e que a cada push para o repositório remoto é executado automaticamente um pipeline de CI/CD.
Nesse pipeline são realizadas etapas de build, testes automatizados e análise estática de código. Caso todas as etapas sejam concluídas com sucesso, o artefato gerado é automaticamente implantado em ambiente de homologação.
Com base nos conceitos de integração contínua, entrega contínua e automação de pipelines, analise as afirmativas a seguir.

I. A integração contínua (continuous delivery) consiste na prática de integrar alterações de código com frequência em um repositório compartilhado, em que builds e testes automatizados são executados para detectar falhas precocemente no processo de desenvolvimento.
II. A entrega contínua (continuous delivery) pressupõe que o sistema esteja sempre em um estado potencialmente implantável em produção, embora a liberação final para produção dependa de uma aprovação manual.
III. Em pipelines de CI/CD, ferramentas como GitHub Actions e GitLab CI/CD permitem definir workflows ou pipelines automatizados por meio de arquivos de configuração versionados no próprio repositório do projeto.
IV. A cultura DevOps enfatiza a automação de processos de build, teste e deploy, reduzindo a necessidade de interação entre equipes de desenvolvimento e operações ao longo do ciclo de entrega de software.

Assinale a alternativa CORRETA:
Alternativas
Q4071611 Engenharia de Software
Considere a seguinte situação hipotética:
Uma equipe de desenvolvimento mantém um sistema corporativo, utilizando Git e pipelines CI/CD automatizados. O pipeline é definido em um arquivo YAML versionado no próprio repositório e contém as seguintes etapas: 
Imagem associada para resolução da questão
Fonte: dados do elaborador Durante o desenvolvimento, a equipe decide integrar um branch de funcionalidades (feature/login) no branch principal (main). Existem dois caminhos possíveis:
1. git merge feature/login : cria um commit de merge, preservando o histórico do branch de funcionalidades.
2. git rebase main feature/login : reaplica os commits do branch de funcionalidades sobre o branch main, criando um histórico linear.

Com base nesse cenário e nos conceitos de DevOps, CI/CD e controle de versão com Git, analise as afirmativas a seguir:
I. A configuração apresentada no arquivo YAML caracteriza um pipeline de integração contínua, pois alterações integradas ao repositório podem acionar automaticamente as etapas de build e testes, ainda que o deploy dependa de aprovação manual.
II. O uso de git merge preserva o histórico completo do branch de funcionalidades, incluindo divergências e commits paralelos, mas pode gerar múltiplos commits de merge que poluem o histórico. 
III. O uso de git rebase permite criar um histórico linear ao reaplicar commits sobre outro branch, porém essa operação reescreve o histórico dos commits, podendo causar inconsistências, caso o branch já tenha sido compartilhado com outros desenvolvedores.
IV. A configuração when: manual no job de deploy indica que a etapa de implantação depende de intervenção humana, caracterizando um processo típico de Continuous Deployment, e não de Continuous Delivery.
V. Definir pipelines CI/CD em arquivos YAML versionados no próprio repositório permite que o processo de automação seja rastreável e auditável, o que possibilita o controle de versões também sobre as mudanças no pipeline.

Assinale a alternativa CORRETA:
Alternativas
Q4071626 Engenharia de Software
Princípios de projeto são recomendações mais concretas que desenvolvedores de software podem seguir para garantir maior qualidade em propriedades esperadas de projeto, como integridade conceitual, ocultamento de informação, coesão e acoplamento.

Sobre os princípios S.O.L.I.D., selecione a alternativa INCORRETA.
Alternativas
Q4071628 Engenharia de Software

Code Smells são indicadores de código de baixa qualidade, isto é, código difícil de manter, entender, modificar ou testar (Valente, 2020). Avalie o trecho de código a seguir (em linguagem JAVA). 


Imagem associada para resolução da questão


Assinale a alternativa que representa o code smell melhor caracterizado no trecho de código. 

Alternativas
Q4071629 Engenharia de Software
Scrum é um método ágil, iterativo e incremental para gerenciamento de projetos (SCHWABER E SUTHERLAND, 2020). Sobre o framework Scrum, avalie as seguintes assertivas:

I. São artefatos do Scrum o Backlog do produto, o Backlog da Sprint, o incremento e os testes de unidade.
II. São eventos do Scrum a Sprint, o planejamento da Sprint, as reuniões diárias, a revisão da Sprint e a retrospectiva da Sprint.
III. São pilares do Scrum a transparência, a inspeção e o compromisso.
IV. O Scrum é um método ágil voltado para projetos de desenvolvimento de software, e inclui um conjunto de práticas de programação como testes de unidade e design incremental.

Assinale a alternativa que contém apenas as afirmações CORRETAS.
Alternativas
Respostas
1: D
2: B
3: B
4: B
5: B