Buscar

EngComputacao 2014 EES201 Gerencia e qualidade de software P1 GABARITO

Prévia do material em texto

1 
 
AVALIAÇÃO PRESENCIAL 
CADERNO DE PERGUNTAS 
curso: Engenharia de Computação bimestre: 16o bimestre ano: 2018 | 1sem P1 
• Preencha atentamente o cabeçalho de TODAS AS FOLHAS DE RESPOSTA que você utilizar. 
• Ao término da prova, entregue apenas a folha de resposta ao aplicador. Leve este caderno de 
perguntas consigo. 
Boa prova! 
 
disciplina EES201 - Gerência e qualidade de software 
 
Questão 1 (2,4 pontos) 
a) (1,2) Considere um jogo de futebol para um console (por exemplo, FIFA ou Pro Evolution Soccer para o 
Playstation 4), no qual o usuário controla os jogadores de um time de futebol e consegue jogar contra o 
computador (não considere a possibilidade de jogar contra outros usuários). Considerando as 
características de qualidade (eficiência de execução, compatibilidade, usabilidade, confiabilidade, 
segurança, manutenibilidade e portabilidade), quais são as duas características que você considera 
mais importantes nesse caso? Justifique. 
b) (1,2) Quantos são os níveis de maturidade do CMMI (v.1.3)? O que significa estar no nível 1? 
 
Questão 2 (2,7 pontos) 
A empresa XPTO Tecnologia desenvolve aplicações Web seguindo um processo próprio, que é iterativo e 
incremental. Parte de seu processo de desenvolvimento é apresentado a seguir. 
 
O analista de requisitos levanta os requisitos do software junto com os stakeholders. Uma versão 
inicial da “Especificação de Requisitos” é passada para o cliente, que a revisa. Havendo aprovação, 
“Especificação de Requisitos” é passada para a equipe de testes, que cria os casos de testes. 
Esses casos de teste são documentados em um documento chamado de “Especificação dos 
Testes”, o qual segue um template que a equipe define. Em seguida, são definidos os testes não 
funcionais (em especial, testes de carga, de resposta, de memória e de atendimento a padrões de 
usabilidade), que são criados a partir da “Especificação de Requisitos”. Esses testes são também 
documentados na “Especificação dos Testes”. Por fim, baseada no tamanho e na complexidade dos 
testes especificados, a equipe define um cronograma, planejando o tempo necessário para a 
execução dos testes. Esse cronograma é passado para o gerente do projeto por e-mail. O gerente 
de projetos analisa a especificação de requisitos e o cronograma de testes, atualizando o seu 
planejamento. 
 
I. (0,9 pontos) Quais atividades dos seguintes processos técnicos e de gerência técnica, seguindo a 
ISO 12207, são apresentadas explicitamente nessa descrição? Assinale todas as alternativas 
pertinentes (note que não são apresentados os processos de V&V e de garantia da qualidade): 
 
a) Processo de planejamento de projeto 
b) Processo de avaliação e controle de projeto 
c) Processo de gerência de risco 
d) Processo de gerência de configuração 
e) Processo de medição 
f) Processo de análise de requisitos (análise de negócio ou da missão, definição das 
necessidades e requisitos dos stakeholders ou análise dos requisitos de sistema / software) 
CÓDIGO DA PROVA 
 
2 
 
g) Processo de design (definição da arquitetura ou definição do design) 
h) Processo de implementação 
i) Processo de integração 
j) Processo de transição 
k) Processo de operação 
l) Processo de manutenção 
m) Processo de descarte 
 
II. (0,6 pontos) Qual das atividades apresentadas é de garantia da qualidade? Assinale todas as 
alternativas (ou deixe em branco caso não haja atividade). 
 
a) O analista de requisitos levanta os requisitos do software junto com os stakeholders. 
b) Uma versão inicial da “Especificação de Requisitos” é passada para o cliente, que a revisa. 
c) A “Especificação de Requisitos” é passada para a equipe de testes, que cria os casos de 
testes. 
d) A equipe define um template para a “Especificação dos testes”. 
e) A definição dos testes não funcionais, que são criados a partir da “Especificação de 
Requisitos”. 
 
III. (0,6 pontos) Qual das atividades apresentadas é de verificação? Assinale todas as alternativas (ou 
deixe em branco caso não haja atividade). 
 
a) O analista de requisitos levanta os requisitos do software junto com os stakeholders. 
b) Uma versão inicial da “Especificação de Requisitos” é passada para o cliente, que a revisa. 
c) A “Especificação de Requisitos” é passada para a equipe de testes, que cria os casos de 
testes. 
d) A equipe define um template para a “Especificação dos testes”. 
e) A definição dos testes não funcionais, que são criados a partir da “Especificação de 
Requisitos” 
 
