Questões de Concurso Sobre engenharia de software

Questões Discursivas

Foram encontradas 14.643 questões

Q3856595 Engenharia de Software
Certa startup brasileira desenvolveu uma aplicação de inteligência artificial para auxiliar a justiça federal na análise inicial de recursos jurídicos de baixo valor. O sistema opera como um agente inteligente que utiliza um extenso dataset de jurisprudências passadas para calcular a probabilidade de sucesso de novos recursos, com o objetivo de otimizar a triagem processual ao maximizar a taxa de acerto nas suas previsões. Em testes, a aplicação atingiu uma impressionante taxa de precisão de 98% na previsão de resultados. No entanto, uma auditoria de compliance ético revelou que o algoritmo apresentava um viés: os recursos originários de regiões com baixo índice de desenvolvimento humano (IDH) do Nordeste brasileiro eram sistematicamente classificados com menor probabilidade de sucesso, mesmo quando apresentavam mérito legal similar a casos de regiões mais desenvolvidas. A equipe técnica defendeu o sistema, alegando que ele era racional, pois maximizava consistentemente a métrica de acerto definida.

Considerando a natureza do sistema criado nessa situação hipotética e a distinção fundamental entre racionalidade e justiça em sistemas de IA, assinale a opção que apresenta corretamente a falha ética do sistema à luz dos conceitos básicos da inteligência artificial.
Alternativas
Q3856593 Engenharia de Software
Uma equipe de desenvolvimento de certo órgão público criou um sistema de gestão de demandas internas com o objetivo de agilizar o fluxo de solicitações entre setores. Ao longo do desenvolvimento do projeto, a equipe de análise de negócios realizou entrevistas com os usuários e utilizou diagramas UML para representar casos de uso e fluxos de atividades. O produto foi desenvolvido a partir da metodologia ágil Scrum (versão 2020), com entregas incrementais, e parte das rotinas automatizadas de aprovação de solicitações foi implementada por meio de ferramentas no-code, como o Power Automate. Além disso, foram adotadas práticas de garantia da qualidade do software durante os sprints e definidas as necessidades funcionais.

A partir do cenário apresentado na situação hipotética precedente, é correto afirmar que a equipe aplicou um processo que
Alternativas
Q3856590 Engenharia de Software
Certa empresa decidiu adotar uma abordagem híbrida entre Scrum e CMMI-DEV v. 2.0, com o objetivo de equilibrar a autonomia da equipe com a rastreabilidade dos resultados.

No contexto dessa situação hipotética, é correto afirmar que a atribuição de maximizar o valor entregue ao cliente é responsabilidade do(a)
Alternativas
Q3856589 Engenharia de Software
Os representantes de certa empresa pública de tecnologia desejam melhorar a previsibilidade de seus projetos de software, mantendo a flexibilidade de adaptação às mudanças. Para isso, decidiram combinar práticas do CMMI-DEV v. 2.0 e princípios de metodologias ágeis.

A partir dessa situação hipotética, assinale a opção que corresponde à abordagem mais adequada para que os representantes dessa empresa atinjam seus objetivos.
Alternativas
Q3853076 Engenharia de Software
 Em um projeto de software que utiliza Git para controle de versão e um fluxo de Integração Contínua e Entrega Contínua (CI/CD), existe a se guinte situação:
•    A branch feature/login possui vários commits.
•    A branch principal main já possui seu próprio histórico consolidado.
•   O desenvolvedor precisa aplicar apenas um commit específico da branch feature/login na branch main, sem trazer outros commits da branch de feature e sem modificar o histórico existente da main.

