Questões de Concurso Sobre engenharia de software

Questões Discursivas

Foram encontradas 14.677 questões

Q4219319 Engenharia de Software
Atílio é um analista de segurança dedicado e atualizado com as ferramentas de mercados disponíveis para facilitar seu trabalho. Durante uma de suas rotinas de testes, estava testando uma API com o Postman e observou que requisições com credenciais inválidas retornavam código HTTP 200.

Nesse caso, o Postman
Alternativas
Q4219318 Engenharia de Software
No ciclo de vida de desenvolvimento de software, a garantia de qualidade depende diretamente da conexão entre os requisitos funcionais e as validações finais.

Nesse cenário, os critérios de aceitação são descritos como uma forma de documentar os anseios e as necessidades do cliente, especificando como o sistema deve operar para ser aceito. Eles servem como o elo fundamental de rastreabilidade, transformando regras de negócio em cenários de teste verificáveis.

Sobre os critérios de aceitação, analise as afirmativas a seguir.

I. Servem para verificar se o sistema como um todo adere aos critérios contratuais acordados com o usuário final.
II. Ajudam a confirmar que o software cumpre todos os seus requisitos funcionais e não funcionais.
III. Auxiliam na tomada de decisão dos stakeholders sobre o "go-live" (entrada em produção).

Está correto o que se afirma em  
Alternativas
Q4219317 Engenharia de Software
DevOps é uma cultura e abordagem cultural que une as equipes de desenvolvimento (Dev) e operações (Ops) para acelerar a entrega de software, aumentar a confiabilidade e melhorar a colaboração.

O objetivo principal é quebrar os "silos" organizacionais, promovendo automação, compartilhamento de responsabilidades e ciclos de feedback mais rápidos.

Assim, CI/CD (CI - Continuous Integration/CD - Continuous Delivery) surge como a base técnica e prática indispensável para viabilizar os objetivos do DevOps.

Nesse contexto, faça a associação correta entre os conceitos listados a seguir e suas características. 

1. CI
2. CD

( ) Entrega automática para produção ou staging.
( ) Build automático.
( ) Testes automáticos.
( ) Uma de suas variações admite aprovação humana.

Assinale a opção que apresenta a associação correta, segundo a ordem apresentada.
Alternativas
Q4219316 Engenharia de Software
Na Engenharia de Requisitos, a prototipação atua como um mecanismo de redução de incertezas, mitigando falhas na interpretação das necessidades dos stakeholders.

A escolha do nível de fidelidade do protótipo deve ser alinhada às necessidades específicas de cada etapa do processo, variando entre a exploração conceitual na elicitação e o refinamento detalhado na validação.

Relacione os níveis de fidelidade de prototipagem apresentados a seguir às suas características e propriedades. 

1. Alta Fidelidade
2. Baixa Fidelidade

( ) Prioriza a validação da arquitetura de informação e dos fluxos lógicos de navegação com baixo investimento de tempo.
( ) Fornece uma representação funcional próxima ao produto final, permitindo avaliar a usabilidade e a experiência do usuário de forma realista.
( ) Possibilita a análise de aspectos de design de interface, como paleta de cores, tipografia e tempos de resposta do sistema.
( ) Técnica de custo reduzido que visa o descarte imediato após a elicitação dos requisitos fundamentais.
( ) Apresenta o risco de distrair os stakeholders com elementos cosméticos, prejudicando a crítica sobre a lógica de negócio subjacente.

Assinale a opção que apresenta a relação correta, segundo a ordem apresentada.
Alternativas
Q4219315 Engenharia de Software
Com a complexidade dos sistemas atuais, testar é essencial para evitar prejuízos financeiros e proteger a reputação de um negócio ou instituição.

O teste, longe de ser apenas uma etapa final de verificação, é um processo estratégico que previne falhas, reduz custos de manutenção e assegura a satisfação do usuário. Sua importância reside na garantia de que um sistema funciona como esperado, sendo um componente fundamental para a qualidade, a confiabilidade e a segurança de qualquer produto digital.

Nesse contexto, relacione os testes listados a seguir às características que melhor os definem. 

1. Integração
2. Regressão
3. Sistema

( ) É um tipo de teste, ou seja, foca no que testar.
( ) Verifica a interação entre módulos, classes ou camadas combinadas, garantindo que suas interfaces funcionem corretamente.
( ) É realizado com o software completamente integrado, confrontando-o com requisitos funcionais e não funcionais em ambiente similar ao de produção.
( ) Consiste na reexecução de testes para garantir que alterações recentes não causaram novos defeitos em funcionalidades que já estavam prontas.