IV. (0,6 pontos) Qual das atividades apresentadas é de validação? Assinale todas as alternativas (ou 
deixe em branco caso não haja atividade). 
 
a) O analista de requisitos levanta os requisitos do software junto com os stakeholders. 
b) Uma versão inicial da “Especificação de Requisitos” é passada para o cliente, que a revisa. 
c) A “Especificação de Requisitos” é passada para a equipe de testes, que cria os casos de 
testes. 
d) A equipe define um template para a “Especificação dos testes”. 
e) A definição dos testes não funcionais, que são criados a partir da “Especificação de 
Requisitos” 
 
 
Questão 3 (2,5 pontos) 
 
a) (0,6 pontos) Aponte 3 problemas de qualidade de código no código abaixo, que representa uma classe 
Peça, que possui as informações de nome e preço. Indique a linha do problema. 
 
1 public class Peca { 
2 private String nome; 
3 private double p; 
4 
5 public Peca(String nom, double preco) { 
6 this.nome = nom; 
7 this.p = preco; 
8 } 
 
3 
 
9 
10 public String getNome() { 
11 // return nom.trim(); 
12 return nom; 
13 } 
14 
15 public double getPreco() { 
16 return p * 10; 
17 } 
18 } 
 
b) (1,9 pontos) Considere um método que diz se um ponto p está no quadrante 1, 2, 3 e 4. Assuma que 
um ponto está no quadrante 1 se x e y ≥ 0; no 2 se x ≤ 0 e y ≥ 0; no 3 se x e y ≤ 0; e no 4 se x ≥ 0 e y ≤ 
0. 
boolean estaNoQuadrante(int quadrante, Ponto p); 
 
Um desenvolvedor definiu as classes de equivalência apresentadas na tabela abaixo, numerando as 
classes (o número da classe está entre parênteses). 
 
 Válido Inválido 
quadrante 1 (1) 
2 (2) 
3 (3) 
4 (4) 
< 1 (7) 
> 4 (8) 
Ponto X Está no quadrante (5) 
Não está no quadrante (6) 
null (9) 
 
Usando o conceito de valores limite e boas práticas de criação de casos de teste, faça uma tabela (siga 
o modelo abaixo) definindo os valores de teste para os casos de teste caixa-preta (funcional). Faça o 
número mínimo de casos de testes necessários. Represente o ponto através de suas coordenadas no 
formato “(x, y)”, considerando que as coordenadas são representadas por números inteiros. 
 
Teste Classes Quadrante Ponto 
1 
2 
3 
4 
5 
6 
7 
8 
9 
10 
 
 
 
4 
 
Questão 4 (2,4 pontos) 
Uma empresa utiliza Scrum em seu processo de desenvolvimento de software. Porém, para participar de 
uma licitação de um projeto importante do governo, o gerente terá que fazer uma estimativa de custo – algo 
que não faz há um bom tempo. 
No edital da licitação, estão descritas as funcionalidades principais do projeto de controle de pacientes 
para o SUS. O gerente consultou uma equipe de desenvolvimento que trabalha com sistemas similares e, 
através da técnica de planning poker, chegou aos seguintes valores de pontos de história, organizados por 
histórias: 
 
• Cadastrar paciente: 2 
• Realizar consulta: 8 
• Solicitar exame: 3 
• Agendar consulta: 13 
• Agendar retorno: 13 
• Agendar exame: 13 
• Indicar medicamentos: 2 
• Visualizar agendamento: 1 
• Cadastrar médico: 2 
• Cadastrar especialidade médica: 2 
• Cadastrar hospital: 1 
 
I. (1,2 pontos) Considerando que esse time de desenvolvimento tem uma velocidade de 15 pontos de 
histórias por Sprint (cada Sprint demora 2 semanas),qual é a estimativa, em meses, do projeto? 
Considere que é possível quebrar histórias entre Sprints e que um mês possui 4 semanas. 
 
a) 1 mês 
b) 1,5 mês 
c) 2 meses 
d) 2,5 meses 
e) 3 meses 
f) 3,5 meses 
g) 4 meses 
h) 5 meses 
 
II. (1,2 pontos) Seguindo a estimativa obtida anteriormente, qual é o custo do projeto? Considere que o 
time de desenvolvimento é composto por 5 pessoas e que cada pessoa recebe em média 
R$5.000,00 por mês. Considere também que os custos de infraestrutura (água, luz, aluguel etc.) 
para a equipe é de R$2.000 por mês. Suponha que a empresa conte apenas com esses custos. 
 
a) R$27.000 
b) R$40.500 
c) R$54.000 
d) R$67.500 
e) R$81.000 
f) R$94.500 
g) R$108.000 
h) R$135.000 
 
 
5 
 
 
GABARITO 
 
