Escolar Documentos
Profissional Documentos
Cultura Documentos
Autor:
Diego Carvalho, Equipe
Informática e TI, Fernando
Pedrosa Lopes
11 de Setembro de 2022
Índice
1) Metodologias Ágeis - XP
..............................................................................................................................................................................................3
2
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
APRESENTAÇÃO
O assunto da aula de hoje é: Extreme Programming! Trata-se de uma famosa metodologia de
desenvolvimento ágil. É muuuuuuuuito tranquila de entender, teoria pequena e muitas questões
para treinar. Essa é aquela aula para dar uma relaxada porque não exige muito. Tentem fazer todas
as questões propostas e a chance de você errar uma questão de prova sobre esse tema será bem
pequena. Vamos lá...
Galera, todos os tópicos da aula possuem Faixas de Incidência, que indicam se o assunto cai
muito ou pouco em prova. Diego, se cai pouco para que colocar em aula? Cair pouco não significa
que não cairá justamente na sua prova! A ideia aqui é: se você está com pouco tempo e precisa ver
somente aquilo que cai mais, você pode filtrar pelas incidências média, alta e altíssima; se você tem
tempo sobrando e quer ver tudo, vejam também as incidências baixas e baixíssimas. Fechado?
Além disso, essas faixas não são por banca – é baseado tanto na quantidade de vezes que caiu em
prova independentemente da banca e também em minhas avaliações sobre cada assunto...
3
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
4
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Testar é bom?
Então vamos testar toda hora!
Iterar é bom?
Então vamos iterar toda hora!
Integrar é bom?
Então vamos integrar toda hora!
No eXtreme Programming, todos os requisitos são expressos como cenários (também chamados
histórias do usuário1), que são implementados diretamente como uma série de tarefas. Os
programadores trabalham em pares e desenvolvem testes para cada tarefa antes da escrita do
código-fonte em si. Sempre que há integração de uma nova funcionalidade, há novos testes e o
usuário realiza uma priorização dos requisitos para o desenvolvimento.
1
Por vezes, também chamado de estórias de usuário.
5
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
a qualidade do produto. Agora vejam só... eu falei muito rapidamente sobre histórias de usuário,
mas é importante se aprofundar um pouco porque ela é muito importante.
==f219==
Uma história de usuário é apenas um símbolo das conversas passadas e futuras entre o cliente e os
programadores. Lembrando que a presença do cliente no local minimiza a necessidade de
documentar extensamente cada história. Por que? Porque os programadores podem
simplesmente dar alguns passos e fazer suas perguntas ao cliente. Galera, é muito mais proveitoso
tirar uma eventual dúvida rapidamente do que marcar uma reunião formal para dias depois...
Os detalhes das histórias de usuário são capturados nos testes automatizados de aceitação que
são posteriormente usados para validar a implementação da história. Eventualmente poderá
não ser necessário escrever descrições para todas as histórias, visto que o nome de algumas
histórias já irá fornecer informações suficientes. E o que indica uma boa história de usuário? O cliente
deverá se preocupar com ela.
A história deverá ter valor de negócio na visão do cliente, para que possa ser priorizada. Às vezes
uma história precisa ser decomposta em partes menores para caber em uma iteração. Se por si
só a história não fornecer valor de negócio, deverá fornecer no mínimo progresso em direção a uma
funcionalidade de valor ao negócio. As histórias de usuário atravessam verticalmente a arquitetura
do produto – normalmente elas não estão focadas em um subsistema específico.
6
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Por fim, elas devem ser concluídas em até uma iteração. Uma história de usuário que não caiba
em uma iteração deverá ser decomposta em duas ou mais histórias menores de modo que
caibam em uma iteração. Galera, as histórias criam um ambiente de propriedade do cliente em
relação aos recursos e prioridades em um contexto incremental e iterativo de desenvolvimento. A
seguir, podemos ver mais alguns exemplos de histórias de usuário:
7
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Principais Práticas
O XP possui um conjunto de práticas que são frequentemente utilizadas. Galera... isso cai, mas cai
com muita força em prova! Talvez seja a parte mais importante da aula :)
PRÁTICAs DESCRIÇÃO
Planejamento Os requisitos são registrados em cartões de histórias e as histórias a serem incluídas em um
release são determinadas pelo tempo disponível e sua prioridade relativa. Os desenvolvedores
Incremental dividem essas histórias em tarefas.
Pequenos O conjunto mínimo útil de funcionalidade que agrega valor ao negócio é desenvolvido
primeiro. Releases do sistema são frequentes e adicionam funcionalidade incrementalmente
Releases ao primeiro release.
Projeto É realizado um projeto suficientemente simples de modo que atenda aos requisitos atuais e
nada mais. Deve-se lembrar que um código simples não é código fácil (KIS – Keep It Simple).
Simples
Desenvolvimento Um framework automatizado de teste unitário é usado para escrever os testes para uma nova
parte da funcionalidade antes que esta seja implementada. Portanto, primeiro se escreve o
Test-First teste, depois faz-se a implementação.
Espera-se que todos os desenvolvedores recriem o código continuamente tão logo os
Refactoring aprimoramentos do código forem encontrados. Isso torna o código simples de entender e fácil
de manter.
Programação Os desenvolvedores trabalham em pares, um verificando o trabalho do outro e fornecendo
apoio para realizar sempre um bom trabalho. Eles utilizam o mesmo mouse, teclado e monitor.
em Pares
Propriedade Os pares de desenvolvedores trabalham em todas as áreas do sistema, de tal maneira que não
se formem ilhas de conhecimento, com todos os desenvolvedores de posse de todo o código.
Coletiva Qualquer um pode mudar qualquer coisa.
Integração Tão logo o trabalho em uma tarefa seja concluído, este é integrado ao sistema como um todo.
Depois de qualquer integração, todos os testes unitários do sistema devem ser realizados.
Contínua
Ritmo Grandes quantidades de horas extras não são consideradas aceitáveis, pois, no médio prazo,
há uma redução na qualidade do código e na produtividade. Trabalhar por longos períodos se
Sustentável torna contraproducente – recomenda-se 40 horas semanais.
A equipe se comunica sobre o desenvolvimento de software por meio de metáforas, caso
Metáforas consiga encontrar uma que realmente faça sentido dentro do contexto e possa facilitar a
comunicação.
Cliente Um representante do usuário final do sistema deve estar disponível em tempo integral para
apoiar a equipe. No XP, o cliente é um membro da equipe de desenvolvimento e é responsável
On-site por trazer os requisitos do sistema.
Reuniões Reuniões são realizadas em pé para não se perder o foco nos assuntos, produzindo reuniões
mais rápidas, somente abordando as tarefas realizadas e tarefas a realizar pela equipe no
em Pé futuro.
Time A equipe de desenvolvimento é formada por pessoas engajadas e multidisciplinares, i.e., elas
possuem habilidades para diversas áreas do projeto.
Coeso
8
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Jogo do O planejamento de um release e das iterações são feitos com base nas histórias e conta com a
colaboração de toda equipe de desenvolvimento, inclusive o cliente, divididos em papeis:
Planejamento negócio e técnico. Os clientes priorizam e os desenvolvedores avaliam e estimam.
É claro que – no contexto do dia a dia – nem todas as práticas são utilizadas por organizações
que adotam o XP. Em regra, cada organização escolhe aquelas que consideram mais úteis,
eficientes e viáveis. Ex: para acomodar os diferentes níveis de habilidade, alguns programadores
não fazem refatoração em partes do sistema que não desenvolveram; nem sempre é possível
programar em pares; etc. É claro que a teoria trata do mundo ideal...
==f219==
9
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Processo do XP
1 - Planejamento
A atividade de planejamento se inicia com a atividade de ouvir – uma atividade de levantamento de
requisitos que capacita os membros técnicos da equipe a entender o ambiente de negócios e a fim
de ter uma percepção ampla sobre os resultados solicitados, fatores principais e funcionalidade.
“Ouvir” conduz à criação de um conjunto de histórias de usuários que descreve o resultado, as
características e a funcionalidade requisitados para o software a ser construído.
Cada história é escrita pelo cliente e é colocada em uma ficha. Ele atribui um valor (prioridade) à
história baseando-se no valor de negócio global do recurso/função. Os membros da equipe XP
avaliam cada história e atribuem um custo a ela medido em semanas de desenvolvimento. Se a
história requerer, por estimativa, mais que três semanas de desenvolvimento, é solicitado ao cliente
para dividir a história em histórias menores e a atribuição de valor e custo ocorre novamente.
É importante notar que podem ser escritas novas histórias a qualquer momento. Clientes e
desenvolvedores trabalham juntos para decidir como agrupar histórias para a versão seguinte
(o próximo incremento de software) a ser desenvolvida pela equipe XP. Conseguindo chegar a
um compromisso básico (concordância sobre quais histórias serão incluídas, data de entrega, etc)
para uma versão, a equipe XP ordena as histórias a ser desenvolvidas em uma das três formas:
10
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
(1) todas serão implementadas imediatamente (em um prazo de poucas semanas); (2) as histórias
de maior valor serão deslocadas para cima no cronograma e implementadas primeiro; ou (3) as
histórias de maior risco serão deslocadas para cima no cronograma e implementadas primeiro.
Depois de a primeira versão do projeto (também denominada incremento de software) ter sido
entregue, a equipe XP calcula a velocidade do projeto.
Se ocorrer um exagero, o conteúdo das versões é modificado ou as datas finais de entrega são
==f219==
2 - Projeto
O projeto XP segue rigorosamente o princípio KIS (Keep It Simple, ou seja, preserve a
simplicidade). É preferível sempre um projeto simples do que uma representação mais complexa.
Como acréscimo, o projeto oferece um guia de implementação para uma história à medida que é
escrita — nada mais, nada menos. O projeto de funcionalidade extra (pelo fato de o desenvolvedor
supor que ela será necessária no futuro) é desencorajado.
Se um difícil problema de projeto for encontrado como parte do projeto de uma história, o XP
recomenda a criação imediata de um protótipo operacional dessa parte do projeto. Denominada
solução pontual, o protótipo do projeto é implementado e avaliado. O objetivo é reduzir o risco
para quando a verdadeira implementação iniciar e validar as estimativas originais para a
história contendo o problema de projeto.
Anteriormente, nós dissemos que o XP encoraja a refatoração – uma técnica de construção que
também é um método para otimização de projetos. Refatoração é o processo de alteração de um
sistema de software de tal forma que não se altere o comportamento externo do código, mas se
11
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Ao se refatorar, se está aperfeiçoando o projeto de codificação depois de este ter sido feito. Como
o XP não usa praticamente nenhuma notação e produz poucos, se algum, artefatos, além dos
cartões CRC e soluções pontuais, o projeto é visto como algo transitório que pode e deve ser
continuamente modificado conforme a construção prossegue. O objetivo é controlar modificações
sugerindo pequenas mudanças de projeto capazes de melhorá-lo radicalmente.
Deve ser observado, no entanto, que o esforço necessário para a refatoração pode aumentar
dramaticamente à medida que o tamanho de uma aplicação cresça. Um aspecto central no XP é
o de que a elaboração do projeto ocorre tanto antes como depois de se ter iniciado a codificação.
Na realidade, a própria atividade de desenvolvimento guiará a equipe XP quanto à aprimoração do
projeto. Vamos partir para a codificação...
3 - Codificação:
Depois de desenvolvidas as histórias e o trabalho preliminar de elaboração do projeto ter sido
feito, a equipe não passa para a codificação, mas – sim – desenvolve uma série de testes de
unidades que exercitarão cada uma das histórias a ser inclusas na versão corrente (incremento
de software). Uma vez criado o teste de unidades, o desenvolvedor poderá melhor focar-se no que
deve ser implementado para ser aprovado no teste. Nada estranho é adicionado (KIS)!
Estando o código completo, este pode ser testado em unidade imediatamente, e, dessa forma,
prover – instantaneamente – feedback para os desenvolvedores. Conforme vimos, um conceito-
chave na atividade de codificação é a programação em dupla. O Extreme Programming
recomenda que duas pessoas trabalhem juntas em uma mesma estação de trabalho para criar
código para uma história.
Isso fornece um mecanismo para resolução de problemas em tempo real (duas cabeças
normalmente funcionam melhor do que uma) e garantia da qualidade em tempo real (o código é
revisto à medida que é criado). Ele também mantém os desenvolvedores focados no problema em
questão. Na prática, cada pessoa assume um papel ligeiramente diferente. Por exemplo: uma
pessoa pensa nos detalhes de codificação, enquanto outra trata dos padrões de codificação.
4 - Testes:
12
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
E como é a visão de Sommerville sobre o Processo XP? Bem.. ele afirma que os clientes estão
intimamente envolvidos na especificação e priorização dos requisitos do sistema. Os requisitos não
estão especificados como uma lista de funções requeridas do sistema. Pelo contrário, o cliente do
sistema é parte da equipe de desenvolvimento e discute cenários com outros membros da
equipe. Juntos, eles desenvolvem um cartão de história, englobando as necessidades do cliente:
A equipe de desenvolvimento, então, tenta implementar esse cenário em uma release futura do
software. Os cartões de história são as principais entradas para o processo de planejamento em XP
ou Jogo de Planejamento. Uma vez que tenham sido desenvolvidos, a equipe de desenvolvimento
os divide em tarefas e estima o esforço e os recursos necessários para a realização de cada tarefa.
Esse processo geralmente envolve discussões com o cliente para refinamento dos requisitos.
O cliente, então, prioriza as histórias para implementação, escolhendo aquelas que podem ser
usadas imediatamente para oferecer apoio aos negócios. A intenção é identificar funcionalidade
útil que possa ser implementada em cerca de duas semanas, quando o próximo release do
sistema é disponibilizado para o cliente. Claro que, como os requisitos mudam, as histórias não
implementadas mudam ou podem ser descartadas.
13
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Se houver necessidade de mudanças em um sistema que já tenha sido entregue, novos cartões de
histórias são desenvolvidos e, mais uma vez, o cliente decide se essas mudanças devem ter
prioridade sobre a nova funcionalidade. Às vezes, durante o jogo de planejamento, emergem
questões que não podem ser facilmente respondidas, tornando necessário algum trabalho
adicional para explorar possíveis soluções.
14
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Valores Fundamentais
VALORES
DESCRIÇÃO
FUNDAMENTAIS
Para se desenvolver um sistema de software, exige-se comunicar os requisitos de sistema para
os desenvolvedores. Em metodologias formais de desenvolvimento de software, esta tarefa é
COMUNICAÇÃO realizada por meio de documentação. O Extreme Programming favorece projetos simples,
metáforas comuns, a colaboração dos usuários, programadores e outros stakeholders, a
comunicação verbal frequente e o feedback.
XP incentiva que se comece com a solução mais simples. Funcionalidades adicionais podem
ser acrescentadas posteriormente. Alega-se que desenvolver funções que não são necessárias
SIMPLICIDADE hoje pode ser prejudicial, na medida em que futuramente essa função pode não ser mais útil.
Codificação e projeto de necessidades futuras incertas implicam o risco de gastar recursos em
algo não mais necessários, embora talvez atrasando aspectos cruciais.
Aqui se inclui o respeito pelos outros, assim como o auto-respeito. Membros devem respeitar
seu próprio trabalho, sempre se esforçando para oferecer alta qualidade e buscando o melhor
RESPEITO projeto para a solução através de refatoração. Ninguém na equipe deve se sentir
desvalorizado ou ignorado. Isso garante um alto nível de motivação e incentiva a lealdade
dentro da equipe. Este valor é muito dependente dos outros valores.
CorSim ComFeRe
15
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Princípios Básicos
Da mesma forma que existem valores fundamentais, há também princípios básicos. Galera, não
confundam esses dois conceitos! É muito fácil de confundi-los porque eles também são cinco. Os
princípios básicos devem ser seguidos por equipes que forem utilizar o XP em projetos. Os
princípios servirão para ajudar na escolha de alternativas de solução de problemas durante o curso
do projeto. Vejamos quais são:
Presumir Todo problema deve ser tratado para ser resolvido da forma mais simples possível.
simplicidade
Mudanças A solução deve ser aperfeiçoada a cada iteração de modo a satisfazer, ao fim, as expectativas
incrementais do usuário.
Trabalho de A qualidade jamais deve ser comprometida – essa é uma das razões para se ter a codificação
qualidade dos testes antes da codificação do sistema.
No XP, as novas versões de software podem ser compiladas várias vezes por dia e os
incrementos são entregues para os clientes aproximadamente a cada duas semanas. Quando
um programador compila o sistema para criar uma nova versão, ele deve executar todos os testes
automatizados existentes bem como os testes para a nova funcionalidade. A nova compilação do
software será aceita somente se todos os testes foram executados com sucesso.
As mudanças antecipadas muitas vezes não ocorrem e as solicitações de mudança realizadas são
completamente diferentes, causando diversos prejuízos ao sistema. Entenderam o problema? O
problema com a implementação de mudanças não antecipadas é que elas tendem a degradar a
estrutura do software, fazendo com que as mudanças se tornem cada vez mais difíceis de
implementar.
O Extreme Programming lida com este problema defendendo que o software deve passar por
refatoramento constantemente. Isso significa que a equipe de programação procura por
possíveis melhorias no software, implementando-as imediatamente. Portanto, o software deve
16
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
sempre ser fácil de compreender e alterar quando novas histórias de usuário são implementadas.
Essa agilidade é muito importante no desenvolvimento ágil de software. Bacana?
Por último, vamos falar um pouco mais sobre Testes de Software. Sommerville afirma que uma das
diferenças importantes entre o desenvolvimento incremental e o desenvolvimento dirigido a
planos está na forma como o sistema é testado. Com o desenvolvimento incremental, não há
especificação do sistema que possa ser usada por uma equipe de teste externa para
desenvolvimento de testes do sistema.
As principais características dos testes na metodologia XP são: (1) Desenvolvimento test-first; (2)
Desenvolvimento de teste incrementais a partir de cenários; (3) Envolvimento dos usuários no
desenvolvimento de testes e validação; (4) Uso de frameworks de testes automatizados. Bem,
pessoal! Finalizamos toda a teoria do XP. Vocês viram que não é difícil e as questões são bem
decorebas. Entendendo o fundamento, é possível respondê-las. Vamos lá...
17
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
RESUMO
EXTREME PROGRAMMING
O eXtreme Programming é uma metodologia ágil de desenvolvimento de software para equipes pequenas,
coesas e multidisciplinares cujos projetos possuem requisitos vagos e em constante mudança.
18
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
PRÁTICAs DESCRIÇÃO
Planejamento Os requisitos são registrados em cartões de histórias e as histórias a serem incluídas em um
release são determinadas pelo tempo disponível e sua prioridade relativa. Os desenvolvedores
Incremental dividem essas histórias em tarefas.
Pequenos O conjunto mínimo útil de funcionalidade que agrega valor ao negócio é desenvolvido
primeiro. Releases do sistema são frequentes e adicionam funcionalidade incrementalmente
Releases ao primeiro release.
Projeto É realizado um projeto suficientemente simples de modo que atenda aos requisitos atuais e
nada mais. Deve-se lembrar que um código simples não é código fácil (KIS – Keep It Simple).
Simples
Desenvolvimento Um framework automatizado de teste unitário é usado para escrever os testes para uma nova
parte da funcionalidade antes que esta seja implementada. Portanto, primeiro se escreve o
Test-First teste, depois faz-se a implementação.
Espera-se que todos os desenvolvedores recriem o código continuamente tão logo os
Refactoring aprimoramentos do código forem encontrados. Isso torna o código simples de entender e fácil
==f219==
de manter.
Programação Os desenvolvedores trabalham em pares, um verificando o trabalho do outro e fornecendo
apoio para realizar sempre um bom trabalho. Eles utilizam o mesmo mouse, teclado e monitor.
em Pares
Propriedade Os pares de desenvolvedores trabalham em todas as áreas do sistema, de tal maneira que não
se formem ilhas de conhecimento, com todos os desenvolvedores de posse de todo o código.
Coletiva Qualquer um pode mudar qualquer coisa.
Integração Tão logo o trabalho em uma tarefa seja concluído, este é integrado ao sistema como um todo.
Depois de qualquer integração, todos os testes unitários do sistema devem ser realizados.
Contínua
Ritmo Grandes quantidades de horas extras não são consideradas aceitáveis, pois, no médio prazo,
há uma redução na qualidade do código e na produtividade. Trabalhar por longos períodos se
Sustentável torna contraproducente – recomenda-se 40 horas semanais.
A equipe se comunica sobre o desenvolvimento de software por meio de metáforas, caso
Metáforas consiga encontrar uma que realmente faça sentido dentro do contexto e possa facilitar a
comunicação.
Cliente Um representante do usuário final do sistema deve estar disponível em tempo integral para
apoiar a equipe. No XP, o cliente é um membro da equipe de desenvolvimento e é responsável
On-site por trazer os requisitos do sistema.
Reuniões Reuniões são realizadas em pé para não se perder o foco nos assuntos, produzindo reuniões
mais rápidas, somente abordando as tarefas realizadas e tarefas a realizar pela equipe no
em Pé futuro.
Time A equipe de desenvolvimento é formada por pessoas engajadas e multidisciplinares, i.e., elas
possuem habilidades para diversas áreas do projeto.
Coeso
Jogo do O planejamento de um release e das iterações são feitos com base nas histórias e conta com a
colaboração de toda equipe de desenvolvimento, inclusive o cliente, divididos em papeis:
Planejamento negócio e técnico. Os clientes priorizam e os desenvolvedores avaliam e estimam.
VALORES
DESCRIÇÃO
FUNDAMENTAIS
Para se desenvolver um sistema de software, exige-se comunicar os requisitos de sistema para
COMUNICAÇÃO os desenvolvedores. Em metodologias formais de desenvolvimento de software, esta tarefa é
19
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
20
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
Uma das práticas do XP é o ritmo sustentável! Grandes quantidades de horas extras não são
consideradas aceitáveis, pois – no médio prazo – há uma redução na qualidade do código e na
produtividade. Trabalhar por longos períodos se torna contraproducente – recomenda-se 40 horas
semanais.
Gabarito: Errado
Comentários:
Uma das práticas do XP são as pequenas releases! O conjunto mínimo útil de funcionalidade que
agrega valor ao negócio é desenvolvido primeiro. Releases do sistema são frequentes e adicionam
funcionalidade incrementalmente ao primeiro release.
Gabarito: Errado
Comentários:
Gabarito: Correto
4. (CESPE / Ministério da Economia – 2020) O refactoring de código não faz parte do modelo XP,
visto que a expectativa é a entrega ágil, e não deve ser considerada em tempo de projeto a
recriação de código para aprimoramento.
Comentários:
21
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Uma das práticas do XP é a refatoração! Espera-se que todos os desenvolvedores recriem o código
continuamente tão logo os aprimoramentos do código forem encontrados. Isso torna o código
simples de entender e fácil de manter.
Gabarito: Errado
Comentários:
No eXtreme Programming, todos os requisitos são expressos como cenários (também chamados
histórias do usuário), que são implementados diretamente como uma série de tarefas.
Gabarito: Correto
6. (CESPE / TCE-RO – 2019) No que diz respeito a processos e práticas ágeis, o desenvolvimento
incremental
Comentários:
(a) Errado. Esse item é bastante confuso, o desenvolvimento incremental não exige o domain-
driven design (DDD); (b) Correto. No XP, o envolvimento do cliente ocorre em tempo integral,
22
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
facilitando o desenvolvimento e a melhora do produto; (c) Errado. Na verdade, trata-se do TDD; (d)
Errado. Ele não pressupõe o uso do Behavior Driven Development; (e) Errado. A integração
contínua não é incompatível com o XP e com o Scrum.
Gabarito: Letra B
Comentários:
No Extreme Programming, cada história é escrita pelo cliente e é colocada em uma ficha! O cliente
atribui um valor (prioridade) à história baseando-se no valor de negócio global do recurso/função.
Os membros da equipe XP avaliam cada história e atribuem um custo a ela medido em semanas de
desenvolvimento. Logo, quem atribui um valor é o cliente e, não, os membros da equipe.
Gabarito: Errado
8. (CESPE / ABIN – 2018) Na extreme programming, como não há especificação de sistema que
possa ser usada por equipe de teste externa, a característica de test-first exige que os
implementadores de tarefa compreendam detalhadamente a especificação de comportamento
da funcionalidade em desenvolvimento, a fim de que possam escrever o teste para o sistema.
Comentários:
Pessoal, vimos que umas das principais práticas do XP é a do Desenvolvimento Test-First. Essa
prática faz uso de testes unitários para cada funcionalidade, além disso, os testes devem ser escritos
antes da implementação da funcionalidade e para isso os implementadores devem conhecer
detalhadamente as especificações da funcionalidade que está sendo desenvolvida.
Gabarito: Correto
9. (CESPE / BNB – 2018) Em XP, a técnica de planning game é utilizada pelo cliente para identificar
as prioridades do que deve ser construído em um software, sem a participação dos
desenvolvedores.
Comentários:
Uma das práticas do XP é o jogo do planejamento. Nessa prática, o planejamento de uma release e
das iterações são feitos com base nas histórias e conta com a colaboração de toda equipe de
desenvolvimento, inclusive o cliente, divididos em papeis: negócio e técnico. Os clientes priorizam
e os desenvolvedores avaliam e estimam.
23
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Gabarito: Errado
10. (CESPE / ABIN – 2018) O ritmo ágil de desenvolvimento de softwares é uma prática usada para
favorecer a entrega das releases quando grandes volumes de horas extras são tolerados.
Comentários:
Não se trata de ritmo ágil e, sim, ritmo sustentável! Grandes quantidades de horas extras não são
consideradas aceitáveis, pois, no médio prazo, há uma redução na qualidade do código e na
produtividade. Trabalhar por longos períodos se torna contraproducente – recomenda-se 40 horas
semanais).
Gabarito: Errado
11. (CESPE / ABIN – 2018) Para apoiar a equipe de desenvolvimento, é uma prática o uso do
cliente on-site em tempo integral.
Comentários:
De fato, cliente on-site é uma prática do XP. Um representante do usuário final do sistema deve
estar disponível em tempo integral para apoiar a equipe. No XP, o cliente é um membro da equipe
de desenvolvimento e é responsável por trazer os requisitos do sistema.
Gabarito: Correto
Comentários:
A programação em pares é uma das práticas do XP. Além disso, requisitos realmente são expressos
como cenários ou histórias de usuário, que são implementados como uma série de tarefas.
Gabarito: Correto
13. (CESPE / TRT - 7ª Região (CE) – 2017) Acerca de metodologia XP, assinale a opção correta.
24
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
c) Mesmo sendo considerada uma metodologia ágil, XP exige uma especificação completa e
formal dos requisitos.
d) Em XP, denomina-se explanação o processo por meio do qual uma pessoa tenta explicar um
assunto fazendo comparações com o mundo real.
Comentários:
(a) Errado, não há esse requisito; (b) Correto, vimos que no XP a prática do planning game é
realmente adotada; (c) Errado, um projeto XP tem especificações simples; d) Errado, trata-se das
metáforas.
Gabarito: Letra B
14. (CESPE / TRE-BA – 2017) Considerando uma situação hipotética com o uso da XP (eXtreme
Programming) concomitante com Scrum em um projeto de desenvolvimento de software em
uma organização, julgue os seguintes itens.
I. É viável a utilização do TDD (Test Driven Development) na fase de sprint, de modo que se
escreva o teste automático antes da codificação.
III. Integrantes da equipe scrum podem realizar a programação do código em pares, o que
proporciona, entre outras vantagens, o nivelamento de conhecimento da equipe.
IV. O conceito de requisito “pronto” continuaria válido, contudo, inviabilizaria o refactoring, pois
é proibitivo inserir o mesmo item (requisito) em várias sprints.
a) I e II.
b) I e III.
c) II e IV.
d) I, III e IV.
e) II, III e IV
Comentários:
(I) Correto. TDD é uma prática XP em que se escreve o teste antes de escrever o código do
componente e é viável utilizá-lo em uma Sprint; (II) Errado. A Integração Contínua é uma prática
XP, mas não se integra a equipe, integram-se componentes e não deve ser utilizado na
retrospectiva da sprint, mas na sprint em si; (III) Correto. A Programação em Pares é uma prática
25
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Gabarito: Letra B
Comentários:
(a) Errado, planejamento incremental e, não, completo; (b) Errado, pequenas releases e, não,
grandes; (c) Errado, ritmo sustentável e, não, grande quantidade de horas extras; (d) Correto; (e)
Errado, integração contínua e, não, após a entrega do software completo.
Gabarito: Letra D
Comentários:
No XP o envolvimento do cliente ocorre em tempo integral. O que isso significa? Significa que o
cliente pode interferir em qualquer etapa do desenvolvimento. Esse envolvimento em tempo
integral do cliente facilita o desenvolvimento e a melhora da qualidade do produto.
Gabarito: Errado
17. (CESPE / TCE-PA – 2016) Em XP (Extreme Programming), as user stories não objetivam definir
o escopo global do sistema, mas avaliar a complexidade de cada uma de suas partes a fim serem
estimados prazos na perspectiva dos usuários ou clientes do sistema.
Comentários:
No XP, todos os requisitos são expressos como cenários (histórias dos usuários). Ou seja, as user
stories são uma descrição resumida de alguma funcionalidade, por isso não estão relacionadas ao
26
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
escopo global, mas sim a funcionalidades específicas. Além disso, as user stories permitem que se
avaliem a complexidade e que se defina as estimativas para as entregas aos clientes.
Gabarito: Correto
Comentários:
Gabarito: Correto
19. (CESPE / FUNPRESP-JUD – 2016) As práticas da extreme programming, que tem por princípio
liberar grandes releases de software, visam agregar valor ao negócio.
Comentários:
As práticas do XP têm por princípio liberar pequenas releases e, não, grandes releases. O conjunto
mínimo útil de funcionalidade que agrega valor ao negócio é desenvolvido primeiro. Releases do
sistema são frequentes e adicionam funcionalidade incrementalmente ao primeiro release.
Gabarito: Errado
20. (CESPE / TRT-PR – 2016) Um projeto desenvolvido mediante XP (Extreme Programming) segue
princípios opostos aos de um projeto implementado com base em KIS (Keep It Simple).
Comentários:
Projeto Simples significa que é realizado um projeto suficientemente simples de modo que atenda
aos requisitos atuais e nada mais. Deve-se lembrar que um código simples não é código fácil (KIS –
Keep It Simple). Logo, seguem princípios análogos/semelhantes e, não, opostos aos de um projeto
implementado com base no Keep It Simple.
Gabarito: Errado
21. (CESPE / TRE-RS – 2015) Tendo em vista que, em um processo ágil de desenvolvimento
de software, foi adotado o XP (eXtreme Programming) e que os requisitos levantados foram
expressos na forma de histórias de usuário, assinale a opção que apresenta, corretamente,
recomendações técnicas para a elaboração de um cartão de histórias de usuário.
27
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
a) Como um professor, quero calcular as médias semestrais dos alunos de modo que eu possa
identificar quais serão aprovados.
b) O professor deseja o cálculo de notas semestrais com precisão de até duas casas decimais.
c) O sistema deve calcular as médias semestrais dos alunos com base nas notas atribuídas a eles
pelos professores.
d) Como analista de requisitos, eu preciso oferecer o cálculo das notas semestrais aos
professores em menos de um minuto.
e) Como um professor, eu preciso de releases semanais de funcionalidades, mesmo que elas
possam ser refatoradas posteriormente.
Comentários:
A questão pergunta por recomendações para elaboração de histórias de usuários. Uma boa história
de usuário é aquela em que o cliente se preocupa com ela. Além disso, ela deve ter valor de negócio
na visão do cliente. Em suma, as histórias de usuários são feitas pelos clientes. Por fim, as histórias
devem descrever o resultado, as características e a funcionalidade solicitados para o software a ser
construído.
(a) Correto. O professor é o cliente, ele criou a história e definiu corretamente o resultado, as
características e a funcionalidade; (b) Errado. O professor não definiu corretamente a
funcionalidade; (c) Errado. O sistema não é o cliente; (d) Errado, o cliente é que deve elaborar a
história; (e) Errado. Isso é papel do desenvolvedor.
Gabarito: Letra A
Comentários:
Não, não há absolutamente nenhuma condição para a publicação de grandes releases – muito
menos 180 dias! Já imaginaram isso? 180 dias!!!
Gabarito: Errado
Comentários:
Vamos lá! Já começo dizendo que não gostei dessa questão. Por que? Porque várias vezes a banca
escreve interativo, em vez de iterativo, e dá como errado. Ora, é característica de qualquer tipo de
28
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
desenvolvimento a interatividade, logo isso não deveria ser alvo de questão alguma, mas só
algumas metodologias de desenvolvimento são iterativas e, isso sim, deveria ser alvo de questões.
O fato é que a questão não está errada ao dizer que o XP possui como característica o
desenvolvimento interativo. Mas, porém, todavia, entretanto, ele dispõe de um processo de testes
formais, como diz Sommerville - ele possui mecanismos para tal. Logo, para mim, a questão está
errada, mas a banca a deu como correta e infelizmente não foram acatados recursos.
Gabarito: Correto
24. (CESPE / TRE-RS – 2015) Em um desenvolvimento ágil de sistemas utilizando o XP, foram
adotadas as seguintes ações: foi dita a verdade ao cliente acerca do progresso do projeto e
acerca de suas estimativas, além de haverem sido realizadas adaptações quando mudanças
importantes aconteceram no projeto. Essas ações estão coerentes com o valor do XP
denominado:
a) sinceridade.
b) comunicação.
c) coragem.
d) feedback.
e) respeito.
Comentários:
A questão trata do valor da coragem! Ela permite que os desenvolvedores se sintam confortáveis
com ao refatorar o seu código, quando necessário. Eventualmente, há de se ter coragem para jogar
fora um código ou para remover um código obsoleto, não importa quanto esforço e tempo se
gastou para produzi-lo. Além disso, coragem significa persistência, pois um programador pode se
encontrar preso em um problema complexo durante um dia inteiro sem conseguir resolver.
Gabarito: Letra C
25. (CESPE / TRE-RS – 2015) Assinale a opção que apresenta uma característica relacionada a
projetos que utilizam o método XP (eXtreme Programming), muito utilizado em projetos para
o desenvolvimento de softwares.
a) grandes releases
b) programação individual
c) cliente off-site
d) grandes volumes de horas extras
e) planejamento incremental
Comentários:
29
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
(a) Errado, a prática adequada são pequenas releases; (b) Errado, a prática adequada é a
programação em pares; (c) Errado, a prática adequada é cliente on-site; (d) Errado, a prática
adequada é o ritmo sustentável; (e) Correto, essa é uma prática bastante utilizada no contexto do
XP.
Gabarito: Letra E
26. (CESPE / STJ – 2015) Na Extreme Programming, a programação em pares cria ilhas de
especialistas na equipe por meio da análise simultânea de duas pessoas no desenvolvimento
do software.
Comentários:
Gabarito: Errado
27. (CESPE / FUB – 2015) Práticas de desenvolvimento de software aos pares de programadores,
em que um programador verifica o trabalho do outro, são uma característica do método de
desenvolvimento XP.
Comentários:
Gabarito: Correto
28. (CESPE / FUB – 2015) É considerada como ritmo sustentável a carga horária de trabalho extensa
para gerar rapidamente entregas de produtos de software, o que provoca grande quantidade de
horas extras.
Comentários:
Opaaa... grandes quantidades de horas extras não são consideradas aceitáveis, pois, no médio
prazo, há uma redução na qualidade do código e na produtividade. Trabalhar por longos períodos
se torna contraproducente – recomenda-se 40 horas semanais.
Gabarito: Errado
30
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
Vamos verificar? Programação em Pares, ok. Semana de 40 horas, ok. Desenvolvimento orientado
a testes TDD, ok. Desenvolvimento de metáforas arquiteturais, ok. Refatoração sem piedade, como
é? Sem piedade? Galera, não faço ideia de onde a banca tirou esse nome! É simplesmente
refatoração. No entanto, é melhor não brigar com a banca...
Gabarito: Correto
30. (CESPE / STF – 2013) XP (Extreme Programming) é uma metodologia ágil voltada para equipes
pequenas e médias que desenvolvam software baseado em requisitos vagos e se caracteriza por
possibilitar modificações rápidas.
Comentários:
É uma metodologia ágil? Sim! Voltada para equipes pequenas e médias? Sim! Desenvolvem software
baseado em requisitos vagos? Sim! Possibilita modificações rápidas? Sim, lembrem-se que é um
método ágil!
Gabarito: Correto
31. (CESPE / TCE-RO – 2013) No método XP (eXtreming programming), os sistemas são concebidos
a partir de uma metáfora e descritos em estórias do usuário. Esse método busca facilitar a
comunicação com o cliente, entendendo a realidade deste e guiando o desenvolvimento com o
uso de estória simples.
Comentários:
Perfeito! Uma das vantagens das metáforas é que elas simplificam o entendimento...
Gabarito: Correto
Comentários:
31
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Perfeito! De fato, ela utiliza histórias de usuário. Além disso, requisitos, arquitetura e design surgem
durante o curso do projeto – elas não são completamente definidas previamente. Por fim, o
desenvolvimento é incremental porque se trata de um método iterativo e incremental.
Gabarito: Correto
33. (CESPE / MPE-PI – 2012) O XP (Extreme Programming) é um método ágil, que preconiza a
criação de um caso de teste unitário antes do início da codificação.
Comentários:
O XP é, de fato, um método ágil que preconiza o Test-First Design como uma de suas práticas, isto
é, primeiro cria-se o teste para depois codificar a funcionalidade referente a esse teste.
Gabarito: Correto
34. (CESPE / ANAC – 2012) Para o método ágil de desenvolvimento conhecido como extreme
programming, todos os requisitos funcionais são expressos como cenários (histórias do usuário)
que são implementados diretamente como uma série de tarefas.
Comentários:
Corretíssimo! Requisitos funcionais são representados como cenários ou histórias de usuário, que
são implementadas diretamente como uma série de tarefas.
Gabarito: Correto
35. (CESPE / ANAC – 2012) A técnica conhecida como refactoring é constantemente aplicada no
desenvolvimento baseado no método ágil extreme programming.
Comentários:
Perfeito! Também conhecida como refatoração, essa é uma das técnicas amplamente preconizadas
pelo XP!
Gabarito: Correto
36. (CESPE / ANAC – 2012) No modelo extreme programming, os testes de software só são
realizados na etapa final de desenvolvimento do software e, somente nessa etapa, os
programadores trabalham, obrigatoriamente, em pares, utilizando cada um o próprio
computador.
32
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
Primeiro, testes de software não ocorrem somente na etapa final de desenvolvimento, eles são
realizados a todo momento. Ademais, programadores trabalham em pares a todo instante: um
computador para dois programadores.
Gabarito: Errado
37. (CESPE / ANAC – 2012) Na metodologia ágil XP (extreme programming), as metáforas são
formas de transmitir ideias complexas de maneira simples, ou seja, utiliza-se uma linguagem
simples entre a equipe e o cliente, com o objetivo de que, entre as inúmeras variáveis de controle
em projetos, tais como tempo, custo, qualidade e escopo, obtenha-se maior foco no tempo, em
detrimento do planejamento do release.
Comentários:
A primeira parte da questão está perfeita, isto é, metáforas ajudam a transmitir ideias complexas
de maneira simples. No entanto, o objetivo dela não é obter maior foco no tempo. Ademais, o
planejamento da release é dependente do tempo, logo não há essa distinção de foco!
Gabarito: Errado
38. (CESPE / EBC – 2011) O XP segue um conjunto de valores, princípios e regras básicas que visam
alcançar eficiência e efetividade no processo de desenvolvimento de software. Os valores são
cinco: comunicação, simplicidade, feedback, coragem e respeito.
Comentários:
De fato, esses são os valores preconizados pelo XP: Comunicação, Simplicidade, Feedback,
Coragem e Respeito.
Gabarito: Correto
39. (CESPE / STM – 2011) O Extreme Programming (XP), que se inclui entre os métodos ágeis,
apresenta, entre outras, as seguintes características: pequenos releases, projeto simples,
refactoring, programação em pares e propriedade coletiva.
Comentários:
Gabarito: Correto
33
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
40. (CESPE / TRE-BA – 2010) Em XP, a prática denominada programação em pares (pair
programming) é realizada por um desenvolvedor em dois computadores, com o objetivo de
aumentar a produtividade.
Comentários:
Na verdade, são dois desenvolvedores utilizando apenas um computador. Observem que o intuito
é aumentar a qualidade do software por meio da revisão constante pelo par.
Gabarito: Errado
41. (CESPE / ABIN – 2010) Na Extreme Programming, os requisitos são expressos como cenários e
implementados diretamente como uma série de tarefas. O representante do cliente faz parte
do desenvolvimento e é responsável pela definição de testes de aceitação do sistema.
Comentários:
Perfeito! Os requisitos são expressos como cenários (ou histórias de usuário) e implementados
como tarefas. Ademais, recomenda-se o Cliente On-Site, isto é, um representante do usuário final
do sistema deve estar disponível em tempo integral para apoiar a equipe. Além disso, Pressman, 7ª
Ed., pág. 77, afirma:
“XP acceptance tests, also called customer tests, are specified by the customer and focus on overall
system features and functionality that are visible and reviewable by the costumer. Acceptance tests
are derived from user stories that have been implemented as part of a software release”.
Gabarito: Correto
42. (CESPE / MPU – 2010) Extreme programming (XP) é embasado em requisitos conhecidos,
definidos de antemão, que não sofram muitas alterações, devendo ser usado por equipes de
pequeno porte, formadas por representantes de todos os stakeholders.
Comentários:
Gabarito: Errado
34
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
No início, havia apenas quatro valores – posteriormente, foi adicionado um novo valor: respeito! Na
época dessa questão, ainda havia apenas quatro valores.
Gabarito: Correto
Comentários:
Gabarito: Correto
45. (CESPE / SECONT-ES – 2009) Métodos ágeis de desenvolvimento de sistemas foram propostos
principalmente para apoiar o desenvolvimento de aplicações de negócios nas quais os requisitos
de sistema mudam rapidamente durante o processo de desenvolvimento. Entre esses métodos
está o extreme programming, que envolve um número de práticas, como o planejamento
incremental, a definição de um ritmo de trabalho sustentável e a divisão das equipes de trabalho
por meio da especialização de seus membros.
Comentários:
A questão está quase toda correta, exceto pela última parte! O XP recomenda que não haja
especialização de membros, apresentando uma equipe coesa e multidisciplinar, isto é, todos
participam de todas as atividades.
35
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Gabarito: Errado
46. (CESPE / IPEA – 2009) A extreme programming (XP) é um método de desenvolvimento ágil.
Nele, os requisitos são expressos como cenários implementados diretamente como uma série
de tarefas.
Comentários:
XP é um método ágil? Sim! Os requisitos são expressos como cenários implementados como uma série
de tarefas? Sim! Questão bastante comum em concursos!
Gabarito: Correto
Comentários:
Gabarito: Errado
48.(CESPE / TRE-BA – 2009) A metodologia XP prevê valores e princípios básicos para serem
considerados durante o desenvolvimento de software. Feedback, coragem e respeito são
exemplos de valores; mudanças incrementais, abraçar mudanças e trabalho de qualidade são
exemplos de princípios básicos.
Comentários:
Gabarito: Correto
Comentários:
36
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Gabarito: Errado
50. (CESPE / ANTAQ – 2009) O extreme programming (XP) constitui método ágil de
desenvolvimento de software. Uma das práticas que se enquadram nos princípios dos métodos
ágeis é a programação em pares, que promove o compartilhamento da autoria do código do
sistema. Além dessa vantagem, a programação em pares atua como processo informal de
revisão porque cada linha de código é vista por pelo menos duas pessoas.
Comentários:
Perfeito! A Programação em Par promove a Propriedade Coletiva! Além disso, serve como uma
revisão informal.
Gabarito: Correto
51. (CESPE / PRODEST – 2008) Projetar detalhadamente todo o software antes de iniciar a sua
implementação é uma prática recomendada pelo XP. O software deve ser projetado para
atender tanto aos requisitos atuais quanto aos potenciais requisitos futuros. Para atingir esse
objetivo, são analisados os possíveis cenários de evolução futura e são empregados padrões de
projeto para facilitar a manutenção.
Comentários:
Projetar detalhadamente? Não! O Manifesto Ágil já dizia: responder a mudanças é mais valorizado
do que seguir um plano específico.
Gabarito: Errado
52. (CESPE / PRODEST – 2008) Constituem práticas recomendadas pelo XP a colocação rápida de
uma versão simples em produção, a liberação das novas versões em curtos intervalos de tempo,
a programação em duplas, a refatoração (refactor) dos códigos produzidos, a adoção de padrões
para a codificação; a integração e o teste contínuos de códigos; a limitação em 40 horas da carga
de trabalho semanal.
Comentários:
Gabarito: Correto
53. (CESPE / PRODEST – 2008) O XP é um processo que visa a um desenvolvimento ágil e portanto
não recomenda os testes de unidade, pois eles consomem muitos recursos. Durante o
37
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
Gabarito: Errado
38
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
a) consultar o cliente quando uma história exigir, por estimativa, menos do que 3 semanas de
desenvolvimento, para que o cliente a complemente com mais tarefas.
b) ouvir o cliente, durante o levantamento de requisitos, para que este crie as histórias de
usuários. Após essa importante etapa nenhuma história nova deve ser criada para não
comprometer o cronograma do projeto.
c) evitar que o projeto caia na armadilha de seguir o princípio KISS de forma a estimular que o
projeto de uma funcionalidade extra, que poderá ser necessária no futuro, faça parte do modelo
do software.
d) realizar os testes de unidade de forma manual, evitando que sejam usadas baterias de testes
automatizados, pois estes impedem a realização de testes de regressão.
e) estimular o uso de cartões CRC como um mecanismo eficaz para pensar o software em um
contexto orientado a objetos.
Comentários:
Para Pressman: “A XP estimula o uso de cartões CRC como um mecanismo eficaz para pensar o
software em um contexto orientado a objetos. Os cartões CRC (classe-responsabilidade-colaborador)
identificam e organizam as classes orientadas a objetos relevantes para o incremento de software
corrente”.
Gabarito: Letra E
55. (FCC / DPE-AM – 2018) 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.
39
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
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.
Comentários:
(I) Trata-se da prática de Integração Contínua, que diz que tão logo o trabalho em tarefa seja
concluído, este é integrado ao sistema, são também realizados testes unitários; (II) Trata-se da
prática da Propriedade Coletiva do Código, ou seja, o código pertence a todos os integrantes da
equipe, além disso, essa prática aumenta a velocidade de desenvolvimento; (III) Trata-se da prática
das Metáforas, que visa facilitar a comunicação entre os membros da equipe, de forma que sejam
transmitidas ideias complexas de maneira simples; (IV) Por fim, melhorar o código sem afetar o
comportamento externo do sistema, trata-se da prática de refatoramento.
Gabarito: Letra E
56. (FCC / TST – 2017) Uma dupla de programadores, utilizando o modelo Extreme Programming −
XP, realiza, na fase de:
a) desenvolvimento, a implementação das user stories que fazem parte da iteração corrente.
b) desenvolvimento, a entrega das user stories totais do sistema.
c) validação do sistema, a análise dos requisitos técnicos entregáveis.
d) validação do sistema, a integração total dos incrementos das user stories.
e) projeto da arquitetura do sistema, a implementação das user stories totais do sistema.
Comentários:
No XP, todos os requisitos são expressos como histórias do usuário, que são implementados
diretamente como uma série de tarefas. Além disso, essa implementação ocorre na fase de
desenvolvimento.
40
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Gabarito: Letra A
57. (FCC / DPE-RS – 2017) Considere que um Analista esteja participando de um projeto que utiliza
as melhores práticas da Extreme Programming − XP. No início de uma iteração a equipe de
desenvolvimento, da qual o Analista fazia parte, convidou o cliente a escrever as funcionalidades
que desejava no sistema em pequenos cartões chamados user stories. Depois disso, a equipe de
desenvolvimento estimou o tempo e o custo de cada funcionalidade para o cliente. O cliente foi
informado do tempo e custo, e foi solicitado a decidir a prioridade em que cada user
story deveria ser desenvolvida. Esta prática XP é conhecida como:
a) Releases e é utilizada para que o cliente possa utilizar o sistema, possibilitando à equipe de
desenvolvimento saber se há defeitos ou não no código.
b) Releases e visa reorganizar o código fonte para melhorar sua qualidade interna, facilitar seu
entendimento pelo cliente e diminuir o tempo gasto com manutenção.
c) Metáforas e permite que o cliente transmita ideias complexas de forma simples e clara,
usando um vocabulário comum.
d) Planning Game e permite que o Analista e outro desenvolvedor escolham uma user story e
codifiquem juntos aquela funcionalidade.
e) Planning Game e busca assegurar que a equipe esteja sempre trabalhando no que é mais
importante e gere mais valor para o cliente.
Comentários:
O cliente escreve as funcionalidades em um cartão chamado user stories: trata-se da prática do jogo
do planejamento (planning game). Ou seja, o planejamento dos releases e das iterações é feito com
base nas prioridades do cliente, o trabalho dos desenvolvedores é avaliar e estimar as entregas
dessas prioridades.
Gabarito: Letra E
58. (FCC / CREMESP – 2016) Considere que nos projetos do CREMESP baseados em XP pratica-se
a propriedade coletiva de código, de forma que todos os desenvolvedores podem fazer
alterações e refatoração de qualquer parte do código a qualquer momento. Para isso, é
necessário que também haja:
a) padrões de codificação.
b) time-box de 40 horas.
c) testes apenas depois da codificação.
d) releases grandes.
41
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
Gabarito: Letra A
Comentários:
Primeiramente, vê se que a questão pede os fundamentos que o Manifesto Ágil valoriza menos. O
Manifesto Ágil valoriza mais a resposta às mudanças do que seguir um plano, por isso, ele valoriza
menos a rigorosidade dos processos do que a adaptação às mudanças. A rigorosidade dos
processos está mais ligada às metodologias tradicionais.
Gabarito: Letra E
Comentários:
(a) Errado. Não há essa obrigação; (b) Errado. O XP por ser uma metodologia ágil, valoriza mais um
software em funcionamento do que uma documentação detalhada e diversificada; (c) Errado. na
verdade, os incrementos é que são entregues em aproximadamente duas semanas; (d) Errado. O
42
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
XP adota o desenvolvimento test-first, ou seja, primeiro escreve-se o teste; (e) Correto. O planning
game pode ocorrer semanalmente.
Gabarito: Letra E
61. (FCC / TST – 2012) O XP (Extreme Programming) utiliza uma abordagem orientada a objetos
como seu paradigma de desenvolvimento predileto. Ele:
a) recomenda que duas pessoas trabalhem juntas para criar o código correspondente a uma
história.
b) recomenda que a equipe XP e os clientes trabalhem de forma separada para não mudar o
compromisso básico definido para a versão a ser entregue.
Comentários:
(a) Correto, trata-se da programação em pares; (b) Errado, recomenda-se o cliente on-site, isto é, o
cliente está sempre presente para auxiliar com seu conhecimento sobre a área de negócio; (c)
Errado, ela segue o TDD – Test-Driven Development; (d) Errado, Pressman afirma que se
recomenda desenvolver testes unitários que exercitarão as histórias; (e) Errado, Pressman afirma
que XP inclui um conjunto de regras e práticas que ocorrem no contexto de quatro atividades de
arcabouço: planejamento, projeto, codificação e teste.
Gabarito: Letra A
62. (FCC / MPE-AP – 2012) O Extreme Programming (XP) é, talvez, o mais conhecido e mais
utilizado dos métodos ágeis. Dentre suas práticas se encontram programação em pares,
integração contínua, refatoração e:
a) propriedade coletiva, que garante uma participação nos lucros aos membros da equipe de
desenvolvimento, técnica que incentiva e aumenta o desempenho de toda a equipe.
b) envolvimento do cliente apenas na fase final do sistema, fator que difere de outras
metodologias como SCRUM e TDD e confere agilidade ao processo de desenvolvimento.
43
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
(a) Errado. Participação nos lucros? Quem dera! Essa prática significa que todos podem visualizar e
editar um código-fonte; (b) Errado, o envolvimento ocorre durante todo o processo; (c) Errado,
deve-se manter um ritmo sustentável, evitando horas-extras; (d) Errado. Pelo contrário, quanto
mais limpo o código, melhor; (e) Perfeito, não há nada a acrescentar.
Gabarito: Letra E
63. (FCC / MPE-PE – 2012) Dentre as práticas do método ágil Extreme Programming (XP), está a
prática de propriedade coletiva. É correto afirmar que, nessa prática,
b) cada projeto é realizado para atender às necessidades globais dos usuários, focando na
coletividade da distribuição da informação.
d) grandes quantidades de horas extras não são consideradas aceitáveis, pois o resultado final,
muitas vezes, é a redução da qualidade do código e da produtividade a médio prazo, sendo que
o indivíduo pode afetar o desempenho de todo o time.
e) um representante do usuário final do sistema deve estar disponível todo o tempo à equipe de
desenvolvimento. Nesse modelo de desenvolvimento, o cliente é membro da equipe e participa
da responsabilidade do código desenvolvido.
Comentários:
44
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
(a) Trata-se do Pair Programming; (b) Não sei o que é, mas não há relação com Propriedade
Coletiva; (c) Trata-se da Propriedade Coletiva; (d) Trata-se do Ritmo Sustentável; (e) Trata-se do
Cliente On-Site.
Alguns afirmam que a terceira opção está mais para a prática de Pair Programming e, não, para
Propriedade Coletiva. Eu admito que é um pensamento razoável, mas nenhuma outra opção se
encaixa em Propriedade Coletiva. Dessa forma, deve-se ter essa noção nas questões da FCC, isto é,
marcar a mais correta ou a menos errada.
Gabarito: Letra C
64.(FCC / TJ-PE – 2012) Nos métodos ágeis XP e Scrum, as entregas de partes funcionais do projeto
são divididas em ciclos, geralmente compreendidos no período de 1 a 4 semanas. Estes ciclos
denominam-se, respectivamente,
a) iterações e sprint.
b) reunião de planejamento e backlog.
c) período de entrega e reunião de revisão.
d) backlog e planejamento da produção.
e) entrega e retrospectiva.
Comentários:
Gabarito: Letra A
65. (FCC / TRT-MT – 2011) NÃO se aplica à disciplina de desenvolvimento de software extreme
programming (XP):
c) Recomenda que dois programadores trabalhem juntos no mesmo computador para escrever
um código.
Comentários:
45
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
(a) Errado, não há nenhuma notação própria; (b) Correto, trata-se do Refactoring; (c) Correto, trata-
se da programação em pares; (d) Correto, há também respeito; (e) Correto, teste primeiro e
codifique depois.
Gabarito: Letra A
I. Propriedade coletiva.
II. Integração contínua.
III. Metáfora.
a) I, apenas.
b) II, apenas.
c) I e II, apenas.
d) II e III, apenas.
e) I, II e III.
Comentários:
Gabarito: Letra E
67. (FCC / TRT-23 – 2011) No desenvolvimento de software em Extreme Programming (XP) há uma
confiança muito grande na sinergia entre as práticas, já que os pontos fracos de cada uma são
superados pelos pontos fortes de outras. Dentre elas, aquela em que o código fonte não tem
dono e ninguém precisa solicitar permissão para poder modificá-lo, permitindo, assim, que a
equipe conheça todas as partes do sistema, é chamada de:
Comentários:
46
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
O código fonte não tem dono e ninguém precisa solicitar permissão para poder modificá-lo,
permitindo, assim, que a equipe conheça todas as partes do sistema, é chamada de
Posse/Propriedade Coletiva (Collective Ownership).
Gabarito: Letra D
68. (FCC / TRE-RN – 2011) Assegurar que a equipe se concentre em fazer, primeiro, apenas
aquilo que é claramente necessário e evite fazer o que poderia vir a ser necessário, mas ainda
não se provou essencial. Este é um dos cinco valores fundamentais do XP (Extreme
Programming), denominado:
a) coragem.
b) respeito.
c) comunicação.
d) simplicidade.
e) feedback.
Comentários:
Gabarito: Letra D
a) o código é integrado e testado depois de alguns dias e, no máximo, até o final da semana.
c) as equipes de desenvolvimento estabelecem suas próprias regras, mas uma equipe pode
adotar as regras de outra equipe.
d) releases quando complexos não podem deixar de fora os requisitos de negócio de maior valor
para o cliente.
e) módulos não são propriedade de nenhum desenvolvedor; todo desenvolvedor da equipe tem
o direito de checar um módulo e modificá-lo.
Comentários:
(a) Errado, recomenda-se a integração sempre que possível; (b) Errado, é feita por um par de
programadores; (c) Errado, as equipes são auto-organizáveis de acordo com as suas habilidades,
47
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
logo não faz sentido se organizar de acordo com outra equipe; (d) Errado, releases devem ser
simples e, não, complexas; (e) Correto, o código é compartilhado.
Gabarito: Letra E
70. (FCC / MPE-RN – 2010) Refactoring, programação em pares e Stand-up Meeting são
características das práticas do:
a) PRINCE2.
b) Rational Unified Process.
c) Extreme programming.
d) PMBOK.
e) SCRUM.
Comentários:
Gabarito: Letra C
71. (FCC / TJ-PI – 2009) XP (eXtreme Programming) é uma metodologia ágil para equipes pequenas
e médias que desenvolverão software com requisitos vagos e em constante mudança. Para isso,
adota a estratégia de constante acompanhamento e realização de vários pequenos ajustes
durante o desenvolvimento de software. Para aplicar os valores e princípios durante o
desenvolvimento de software, a XP propõe uma série de práticas, sendo uma delas: sempre que
produzir uma nova funcionalidade, nunca esperar uma semana para integrar à versão atual do
sistema a fim de evitar o aumento da possibilidade de conflitos e da possibilidade de erros no
código fonte. Tal prática é denominada:
a) Time Coeso.
b) Refatoração.
c) Integração Contínua.
d) Desenvolvimento Orientado a Testes.
e) Ritmo Sustentável.
Comentários:
Gabarito: Letra C
48
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
72. (FCC / TCE-AL – 2008) Originalmente, o único produto da atividade de Projeto que é realizado
como parte do processo XP (Extreme Programming):
Comentários:
Pressman afirma: “Como o projeto XP praticamente não usa nenhuma notação e produz poucos, ou
nenhum produto de trabalho que não sejam os cartões CRC e as soluções de ponta, o projeto é visto
como um artefato provisório que pode e deve ser continuamente modificado à medida que a construção
prossegue”. Dessa forma, trata-se dos Cartões CRC.
Gabarito: Letra B
c) deve ser evitada a comunicação pessoal entre clientes e desenvolvedores, sempre dando
preferência a outros meios de comunicação mais formais.
e) deve-se projetar todas as funções possíveis com a máxima previsão do que ocorrerá no futuro,
antes do desenvolvimento do software, a fim de evitar alterações desnecessárias.
Comentários:
(a) Errado, esse item não faz o menor sentido; (b) Correto, testa-se primeiro, codifica-se depois; (c)
Pelo contrário, deve-se estimular a comunicação pessoal entre clientes e desenvolvedores e evitar
outros meios mais formais; (d) Errado, testes são feitos a todo momento; (e) Errado. Pelo contrário,
XP lida bem com mudanças.
Gabarito: Letra B
49
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
( ) É uma prática proposta no método ágil, onde programadores (um experiente e um novato)
atuam no desenvolvimento de código-fonte.
( ) Requer uma mudança cultural. A prática consiste em uma pessoa programando enquanto a
outra atua como revisor.
( ) Este tipo de programação não exemplifica uma prática de construção colaborativa de
modelos e de elaboração de código-fonte.
a) F – V – F.
b) V – V – F.
c) F – F – V.
d) V – F – V.
e) V – F – F.
Comentários:
(V) Ela realmente foi proposta pelo XP e é comum a organização com um programador experiente
e um novato; (V) De fato, requer uma mudança cultural e um programador realmente age como um
revisor do outro; (F) Pelo contrário, trata-se justamente de uma prática de construção colaborativa
de modelos e de elaboração de código-fonte.
Gabarito: Letra B
50
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
c) Evolutivo.
d) Incremental.
e) Espiral.
Comentários:
A empresa demora a apresentar incrementos visíveis para o usuário e peca na falta de envolvimento
com os clientes. Ela deseja utilizar um novo modelo que traz o cliente para perto da equipe e realiza
iterações de desenvolvimento extremamente curtas (olha a dica!). Por fim, ela quase dá a resposta
para a questão afirmando que qualquer membro da equipe implementa parte do código, que pode
ser evoluído por qualquer outro membro.
PRÁTICAs DESCRIÇÃO
O conjunto mínimo útil de funcionalidade que agrega valor ao negócio é desenvolvido
Pequenos
primeiro. Releases do sistema são frequentes e adicionam funcionalidade incrementalmente
Releases ao primeiro release.
Os pares de desenvolvedores trabalham em todas as áreas do sistema, de tal maneira que
Propriedade
não se formem ilhas de conhecimento, com todos os desenvolvedores de posse de todo o
Coletiva código. Qualquer um pode mudar qualquer coisa.
Um representante do usuário final do sistema deve estar disponível em tempo integral para
Cliente
apoiar a equipe. No XP, o cliente é um membro da equipe de desenvolvimento e é
On-site responsável por trazer os requisitos do sistema.
Gabarito: Letra A
76. (FGV / Câmara Municipal do Recife-PE – 2014) Uma das práticas do método ágil XP (eXtreme
Programming) é:
a) documentação extensiva;
b) prototipação;
c) ciclos longos de desenvolvimento;
d) desenvolvimento orientado a testes (TDD);
e) utilização de todos os artefatos do RUP.
Comentários:
O TDD é uma prática XP em que se escreve o teste antes de escrever o código do componente.
Gabarito: Letra D
51
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
a) o planning game é uma reunião que ocorre a cada iteração com o objetivo de discutir o que
foi feito na última iteração.
b) o código fonte que será executado no ambiente de produção é desenvolvido em pares, sendo
que o par se alterna nos papéis de condutor e navegador.
c) é importante tentar prever o que o cliente deseja e executar antes mesmo de comunicá -lo,
mostrando proatividade na resolução de possíveis problemas.
d) o código fonte de cada página pertence a um membro da equipe. Qualquer alteração a ser
realizada precisa ser informada ao respectivo membro.
Comentários:
(a) Errado. Na verdade, o planning game é uma reunião de planejamento para discutir o que será
feito; (b) Correto. Desenvolvedores trabalham em pares, um verificando o trabalho do outro; (c)
Errado. No XP, o envolvimento do cliente ocorre em tempo integral; (d) Errado. XP valoriza o
trabalho em equipe e, por isso, o código fonte pertence a equipe.
Gabarito: Letra B
78. (IBFC / TRE-PA – 2020) Para aplicar valores e princípios do XP (Extreme Programming), durante
os processos e práticas ágeis de desenvolvimento de software, se propõe uma série específica
de práticas. Assinale a alternativa que apresenta algumas dessas "boas práticas" utilizadas
tradicionalmente em projetos, usando XP.
Comentários:
Gabarito: Letra B
52
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
79. (UFCG / UFCG – 2019) Marque a alternativa INCORRETA com relação a Extreme
Programming (XP).
Comentários:
(a) Correto. Todos são valores do XP; (b) Correto. primeiro se escreve o teste, depois faz-se a
implementação; (c) Correto. A refatoração é uma prática recomendada no XP; (d) Correto. No XP,
o desenvolvimento ocorre em pares; (e) Errado. Pelo contrário, organizações não precisam seguir
tudo à risca – podem adaptar o processo.
Gabarito: Letra E
80.(IDECAN / UNIVASF – 2019) Extreme Programming (XP), em sua essência, possui um conjunto
de regras que devem ser seguidas em projetos ágeis que queiram utilizá-la em sua completude.
Sobre as regras do XP, assinale a alternativa correta.
Comentários:
(a) Errado. No XP, são desenvolvidos testes para cada uma das tarefas; (b) Correto. No XP, uma das
características é a programação em pares; (c) Errado. A integração de código é feita em um sistema;
(d) Errado. Não há o papel de XP Master no XP; (e) Errado. No XP, o envolvimento do cliente é em
tempo integral.
Gabarito: Letra B
53
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
81. (CESGRANRIO / UNIRIO – 2019) Uma das principais práticas de XP (Extreme Programming) é
o Iteration Planning Game. Entre as atividades realizadas em uma sessão de Iteration Planning,
está a:
a) definição, pelos programadores, de quais story cards serão implementados em uma iteração.
b) estimação do esforço que será necessário para implementar cada story card.
c) estimação da data de entrega de um release baseado na estimativa de esforço de cada story
card.
d) estimação, feita por cada programador, do tempo que será necessário para realizar cada
tarefa sob sua responsabilidade.
e) designação, por parte do coach, dos programadores que irão realizar as tarefas contidas na
lista de tarefas.
Comentários:
(a) Errado. Na verdade, essa definição é feita pelos clientes; (b) Errado. Ocorre estimação do tempo
e, não, do esforço; (c) Errado, não existe a estimativa do esforço; (d) Correto. Cada programador
estima o tempo de suas tarefas; (e) Errado. Não existe a figura do coach no XP.
Gabarito: Letra D
82. (INSTITUTO AOCP / UFPB – 2019) Um dos principais métodos ágeis de desenvolvimento de
software foi concebido para impulsionar práticas reconhecidas como boas, por exemplo, o
desenvolvimento iterativo a nível extremo, em que novas versões de um determinado sistema
podem ser implementadas, integradas e, até mesmo, testadas em um único dia por
programadores diferentes. Essa é uma das características de qual método de desenvolvimento
ágil de software?
a) Scrum.
b) Adaptative Software Development.
c) Extreme Programming.
d) Pramatic Programming.
e) Test Driven Development.
Comentários:
Gabarito: Letra C
54
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
83. (FCM / Prefeitura de Caranaíba - MG – 2019) De acordo com Pressman e Maxim (2016), a
Programação Extrema (Extreme Programming – XP) é uma abordagem amplamente utilizada
do desenvolvimento ágil de software que consiste das atividades:
Comentários:
Gabarito: Letra A
a) métodos práticos.
b) histórias de usuário.
c) estruturas de apoio.
d) classes de projeto.
e) artefatos de usuário
Comentários:
55
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
De acordo com Sommerville, a primeira atividade do ciclo de uma release é “selecionar histórias de
usuário para esta release” – não é exatamente o nome da atividade, mas é o que mais se aproxima!
Gabarito: Letra B
85. (INSTITUTO AOCP / ADAF - AM – 2018) Na metodologia ágil Extreme Programming (XP), a
propriedade do código é coletiva, dessa forma, todos compartilham o mesmo orgulho e as
mesmas críticas. Considerando o exposto, assinale a alternativa que apresenta uma das regras
da codificação em XP.
a) No Overtime.
b) Eliminar gargalos de hardware no início.
c) O usuário não deve participar do planejamento das interfaces.
d) No Outsourcing.
e) No Sprint.
Comentários:
O XP tem como uma de suas práticas o ritmo sustentável, dessa forma, grandes quantidades de
horas extras não são consideradas aceitáveis. Overtime está relacionado a horas extras, dessa
forma, é uma prática que não deve ser adotada. As demais alternativas não têm relação com o XP.
Gabarito: Letra A
Comentários:
A banca deu a alternativa (d) como incorreta, mas eu acredito que caberia recurso. O XP valoriza o
trabalho em equipe e, por isso, o código fonte pertence à equipe – as demais alternativas são
também práticas adotadas no XP.
Gabarito: Letra D
56
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
87. (COMPERVE / UFRN – 2018) Programação Extrema (XP - Extreme Programming) é uma das
principais metodologias ágeis já propostas. A respeito de XP, considere as afirmativas abaixo.
a) III e IV.
b) I e II.
c) I e III.
d) II e IV.
Comentários:
(I) Errado. Testes automatizados são realizados a cada entrega; (II) Errado. No XP, os requisitos de
sistema são especificados por meio de histórias de usuários; (III) Correto. O XP adota a prática de
integração contínua e de testes automatizados; (IV) Correto. O XP utiliza a refatoração como uma
de suas práticas.
Gabarito: Letra A
88. (COMPERVE / UFRN – 2018) Programação Extrema (XP - Extreme Programming) é uma
das principais metodologias ágeis já propostas. Considere as seguintes afirmativas a respeito de
suas práticas.
a) II e IV.
b) I e IV.
57
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
c) I e III.
d) II e III.
Comentários:
(I) Errado. A refatoração é a modificação interna do código sem alterar seu comportamento
externo; (II) Correto. Refere-se à prática do lançamento de pequenos releases; (III) Correto. De fato,
uma das práticas adotadas pelo XP é a dos projetos simples; (IV) Errado. Logo que o trabalho em
uma tarefa é concluído, ele é integrado ao sistema, mas não há essa relação com builds diários.
Gabarito: Letra D
( ) Testes são realizados continuamente. Quando todos os testes forem aprovados, o módulo foi
concluído.
( ) Programação em par: enquanto um escreve o código, o outro monitora falhas, realiza testes,
faz sugestões e planeja próximas ações.
a) F – V – V – F
b) V – F – F – V
c) V – V – F – V
d) V – V – V – V
e) F – F – V – V
Comentários:
No XP, temos o envolvimento em tempo integral do cliente, por isso o item I é verdadeiro. O
segundo item também é verdadeiro e está de acordo com a prática da Integração Contínua. O
terceiro item também é verdadeiro, de fato, no XP é adotada a prática da programação em pares.
Por fim, o último item também é verdadeiro e remete à prática de pequenos releases.
Gabarito: Letra D
58
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
(a) Errado, o XP utiliza a refatoração; (b) Errado, utiliza durante todo o desenvolvimento; (c) Errado,
valoriza a propriedade coletiva e a programação em pares; (d) Correto, de fato, busca atender as
necessidades atuais; (e) Errado, o envolvimento do cliente ocorre em tempo integral.
Gabarito: Letra D
91. (FAURGS / TJ-RS – 2018) Considere as seguintes afirmações sobre princípios ou práticas da XP
(Extreme Programming).
I - Um representante do usuário final do sistema (cliente) deve estar disponível todo o tempo à
equipe de XP. Em um processo de Extreme Programming, o cliente é um membro da equipe de
desenvolvimento e é responsável por levar ao grupo os requisitos de sistema para
implementação.
a) Apenas I.
b) Apenas I e II.
c) Apenas I e III.
d) Apenas II e III.
e) I, II e III.
Comentários:
59
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
(I) Perfeito! Trata-se do Client On-Site, ou seja, o cliente no local de trabalho, junto dos
desenvolvedores.
(II) Isso mesmo! A Refatoração também é uma prática recomendada pelo XP – sempre que o
desenvolvedor encontrar uma oportunidade de refatorar o código, recomenda-se fazê-lo.
(III) Corretíssimo! As equipes devem ser multidisciplinares – todo mundo modela, desenvolve, testa,
implanta, etc. Sem ilhas de expertise porque isso pode causar dependência de um determinado
membro da equipe.
Gabarito: Letra E
92. (FUNRIO / Câmara de São João de Meriti - RJ – 2018) A figura abaixo ilustra a metodologia
Extreme Programming (XP) que usa uma abordagem orientada a objetos, incluindo um
conjunto de regras e práticas que ocorrem ao longo do desenvolvimento do projeto.
Comentários:
60
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Gabarito: Letra D
Comentários:
VALORES
DESCRIÇÃO
FUNDAMENTAIS
Para se desenvolver um sistema de software, exige-se comunicar os requisitos de sistema para os
desenvolvedores. Em metodologias formais de desenvolvimento de software, esta tarefa é
COMUNICAÇÃO realizada por meio de documentação. O Extreme Programming favorece projetos simples,
metáforas comuns, a colaboração dos usuários, programadores e outros stakeholders, a
comunicação verbal frequente e o feedback.
XP incentiva que se comece com a solução mais simples. Funcionalidades adicionais podem ser
acrescentadas posteriormente. Alega-se que desenvolver funções que não são necessárias hoje
SIMPLICIDADE pode ser prejudicial, na medida em que futuramente essa função pode não ser mais útil.
Codificação e projeto de necessidades futuras incertas implicam o risco de gastar recursos em algo
não mais necessários, embora talvez atrasando aspectos cruciais.
61
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Na verdade, o ideal seria chamar de valores fundamentais e, não, princípios do XP. De toda forma,
trata-se do princípio da comunicação, princípio da simplicidade, princípio do feedback e princípio
da coragem.
Gabarito: Letra C
a) Lean.
b) XP.
c) Scrum.
d) FDD.
e) Cascata.
Comentários:
Gabarito: Letra B
95. (INSTITUTO AOCP / UFOB – 2018) Uma das práticas do Extreme Programming é o uso do
código coletivo, na qual todos os desenvolvedores têm acesso ao código.
Comentários:
62
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
De fato, essa é uma das práticas do XP! Os pares de desenvolvedores trabalham em todas as áreas
do sistema, de tal maneira que não se formem ilhas de conhecimento, com todos os
desenvolvedores de posse de todo o código. Qualquer um pode mudar qualquer coisa.
Gabarito: Correto
96. (IBADE / IPM - JP – 2018) Metodologias ágeis podem ser aplicadas para facilitar a adaptação
do processo de desenvolvimento de software a mudanças. Trata-se de uma abordagem de
desenvolvimento de software ágil amplamente conhecida e utilizada, denominada:
a) desenvolvimento direto.
b) modelagem extrema.
c) programação dinâmica.
d) modelagem direta.
==f219==
e) programação extrema.
Comentários:
Gabarito: Letra E
Comentários:
Todas as alternativas apresentam práticas do XP, exceto sprint review – que é uma cerimônia do
Scrum e, não, do XP.
Gabarito: Letra C
98. (IBFC / TJ-PE – 2017) Está sendo implementado o XP (eXtreme Programming) em uma
equipe de TI. Para tanto, está sendo colocada a seguinte série de práticas específicas da
metodologia XP em análise:
63
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Com base no seu conhecimento sobre a metodologia citada acima, suas práticas específicas
estão corretamente relacionadas nos itens:
a) I, II e III, apenas
b) I, II e IV, apenas
c) II, III e IV, apenas
d) I, III e IV, apenas
e) I, II, III e IV
Comentários:
Gabarito: Letra E
99. (UFG / SANEAGO – 2017) Dentro do framework Extreme Programming (XP), uma
metodologia ágil, a ação de teste de código é responsabilidade da pessoa:
Comentários:
(a) Errado. Regra clássica: quem desenvolve, não teste e quem testa, não desenvolve! Logo, a ação
de teste não é de responsabilidade ad pessoa diretamente ligada à criação do artefato; (b) Errado,
lembrem-se que no XP a equipe é multidisciplinar, logo não existe uma equipe dedicada de testes;
(c) Errado, não é o cliente que testa – ele apenas homologa posteriormente; (d) Errado, o teste é
realizado pelos desenvolvedores de outras funcionalidades.
Questão anulada sob a justificativa de que o tema não constava do Edital, porém a razão verdadeira
– na minha opinião – é que de que não há resposta correta.
Gabarito: Anulada
64
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
100. (IBFC / EBSERH – 2017) Dentro das práticas do XP (eXtreme Programming) existe uma
fundamental que é o Jogo de Planejamento (Planning Game). Para serem realizadas
adequadamente essas reuniões com os usuários, deve(m) ter sido feito(s) antecipadamente:
a) o Sustainable Pace
b) as Small Releases
c) os Customer Tests
d) as User Stories
e) um Simple Design
Comentários:
Antes de fazer reuniões com os usuários para o jogo do planejamento, deve-se fazer
antecipadamente as user stories (histórias de usuário). Caso contrário, não é possível priorizar!
Gabarito: Letra D
101. (COPEVE-UFAL / UFAL – 2016) Assinale a alternativa que contém apenas características ou
práticas relacionadas ao método ágil para desenvolvimento de softwares Extreme
Programming (XP):
Comentários:
(a) Correto. O XP utiliza uma abordagem incremental, o envolvimento do cliente ocorre em tempo
integral e também é adotada a prática da programação em pares; (b) Errado. A programação não é
individual; (c) Errado. O envolvimento do cliente ocorre em tempo integral; (d) Errado. Os requisitos
são expressos como histórias, mas as outras duas práticas não fazem sentido; (e) Errado. A
programação não é individual e não há relação com desenvolvimento em cascata.
Gabarito: Letra A
102. (IF-PE / IF-PE – 2016) Extreme Programming é uma metodologia ágil para equipes pequenas
e médias que desenvolvem software com requisitos vagos e em constante mudança. Sobre os
valores do XP, analise as definições abaixo e assinale a alternativa CORRETA.
65
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
(a) Correto. De fato, XP incentiva soluções mais simples, se preocupando primeiramente nas partes
essenciais; (b) Errado. O XP valoriza a comunicação verbal frequente; (c) Errado. Na verdade, a
coragem refere-se aos desenvolvedores se sentirem confortáveis ao realizarem mudanças no
código; (d) Errado. O cliente pode trazer um feedback, mas normalmente o feedback ocorre por
meio dos testes unitários ou de integração; (e) Errado. O respeito deve ser um valor amplo, e não
deve se limitar ao que é determinado pelo líder do projeto.
Gabarito: Letra A
103. (UFCG / UFCG – 2016) Sobre XP (Extreme Programming), marque a assertiva INCORRETA.
Comentários:
(a) Correto, foi criado por Kent Beck em 1996; (b) Errado, apesar do XP ser orientado a testes e
adotar a prática da programação em pares, ele não tem como prática a documentação em todas as
fases; (c) Correto, o XP utiliza o desenvolvimento incremental; (d) Correto, o XP incentiva soluções
mais simples; (e) Correto, o refatoramento é uma prática adotada.
Gabarito: Letra B
104. (IF-SE / IF-SE – 2016) A Programação Extrema (Extreme Programming - XP) possui diversas
práticas. Analise as afirmativas abaixo.
66
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
(I) Correto. O XP adota a prática dos pequenos releases, que são frequentes e incrementais; (II)
Errado. Na verdade, são representados pelas histórias de usuários; (III) Errado. Eles trabalham em
pares; (IV) Correto. É o que diz a prática da integração contínua.
Gabarito: Letra C
105. (IF-PE / IF-PE – 2016) Com relação à metodologia ágil de desenvolvimento de software
conhecido como eXtreme Programming (XP), quais são os quatro processos ou atividades
metodológicas encontradas nela?
Comentários:
67
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Gabarito: Letra C
106. (IBFC / EBSERH – 2016) Equipes XP (eXtreme Programming) planejam utilizando histórias
escritas em pequenos cartões. Essas histórias devem ter como objetivo:
a) a modelagem de dados
b) as métricas de software
c) os requisitos não-funcionais
d) os requisitos funcionais
e) tanto os requisitos funcionais como os requisitos não-funcionais
Comentários:
Gabarito: Letra D
107. (IBFC / EBSERH – 2016) Para aplicar os valores e princípios durante o desenvolvimento de
software, a Programação Extrema (eXtreme Programming - XP) propõe uma série de práticas.
Selecione a única alternativa que NÃO seja uma dessas práticas:
68
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
Gabarito: Letra B
108. (IDECAN / INMETRO – 2015) Na extreme programming, todos os requisitos são expressos
como cenários (chamados histórias do usuário) que são implementados diretamente como uma
série de tarefas. Sabe-se que o extreme programming envolve um número de práticas que se
enquadram nos princípios dos métodos ágeis. Acerca de algumas dessas práticas, relacione
adequadamente as colunas a seguir.
1. Releases pequenos.
2. Refactoring.
3. Propriedade coletiva.
4. Integração contínua.
5. Ritmo sustentável.
( ) Os pares de desenvolvedores trabalham em todas as áreas do sistema, de tal maneira que não
se formem ilhas de conhecimento.
( ) O conjunto mínimo útil de funcionalidade que agrega valor ao negócio é desenvolvido
primeiro.
( ) Grandes quantidades de horas-extras não são consideradas aceitáveis, pois, no médio prazo,
há uma redução na quantidade de código e na produtividade.
( ) Espera-se que todos desenvolvedores recriem o código continuamente tão logo os
aprimoramentos do código forem encontrados.
( ) Tão logo o trabalho em uma tarefa seja concluído, este é integrado ao sistema como um todo
a) 5, 3, 1, 4, 2.
B) 2, 4, 3, 5, 1.
c) 4, 5, 2, 1, 3.
d) 3, 1, 5, 2, 4.
e) 5, 2, 4, 3, 1.
Comentários:
69
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Gabarito: Letra D
109. (UFPel-CES / UFPEL – 2015) Em projetos nos quais se aplicam o método ágil XP, a fase em
que o propósito é empresa e cliente concordarem em uma data na qual o menor e melhor
conjunto de histórias de usuários deverá ser implementado é a fase de:
a) planejamento.
b) exploração.
c) iterações e entregas.
d) produção.
e) manutenção.
Comentários:
De acordo com a figura, vemos que a fase que está relacionada diretamente com os valores das
histórias de usuários é a fase de planejamento. É na fase de planejamento que os desenvolvedores
definem com os clientes as user stories, que nada mais são do que requisitos. Além disso, para cada
requisito é definido uma complexidade e prazo de entrega.
Gabarito: Letra A
110. (CS-UFG / AL-GO – 2015) Extreme Programming (XP) é um exemplo de método ágil que foi
definido por Kent Beck. O XP inclui uma abordagem de teste que:
70
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
(a) Errado. O XP trabalha com desenvolvimento test-first; (b) Errado. O teste é baseado em
cenários; (c) Correto. O XP tem como características testes incrementais a partir de cenários – é
importante lembrar que os cenários são também chamados de histórias de usuários (user stories);
(d) Errado. Os testes são dirigidos a cenários.
Gabarito: Letra C
111. (CETRO / AMAZUL – 2015) Assinale a alternativa que não apresenta um princípio/ valor da
metodologia de desenvolvimento de software XP (Extreme Programming):
a) Simplicidade.
b) Programação individual ou não em pares.
c) Comunicação.
d) Coragem.
e) Feedback.
Comentários:
Todas as alternativas apresentam valores do XP, exceto a programação individual. Primeiro, porque
isso é uma prática; segundo, porque é a programação em pares e, não, individual.
Gabarito: Letra B
112. (IESES / TRE-MA – 2015) No desenvolvimento de software em XP, são empregadas algumas
práticas. Avalie as assertivas abaixo:
I. Programação em pares.
II. Time coeso.
III. Integração contínua.
IV. Desenvolvimento orientado a testes.
a) 2
b) 1
c) 4
d) 3
71
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
Gabarito: Letra C
113. (FUNCAB / SEFAZ-BA – 2014) São características do Extreme Programming (XP), EXCETO:
Comentários:
(a) Correto. O desenvolvimento é incremental; (b) Errado. Na verdade, o projeto deve ser simples,
e não detalhado; (c) Correto. O XP utiliza a programação em pares; (d) Correto. o envolvimento do
cliente ocorre em tempo integral; (e) Correto. Há testes automatizados e contínuos no XP.
Gabarito: Letra B
114. (INSTITUTO AOCP / MPE-BA – 2014) O processo ágil XP possui doze práticas que são os
princípios fundamentais do processo. A prática que encoraja a equipe inteira a trabalhar mais
unida em busca de qualidade no código fazendo melhorias e refatoramentos em qualquer parte
do código a qualquer tempo é conhecida como:
Comentários:
Uma das principais práticas do XP é a propriedade coletiva do código, ela diz que os pares de
desenvolvedores podem trabalhar em todas as áreas do sistema, de forma que não se formem ilhas
de conhecimento.
Gabarito: Letra A
115. (FUNCAB / MDA – 2014) A “Extreme Programming - XP” representa um dos mais
conhecidos métodos ágeis. Uma das práticas utilizadas na XP é:
72
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Comentários:
(a) Errado, os desenvolvedores trabalham em pares; (b) Errado, uma das práticas é a de pequenos
releases durante o desenvolvimento; (c) Correto, no XP os requisitos são expressos como cenários;
(d) Errado, o cliente tem envolvimento em tempo integral; (e) Errado, os testes são frequentes.
Gabarito: Letra C
116. (CESGRANRIO / Banco da Amazônia – 2014) Uma prática que NÃO é adotada por Extreme
Programming (XP) é
a) usar duas pessoas trabalhando juntas em um único computador para produzir todo o código
que será enviado para a produção.
e) variar a duração de cada iteração durante todo o projeto para acomodar eventuais mudanças
de prioridade dos requisitos, definidas pelo cliente.
Comentários:
Lembrem-se: tempo fixo e escopo variável e, não, o contrário! A última opção afirma que o tempo
muda de acordo com o escopo/mudanças e isso não é verdade.
Gabarito: Letra E
117. (CESGRANRIO / BNDES – 2013) Sendo atualmente conhecida por just-in-time, a produção
enxuta contém princípios que compõem a base dos processos ágeis de desenvolvimento de
software, como o Extremme Programming (XP). Um dos princípios básicos do XP, a eliminação
de desperdícios, busca:
73
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
a) evitar o efeito negativo que uma definição de risco, na fase inicial do projeto, possa causar na
performance do software como um todo, tendo, como saída, informações não relevantes para
o processo.
Comentários:
A frase chave é “…concentrando os esforços apenas no que pode produzir um resultado objetivo e
palpável ao cliente final”. Tudo que não for entregar valor ao cliente é desperdício.
Gabarito: Letra C
118. (INSTITUTO AOCP / EBSERH – 207) O Extreme Programming (XP) surgiu em 1999, a partir
de uma publicação sobre o assunto, mas suas bases se conectam a princípios da década de 80 e
ao manifesto ágil. O XP é baseado em 4 atividades de arcabouços. Assinale a alternativa que
contém 3 desses arcabouços:
Comentários:
74
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
A resposta é: Governança, Planejamento, Codificação e Testes. Professor, você está cego? Onde tem
governança na imagem? A questão não deveria ser anulada? Não! A questão afirma que o XP é
baseado em quatro atividades de arcabouços e pede para assinalar a alternativa que contém três
desses arcabouços. Governança não faz parte, mas projeto, codificação e testes fazem!
Gabarito: Letra E
75
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
( ) É uma prática proposta no método ágil, onde programadores (um experiente e um novato)
atuam no desenvolvimento de código-fonte.
( ) Requer uma mudança cultural. A prática consiste em uma pessoa programando enquanto a
outra atua como revisor.
( ) Este tipo de programação não exemplifica uma prática de construção colaborativa de
modelos e de elaboração de código-fonte.
a) F – V – F.
b) V – V – F.
c) F – F – V.
d) V – F – V.
e) V – F – F.
a) o planning game é uma reunião que ocorre a cada iteração com o objetivo de discutir o que
foi feito na última iteração.
b) o código fonte que será executado no ambiente de produção é desenvolvido em pares, sendo
que o par se alterna nos papéis de condutor e navegador.
c) é importante tentar prever o que o cliente deseja e executar antes mesmo de comunicá -lo,
mostrando proatividade na resolução de possíveis problemas.
d) o código fonte de cada página pertence a um membro da equipe. Qualquer alteração a ser
realizada precisa ser informada ao respectivo membro.
3. (CESPE / Ministério da Economia – 2020) Grandes quantidades de horas extras são aceitáveis
em médio e longo prazo, para agilizar a entrega de requisitos.
76
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
6. (CESPE / Ministério da Economia – 2020) O refactoring de código não faz parte do modelo XP,
visto que a expectativa é a entrega ágil, e não deve ser considerada em tempo de projeto a
recriação de código para aprimoramento.
8. (IBFC / TRE-PA – 2020) Para aplicar valores e princípios do XP (Extreme Programming), durante
os processos e práticas ágeis de desenvolvimento de software, se propõe uma série específica
de práticas. Assinale a alternativa que apresenta algumas dessas "boas práticas" utilizadas
tradicionalmente em projetos, usando XP.
10. (IDECAN / UNIVASF – 2019) Extreme Programming (XP), em sua essência, possui um conjunto
de regras que devem ser seguidas em projetos ágeis que queiram utilizá-la em sua completude.
Sobre as regras do XP, assinale a alternativa correta.
11. (CESGRANRIO / UNIRIO – 2019) Uma das principais práticas de XP (Extreme Programming) é
o Iteration Planning Game. Entre as atividades realizadas em uma sessão de Iteration Planning,
está a:
77
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
a) definição, pelos programadores, de quais story cards serão implementados em uma iteração.
b) estimação do esforço que será necessário para implementar cada story card.
c) estimação da data de entrega de um release baseado na estimativa de esforço de cada story
card.
d) estimação, feita por cada programador, do tempo que será necessário para realizar cada
tarefa sob sua responsabilidade.
e) designação, por parte do coach, dos programadores que irão realizar as tarefas contidas na
lista de tarefas.
12. (CESPE / TCE-RO – 2019) No que diz respeito a processos e práticas ágeis, o desenvolvimento
incremental
13. (FCC / SANASA Campinas – 2019) Em um projeto de software baseado na metodologia ágil
XP, um Analista de TI deve
a) consultar o cliente quando uma história exigir, por estimativa, menos do que 3 semanas de
desenvolvimento, para que o cliente a complemente com mais tarefas.
b) ouvir o cliente, durante o levantamento de requisitos, para que este crie as histórias de
usuários. Após essa importante etapa nenhuma história nova deve ser criada para não
comprometer o cronograma do projeto.
78
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
c) evitar que o projeto caia na armadilha de seguir o princípio KISS de forma a estimular que o
projeto de uma funcionalidade extra, que poderá ser necessária no futuro, faça parte do modelo
do software.
d) realizar os testes de unidade de forma manual, evitando que sejam usadas baterias de testes
automatizados, pois estes impedem a realização de testes de regressão.
e) estimular o uso de cartões CRC como um mecanismo eficaz para pensar o software em um
contexto orientado a objetos.
14. (INSTITUTO AOCP / UFPB – 2019) Um dos principais métodos ágeis de desenvolvimento de
software foi concebido para impulsionar práticas reconhecidas como boas, por exemplo, o
desenvolvimento iterativo a nível extremo, em que novas versões de um determinado sistema
podem ser implementadas, integradas e, até mesmo, testadas em um único dia por
programadores diferentes. Essa é uma das características de qual método de desenvolvimento
ágil de software?
a) Scrum.
b) Adaptative Software Development.
c) Extreme Programming.
d) Pramatic Programming.
e) Test Driven Development.
15. (FCM / Prefeitura de Caranaíba - MG – 2019) De acordo com Pressman e Maxim (2016), a
Programação Extrema (Extreme Programming – XP) é uma abordagem amplamente utilizada
do desenvolvimento ágil de software que consiste das atividades:
a) métodos práticos.
b) histórias de usuário.
c) estruturas de apoio.
d) classes de projeto.
e) artefatos de usuário
79
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
17. (CESPE / TJ-AM – 2019) No XP (Extreme Programming), o valor de uma história de usuário é
atribuído pelos membros da equipe e é medido em termos de semanas estimadas para o
desenvolvimento.
18. (INSTITUTO AOCP / ADAF - AM – 2018) Na metodologia ágil Extreme Programming (XP), a
propriedade do código é coletiva, dessa forma, todos compartilham o mesmo orgulho e as
mesmas críticas. Considerando o exposto, assinale a alternativa que apresenta uma das regras
da codificação em XP.
a) No Overtime.
b) Eliminar gargalos de hardware no início.
c) O usuário não deve participar do planejamento das interfaces.
d) No Outsourcing.
e) No Sprint.
20. (COMPERVE / UFRN – 2018) Programação Extrema (XP - Extreme Programming) é uma das
principais metodologias ágeis já propostas. A respeito de XP, considere as afirmativas abaixo.
a) III e IV.
b) I e II.
c) I e III.
d) II e IV.
80
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
21. (COMPERVE / UFRN – 2018) Programação Extrema (XP - Extreme Programming) é uma das
principais metodologias ágeis já propostas. Considere as seguintes afirmativas a respeito de
suas práticas.
a) II e IV.
b) I e IV.
c) I e III.
d) II e III.
22. (IF-RS / IF-RS – 2018) Sobre as práticas encontradas na metodologia ágil de desenvolvimento
de software, conhecida por Programação Extrema (XP Programming), de acordo com Dooley
(2017) no livro Software Development, Design and Coding, classifique cada uma das afirmativas
abaixo como verdadeira (V) ou falsa (F) e assinale a alternativa que apresenta a sequência
CORRETA, de cima para baixo:
( ) Testes são realizados continuamente. Quando todos os testes forem aprovados, o módulo foi
concluído.
( ) Programação em par: enquanto um escreve o código, o outro monitora falhas, realiza testes,
faz sugestões e planeja próximas ações.
a) F – V – V – F
b) V – F – F – V
c) V – V – F – V
d) V – V – V – V
e) F – F – V – V
81
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
24. (CESPE / ABIN – 2018) Na extreme programming, como não há especificação de sistema que
possa ser usada por equipe de teste externa, a característica de test-first exige que os
implementadores de tarefa compreendam detalhadamente a especificação de comportamento
da funcionalidade em desenvolvimento, a fim de que possam escrever o teste para o sistema.
25. (FCC / DPE-AM – 2018) 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.
26. (FAURGS / TJ-RS – 2018) Considere as seguintes afirmações sobre princípios ou práticas da XP
(Extreme Programming).
82
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
I - Um representante do usuário final do sistema (cliente) deve estar disponível todo o tempo à
equipe de XP. Em um processo de Extreme Programming, o cliente é um membro da equipe de
desenvolvimento e é responsável por levar ao grupo os requisitos de sistema para
implementação.
a) Apenas I.
b) Apenas I e II.
c) Apenas I e III.
d) Apenas II e III.
e) I, II e III.
27. (FUNRIO / Câmara de São João de Meriti - RJ – 2018) A figura abaixo ilustra a metodologia
Extreme Programming (XP) que usa uma abordagem orientada a objetos, incluindo um
conjunto de regras e práticas que ocorrem ao longo do desenvolvimento do projeto.
83
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
29. (INSTITUTO AOCP / PRODEB – 2018) O Pair Programming (Programação em Pares) é uma
característica de um determinado método de desenvolvimento de software em que dois
programadores trabalham juntos no desenvolvimento de um código. Qual foi o método que
criou essa prática?
a) Lean.
b) XP.
c) Scrum.
d) FDD.
e) Cascata.
30. (INSTITUTO AOCP / UFOB – 2018) Uma das práticas do Extreme Programming é o uso do
código coletivo, na qual todos os desenvolvedores têm acesso ao código.
31. (IBADE / IPM - JP – 2018) Metodologias ágeis podem ser aplicadas para facilitar a adaptação
do processo de desenvolvimento de software a mudanças. Trata-se de uma abordagem de
desenvolvimento de software ágil amplamente conhecida e utilizada, denominada:
a) desenvolvimento direto.
b) modelagem extrema.
c) programação dinâmica.
d) modelagem direta.
e) programação extrema.
84
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
33. (CESPE / BNB – 2018) Em XP, a técnica de planning game é utilizada pelo cliente para
identificar as prioridades do que deve ser construído em um software, sem a participação dos
desenvolvedores.
34. (CESPE / ABIN – 2018) O ritmo ágil de desenvolvimento de softwares é uma prática usada para
favorecer a entrega das releases quando grandes volumes de horas extras são tolerados.
35. (CESPE / ABIN – 2018) Para apoiar a equipe de desenvolvimento, é uma prática o uso do
cliente on-site em tempo integral.
37. (FCC / TST – 2017) Uma dupla de programadores, utilizando o modelo Extreme Programming −
XP, realiza, na fase de:
a) desenvolvimento, a implementação das user stories que fazem parte da iteração corrente.
b) desenvolvimento, a entrega das user stories totais do sistema.
c) validação do sistema, a análise dos requisitos técnicos entregáveis.
d) validação do sistema, a integração total dos incrementos das user stories.
e) projeto da arquitetura do sistema, a implementação das user stories totais do sistema.
38. (CESPE / TRT - 7ª Região (CE) – 2017) Acerca de metodologia XP, assinale a opção correta.
39. (IBFC / TJ-PE – 2017) Está sendo implementado o XP (eXtreme Programming) em uma equipe
de TI. Para tanto, está sendo colocada a seguinte série de práticas específicas da metodologia
XP em análise:
85
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
Com base no seu conhecimento sobre a metodologia citada acima, suas práticas específicas
estão corretamente relacionadas nos itens:
a) I, II e III, apenas
b) I, II e IV, apenas
c) II, III e IV, apenas
d) I, III e IV, apenas
e) I, II, III e IV
40. (FCC / DPE-RS – 2017) Considere que um Analista esteja participando de um projeto que utiliza
as melhores práticas da Extreme Programming − XP. No início de uma iteração a equipe de
desenvolvimento, da qual o Analista fazia parte, convidou o cliente a escrever as funcionalidades
que desejava no sistema em pequenos cartões chamados user stories. Depois disso, a equipe de
desenvolvimento estimou o tempo e o custo de cada funcionalidade para o cliente. O cliente foi
informado do tempo e custo, e foi solicitado a decidir a prioridade em que cada user
story deveria ser desenvolvida. Esta prática XP é conhecida como:
a) Releases e é utilizada para que o cliente possa utilizar o sistema, possibilitando à equipe de
desenvolvimento saber se há defeitos ou não no código.
b) Releases e visa reorganizar o código fonte para melhorar sua qualidade interna, facilitar seu
entendimento pelo cliente e diminuir o tempo gasto com manutenção.
c) Metáforas e permite que o cliente transmita ideias complexas de forma simples e clara,
usando um vocabulário comum.
d) Planning Game e permite que o Analista e outro desenvolvedor escolham uma user story e
codifiquem juntos aquela funcionalidade.
e) Planning Game e busca assegurar que a equipe esteja sempre trabalhando no que é mais
importante e gere mais valor para o cliente.
41. (CESPE / TRE-BA – 2017) Considerando uma situação hipotética com o uso da XP (eXtreme
Programming) concomitante com Scrum em um projeto de desenvolvimento de software em
uma organização, julgue os seguintes itens.
I. É viável a utilização do TDD (Test Driven Development) na fase de sprint, de modo que se
escreva o teste automático antes da codificação.
86
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
III. Integrantes da equipe scrum podem realizar a programação do código em pares, o que
proporciona, entre outras vantagens, o nivelamento de conhecimento da equipe.
IV. O conceito de requisito “pronto” continuaria válido, contudo, inviabilizaria o refactoring, pois
é proibitivo inserir o mesmo item (requisito) em várias sprints.
a) I e II.
b) I e III.
c) II e IV.
d) I, III e IV.
e) II, III e IV
42. (UFG / SANEAGO – 2017) Dentro do framework Extreme Programming (XP), uma metodologia
ágil, a ação de teste de código é responsabilidade da pessoa:
44. (IBFC / EBSERH – 2017) Dentro das práticas do XP (eXtreme Programming) existe uma
fundamental que é o Jogo de Planejamento (Planning Game). Para serem realizadas
adequadamente essas reuniões com os usuários, deve(m) ter sido feito(s) antecipadamente:
a) o Sustainable Pace
b) as Small Releases
c) os Customer Tests
d) as User Stories
e) um Simple Design
45. (FCC / CREMESP – 2016) Considere que nos projetos do CREMESP baseados em XP pratica-se
a propriedade coletiva de código, de forma que todos os desenvolvedores podem fazer
87
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
a) padrões de codificação.
b) time-box de 40 horas.
c) testes apenas depois da codificação.
d) releases grandes.
e) integração das funcionalidades, mesmo com erros.
47. (IF-PE / IF-PE – 2016) Extreme Programming é uma metodologia ágil para equipes pequenas e
médias que desenvolvem software com requisitos vagos e em constante mudança. Sobre os
valores do XP, analise as definições abaixo e assinale a alternativa CORRETA.
88
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
50. (CESPE / TCE-PA – 2016) Em XP (Extreme Programming), as user stories não objetivam definir
o escopo global do sistema, mas avaliar a complexidade de cada uma de suas partes a fim serem
estimados prazos na perspectiva dos usuários ou clientes do sistema.
51. (UFCG / UFCG – 2016) Sobre XP (Extreme Programming), marque a assertiva INCORRETA.
52. (IF-SE / IF-SE – 2016) A Programação Extrema (Extreme Programming - XP) possui diversas
práticas. Analise as afirmativas abaixo.
89
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
da equipe implementa parte do código, que pode ser evoluído por qualquer outro membro.
O novo modelo adotado pela “Inovation” é denominado:
54. (IF-PE / IF-PE – 2016) Com relação à metodologia ágil de desenvolvimento de software
conhecido como eXtreme Programming (XP), quais são os quatro processos ou atividades
metodológicas encontradas nela?
55. (IBFC / EBSERH – 2016) Equipes XP (eXtreme Programming) planejam utilizando histórias
escritas em pequenos cartões. Essas histórias devem ter como objetivo:
a) a modelagem de dados
b) as métricas de software
c) os requisitos não-funcionais
d) os requisitos funcionais
e) tanto os requisitos funcionais como os requisitos não-funcionais
56. (IBFC / EBSERH – 2016) Para aplicar os valores e princípios durante o desenvolvimento de
software, a Programação Extrema (eXtreme Programming - XP) propõe uma série de práticas.
Selecione a única alternativa que NÃO seja uma dessas práticas:
58. (CESPE / FUNPRESP-JUD – 2016) As práticas da extreme programming, que tem por princípio
liberar grandes releases de software, visam agregar valor ao negócio.
90
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
60. (IDECAN / INMETRO – 2015) Na extreme programming, todos os requisitos são expressos
como cenários (chamados histórias do usuário) que são implementados diretamente como uma
série de tarefas. Sabe-se que o extreme programming envolve um número de práticas que se
enquadram nos princípios dos métodos ágeis. Acerca de algumas dessas práticas, relacione
adequadamente as colunas a seguir.
1. Releases pequenos.
2. Refactoring.
3. Propriedade coletiva.
4. Integração contínua.
5. Ritmo sustentável.
( ) Os pares de desenvolvedores trabalham em todas as áreas do sistema, de tal maneira que não
se formem ilhas de conhecimento.
( ) O conjunto mínimo útil de funcionalidade que agrega valor ao negócio é desenvolvido
primeiro.
( ) Grandes quantidades de horas-extras não são consideradas aceitáveis, pois, no médio prazo,
há uma redução na quantidade de código e na produtividade.
( ) Espera-se que todos desenvolvedores recriem o código continuamente tão logo os
aprimoramentos do código forem encontrados.
( ) Tão logo o trabalho em uma tarefa seja concluído, este é integrado ao sistema como um todo
a) 5, 3, 1, 4, 2.
B) 2, 4, 3, 5, 1.
c) 4, 5, 2, 1, 3.
d) 3, 1, 5, 2, 4.
e) 5, 2, 4, 3, 1.
61. (CESPE / TRE-RS – 2015) Tendo em vista que, em um processo ágil de desenvolvimento
de software, foi adotado o XP (eXtreme Programming) e que os requisitos levantados foram
expressos na forma de histórias de usuário, assinale a opção que apresenta, corretamente,
recomendações técnicas para a elaboração de um cartão de histórias de usuário.
a) Como um professor, quero calcular as médias semestrais dos alunos de modo que eu possa
identificar quais serão aprovados.
b) O professor deseja o cálculo de notas semestrais com precisão de até duas casas decimais.
c) O sistema deve calcular as médias semestrais dos alunos com base nas notas atribuídas a eles
pelos professores.
d) Como analista de requisitos, eu preciso oferecer o cálculo das notas semestrais aos
professores em menos de um minuto.
91
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
62. (FCC / TRE-PB – 2015) Extreme Programming − XP pode ser considerado um modelo de
desenvolvimento de software baseado em uma série de valores, princípios e regras, dentre eles,
63. (UFPel-CES / UFPEL – 2015) Em projetos nos quais se aplicam o método ágil XP, a fase em que
o propósito é empresa e cliente concordarem em uma data na qual o menor e melhor conjunto
de histórias de usuários deverá ser implementado é a fase de:
a) planejamento.
b) exploração.
c) iterações e entregas.
d) produção.
e) manutenção.
64. (CS-UFG / AL-GO – 2015) Extreme Programming (XP) é um exemplo de método ágil que foi
definido por Kent Beck. O XP inclui uma abordagem de teste que:
67. (CETRO / AMAZUL – 2015) Assinale a alternativa que não apresenta um princípio/ valor da
metodologia de desenvolvimento de software XP (Extreme Programming):
a) Simplicidade.
b) Programação individual ou não em pares.
c) Comunicação.
d) Coragem.
92
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
e) Feedback.
68. (CESPE / TRE-RS – 2015) Em um desenvolvimento ágil de sistemas utilizando o XP, foram
adotadas as seguintes ações: foi dita a verdade ao cliente acerca do progresso do projeto e
acerca de suas estimativas, além de haverem sido realizadas adaptações quando mudanças
importantes aconteceram no projeto. Essas ações estão coerentes com o valor do XP
denominado:
a) sinceridade.
b) comunicação.
c) coragem.
d) feedback.
e) respeito.
69. (CESPE / TRE-RS – 2015) Assinale a opção que apresenta uma característica relacionada a
projetos que utilizam o método XP (eXtreme Programming), muito utilizado em projetos para
o desenvolvimento de softwares.
a) grandes releases
b) programação individual
c) cliente off-site
d) grandes volumes de horas extras
e) planejamento incremental
70. (CESPE / STJ – 2015) Na Extreme Programming, a programação em pares cria ilhas de
especialistas na equipe por meio da análise simultânea de duas pessoas no desenvolvimento
do software.
71. (IESES / TRE-MA – 2015) No desenvolvimento de software em XP, são empregadas algumas
práticas. Avalie as assertivas abaixo:
I. Programação em pares.
II. Time coeso.
III. Integração contínua.
IV. Desenvolvimento orientado a testes.
a) 2
b) 1
c) 4
d) 3
93
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
72. (CESPE / FUB – 2015) Práticas de desenvolvimento de software aos pares de programadores,
em que um programador verifica o trabalho do outro, são uma característica do método de
desenvolvimento XP.
73. (CESPE / FUB – 2015) É considerada como ritmo sustentável a carga horária de trabalho
extensa para gerar rapidamente entregas de produtos de software, o que provoca grande
quantidade de horas extras.
74. (FUNCAB / SEFAZ-BA – 2014) São características do Extreme Programming (XP), EXCETO:
75. (INSTITUTO AOCP / MPE-BA – 2014) O processo ágil XP possui doze práticas que são os
princípios fundamentais do processo. A prática que encoraja a equipe inteira a trabalhar mais
unida em busca de qualidade no código fazendo melhorias e refatoramentos em qualquer parte
do código a qualquer tempo é conhecida como:
76. (FGV / Câmara Municipal do Recife-PE – 2014) Uma das práticas do método ágil XP (eXtreme
Programming) é:
a) documentação extensiva;
b) prototipação;
c) ciclos longos de desenvolvimento;
d) desenvolvimento orientado a testes (TDD);
e) utilização de todos os artefatos do RUP.
77. (FUNCAB / MDA – 2014) A “Extreme Programming - XP” representa um dos mais conhecidos
métodos ágeis. Uma das práticas utilizadas na XP é:
94
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
78. (CESGRANRIO / Banco da Amazônia – 2014) Uma prática que NÃO é adotada por Extreme
Programming (XP) é
a) usar duas pessoas trabalhando juntas em um único computador para produzir todo o código
que será enviado para a produção.
e) variar a duração de cada iteração durante todo o projeto para acomodar eventuais mudanças
de prioridade dos requisitos, definidas pelo cliente.
80. (CESPE / STF – 2013) XP (Extreme Programming) é uma metodologia ágil voltada para equipes
pequenas e médias que desenvolvam software baseado em requisitos vagos e se caracteriza por
possibilitar modificações rápidas.
83. (CESGRANRIO / BNDES – 2013) Sendo atualmente conhecida por just-in-time, a produção
enxuta contém princípios que compõem a base dos processos ágeis de desenvolvimento de
software, como o Extremme Programming (XP). Um dos princípios básicos do XP, a eliminação
de desperdícios, busca:
a) evitar o efeito negativo que uma definição de risco, na fase inicial do projeto, possa causar na
performance do software como um todo, tendo, como saída, informações não relevantes para
o processo.
95
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
84. (CESPE / MPE-PI – 2012) O XP (Extreme Programming) é um método ágil, que preconiza a
criação de um caso de teste unitário antes do início da codificação.
85. (CESPE / ANAC – 2012) Para o método ágil de desenvolvimento conhecido como extreme
programming, todos os requisitos funcionais são expressos como cenários (histórias do usuário)
que são implementados diretamente como uma série de tarefas.
86. (CESPE / ANAC – 2012) A técnica conhecida como refactoring é constantemente aplicada
no desenvolvimento baseado no método ágil extreme programming.
87. (CESPE / ANAC – 2012) No modelo extreme programming, os testes de software só são
realizados na etapa final de desenvolvimento do software e, somente nessa etapa, os
programadores trabalham, obrigatoriamente, em pares, utilizando cada um o próprio
computador.
88. (CESPE / ANAC – 2012) Na metodologia ágil XP (extreme programming), as metáforas são
formas de transmitir ideias complexas de maneira simples, ou seja, utiliza-se uma linguagem
simples entre a equipe e o cliente, com o objetivo de que, entre as inúmeras variáveis de controle
em projetos, tais como tempo, custo, qualidade e escopo, obtenha-se maior foco no tempo, em
detrimento do planejamento do release.
89. (FCC / TST – 2012) O XP (Extreme Programming) utiliza uma abordagem orientada a
objetos como seu paradigma de desenvolvimento predileto. Ele:
a) recomenda que duas pessoas trabalhem juntas para criar o código correspondente a uma
história.
96
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
b) recomenda que a equipe XP e os clientes trabalhem de forma separada para não mudar o
compromisso básico definido para a versão a ser entregue.
90. (FCC / MPE-AP – 2012) O Extreme Programming (XP) é, talvez, o mais conhecido e mais
utilizado dos métodos ágeis. Dentre suas práticas se encontram programação em pares,
integração contínua, refatoração e:
a) propriedade coletiva, que garante uma participação nos lucros aos membros da equipe de
desenvolvimento, técnica que incentiva e aumenta o desempenho de toda a equipe.
b) envolvimento do cliente apenas na fase final do sistema, fator que difere de outras
metodologias como SCRUM e TDD e confere agilidade ao processo de desenvolvimento.
91. (FCC / MPE-PE – 2012) Dentre as práticas do método ágil Extreme Programming (XP), está a
prática de propriedade coletiva. É correto afirmar que, nessa prática,
b) cada projeto é realizado para atender às necessidades globais dos usuários, focando na
coletividade da distribuição da informação.
97
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
d) grandes quantidades de horas extras não são consideradas aceitáveis, pois o resultado final,
muitas vezes, é a redução da qualidade do código e da produtividade a médio prazo, sendo que
o indivíduo pode afetar o desempenho de todo o time.
e) um representante do usuário final do sistema deve estar disponível todo o tempo à equipe de
desenvolvimento. Nesse modelo de desenvolvimento, o cliente é membro da equipe e participa
da responsabilidade do código desenvolvido.
92. (FCC / TJ-PE – 2012) Nos métodos ágeis XP e Scrum, as entregas de partes funcionais do projeto
são divididas em ciclos, geralmente compreendidos no período de 1 a 4 semanas. Estes ciclos
denominam-se, respectivamente,
a) iterações e sprint.
b) reunião de planejamento e backlog.
c) período de entrega e reunião de revisão.
d) backlog e planejamento da produção.
e) entrega e retrospectiva.
93. (CESPE / EBC – 2011) O XP segue um conjunto de valores, princípios e regras básicas que visam
alcançar eficiência e efetividade no processo de desenvolvimento de software. Os valores são
cinco: comunicação, simplicidade, feedback, coragem e respeito.
94. (CESPE / STM – 2011) O Extreme Programming (XP), que se inclui entre os métodos ágeis,
apresenta, entre outras, as seguintes características: pequenos releases, projeto simples,
refactoring, programação em pares e propriedade coletiva.
95. (FCC / TRT-MT – 2011) NÃO se aplica à disciplina de desenvolvimento de software extreme
programming (XP):
c) Recomenda que dois programadores trabalhem juntos no mesmo computador para escrever
um código.
I. Propriedade coletiva.
98
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
a) I, apenas.
b) II, apenas.
c) I e II, apenas.
d) II e III, apenas.
e) I, II e III.
97. (FCC / TRT-23 – 2011) No desenvolvimento de software em Extreme Programming (XP) há uma
confiança muito grande na sinergia entre as práticas, já que os pontos fracos de cada uma são
superados pelos pontos fortes de outras. Dentre elas, aquela em que o código fonte não tem
dono e ninguém precisa solicitar permissão para poder modificá-lo, permitindo, assim, que a
equipe conheça todas as partes do sistema, é chamada de:
98. (FCC / TRE-RN – 2011) Assegurar que a equipe se concentre em fazer, primeiro, apenas
aquilo que é claramente necessário e evite fazer o que poderia vir a ser necessário, mas ainda
não se provou essencial. Este é um dos cinco valores fundamentais do XP (Extreme
Programming), denominado:
a) coragem.
b) respeito.
c) comunicação.
d) simplicidade.
e) feedback.
99. (CESPE / TRE-BA – 2010) Em XP, a prática denominada programação em pares (pair
programming) é realizada por um desenvolvedor em dois computadores, com o objetivo de
aumentar a produtividade.
100. (CESPE / ABIN – 2010) Na Extreme Programming, os requisitos são expressos como cenários
e implementados diretamente como uma série de tarefas. O representante do cliente faz parte
do desenvolvimento e é responsável pela definição de testes de aceitação do sistema.
99
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
101. (CESPE / MPU – 2010) Extreme programming (XP) é embasado em requisitos conhecidos,
definidos de antemão, que não sofram muitas alterações, devendo ser usado por equipes de
pequeno porte, formadas por representantes de todos os stakeholders.
103. (CESPE / TCU – 2010) O processo XP (extreme programming) envolve a realização das
atividades de planejamento, de projeto, de codificação e de teste.
a) o código é integrado e testado depois de alguns dias e, no máximo, até o final da semana.
c) as equipes de desenvolvimento estabelecem suas próprias regras, mas uma equipe pode
adotar as regras de outra equipe.
d) releases quando complexos não podem deixar de fora os requisitos de negócio de maior valor
para o cliente.
e) módulos não são propriedade de nenhum desenvolvedor; todo desenvolvedor da equipe tem
o direito de checar um módulo e modificá-lo.
105. (FCC / MPE-RN – 2010) Refactoring, programação em pares e Stand-up Meeting são
características das práticas do:
a) PRINCE2.
b) Rational Unified Process.
c) Extreme programming.
d) PMBOK.
e) SCRUM.
100
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
107. (CESPE / IPEA – 2009) A extreme programming (XP) é um método de desenvolvimento ágil.
Nele, os requisitos são expressos como cenários implementados diretamente como uma série
de tarefas.
109. (CESPE / TRE-BA – 2009) A metodologia XP prevê valores e princípios básicos para serem
considerados durante o desenvolvimento de software. Feedback, coragem e respeito são
exemplos de valores; mudanças incrementais, abraçar mudanças e trabalho de qualidade são
exemplos de princípios básicos.
111. (CESPE / ANTAQ – 2009) O extreme programming (XP) constitui método ágil de
desenvolvimento de software. Uma das práticas que se enquadram nos princípios dos métodos
ágeis é a programação em pares, que promove o compartilhamento da autoria do código do
sistema. Além dessa vantagem, a programação em pares atua como processo informal de
revisão porque cada linha de código é vista por pelo menos duas pessoas.
112. (FCC / TJ-PI – 2009) XP (eXtreme Programming) é uma metodologia ágil para equipes
pequenas e médias que desenvolverão software com requisitos vagos e em constante mudança.
Para isso, adota a estratégia de constante acompanhamento e realização de vários pequenos
ajustes durante o desenvolvimento de software. Para aplicar os valores e princípios durante o
desenvolvimento de software, a XP propõe uma série de práticas, sendo uma delas: sempre que
produzir uma nova funcionalidade, nunca esperar uma semana para integrar à versão atual do
sistema a fim de evitar o aumento da possibilidade de conflitos e da possibilidade de erros no
código fonte. Tal prática é denominada:
a) Time Coeso.
b) Refatoração.
c) Integração Contínua.
d) Desenvolvimento Orientado a Testes.
e) Ritmo Sustentável.
113. (CESPE / PRODEST – 2008) Projetar detalhadamente todo o software antes de iniciar a sua
implementação é uma prática recomendada pelo XP. O software deve ser projetado para
atender tanto aos requisitos atuais quanto aos potenciais requisitos futuros. Para atingir esse
objetivo, são analisados os possíveis cenários de evolução futura e são empregados padrões de
projeto para facilitar a manutenção.
101
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
114. (CESPE / PRODEST – 2008) Constituem práticas recomendadas pelo XP a colocação rápida
de uma versão simples em produção, a liberação das novas versões em curtos intervalos de
tempo, a programação em duplas, a refatoração (refactor) dos códigos produzidos, a adoção de
padrões para a codificação; a integração e o teste contínuos de códigos; a limitação em 40 horas
da carga de trabalho semanal.
116. (FCC / TCE-AL – 2008) Originalmente, o único produto da atividade de Projeto que é
realizado como parte do processo XP (Extreme Programming):
c) deve ser evitada a comunicação pessoal entre clientes e desenvolvedores, sempre dando
preferência a outros meios de comunicação mais formais.
e) deve-se projetar todas as funções possíveis com a máxima previsão do que ocorrerá no futuro,
antes do desenvolvimento do software, a fim de evitar alterações desnecessárias.
118. (INSTITUTO AOCP / EBSERH – 207) O Extreme Programming (XP) surgiu em 1999, a partir
de uma publicação sobre o assunto, mas suas bases se conectam a princípios da década de 80 e
ao manifesto ágil. O XP é baseado em 4 atividades de arcabouços. Assinale a alternativa que
contém 3 desses arcabouços:
102
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
103
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
104
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106
105
MP-MG (Analista do Ministério Público - Área Análise e Programação) Engenharia de Software - 2022 (Pré-Edital)
www.estrategiaconcursos.com.br 106