Considerando esse cenário, qual comando Git é o mais apropriado para atingir o objetivo de forma seletiva e segura?
Alternativas
Q3853061 Engenharia de Software
Em Engenharia de Software, o diagrama de Caso de Uso é utilizado para representar as funcionalidades de um sistema do ponto de vista do usuário. Nesse contexto, o Caso de Uso pode ser entendido como:
Alternativas
Ano: 2026 Banca: FGV Órgão: AMAZUL Prova: FGV - 2026 - AMAZUL - Engenheiro de Computação |
Q3851255 Engenharia de Software
Durante a modelagem de um sistema de e-commerce, foi identificado que um Pedido pode estar em diferentes estados (Criado, Pago, Em Separação, Enviado, Entregue, Cancelado) e que as transições entre estados seguem regras específicas de negócio.
O diagrama UML mais adequado para modelar essas transições de estado e as condições que as disparam é o diagrama 
Alternativas
Ano: 2026 Banca: FGV Órgão: AMAZUL Prova: FGV - 2026 - AMAZUL - Engenheiro de Computação |
Q3851243 Engenharia de Software
Durante a fase de análise de requisitos de um sistema de gestão hospitalar, a equipe identificou a necessidade de representar os diferentes tipos de usuários e suas interações com o sistema.
Assinale a opção que apresenta o diagrama UML mais apropriado para representar essas interações funcionais entre atores externos e o sistema.
Alternativas
Ano: 2026 Banca: FGV Órgão: AMAZUL Prova: FGV - 2026 - AMAZUL - Engenheiro de Computação |
Q3851242 Engenharia de Software
Uma equipe de desenvolvimento está iniciando um novo projeto de software para um cliente que ainda não tem clareza sobre todos os requisitos do sistema. O cliente deseja entregas frequentes de funcionalidades para validar se o produto atende às suas necessidades.
Nesse cenário, a metodologia de desenvolvimento mais adequada é 
Alternativas
Q3851209 Engenharia de Software
Em um repositório Git local, o fluxo de trabalho básico envolve três áreas conceituais principais: Diretório de Trabalho (Working Directory), Área de Staging (Staging Area, ou Index) e Repositório Git (Git Directory/Repository). Considere que você modificou um arquivo existente (projeto.txt) no seu Diretório de Trabalho.

Para que as alterações realizadas no arquivo sejam registradas permanentemente no histórico do repositório local, a sequência correta de comandos é:
Alternativas
Q3851208 Engenharia de Software
O Maven é baseado em um conceito central de fases de ciclo de vida (lifecycle phases). Considere o ciclo de vida padrão (default).

Assinale a opção que apresenta a sequência correta e obrigatória de fases que são executadas quando o comando mvn install é invocado na linha de comando.
Alternativas
Q3850297 Engenharia de Software
Durante uma análise de código para um sistema bancário, o perito identificou um problema de projeto conhecido como “Fragile Base Class Problem”, típico em hierarquias de herança.
Esse problema geralmente ocorre quando
Alternativas
Q3846194 Engenharia de Software
A escolha do modelo de ciclo de vida de desenvolvimento de software é crucial para o gerenciamento de prazos, custos e qualidade do produto final entregue ao cliente. Analise as afirmativas a seguir sobre os modelos tradicionais e ágeis de desenvolvimento.

I.O modelo em cascata (Waterfall) é uma abordagem sequencial onde cada fase (requisitos, análise, design, codificação, testes) deve ser concluída antes do início da próxima.

II.As metodologias ágeis, como o Scrum, baseiam-se em ciclos iterativos e incrementais chamados de sprints, permitindo adaptações rápidas a mudanças nos requisitos.

III.O manifesto ágil prioriza a documentação abrangente e o seguimento rígido de um plano inicial em detrimento da colaboração com o cliente e da resposta a mudanças.


Está correto o que se afirma em:
Alternativas
Q3835620 Engenharia de Software
No desenvolvimento de sistemas e arquitetura de software, o padrão de projeto "Observador" (Observer) é amplamente utilizado para gerenciar dependências entre objetos. Analise as afirmativas a seguir sobre Padrões de Projeto (Design Patterns) do Gamma et al. (GoF):

I.O padrão Observer define uma dependência um-para-muitos entre objetos, de modo que, quando um objeto muda de estado, todos os seus dependentes são notificados e atualizados automaticamente.
II.O padrão Singleton garante que uma classe tenha apenas uma instância e fornece um ponto de acesso global a ela, sendo recomendado para gerenciar recursos compartilhados como pools de conexão com banco de dados.
III.O padrão Estratégia (Strategy) permite definir uma família de algoritmos, encapsular cada um deles e torná-los intercambiáveis, permitindo que o algoritmo varie independentemente dos clientes que o utilizam.

Está correto o que se afirma em:
Alternativas
Q3832911 Engenharia de Software
O uso de sistemas de controle de versão é indispensável para o desenvolvimento colaborativo de software. Analise as afirmativas a seguir sobre o funcionamento do Git e fluxos de trabalho.

I- O comando git merge combina históricos de ramos diferentes, criando um commit de mesclagem que preserva a genealogia completa das alterações realizadas em ambos os ramos.
II- O arquivo .gitignore é utilizado para listar arquivos e diretórios que não devem ser rastreados pelo Git, como binários compilados, arquivos de configuração local e dependências.
III- O comando git pull é uma operação atômica que apenas baixa as alterações do repositório remoto sem realizar qualquer alteração ou mesclagem no ramo local de trabalho.
IV- O conceito de 'Head' no Git representa um ponteiro para o commit mais recente no ramo atualmente ativo no diretório de trabalho do desenvolvedor.

