Prévia do material em texto
Aula 08 Disciplina: Análise e Projeto de Sistemas Assunto: Metodologia Ágeis: XP (Extreme Programming) 12 de Junho de 2024 Índice ..............................................................................................................................................................................................1) Metodologias Ágeis - XP 3 ..............................................................................................................................................................................................2) Metodologias Ágeis - XP - Principais Práticas 8 ..............................................................................................................................................................................................3) Metodologias Ágeis - XP - Processo do XP 10 ..............................................................................................................................................................................................4) Metodologias Ágeis - XP - Valores Fundamentais 15 ..............................................................................................................................................................................................5) Metodologias Ágeis - XP - Princípios Básicos 16 ..............................................................................................................................................................................................6) Resumo - Metodologias Ágeis - XP 18 ..............................................................................................................................................................................................7) Questões Comentadas - Metodologias Ágeis - XP - CESPE 21 ..............................................................................................................................................................................................8) Questões Comentadas - Metodologias Ágeis - XP - FCC 40 ..............................................................................................................................................................................................9) Questões Comentadas - Metodologias Ágeis - XP - FGV 51 ..............................................................................................................................................................................................10) Questões Comentadas - Metodologias Ágeis - XP - Diversas 53 ..............................................................................................................................................................................................11) Lista de Questões - Metodologias Ágeis - XP - CESPE 77 ..............................................................................................................................................................................................12) Lista de Questões - Metodologias Ágeis - XP - FCC 85 ..............................................................................................................................................................................................13) Lista de Questões - Metodologias Ágeis - XP - FGV 93 ..............................................................................................................................................................................................14) Lista de Questões - Metodologias Ágeis - XP - Diversas 97 LISTA DE QUESTÕES – CESPE 1. (CESPE / BANRISUL – 2022) Um aspecto central na XP é o fato de que a elaboração do projeto ocorre tanto antes quanto depois de se ter iniciado a codificação. 2. (CESPE / BANRISUL – 2022) Na metodologia XP (Extreme Programming), a atividade de planejamento se inicia com o levantamento de requisitos, em que são obtidas histórias de usuários, similares aos casos de uso; a seguir, clientes e desenvolvedores trabalham juntos para decidir como agrupar essas histórias. 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. 4. (CESPE / Ministério da Economia – 2020) Como forma de agilizar as implantações de novas releases nesse modelo, são acumulados grandes grupos de funcionalidades e implantadas grandes releases. 5. (CESPE / Ministério da Economia – 2020) Os programadores trabalham em pares para que um possa verificar e apoiar o trabalho do outro e, assim, realizem um bom trabalho. 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. 7. (CESPE / Ministério da Economia – 2020) O XP possui planejamento incremental com requisitos registrados em histórias. 8. (CESPE / TCE-RO – 2019) No que diz respeito a processos e práticas ágeis, o desenvolvimento incremental a) é, assim como o test-driven development, uma prática da XP (Extreme Programming) que exige teste automatizado, domain-driven design, refactoring e integração contínua. b) é, na XP (Extreme Programming), sustentado por meio de pequenos e frequentes releases do sistema, e os clientes estão intimamente envolvidos na especificação e na priorização dos requisitos do sistema. c) enfoca, assim como o acceptance test-driven development, a qualidade do código desenvolvido quanto a recursividade, declaração das variáveis e clean code, de modo a torná-lo de fácil entendimento, modificação e testagem 77 112 d) pressupõe o uso do behavior driven development, que considera a linguagem de programação a ser usada, da 4.ª geração em diante, com foco, principalmente, no comportamento visual, interativo e cognitivo do sistema. e) enfoca a integração contínua como uma prática de desenvolvimento de software, incompatível com a XP (E xtreme Programming) e o Scrum, que permite aos desenvolvedores agregarem alterações de código e realizarem testes. 9. (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. 10. (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. 11. (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. 12. (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. 13. (CESPE / ABIN – 2018) Para apoiar a equipe de desenvolvimento, é uma prática o uso do cliente on-site em tempo integral. 14. (CESPE / STM – 2018) Na XP (Extreme Programming), programadores trabalham em pares, e requisitos são expressos como cenários, denominados histórias de usuários, os quais são implementados como uma série de tarefas. 15. (CESPE / TRT - 7ª Região (CE) – 2017) Acerca de metodologia XP, assinale a opção correta. a) Para atingir a agilidade necessária, a equipe de desenvolvimento deve ser composta de pessoas com experiência comprovada na linguagem utilizada. b) A prática de planning game do XP permite que o escopo do projeto seja alterado a cada semana. 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. 78 112 16. (CESPE / TRE-BA – 2017) Considerando uma situação hipotética com o usoda 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. II. O princípio da integração contínua da XP deve ser utilizado especificamente na retrospectiva da sprint com vistas a integrar a equipe scrum. 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. Estão certos apenas os itens: a) I e II. b) I e III. c) II e IV. d) I, III e IV. e) II, III e IV 17. (CESPE / TRE-TO – 2017) Em projetos de desenvolvimento de software, a extreme programming (XP) é um método ágil que usa a prática de: a) projetos com planejamento completo sem incrementos. b) grandes releases. c) grande quantidade de horas extras. d) trabalho em pares de desenvolvedores. e) integrações após a entrega do software completo. 18. (CESPE / FUNPRESP-JUD – 2016) Uma característica da metodologia XP é a existência de uma equipe técnica voltada para a agilidade e velocidade do desenvolvimento do software, de forma que todo o desenvolvimento seja feito sem a interferência ou ajuda do cliente até que os releases sejam disponibilizados para que o desenvolvimento se torne o mais ágil possível. 19. (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. 20. (CESPE / FUNPRESP-JUD – 2016) A programação em pares, em que os desenvolvedores atuam avaliando entre si o trabalho do outro, é uma prática da metodologia XP. 79 112 21. (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. 22. (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). 23. (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. e) Como um professor, eu preciso de releases semanais de funcionalidades, mesmo que elas possam ser refatoradas posteriormente. 24. (CESPE / TJDFT – 2015) Na metodologia XP (extreme programming), em que todos os requisitos são expressos como cenários, deve-se aguardar, após a conclusão das tarefas, ciclos de cento e oitenta dias para a publicação de grandes releases do software. 25. (CESPE / TJDFT – 2015) As características da metodologia XP incluem o desenvolvimento interativo, que dispõe de um processo de testes informais. 26. (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. 27. (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. 80 112 a) grandes releases b) programação individual c) cliente off-site d) grandes volumes de horas extras e) planejamento incremental 28. (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. 29. (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. 30. (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. 31. (CESPE / ANTT – 2013) São práticas ou princípios recomendados no modelo de desenvolvimento de software XP (eXtreme Programming) proposto por Kent Beck: programação em pares; semana de trabalho de 40 horas; refatoração sem piedade; desenvolvimento orientado a testes TDD (Test Driven Development); e desenvolvimento de metáforas arquiteturais. 32. (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. 33. (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. 34. (CESPE / MPU 2013) XP é um método de desenvolvimento de software em que os requisitos são especificados em user stories; requisitos, arquitetura e design surgem durante o curso do projeto; e o desenvolvimento ocorre de maneira incremental. 35. (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. 36. (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. 81 112 37. (CESPE / ANAC – 2012) A técnica conhecida como refactoring é constantemente aplicada no desenvolvimento baseado no método ágil extreme programming. 38. (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. 39. (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. 40. (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. 41. (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. 42. (CESPE / TRE-BA – 2010) Em XP, a prática denominada programação em pares (pair programming) é realizada por umdesenvolvedor em dois computadores, com o objetivo de aumentar a produtividade. 43. (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. 44. (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. 45. (CESPE / TRE-BA – 2010) Os quatro valores fundamentais da metodologia XP são: comunicação, simplicidade, feedback e coragem. 46. (CESPE / TCU – 2010) O processo XP (extreme programming) envolve a realização das atividades de planejamento, de projeto, de codificação e de teste. 47. (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 82 112 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. 48. (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. 49. (CESPE / TRE-MG – 2009) Extreme programming é um método centrado no usuário, na produtividade do desenvolvimento e na documentação de apoio. 50. (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. 51. (CESPE / ANAC – 2009) Extreme Programming é um modelo de processo de desenvolvimento de software para equipes com grande número de pessoas, que desenvolvem software com base em requisitos vagos e que são modificados rapidamente. 52. (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. 53. (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. 54. (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. 55. (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 desenvolvimento, o primeiro teste recomendado é o smoke test que foca os detalhes de funcionamento. O smoke test é realizado após as unidades serem integradas. Após o smoke test, é realizado o teste de sistema. 83 112 ==21ed43== GABARITO 1. CORRETO 2. CORRETO 3. ERRADO 4. ERRADO 5. CORRETO 6. ERRADO 7. CORRETO 8. LETRA B 9. ERRADO 10. CORRETO 11. ERRADO 12. ERRADO 13. CORRETO 14. CORRETO 15. LETRA B 16. LETRA B 17. LETRA D 18. ERRADO 19. CORRETO 20. CORRETO 21. ERRADO 22. ERRADO 23. LETRA A 24. ERRADO 25. CORRETO 26. LETRA C 27. LETRA E 28. ERRADO 29. CORRETO 30. ERRADO 31. CORRETO 32. CORRETO 33. CORRETO 34. CORRETO 35. CORRETO 36. CORRETO 37. CORRETO 38. ERRADO 39. ERRADO 40. CORRETO 41. CORRETO 42. ERRADO 43. CORRETO 44. ERRADO 45. CORRETO 46. CORRETO 47. ERRADO 48. CORRETO 49. ERRADO 50. CORRETO 51. ERRADO 52. CORRETO 53. ERRADO 54. CORRETO 55. ERRADO 84 112 LISTA DE QUESTÕES – FCC 1. (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. 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. 2. (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. As práticas de I a IV são, correta e respectivamente, 85 112 a) pair programming – test-driven development – system metaphor – continuous integration. b) planning game – pair programming – system simplicity – continuous integration. c) planning game – test-driven development – system simplicity – refactoring. d) continuous integration – pair programming – feedback – planning game. e) continuous integration – collective code ownership – system metaphor – refactoring. 3. (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. 4. (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 tempoe 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. 5. (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: 86 112 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. 6. (FCC / Prefeitura de Teresina – PI – 2016) Os métodos ágeis de desenvolvimento de software como eXtreme Programming – XP consideram um conjunto de valores fundamentais derivados do manifesto ágil. Assim, estes métodos valorizam MENOS: a) os indivíduos e a interação entre eles, do que os processos e ferramentas. b) o software funcionando, do que uma documentação abrangente. c) a colaboração com o cliente, do que negociação de contratos. d) a resposta rápida a mudanças, do que seguir um plano previamente definido. e) a rigorosidade dos processos, do que a adaptação às mudanças. 7. (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, a) criar obrigatoriamente uma matriz de rastreabilidade de requisitos. b) manter o foco na documentação, detalhada e diversificada. c) definir sprint de no máximo duas semanas. d) escrever sempre o código, depois, o teste de unidade. e) realizar semanalmente o jogo do planejamento (planning game). 8. (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. c) segue rigorosamente o princípio FDD - Feature Driven Development. d) recomenda que depois que as histórias forem desenvolvidas e o trabalho preliminar do projeto for feito, a equipe XP avance diretamente para o código. e) inclui um conjunto de regras e práticas que ocorrem no contexto de 3 atividades de arcabouço: projeto, implementação e entrega. 87 112 9. (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. c) processo de desenvolvimento contínuo, em que a equipe se mantém focada no sistema até que uma funcionalidade específica seja entregue, comumente agregando horas extras ao turno de trabalho. d) utilização de técnicas de ofuscação do código fonte, trazendo segurança e garantindo que apenas a equipe de desenvolvimento poderá ter acesso a este código e) desenvolvimento incremental e sustentado por meio de pequenos e frequentes releases do sistema. Os requisitos são baseados em cenários ou em simples histórias de clientes. 10. (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, a) os trabalhos são desenvolvidos em conjunto, para que um programador possa analisar o trabalho do outro. b) cada projeto é realizado para atender às necessidades globais dos usuários, focando na coletividade da distribuição da informação. c) os pares de desenvolvedores trabalham em todas as áreas do sistema, de modo que não se desenvolvam ilhas de expertise. 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. 11. (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, 88 112 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. 12. (FCC / TRT-MT – 2011) NÃO se aplica à disciplina de desenvolvimento de software extreme programming (XP): a) Usa notações próprias para construir os diversos produtos de trabalho do projeto. b) Encoraja a refabricação para modificar um sofware sem alterar o comportamento externo do código. c) Recomenda que dois programadores trabalhem juntos no mesmo computador para escrever um código. d) Baseada em valores de simplicidade, comunicação, feedback e coragem. e) Adota como um elemento-chave a criação de testes unitários antes da codificação começar. 13. (FCC / TRE-RN – 2011) Considere as seguintes características: I. Propriedade coletiva. II. Integração contínua. III. Metáfora. Dentre as práticas componentes da Extreme Programming, aplica-se o que consta em: a) I, apenas. b) II, apenas. c) I e II, apenas. d) II e III, apenas. e) I, II e III. 14. (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: a) Whole Team (Time Coeso). b) Sustainable Pace (Ritmo Sustentável). c) Pair Programming (Programação em Pares). 89 112 d) Collective Ownership (Posse Coletiva). e) Coding Standards (Padrões de Codificação). 15. (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. 16. (FCC / TRE-RS – 2010) No eXtreme Programming, XP: a) o código é integrado e testado depois de alguns dias e, no máximo, até o final da semana. b) a codificação é feita em grupos de programadores (no mínimo 3 integrantes), preferencialmente num único computador. 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. 17. (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. 18. (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 90 112 ==21ed43== 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. 19. (FCC / TCE-AL – 2008) Originalmente, o único produto da atividade de Projeto que é realizado como parte do processo XP (Extreme Programming): a) é a definição do caso de uso de contexto. b) são os cartões CRC. c) são os diagramas de objetos. d) são os diagramas de seqüência. e) é a codificação, feita em pares. 20. (FCC / TRE-SE – 2007) Na XP (eXtreme Programming): a) deve-se usar o modelo em cascata para o desenvolvimento do software. b) os programadores desenvolvem o software criando primeiramente os testes. c) deve ser evitada a comunicação pessoal entre clientes e desenvolvedores, sempre dando preferência a outros meios de comunicação mais formais. d) os programadores desenvolvem o software fazendo todos os testes possíveis no término do desenvolvimento. 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. 91 112 GABARITO 1. LETRA E 2. LETRA E 3. LETRA A 4. LETRA E 5. LETRA A 6. LETRA E 7. LETRA E 8. LETRA A 9. LETRA E 10. LETRA C 11. LETRA A 12. LETRA A 13. LETRA E 14. LETRA D 15. LETRA D 16. LETRA E 17. LETRA C 18. LETRA C 19. LETRA B 20. LETRA B 92 112 LISTA DE QUESTÕES – FGV 1. (FGV / SEFAZ-BA – 2022) Com relação à programação por pares, analise as afirmativas a seguir e assinale (V) para a verdadeira e (F) para a falsa. ( ) É 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. As afirmativas são, na ordem apresentada, respectivamente, a) F – V – F. b) V – V – F. c) F – F – V. d) V – F – V. e) V – F – F. 2. (FGV / Prefeitura de Paulínia - SP – 2016) A empresa de desenvolvimento de sistemas “Inovation” tem ampla experiência no mercado e, até o momento, utilizou diversos modelos de ciclo de vida para o desenvolvimento de sistemas. A “Inovation” já recebeu diversas reclamações dos seus clientes por causa da demora em apresentar alguma tela em funcionamento, bem como da falta de envolvimento dos clientes no desenvolvimento. A empresa, assim, decidiu passar a utilizar um novo modelo de ciclo de vida. Esta decisão visa aproveitar a grande experiência de sua equipe e trazer o cliente para a equipe de desenvolvimento, com iterações de desenvolvimento extremamente curtas. Qualquer membro da equipe implementa parte do código, que pode ser evoluído por qualquer outro membro. O novo modelo adotado pela “Inovation” é denominado: a) Extremme Programming (XP). b) Modelo V. c) Evolutivo. d) Incremental. e) Espiral. 3. (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; 93 112 c) ciclos longos de desenvolvimento; d) desenvolvimento orientado a testes (TDD); e) utilização de todos os artefatos do RUP. 94 112 GABARITO 1. LETRA B 2. LETRA A 3. LETRA D 95 112 ==21ed43== LISTA DE QUESTÕES – DIVERSAS BANCAS 1. (COMPERVE / TJ-RN – 2020) O método ágil Extreme Programming ou XP é um dos métodos ágeis mais conhecidos. Sobre as características desse método, é correto afirmar: 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. 2. (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. a) Reformation - Pair Programming - PlayStation Game b) Refactoring - Pair Programming - Planning Game c) Reformation - Pair Production - Planning Game d) Refactoring - Pair Production - PlayStation Game 3. (UFCG / UFCG – 2019) Marque a alternativa INCORRETA com relação a Extreme Programming (XP). a) Comunicação, coragem e respeito são valores dessa metodologia. b) Em XP, uma das regras é codificar os testes de unidade primeiro. c) Refatoramento é uma prática recomendada nesse processo. d) O código a ser enviado para produção é criado por duas pessoas trabalhando juntas em um único computador. e) O autor, Don Wells, exige que o processo seja seguido à risca, de forma que todas suas regras devem ser respeitadas e, nenhum projeto pode ser realizado sem adaptações e/ou remoção dessas regras. 4. (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. a) Apenas as operações mais críticas devem possuir testes unitários. b) Todo o código-fonte de produção deve ser implementado em programação em pares. 97 112 c) A integração de código deve ser feita nos computadores dos desenvolvedores. d) É importante estabelecer o papel de um XP Master, que será responsável pela implementação da metodologia. e) A velocidade do projeto deve ser medida com o objetivo de informar ao cliente o tempo médio de correção de falhas. 5. (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. 6. (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. 7. (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) Planejamento (Planning) / Projeto (Designing) / Codificação (Coding) / Teste (Test). b) Colaboração (Collaboration) / Projeto (Designing) / Codificação (Coding) / Teste (Test). c) Colaboração (Collaboration) / Projeto (Designing) / Codificação (Coding) / Teste (Test) / Adaptação (Adaptation). d) Colaboração (Collaboration) / Projeto (Designing) / Codificação (Coding) / Teste (Test) / Adaptação (Adaptation) / Melhoria (Improvement). 98 112 8. (VUNESP / Câmara de Piracicaba - SP – 2019) Um dos processos ágeis de desenvolvimento de software é a programação extrema (extreme programming – XP), cuja fase ou atividade inicial é composta pela descrição dos cenários (características e funcionalidades) requisitadas para o software a ser desenvolvido. Essa atividade recebe a denominação de: a) métodos práticos. b) histórias de usuário. c) estruturas de apoio. d) classes de projeto. e) artefatos de usuário 9. (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. 10. (AOCP / SUSIPE-PA – 2018) Sobre as práticas do XP (Extreme Programming), assinale a alternativa INCORRETA. a) O cliente deve conduzir o desenvolvimento a partir do feedback que recebe do sistema. b) O código deve ser padronizado, visando tornar o sistema mais homogêneo. c) O XP trabalha com releases curtos, buscando a integração contínua de valor para o cliente. d) O XP trabalha com código coletivo, no qual todos os membros da equipe têm acesso ao código. e) O XP utiliza-se de programação em par para permitir que o código seja revisado permanentemente enquanto é desenvolvido. 11. (COMPERVE / UFRN – 2018) Programação Extrema (XP - Extreme Programming) é uma das principais metodologias ágeis já propostas. A respeito de XP, considere as afirmativas abaixo. I XP promove a execução de testes automatizados de avaliação do desempenho a cada iteração de desenvolvimento do sistema. II Em XP, os requisitos do sistema são especificados através de casos de uso. III A prática de integração contínua do XP envolve a geração frequente de versões (builds) do sistema, assim como execução dos testes automatizados sobre as versões geradas. IV A prática de refatoração do XP envolve a modificação interna do código de classes do sistema, mas sem modificar seu comportamento externo (interfaces dos métodos). 99 112 Estão corretas as afirmativas a) III e IV. b) I e II. c) I e III. d) II e IV. 12. (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. I A técnica de refatoração promove mudanças no código que visam à adição de novas funcionalidades. II XP determina a produção de um executável do sistema desenvolvido a cada iteração. III XP motiva a criação de projetos simples onde requisitos futuros não são inicialmente contemplados. IV Integração contínua consiste na geração de builds diários do sistema. Estão corretas as afirmativas a) II e IV. b) I e IV. c) I e III. d) II e III. 13. (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: ( ) Participação intensa do representante do cliente no desenvolvimento do projeto. ( ) 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. ( ) Lançamentos frequentes de novas versões. a) F – V – V – F b) V – F – F – V c) V – V – F – V 100 112 d) V – V – V – V e) F – F – V – V 14. (IADES / ARCON-PA – 2018) Um dos métodos de desenvolvimento de software mais conhecido e utilizado é o extreme programming (XP). Esse consiste em um modelo: a) que evita a refatoração de código. b) que realiza testes de integração apenas ao final de todo o desenvolvimento. c) que valoriza o trabalho de forma individualizada, evitando a programação em pares. d) que busca atender às necessidades atuais, e nada mais. e) no qual não se faz necessária a disponibilidade de um representante do cliente a todo o tempo. 15. (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. II - Todos os desenvolvedores devem refatorar o código continuamente, assim que encontrarem oportunidades de melhorias de código. III - Os desenvolvedores trabalham em todas as áreas do sistema, de modo que não se desenvolvam ilhas de expertise. Todos os desenvolvedores têm responsabilidade em relação ao código; qualquer um pode mudar qualquer coisa. Quais estão corretas? a) Apenas I. b) Apenas I e II. c) Apenas I e III. d) Apenas II e III. e) I, II e III. 16. (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. 101 112 As fases I, II, III e IV são denominadas respectivamente: a) modelagem, construção, implantação e homologação. b) planejamento, construção, codificação e homologação. c) planejamento, projeto, implantação e teste. d) planejamento, projeto, codificação e teste. e) modelagem, projeto, codificação e homologação. 17. (INSTITUTO AOCP / PRODEB – 2018) O método de desenvolvimento ágil denominado de XP (Extreme Programming) tem sua estrutura baseada em algumas prerrogativas, dentre as quais, é correto citar como princípios do XP: a) Princípio da Legalidade, Princípio da Agilidade e Princípio do Feedback. b) Princípio da Coragem, Princípio da Agilidade e Princípio da Simplicidade. c) Princípio da Comunicação, Princípio da Simplicidade, Princípio do Feedback e Princípio da Coragem. d) Princípio da Agilidade, Princípio da Qualidade, Princípio do Feedback e Princípio da Coragem. e) Princípio da Simplicidade, Princípio do Desenvolvimento e Princípio de Governança. 18. (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. 102 112 19. (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. 20. (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. 21. (INSTITUTO AOCP / PRODEB – 2018) Extreming Programming (XP) é um método de desenvolvimento ágil amplamente utilizado pelas software houses. Com base neste método, qual alternativa a seguir possui uma prática que NÃO faz parte do XP? a) Small Releases (Pequenas Entregas). b) Pair Programming (Programação em Pares). c) Sprint Review (Reunião de revisão da Sprint). d) Sustainable Pace (Ritmo Saudável). e) Collective Owership (Posse Coletiva). 22. (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: I. Programação Pareada (Pair Programming). II. Fases pequenas (Small Releases). III. Refatoração (Refactoring). IV. Jogo de Planejamento (Planning Game). 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 23. (UFG / SANEAGO – 2017) Dentro do framework Extreme Programming (XP), uma metodologia ágil, a ação de teste de código é responsabilidade da pessoa: 103 112 a) diretamente ligada à criação do artefato em questão. b) responsável pela equipe de teste de software, que não pode ser a pessoa que o desenvolve. c) utilizadora do código diariamente. d) facilitadora da comunicação entre a equipe de desenvolvimento e o cliente. 24. (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 25. (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): a) Planejamento incremental, cliente disponível em tempo integral e programação em pares. b) Requisitos expressos como cenários, programação incremental e programação individual. c) Cliente não participa do desenvolvimento, desenvolvimento em cascata e programação em pares. d) Equipe heterogênea especializada, requisitos expressos como histórias e desenvolvimento em espiral. e) Toda equipe altera qualquer parte do código, desenvolvimento em cascata e programação individual. 26. (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. a) Simplicidade - procura-se que a equipe concentre-se, primeiro, em fazer o necessário. b) Comunicação - prioriza-se a troca de e-mail como melhor forma de comunicação, independente do horário. c) Coragem - a metodologia XP prega coragem para dizer “não” ao cliente e evitar mudanças do projeto. d) Feedback - é valorizado o feedback positivo do cliente. Desta forma, procura-se evitar a entrega de software sem a realização de testes detalhados. e) Respeito - prega o respeito à hierarquia, ouvindo e respeitando, apenas, o que é determinado pelo líder de projeto. 27. (UFCG / UFCG – 2016) Sobre XP (Extreme Programming), marque a assertiva INCORRETA. 104 112 a) É um processo criado por Kent Beck. b) São exemplos de boas práticas do processo: desenvolvimento orientado a testes, pair programming e documentação em todas as suas fases. c) Esse processo almeja reduzir o custo de mudanças a partir de múltiplos ciclos de desenvolvimento de curta duração. d) Simplicidade ao projetar e programar é uma das chaves para o sucesso na visão do XP. e) Nesse processo, deve-se refatorar o código sempre que possível. 28. (IF-SE / IF-SE – 2016) A Programação Extrema (Extreme Programming - XP) possui diversas práticas. Analise as afirmativas abaixo. I. As releases do sistema são frequentes e incrementais. II. Os requisitos são representados através de casos de uso. III. Os desenvolvedores não trabalham em pares. IV. Depois de qualquer integração, todos os testes de unidade devem passar. De acordo com as afirmativas, marque a alternativa CORRETA a) As afirmativas I e II estão incorretas. b) Apenas as afirmativas I e II estão corretas. c) As afirmativas II e III estão incorretas d) As afirmativas III e IV estão incorretas 29. (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? a) Análise, projeto, codificação e teste. b) Planejamento, análise, projeto e codificação. c) Planejamento, projeto, codificação e testes. d) Planejamento, análise, codificação e testes. e) Levantamento, análise, projeto e codificação. 30. (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 31. (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: 105 112 a) Time Coeso (Whole Team). b) Design Complexo (Complex Design). c) Programação Pareada (Pair Programming). d) Semana de 40 horas (Sustainable Pace). e) Refatoração (Refactoring). 32. (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. 33. (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. 106 112 34. (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: a) valoriza o desenvolvimento test-last. b) depende da técnica de teste baseada em defeitos c) desenvolve teste incremental baseado em cenários d) utiliza processo de teste dirigido a planos. 35. (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. 36. (IESES / TRE-MA – 2015) Nodesenvolvimento 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. Quantas afirmativas são verdadeiras? a) 2 b) 1 c) 4 d) 3 37. (FUNCAB / SEFAZ-BA – 2014) São características do Extreme Programming (XP), EXCETO: a) apresentar desenvolvimento incremental. b) admitir a existência de uma especificação detalhada. c) utilizar programação com pares de desenvolvedores. d) permitir a integração de usuário com o time de desenvolvimento. e) suportar testes automáticos contínuos. 38. (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 107 112 ==21ed43== unida em busca de qualidade no código fazendo melhorias e refatoramentos em qualquer parte do código a qualquer tempo é conhecida como: a) propriedade coletiva do código. b) semana de quarenta horas. c) programação em pares. d) padrões de codificação. e) integração contínua. 39. (FUNCAB / MDA – 2014) A “Extreme Programming - XP” representa um dos mais conhecidos métodos ágeis. Uma das práticas utilizadas na XP é: a) empregar um esquema em que os desenvolvedores trabalham individualmente. b) integrar o sistema exclusivamente quando todos os módulos forem concluídos. c) usar cenários para expressar requisitos implementados como uma série de tarefas. d) impedir que o cliente interaja com a equipe de desenvolvimento na fase de especificação. e) eliminar a necessidade da realização de testes durante a fase de desenvolvimento. 40. (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. b) criar os testes antes do código que será testado. c) refatorar frequentemente, e ao longo de todo o projeto, o código produzido pelos desenvolvedores. d) integrar continuamente o código recém-produzido com o código existente no repositório. 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. 41. (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. 108 112 b) produzir requisitos bem definidos e completos de forma a abranger todos os processos e rotinas administrativas, funcionais e produtivas almejadas pelos stakeholders envolvidos no projeto. c) reduzir, o máximo possível, o volume de trabalho executado e os subprodutos envolvidos nesse trabalho, concentrando os esforços apenas no que pode produzir um resultado objetivo e palpável ao cliente final. d) descrever os processos que garantam a inclusão, no projeto, de todo o serviço necessário, e somente o serviço necessário, para que esse projeto seja finalizado com sucesso. e) descrever os processos envolvidos no planejamento, no monitoramento e na garantia de que o projeto será realizado dentro dos prazos definidos no escopo, mantendo a qualidade definida e o enxugamento dos custos inicialmente programados. 42. (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: a) Levantamento de requisitos, análise de negócio, planejamento e documentação. b) Levantamento de requisitos, planejamento, documentação e implantação. c) Levantamento de requisitos, documentação, codificação e teste. d) Planejamento, projeto, documentação e implantação. e) Governança, planejamento, codificação e teste. 109 112 GABARITO 1. LETRA B 2. LETRA B 3. LETRA E 4. LETRA B 5. LETRA D 6. LETRA C 7. LETRA A 8. LETRA B 9. LETRA A 10. LETRA D 11. LETRA A 12. LETRA D 13. LETRA D 14. LETRA D 15. LETRA E 16. LETRA D 17. LETRA C 18. LETRA B 19. CORRETO 20. LETRA E 21. LETRA C 22. LETRA E 23. ANULADA 24. LETRA D 25. LETRA A 26. LETRA A 27. LETRA B 28. LETRA C 29. LETRA C 30. LETRA D 31. LETRA B 32. LETRA D 33. LETRA A 34. LETRA C 35. LETRA B 36. LETRA C 37. LETRA B 38. LETRA A 39. LETRA C 40. LETRA E 41. LETRA C 42. LETRA E 110 112