Baixe o app para aproveitar ainda mais
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
Compartilhar