Assinale a alternativa que apresenta somente as proposições CORRETAS:
Alternativas
Q3814232 Engenharia de Software
 Sobre a metodologia ágil Scrum, de acordo com o Guia do Scrum, versão 2020, em português, analise as assertivas abaixo, assinalando V, se verdadeiras, ou F, se falsas.

( ) Um Scrum Team é formado por um Product Owner, um Scrum Master e Developers.
( ) Uma Sprint é um evento de duração variável de uma semana até três meses.
( ) A Daily Scrum é um evento de até 15 minutos que envolve todo o Scrum Team e que deve acontecer no início e no fim de cada dia útil da Sprint.

A ordem correta de preenchimento dos parênteses, de cima para baixo, é:
Alternativas
Q3813994 Engenharia de Software
Um servidor público de um órgão federal participa de uma equipe responsável por desenvolver um novo sistema eletrônico de atendimento ao cidadão. Para organizar o trabalho, a equipe decidiu manter um quadro visual com colunas “A fazer”, “Em andamento” e “Concluído”, limitando o número de tarefas que podem ficar simultaneamente “Em andamento”; realizar reuniões rápidas diárias em pé, para acompanhar o progresso e remover impedimentos; e dividir o trabalho em ciclos curtos, ao final dos quais o sistema é demonstrado aos usuários internos para coleta de feedback. Com base nesse contexto, analise as assertivas a seguir:

I. O uso de quadro visual com colunas e limitação de trabalho em progresso caracteriza uma prática típica do método Kanban.
II. As reuniões diárias em pé, de curta duração, são uma prática típica do Scrum, conhecidas como Daily Scrum ou Daily Meeting.
III. A divisão do trabalho em ciclos curtos com entrega incremental ao final de cada ciclo é compatível com a abordagem ágil Scrum, que utiliza Sprints para entregar valor de forma iterativa e incremental.

Quais estão corretas?
Alternativas
Q4159919 Engenharia de Software

Preencha as lacunas e assinale a alternativa correta.


Na engenharia de requisitos, diferentes técnicas são utilizadas para identificar as necessidades dos usuários e do sistema. ______________ são uma técnica de descoberta de requisitos inicialmente introduzida no método Objectory e atualmente fazem parte da linguagem de modelagem unificada (UML). Eles(as) identificam os atores envolvidos em uma interação e nomeiam o tipo de interação, podendo ser complementados(as) com descrições textuais ou diagramas, como os de sequência ou estados. Já a técnica de _____________ envolve a observação direta do ambiente de trabalho dos usuários, permitindo identificar requisitos de forma contextualizada

Alternativas
Q4159918 Engenharia de Software
Durante o desenvolvimento de um sistema educacional para uma escola da rede estadual, a equipe ágil identificou a necessidade de melhorar a comunicação interna e otimizar o tempo gasto em tarefas recorrentes. Após a entrega de mais uma Sprint, todos os membros se reuniram para discutir o que funcionou bem, o que poderia ser aperfeiçoado e quais ações poderiam ser implementadas para melhorar o processo nas próximas Sprints. Essa reunião, focada na melhoria contínua da equipe e do processo, é denominada 
Alternativas
Ano: 2025 Banca: INEP Órgão: INEP Prova: INEP - 2025 - INEP - Computação |
Q4146129 Engenharia de Software
Texto para questão


O processo de desenvolvimento de software é uma atividade realizada por e para pessoas. Assim, as pessoas são o elemento essencial em todas as fases do processo, uma vez que os produtos de software têm impacto direto na vida do seu público-alvo. Os princípios de Diversidade, Equidade e Inclusão (DEI) funcionam em conjunto e sua integração ao longo de todo o processo de desenvolvimento de software aumenta o desempenho da equipe, melhora a qualidade e a relevância do produto de software para um público-alvo diversificado.


MARQUES, A. B. et al. Grandes desafios para diversidade, equidade e inclusão (DEI) no Desenvolvimento de Software. Workshop sobre Aspectos Sociais, Humanos e Econômicos de Software. SBC, 2024 (adaptado).
Para atender pessoas com deficiência, idosos e pessoas com baixo letramento digital, de acordo com os princípios DEI, qual prática deve ser utilizada nesse contexto?
Alternativas
Respostas
621: E
622: B
623: B
624: E
625: C
626: C
627: B
628: B
629: B
630: B
631: A
632: B
633: C
634: B
635: C
636: D
637: E
638: D
639: E
640: B