Questões de Metodologia de desenvolvimento de software (Engenharia de Software)

Limpar Busca

Qual alternativa define corretamente o conceito de Test-Driven Development?

  • A É um processo de desenvolvimento orientado por um plano de testes bem definido. O plano é escrito pelo time de garantia de qualidade que será responsável por testar o sistema completamente, após seu desenvolvimento.
  • B É uma abordagem na qual se desenvolve o código de forma incremental, junto com um teste para esse incremento. Não se passa para o próximo incremento até o código desenvolvido passar no teste.
  • C É uma estratégia na qual o time de garantia de qualidade vai gradualmente testando o sistema ao final de cada iteração do projeto. O objetivo principal é a maior cobertura de testes possível.
  • D É um conceito que envolve a criação de arquiteturas autônomas, capazes de testar automaticamente o sistema durante sua execução. A ideia é que os sistemas sejam capazes de detectar e corrigir erros, aumentando a tolerância a falhas.
  • E É uma técnica de desenvolvimento recomendada para projetos focados na construção de ferramentas de testes. Foi o processo utilizado no desenvolvimento do JUnit e é utilizado na construção de outras suítes e ferramentas de testes.

A norma ISO 15504 está intrinsecamente associada à metodologia “Software Process Improvement and Capability Determination” (SPICE). Acerca dessa norma, é correto afirmar que:

  • A a dimensão “processos” é dividida em três categorias: engenharia, suporte e gestão.
  • B como parte da metodologia, cada atributo do processo é separadamente classificado em uma escala binária como “atende” ou “não atende”.
  • C a avaliação pode ser classificada em três etapas: o processo de avaliação, o modelo de avaliação e as ferramentas utilizadas na avaliação.
  • D a norma ISO 15504 não detalha as qualificações e competências do avaliador, sendo estas objeto de outra norma.
  • E uma das etapas do processo de avaliação é a aplicação do método de avaliação descrito na norma para obter, inclusive, definição da equipe de avaliação, coleção de dados e validação de dados.

Dentro da visão tradicional da engenharia de software a respeito do gerenciamento de mudanças, qual das afirmações abaixo está correta?

  • A Em métodos ágeis, os clientes não devem se envolver diretamente na decisão de uma mudança ser implementada ou não.
  • B Depois que uma solicitação de mudança é enviada, ela deve receber ação imediata e é automaticamente atribuída para um membro da equipe de desenvolvimento iniciar sua implementação.
  • C Todas as solicitações de mudança devem ser passadas com uma análise detalhada para a equipe de desenvolvimento.
  • D Um registro de solicitação de mudança é uma informação sucinta, independente do tamanho do projeto, sendo necessário apenas descrever um breve texto que contenha a mudança requerida.
  • E O processo de gerenciamento de mudança é iniciado quando alguém submete uma solicitação de mudança, que pode ser um relatório de bug, em que os sintomas do bug são descritos, ou um pedido para que novas funcionalidades sejam adicionadas ao sistema.

No desenvolvimento de sistemas de computação, os processos que afetam diretamente os clientes externos e que podem ser subdivididos em processos-chave e críticos são os processos

  • A de negócio.
  • B de apoio.
  • C gerenciais.
  • D operacionais.
  • E de validação.

Uma das boas práticas de programação para o desenvolvimento de sistemas seguros caracteriza-se pela verificação de todos os dados de entrada para impedir perda de controle do sistema e falhas gerais de proteção, e consiste em

  • A testar o retorno de funções chamadas.
  • B filtrar caracteres especiais.
  • C criar funções intrinsecamente seguras.
  • D documentar funções corretamente.
  • E tratar todas as entradas do sistema como não confiáveis.