Questões de Qualidade de Software (Engenharia de Software)

Limpar Busca

No contexto da Qualidade de Software, diferentes abordagens, estratégias e ferramentas são utilizadas para garantir que o produto atenda aos requisitos funcionais e não funcionais, bem como às expectativas dos usuários. Uma ferramenta utilizada para análise estática de código é a

  • A Selenium.
  • B SonarQube.
  • C Jmeter.
  • D Trello.
  • E Jenkins.

No desenvolvimento de software, os Atributos de Qualidade são propriedades mensuráveis do sistema que são usadas para indicar quão bem o sistema satisfaz as necessidades dos stakeholders. Esses atributos são frequentemente aferidos por métricas específicas para garantir que os requisitos do sistema sejam atendidos. De acordo com o que apregoa a ISO 25010 e os atributos previstos nessa norma, o atributo ao qual se pode relacionar a métrica "Tempo Médio entre Falhas (MTBF – Mean Time Between Failures)" (falhas do sistema) é o atributo de

  • A usabilidade.
  • B manutenibilidade.
  • C confiabilidade.
  • D escalabilidade.
  • E eficiência.

Os testes de software são fundamentais para garantir a qualidade, funcionalidade e desempenho de sistemas. Diferentes tipos de testes têm objetivos específicos, e sua aplicação varia conforme o ciclo de desenvolvimento. Os testes automatizados de pequenas unidades de código, normalmente classes, as quais são testadas de forma isolada do restante do sistema, são os testes de

  • A regressão.
  • B sistema.
  • C desempenho.
  • D exploração.
  • E unidade.

Uma equipe de desenvolvimento de software está adotando práticas de DevOps para melhorar a qualidade e a velocidade das entregas. Para isso, decidiram implementar um pipeline CI/CD, garantindo que todas as alterações de código sejam testadas e implantadas automaticamente. No fluxo definido, o pipeline segue as etapas:




1. O código é enviado para o repositório remoto, acionando o pipeline.


2. O código é analisado e testado por ferramentas automatizadas.


3. Se os testes passarem, um build é gerado e enviado para o ambiente de staging.


4. O código é revisado e validado antes de ser implantado em produção.




Após algumas execuções do pipeline, a equipe percebeu que, quando há falha nos testes automatizados, o código não é promovido para a próxima etapa. Além disso, alguns da equipe querem que a implantação em produção ocorra automaticamente, enquanto outros preferem que seja necessária uma aprovação manual.


Com base no cenário apresentado, assinale a alternativa correta.

  • A Um pipeline CI/CD bem configurado deve sempre implantar, automaticamente, todas as versões do código na produção, independentemente de erros encontrados nos testes.
  • B A implantação contínua exige que todas as atualizações passem por uma aprovação manual antes de serem enviadas para produção.
  • C A fase de integração contínua tem como objetivo validar e testar, automaticamente, o código após cada alteração, impedindo a progressão de código defeituoso.
  • D O uso de um pipeline CI/CD torna desnecessário o controle de versões, pois todas as alterações são gerenciadas, automaticamente, pela ferramenta de integração.
  • E Se um erro for encontrado em produção, o pipeline CI/CD, automaticamente, desfaz a última alteração sem necessidade de intervenção manual.

A prática de Garantia da Qualidade de Software visa garantir a qualidade de um software e envolve atividade realizada ao longo do seu ciclo de vida.
Sobre essa prática, verifica-se que

  • A a manutenção de software é realizada após a entrega final do produto e não exige a implementação de novos testes ou atualizações no sistema.
  • B a gerência de configuração envolve o controle e o monitoramento das mudanças nos requisitos do sistema sem afetar a documentação do código-fonte ou o controle de versões.
  • C a garantia da qualidade inclui a aplicação de processos e métodos para assegurar que o produto de software atenda aos requisitos e às expectativas do cliente ao longo de todo o ciclo de vida do projeto.
  • D o teste automatizado é utilizado após o lançamento do sistema e se restringe à correção de problemas pós-lançamento.
  • E os modelos de ciclo de vida de software, como o modelo cascata, são utilizados para testar o software em etapas intermediárias do desenvolvimento, sendo dispensado seu uso na fase de implementação.