curso: Engenharia de Computação bimestre: 16o bimestre P1 
 
Disciplina: EES201 - Gerência e qualidade de software 
 
Questão 1 
 
a) 0,6 cada. Analisar a justificativa. 
Essencial 
• Usabilidade: por ser um jogo, é essencial a operacionalidade e estética. 
 
Possíveis 
• Eficiência de execução: por ser um jogo em um hardware restrito, é importante que o 
software use bem os recursos e seja rápido (para dar dinamicidade ao jogo). 
• Confiabilidade: a quantidade de defeitos em um jogo pode ser frustrante. 
• Manutenibilidade: como os jogos atualmente são atualizados com frequência, é importante 
que seja fácil de manter. 
 
Inadequada 
• Compatibilidade: não há problema de coexistência ou interoperabilidade. 
• Segurança: como é um jogo para uma única pessoa, a segurança não é relevante. 
• Portabilidade: dado que é um console específico, isso não parece importante. Caso se 
considere a importância de se instalar, poderia ser (mas não tão importante para ser uma 
das 2). 
b) São 5 níveis (apesar de o nível 1 não possuir processos). (0,5) 
Estar no nível 1 significa que os processos da empresa são ad-hoc / caóticos. (0,7) 
 
• Outra possibilidade: significa que pelo menos um dos processos do nível 2 do CMMI não é 
adequado / não atinge as metas específicas e genéricas definidas. 
 
Questão 2 
 
I. F, A, B (0,3 cada; subtrair 0,3 por erro) 
 
O analista de requisitos levanta os requisitos do software junto com os stakeholders (Análise de 
requisitos). Uma versão inicial da “Especificação de Requisitos” é passada para o cliente, que a 
revisa (validação). Havendo aprovação, “Especificação de Requisitos” é passada para a equipe de 
testes, que cria os casos de testes (verificação). Esses casos de teste são documentados em um 
documento chamado de “Especificação dos Testes”, o qual segue um template que a equipe define 
(garantia da qualidade). Em seguida, são definidos os testes não funcionais (em especial, testes de 
carga, de resposta, de memória e de atendimento a padrões de usabilidade), que são criados a 
partir da “Especificação de Requisitos” (Verificação). Esses testes são também documentados na 
“Especificação dos Testes”. Por fim, baseada no tamanho e na complexidade dos testes 
especificados, a equipe define um cronograma, planejando o tempo necessário para a execução 
dos testes (planejamento). Esse cronograma é passado para o gerente do projeto por e-mail. O 
 
6 
 
gerente de projetos analisa a especificação de requisitos e o cronograma de testes, atualizando o 
seu planejamento (avaliação e controle). 
 
II. Item d (0,6 por correta; subtrair 0,3 por incorreta). 
III. Item c, e (0,3 por correta; subtrair 0,3 por incorreta). 
IV. Item b (0,6 por correta; subtrair 0,3 por incorreta). 
 
 
Questão 3 
 
a) 0,2 por problema identificado. 
• Linha 3: Abreviação do nome do atributo “p”. 
• Linha 5: Abreviação do nome no parâmetro. 
• Linha 11: Comentário desnecessário no método getNome. 
• Linha 16: Número mágico (10) deveria ser uma constante. 
• Linha 17: indentação do “}” 
b) 
Teste Classes Quadrante Ponto 
1 1, 5 1 (0, 0) 
2 2, 6 2 (1, 0) 
3 3, 5 3 (0, 0) 
4 4, 6 4 (0, 1) 
5 7 0 (0, 0) 
6 8 5 (0, 0) 
7 1, 9 1 null 
 
Critérios: cada linha vale 0,3 (até o total 1,9) 
 
• A ordem dos casos de teste não é relevante. 
• Nos testes das classes 1, 2, 3 e 4: 
o Pode-se ter 5 ou 6 como classes. O importante é ter pelo menos um caso de teste com 
5 e outro com 6. Se tudo for só de um dos valores, descontar 0,2. 
o Pelo menos um teste deve ter (0, 0). Se não tiver, descontar (0,4). 
o Os demais testes devem trabalhar com 1 e -1. 
• Não deve haver um caso de teste com duas partições inválidas. Se tiver, descontar 0,4. 
• Como os valores são todos inteiros, caso seja usado um ponto flutuante, descontar 0,3. 
• Pelo menos um dos testes da classe 7 e 8 deve ser (0, 0). Se não for, descontar 0,1. 
• Caso existam casos de teste repetidos, desconte 0,2 por repetição. 
 
Questão 4 
 
I. Item c. 
60 / 15 = 4 sprints = 8 semanas = 2 meses. 
 
II. Item c. 
Custos ao mês – 27 mil (5 pessoas ganham 5 mil cada + 2 mil de infraestrutura) 
Em dois meses – 54 mil

Continue navegando