Questão de Engenharia de Software — Processos de Software - Desenvolvimento Ágil — FCC 2018
Engenharia de Software›Processos de Software - Desenvolvimento Ágil
Código
fc044575
Banca
FCC
Órgão
DPE-AM
Ano
2018
Cargo
Assistente Técnico de Defensoria - Programador
Considere a definição de algumas práticas da eXtreme Programming − XP.I. Todo o código desenvolvido pelo time é incorporado em um repositório comum várias vezes ao dia. Isso garante que qualquer problema de integração ao longo do projeto possa ser notado e corrigido rapidamente.II. Qualquer programador do time pode alterar qualquer seção do código, se necessário. Por mais que esta prática pareça perigosa, ela aumenta a velocidade do desenvolvimento e problemas em potencial podem ser detectados pelos testes de unidade.III. Traz a ideia de que qualquer pessoa do time seja capaz de verificar o código sendo desenvolvido em alto nível e ter uma compreensão clara de qual funcionalidade do sistema está sendo trabalhada.IV. Permite aplicar melhorias ao código sem mudar sua funcionalidade, visando sua simplificação. Se o cliente deseja alterar alguma coisa no produto final, o time pode fazer os ajustes rapidamente, e esta prática contribui para alcançar este objetivo.As práticas de I a IV são, correta e respectivamente,
Apair programming – test-driven development – system metaphor – continuous integration.
Bplanning game – pair programming – system simplicity – continuous integration.
Cplanning game – test-driven development – system simplicity – refactoring.
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
eXtreme Programming (XP) - Práticas
Gabarito: letra E. As descrições correspondem, respectivamente, a Continuous Integration, Collective Code Ownership, System Metaphor e Refactoring — práticas clássicas do XP. A banca cobra a capacidade de associar a definição de cada prática ao seu nome correto.
Análise das práticas
I. Integração contínua (Continuous Integration) — Descrição: "Todo o código desenvolvido pelo time é incorporado em um repositório comum várias vezes ao dia..." Essa é a definição clássica de integração contínua, que visa detectar problemas de integração rapidamente.
II. Propriedade coletiva do código (Collective Code Ownership) — Descrição: "Qualquer programador do time pode alterar qualquer seção do código..." Em XP, o código pertence a todos, e os testes de unidade garantem que mudanças não quebrem o sistema.
III. Metáfora do sistema (System Metaphor) — Descrição: "Qualquer pessoa do time seja capaz de verificar o código... e ter uma compreensão clara de qual funcionalidade..." A metáfora do sistema é uma analogia compartilhada que orienta a arquitetura e o entendimento do projeto.
IV. Refatoração (Refactoring) — Descrição: "Permite aplicar melhorias ao código sem mudar sua funcionalidade..." Refatorar é melhorar a estrutura interna do código sem alterar seu comportamento externo, facilitando futuras mudanças.
1Integração contínuaI
2Propriedade coletivaII
3Metáfora do sistemaIII
4RefatoraçãoIV
LEVEL · soulevel.com.br
Alternativas
Alternativa
I
II
III
IV
Resultado
A
Pair Programming
TDD
System Metaphor
Continuous Integration
❌ Incorreta
B
Planning Game
Pair Programming
System Simplicity
Continuous Integration
❌ Incorreta
C
Planning Game
TDD
System Simplicity
Refactoring
❌ Incorreta
D
Continuous Integration
Pair Programming
Feedback
Planning Game
❌ Incorreta
E
Continuous Integration
Collective Code Ownership
System Metaphor
Refactoring
✅ Correta
Detalhamento dos erros
Alternativa A: Troca as práticas corretas. Pair Programming não é integração contínua; TDD não é propriedade coletiva.
Alternativa B: Planning Game não é integração contínua; Pair Programming não é propriedade coletiva; System Simplicity não é metáfora do sistema.
Alternativa C: Planning Game não é integração contínua; TDD não é propriedade coletiva; System Simplicity não é metáfora do sistema.
Alternativa D: Apesar de acertar Continuous Integration no item I, erra nos demais: Pair Programming não é propriedade coletiva; Feedback não é metáfora do sistema; Planning Game não é refatoração.
Alternativa E: Correta em todos os itens, alinhada com as descrições.
PEGA ESSA DICA!
Memorize as 12 práticas originais do XP e suas definições resumidas. Uma tabela com nome e descrição curta ajuda a fixar. As mais cobradas em concursos são: Continuous Integration, Collective Code Ownership, System Metaphor, Refactoring, Pair Programming, Test-Driven Development, Planning Game, Small Releases, Simple Design, Coding Standards, 40-Hour Week e On-Site Customer.