Engenharia de Software: Lista de Exercícios - Preparação para Prova P1
Published:
Questão 1
Uma universidade contratou uma equipe tecnicamente experiente para desenvolver um novo sistema acadêmico. O software foi entregue, mas apresentou diversos problemas: funcionalidades importantes não atendiam às necessidades dos usuários, alterações solicitadas durante o projeto geraram grande retrabalho, a documentação estava desatualizada e vários defeitos foram descobertos somente após a implantação.
Considerando os fundamentos de Engenharia de Software discutidos em aula, avalie as afirmações:
I. O domínio técnico de linguagens e algoritmos é suficiente para evitar os principais problemas apresentados no caso.
II. O desenvolvimento de software envolve fatores técnicos e sociotécnicos, incluindo comunicação e interação entre diferentes stakeholders.
III. Processos de software procuram organizar atividades como especificação, desenvolvimento, validação e evolução.
IV. Testes e validações realizados apenas ao final do projeto podem aumentar o custo de identificação e correção de problemas.
É correto o que se afirma em:
- A) I e II, apenas.
- B) I e III, apenas.
- C) II e IV, apenas.
- D) II, III e IV, apenas.
- E) I, II, III e IV.
Questão 2
Uma startup está desenvolvendo um aplicativo para um mercado ainda pouco conhecido. Os requisitos iniciais são incompletos, a empresa pretende disponibilizar rapidamente funcionalidades para usuários reais e espera modificar prioridades de acordo com o feedback obtido.
Considerando os modelos de processo estudados, a decisão mais adequada seria:
- A. Adotar obrigatoriamente o Cascata, pois requisitos incertos exigem documentação completa antes da implementação.
- B. Utilizar uma abordagem incremental/evolutiva, permitindo entregas parciais e aprendizado progressivo.
- C. Utilizar Cascata e impedir modificações depois da fase de requisitos.
- D. Adiar qualquer implementação até que todos os requisitos estejam completamente conhecidos.
- E. Desenvolver todo o sistema e realizar a primeira validação somente depois da implantação.
Questão 3
Uma equipe afirma utilizar desenvolvimento ágil e adota as seguintes práticas:
- realiza entregas pequenas a cada duas semanas;
- apresenta os incrementos aos usuários;
- modifica prioridades de acordo com o feedback;
- mantém testes automatizados;
- revisa continuamente sua forma de trabalho.
A partir dos fundamentos do Manifesto Ágil, é correto afirmar que:
- A. a equipe não é ágil porque planejamento e mudanças são incompatíveis.
- B. a equipe é ágil apenas porque utiliza ciclos curtos.
- C. as práticas são coerentes com agilidade porque combinam feedback, adaptação, entregas frequentes e disciplina técnica.
- D. uma equipe somente pode ser considerada ágil se não produzir nenhuma documentação.
- E. métodos ágeis eliminam a necessidade de planejamento e estimativas.
Questão 4
Durante o desenvolvimento de um aplicativo acadêmico, dois desenvolvedores deixam repentinamente a equipe. Como consequência, o cronograma fica ameaçado. O gerente decide redistribuir responsabilidades, reduzir algumas funcionalidades da primeira versão, revisar a forma de trabalho e atualizar o planejamento.
Considerando os 4 Ps de Pressman & Maxim, as decisões correspondem, respectivamente, às dimensões:
- A. Produto → Pessoas → Projeto → Processo.
- B. Pessoas → Produto → Processo → Projeto.
- C. Processo → Produto → Pessoas → Projeto.
- D. Pessoas → Processo → Produto → Projeto.
- E. Projeto → Pessoas → Processo → Produto.
Questão 5
Uma organização observou que equipes que utilizavam determinada técnica de revisão encontravam, em média, 40% mais defeitos por pessoa/hora do que equipes que utilizavam outro procedimento.
Com base nos conceitos de medida, métrica e indicador, considere:
I. A quantidade de defeitos encontrados em uma revisão pode constituir uma medida.
II. A relação entre defeitos encontrados e pessoa/hora pode constituir uma métrica.
III. A utilização dessa informação para decidir sobre a adoção de um método de revisão transforma a informação em apoio à tomada de decisão, funcionando como indicador.
É correto o que se afirma em:
- A. I, apenas.
- B. II, apenas.
- C. I e II, apenas.
- D. II e III, apenas.
- E. I, II e III.
Questão 6
Assinale a alternativa que apresenta corretamente as quatro atividades fundamentais presentes, segundo Sommerville, nos processos de software.
- A. Planejamento, contratação, codificação e implantação.
- B. Especificação, desenvolvimento, validação e evolução.
- C. Requisitos, banco de dados, programação e documentação.
- D. Análise, orçamento, testes e manutenção corretiva.
- E. Projeto, programação, treinamento e operação.
Questão 7
No modelo Espiral proposto por Boehm, uma característica que o diferencia de diversos outros modelos é:
- A. proibir alterações de requisitos depois do início do projeto.
- B. eliminar atividades de planejamento.
- C. realizar explicitamente análise de riscos durante as iterações.
- D. produzir obrigatoriamente todo o software em uma única entrega.
- E. substituir completamente atividades de especificação por programação.
Questão 8
No Scrum, o princípio segundo o qual informações relevantes sobre andamento, dificuldades e resultados devem permanecer visíveis aos envolvidos é denominado:
- A. Inspeção.
- B. Adaptação.
- C. Transparência.
- D. Refatoração.
- E. Incrementalidade.
Questão 9
Assinale a alternativa que representa uma medida direta de software.
- A. Manutenibilidade.
- B. Confiabilidade.
- C. Complexidade.
- D. Número de defeitos encontrados.
- E. Qualidade percebida.
Questão 10
A respeito de estimativas de projetos de software, assinale a alternativa correta.
- A. Uma boa estimativa determina com certeza o custo final do projeto.
- B. Estimativas devem ser evitadas enquanto houver qualquer incerteza.
- C. Dados históricos de projetos semelhantes podem reduzir o risco associado às estimativas.
- D. Quanto maior e mais complexo o sistema, menor tende a ser a incerteza da estimativa.
- E. Modelos empíricos tornam desnecessário compreender o escopo do software.
Questão 11
Uma universidade deseja criar um sistema de reserva de salas. Sabe-se que:
- os requisitos iniciais ainda são vagos;
- os funcionários da secretaria podem participar semanalmente;
- a funcionalidade de consulta de salas já teria utilidade isoladamente;
- novas necessidades provavelmente surgirão depois que os usuários começarem a utilizar o sistema.
Tarefa
- Escolha entre Cascata, Incremental, Prototipação ou Espiral.
- Indique pelo menos três características do cenário que justificam sua decisão.
- Explique uma possível desvantagem da abordagem escolhida.
Questão 12
Considere o seguinte Product Backlog de um aplicativo acadêmico:
| Item | Funcionalidade | Prioridade inicial |
|---|---|---|
| A | Consultar horários | Alta |
| B | Alterar foto do perfil | Média |
| C | Consultar salas | Alta |
| D | Tema escuro | Baixa |
| E | Receber avisos de mudança de sala | Média |
Durante uma Sprint, a universidade informa que alterações emergenciais de sala estão causando grande número de alunos entrando em salas erradas.
Tarefa
Explique:
- qual artefato provavelmente deverá ser repriorizado;
- quem é responsável por sua ordenação;
- em qual momento o novo trabalho poderia ser selecionado para uma Sprint;
- qual pilar do Scrum permite perceber a necessidade;
- qual pilar permite modificar o rumo.
Questão 13
Uma equipe concluiu um projeto com:
- tamanho: 20 KLOC;
- esforço: 50 pessoas-mês;
- defeitos encontrados: 60;
- documentação: 800 páginas.
Calcule:
- produtividade em KLOC/pessoa-mês;
- quantidade de defeitos/KLOC;
- páginas de documentação/KLOC.
Questão 14
Para uma versão simplificada de um sistema foram identificados:
- 5 entradas de usuário simples;
- 3 saídas de usuário simples;
- 2 consultas simples;
- 2 arquivos simples;
- 1 interface externa simples.
Utilize os pesos apresentados abaixo:
| Elemento | Peso simples |
|---|---|
| Entrada | 3 |
| Saída | 4 |
| Consulta | 3 |
| Arquivo | 7 |
| Interface | 5 |
Calcule a contagem não ajustada de Pontos de Função.
Questão 15
Uma organização possui dados históricos mostrando que projetos semelhantes apresentam produtividade média de 0,5 KLOC por pessoa-mês.
Um novo projeto foi preliminarmente estimado em 30 KLOC.
Tarefa
- Faça uma estimativa inicial do esforço.
- Explique por que o resultado não deve ser interpretado como compromisso definitivo.
- Cite três fatores que poderiam fazer o esforço real divergir da estimativa.
Questão 16
Explique por que desenvolver software é um problema de engenharia mesmo quando a equipe possui programadores tecnicamente competentes. Em sua resposta, discuta pelo menos três características ou dificuldades inerentes ao software e apresente um exemplo.
Questão 17
Compare o Modelo Cascata com o Modelo Incremental, analisando:
- organização das atividades;
- momento em que o cliente recebe software funcional;
- tratamento de mudanças;
- obtenção de feedback;
- situações em que cada modelo pode ser adequado.
Questão 18
Analise criticamente a afirmação:
“Se uma equipe utiliza métodos ágeis, ela não precisa fazer planejamento, documentação nem estimativas, porque tudo pode ser decidido durante o desenvolvimento.”
Explique por que essa interpretação está correta ou incorreta e relacione sua resposta aos valores e fundamentos dos métodos ágeis.
Questão 19
Considere o cenário:
Um projeto de sistema corporativo está atrasado. A equipe apresenta conflitos internos, dois departamentos discordam sobre quais funcionalidades são prioritárias, o processo possui poucas oportunidades de feedback e a data de implantação não pode ser alterada.
Analise o problema utilizando os 4 Ps de Pressman & Maxim e proponha pelo menos uma ação gerencial para cada P.
Questão 20
Explique como medidas, métricas e indicadores podem contribuir para melhorar futuras estimativas de projetos de software.
Sua resposta deve obrigatoriamente:
- diferenciar medida, métrica e indicador;
- dar um exemplo de cada;
- explicar a importância de dados históricos;
- explicar por que uma estimativa continua contendo incerteza mesmo quando baseada em métricas.
Questão 21 (FEPESE - 2026 - Prefeitura de Brusque - SC - Analista de Informátic)
As metodologias ágeis transformaram o desenvolvimento de software ao focar em entregas incrementais e adaptação a mudanças.
Assinale a alternativa correta sobre os frameworks Scrum e Kanban.
Alternativas
A) No Kanban, os itens de trabalho são organizados em um quadro visual e executados em iterações de duração fixa, sendo obrigatória a realização de eventos como Sprint Planning, Sprint Review e Sprint Retrospective ao final de cada ciclo.
B) O Scrum Master é responsável por garantir a correta aplicação do framework Scrum, podendo redistribuir tarefas entre os membros da equipe sempre que identificar riscos ao cumprimento da Sprint.
C) A principal finalidade do limite de Trabalho em Progresso (WIP) no Kanban é assegurar que cada membro da equipe permaneça continuamente ocupado, aumentando o número de atividades executadas em paralelo.
D) No Scrum, o Product Owner é o papel responsável por maximizar o valor do produto, gerenciando e priorizando o Product Backlog para garantir que a equipe de desenvolvimento trabalhe nos itens mais importantes.
E) A Daily Scrum é um evento destinado ao acompanhamento do progresso da Sprint, no qual o Product Owner e os stakeholders definem diariamente a prioridade das atividades que serão executadas pela equipe de desenvolvimento.
