Questões de Concurso Comentadas sobre engenharia de software
Foram encontradas 12.717 questões
Sobre teste de unidade, considere as afirmações abaixo.
I - Sempre que possível, deve-se automatizar os testes de unidade. No entanto, se deseja-se realizar testes manuais, pode-se usar um framework de teste (como JUnit) para escrever e executar testes do programa.
II - Um teste automatizado tem três partes. Há uma parte de configuração, em que se inicia o sistema com o caso de teste, ou seja, as entradas e saídas esperadas; há uma parte de chamada, em que se chama o objeto ou método a ser testado; há uma parte de afirmação, em que se compara o resultado da chamada com o resultado esperado. Se a afirmação avaliada for verdadeira, o teste foi bem sucedido; se for falsa, houve falha no teste.
III - É muito importante a escolha de casos de teste efetivos. Deve-se, portanto, escrever dois tipos de casos de teste. O primeiro deve refletir o funcionamento normal de um programa e deve mostrar que o componente funciona. Por exemplo, se está sendo testado um componente que cria e inicia um novo registro de paciente, o caso de teste deve mostrar que o registro existe no banco de dados e que os campos foram criados como especificados. Outro tipo de caso de teste deve ser baseado em testes de experiência, nos quais surgem os problemas mais comuns. Devem-se usar entradas anormais para verificar que essas sejam devidamente processados e que não façam o componente falhar.
Quais estão corretas?
No Scrum, o ponto de partida para o planejamento é _____________, que é a lista do trabalho a ser feito no projeto. Durante a fase de avaliação do sprint, essa lista é revista, e as prioridades e o riscos são identificados. O cliente está intimamente envolvido nesse processo e, no início de cada sprint, pode introduzir novos requisitos ou tarefas.
Assinale a alternativa que completa, corretamente, a lacuna do trecho acima.
Considere as seguintes afirmações sobre Scrum.
I - Scrum não prescreve o uso de práticas de programação, como programação em pares e desenvolvimento test-first. Portanto, pode ser usado com abordagens ágeis mais técnicas, como XP, para fornecer um framework de gerenciamento de projeto.
II - Um sprint do Scrum é uma unidade de planejamento na qual o trabalho a ser feito é avaliado, os recursos para o desenvolvimento são selecionados e o software é implementado. No fim de um sprint, a funcionalidade completa é entregue aos stakeholders.
III - Toda a equipe participa das reuniões diárias; às vezes, essas são feitas com os participantes em pé (stand up), de forma muito rápida, para a manutenção do foco da equipe. Durante a reunião, todos os membros da equipe compartilham informações e descrevem seu progresso desde a última reunião, debatendo os problemas que surgiram desde então e o que está planejado para o dia seguinte.
Quais estão corretas?
As principais vantagens de se utilizar um sistema de controle de versão, como o SVN, para rastrear as alterações feitas durante o desenvolvimento de software são:
Analise as afirmativas abaixo e assinale a alternativa correta.
(1) Controle do histórico.
(2) Trabalho em equipe.
(3) Marcação e resgate de versões estáveis.
(4) Ramificação de projeto.
Em relação à metodologia de desenvolvimento ágil, analise as afirmações a seguir:
I. ( ) A abordagem Scrum é um método ágil geral, mas seu foco está no gerenciamento do desenvolvimento iterativo, ao invés das abordagens técnicas específicas da engenharia de software ágil;
II. ( ) O Scrum pode ser usado com abordagens ágeis mais técnicas, para fornecer um framework de gerenciamento do projeto;
III. ( ) No Scrum existem três fases. A primeira é uma fase de planejamento geral, em que se estabelecem os objetivos gerais do projeto e da arquitetura do software. Em seguido ocorre uma série de ciclos de sprint, sendo que cada ciclo desenvolve um incremento do sistema. Finalmente a última fase, encerra o projeto, completa documentação exigida, como quadros de ajuda do sistema e manuais do usuário, e avalia lições aprendidas com o projeto;
IV. ( ) A categoria inovadora do scrum é a sua fase central, chamada de ciclos sprint. Um sprint do Scrum é uma unidade de planejamento na qual o trabalho a ser feito é avaliado, os recursos para o desenvolvimento são selecionados e o software é implementado;
V. ( ) Sprints são de comprimento fixo, normalmente duas a quatro semanas. Eles correspondem ao desenvolvimento de um release do sistema em XP.
É CORRETO afirmar que:
Dadas as afirmativas sobre teste de software,
I. A estratégia de teste conhecida por grafo causa-efeito é uma estratégia da categoria de teste caixa branca e exige o conhecimento de estruturas de decisão do código-fonte.
II. As várias estratégias de teste caixa preta, tais como valores limite e partições de equivalência, podem ser combinadas entre si, podendo aumentar a cobertura dos casos de teste.
III. Teste de regressão é uma técnica de teste de software que não consiste na especificação de novos casos de teste, mas na execução dos casos de teste já especificados para versões anteriores do software.
verifica-se que está(ão) correta(s)
Dadas as afirmativas acerca das metodologias de desenvolvimento de software,
I. Muitos processos modernos de desenvolvimento de software, tais como RUP e XP, adotam o modelo de desenvolvimento conhecido como espiral.
II. O modelo espiral possui a vantagem de ser iterativo e incremental, porém possui a limitação de não ter atividade de análise de riscos.
III. Apesar de ser um modelo pouco iterativo, o modelo em cascata é indicado para projetos pequenos e que tenham requisitos estáveis e bem definidos.
verifica-se que está(ão) correta(s)
A respeito dos tipos de testes a serem aplicados, durante o processo de desenvolvimento de software, numere a segunda coluna de acordo com a primeira.
COLUNA I
1 - Teste de sistema
2 - Teste de unidade
3 - Teste de validação
4 - Teste de regressão
5 - Teste de integração
COLUNA II
( ) É executado logo após montagem do pacote de software, quando os erros de interface já foram descobertos e corrigidos.
( ) É uma técnica sistemática para construir a arquitetura do software enquanto, ao mesmo tempo, conduz testes para descobrir erros associados às interfaces.
( ) É a reexecução de algum subconjunto de testes que já foi conduzido para garantir que as modificações não propaguem efeitos colaterais indesejáveis.
( ) Visa a verificar o sistema, baseado em computador, não se limitando ao software, mas incluindo o processo como um todo, como hardware, pessoal e informação.
( ) Focaliza o esforço na verificação da menor unidade de projeto do software – o componente ou módulo do software, os caminhos de controle importantes são testados para descobrir erros dentro dos limites do módulo.
A sequência correta é