Assinale a opção que indica a relação correta, segundo a ordem apresentada.  
Alternativas
Q4219314 Engenharia de Software
No contexto da engenharia de software, métricas são variáveis quantificáveis atribuídas a atributos específicos, essenciais para transformar julgamentos subjetivos em avaliações objetivas baseadas em evidências. Elas permitem monitorar o progresso, prever resultados e identificar áreas problemáticas para melhoria contínua.

Neste contexto, relacione os conceitos apresentados a seguir às suas características.

1. Métricas de Processo
2. Métricas de Produto

( ) Tempo de resposta do sistema.
( ) Produtividade (linhas de código produzidas por pessoa/mês).
( ) Densidade de defeitos.
( ) Taxa de defeitos encontrados por fase.

Assinale a opção que apresenta a relação correta, segundo a ordem apresentada. 
Alternativas
Q4219309 Engenharia de Software
No que tange à elaboração de laudos técnicos, assinale a afirmativa correta. 
Alternativas
Q4219306 Engenharia de Software
Git Flow é um modelo de ramificação robusto para repositórios Git, projetado para organizar o versionamento de software e o gerenciamento de lançamentos.

Sobre o tema, avalie as afirmativas a seguir.

I. Consideramos origin/develop como a branch principal, na qual o código-fonte da versão HEAD reflete um estado pronto para produção.
II. Release branches são criadas a partir da develop branch.
III. Para corrigir um bug crítico em produção, é possível criar uma branch de hotfix a partir da tag correspondente na branch master que marca a versão de produção.

Está correto o que se afirma em 
Alternativas
Q4219305 Engenharia de Software
A automação de tarefas operacionais por meio de scripts é um pilar fundamental para a implementação bem-sucedida de práticas de DevOps, especialmente na construção de pipelines de Integração Contínua e Entrega Contínua (CI/CD). Considerando o uso de scripts para a automação de builds, testes e deploys, assinale a afirmativa correta. 
Alternativas
Q4219302 Engenharia de Software
Em relação aos requisitos de qualidade em TI, avalie as afirmativas a seguir e assinale (V) para a verdadeira e (F) para a falsa.

( ) A eficiência de desempenho refere-se ao uso adequado de recursos de hardware e rede.
( ) A autenticação forte e a criptografia de dados são considerados requisitos de segurança para proteção contra acessos não autorizados.
( ) A usabilidade diz respeito a operação sem falhas frequentes.

As afirmativas são, respectivamente,  
Alternativas
Q4219297 Engenharia de Software
No gerenciamento ágil de projetos, os métodos Scrum e Kanban são amplamente usados para o acompanhamento das atividades e gestão das entregas.

Com relação às características desses dois métodos ágeis, assinale a afirmativa correta. 
Alternativas
Q4219293 Engenharia de Software
Ao projetar um sistema, o cliente apresentou uma lista de requisitos a serem implementados.

Relacione os requisitos listados a seguir à sua classificação como Funcionais (RF) ou Não Funcionais (RNF).  

1. Requisito Funcional (RF)
2. Requisito Não Funcional (RNF)

( ) Emitir relatórios diários de indicadores de performance.
( ) Armazenar dados temporais estritamente sob o padrão da ISO 8601.
( ) Adaptar a interface dinamicamente para dispositivos móveis e desktops.

Assinale a opção que indica a relação correta, segundo a ordem apresentada 
Alternativas
Q4219292 Engenharia de Software
Diagramas UML são um valioso recurso para documentar as funcionalidades e a dinâmica das interações em um sistema a ser projetado.

Para representar as interações externas com o sistema e as funcionalidades percebidas pelos usuários, assinale a opção que apresenta o diagrama UML mais indicado. 
Alternativas
Q4219291 Engenharia de Software
As metodologias de desenvolvimento de software evoluíram de abordagens rígidas e sequenciais, como o modelo em cascata, para modelos iterativos e incrementais, que favorecem adaptação a mudanças e redução de riscos. Com as práticas ágeis, passaram a priorizar ciclos curtos, feedback contínuo e maior integração entre desenvolvimento e validação.

Nesse contexto, surgem metodologias que colocam os testes no centro do desenvolvimento, não apenas para verificação, mas como guia para construção do software, melhorando qualidade e alinhamento com o negócio. Em uma delas, utilizam-se especificações em linguagem natural, permitindo entendimento comum entre clientes, analistas e desenvolvedores; surge também a chamada living documentation, que se mantém atualizada por ser executável como testes automatizados.

Assinale a opção que indica a metodologia em questão. 
Alternativas
Q4219290 Engenharia de Software
Um Analista de Testes precisa validar diversas funcionalidades de um sistema de forma isolada. A quantidade de cenários e combinações de entrada faz com que o número de testes seja muito alto.

Para conduzir essa tarefa, ele pode fazer uso de ferramentas de automação de testes, porém é muito importante que ele saiba diferenciar as características de cada uma para utilizá-las do modo correto.

Relacione as ferramentas de teste listadas a seguir às suas respectivas características.

1. Selenium 
2. Cypress

( ) É mais flexível e multiplataforma.
( ) Não utliliza Webdriver.
( ) É executado fora do browser.
( ) É mais utilizado para testes de front-end.  

Assinale a opção que apresenta a relação correta, segundo a ordem apresentada. 
Alternativas
Q4219289 Engenharia de Software
Um Engenheiro de Testes acaba de receber uma demanda para conduzir um teste de sistema com sua equipe. Nesse contexto, analise as afirmativas a seguir e assinale (V) para a verdadeira e (F) para a falsa.

( ) Deve ser conduzido antes dos testes de integração e conduzido preferencialmente por uma equipe de testes.
( ) Tem como objetivo confrontar o software em funcionamento com seus requisitos funcionais e não funcionais, sendo executado em um ambiente muito semelhante ao de produção.
( ) Pode ser dividido em fases alfa (em ambiente de desenvolvimento) e beta (em ambiente que emula a produção) e realizado integralmente pela equipe de testes.

As afirmativas são, respectivamente, 
Alternativas
Q4219288 Engenharia de Software
Uma equipe de desenvolvimento de software passou a usar uma ferramenta integrada à IDE que analisa o código-fonte sem executá-lo, identificando problemas como variáveis não utilizadas, inconsistências de formatação e desvios de padrão de nomenclatura.

Com base nesse contexto, essa ferramenta é classificada como 
Alternativas
Q4219287 Engenharia de Software
As primeiras abordagens no processo de desenvolvimento de software estavam fortemente centradas na funcionalidade e no desempenho, com pouca preocupação com a legibilidade e a manutenção do código.

Com o avanço das práticas de engenharia de software, especialmente a partir da adoção da programação estruturada e, posteriormente, da programação orientada a objetos, passou-se a valorizar a organização, a modularização e a clareza do código. Com isso, surgiram princípios e práticas voltados à melhoria da qualidade interna do software, como o Clean Code, que tem como objetivo tornar o código mais compreensível, coeso e de fácil manutenção.

Com base nesse contexto, analise as afirmativas a seguir.  

I. As funções devem concentrar o maior número possível de operações, a fim de evitar fragmentação do código e melhorar a eficiência.
II. A escrita de código limpo prioriza a legibilidade e a facilidade de manutenção, considerando que o código será frequentemente lido por outros desenvolvedores.
III. O uso de nomes significativos para variáveis e funções contribui para a compreensão do código, reduzindo a necessidade de comentários explicativos.

Está correto o que se afirma em 
Alternativas
Q4219286 Engenharia de Software
Durante o desenvolvimento de um sistema, foi adotado o SonarQube para apoiar a qualidade do código, permitindo a análise automática do código-fonte e a geração de relatórios com métricas e apontamentos sobre possíveis problemas.

Com base nesse contexto, analise as afirmativas a seguir. 

I. O SonarQube realiza análise estática do código, sendo capaz de identificar vulnerabilidades, bugs e más práticas sem a necessidade de executar o software.
II. O SonarQube executa o sistema em ambientes de integração contínua para identificar vulnerabilidades que dependem do comportamento em tempo de execução, ampliando a cobertura da análise de segurança.
III. O uso do SonarQube auxilia na padronização da qualidade do código, mas não substitui completamente a revisão manual realizada por desenvolvedores.

Está correto o que se afirma em 
Alternativas
Q4219285 Engenharia de Software
Um estudante de segurança da informação realizou uma avaliação de segurança de uma aplicação web em ambiente de testes, e acessou a aplicação por meio de um navegador, inserindo o seguinte código em um campo de entrada de dados:
<script>alert('teste")</script>
Ao submeter a requisição, a aplicação retornou uma resposta que resultou na exibição de um alerta no navegador, evidenciando a execução do script inserido.

A técnica empregada caracteriza um tipo de análise de software conhecido como  
Alternativas
Respostas
1: E
2: E
3: A
4: C
5: E
6: C
7: A
8: D
9: B
10: D
11: E
12: B
13: D
14: B
15: D
16: C
17: A
18: D
19: C
20: C