Principais características do XP parte 2

Continue seus estudos sobre as principais características do XP (Extreme Programming) e entenda práticas como Test-First, refatoração, código coletivo, ritmo sustentável, cliente presente e padrões de codificação.

Por
Publicado em
4 min. de leitura

Neste artigo continuaremos a tratar das principais características do XP para sua prova.

xp-practices

Testes constantes e Test-First

Os testes em XP são feitos antes da programação. Existem dois tipos de teste: teste de unidade e teste funcional. Consiste em verificar o comportamento das menores unidades em sua aplicação.

Os testes funcionais são usados para verificação, junto ao cliente, do sistema como um todo e suas funcionalidades propriamente ditas.

Sempre que algo novo é codificado, novos testes e re-priorizações podem ser criadas (priorização pelo usuário).

Detalhe importante: primeiro são escritos os testes e depois a implementação propriamente dita. É o que chamamos de Test-First.

Pode-se utilizar alguma ferramenta / framework  para escrever os testes para uma nova parte da funcionalidade antes que esta seja implementada.

Testes são EXTREMAMENTE importantes no XP!

A prática do test-first traz vários benefícios, como: 

  • Reduzir o ciclo de feedback, permitindo que os desenvolvedores identifiquem e resolvam problemas
  • Diminuir o número de bugs introduzidos na produção
  • Garantir a redução de erros de programação
  • Aumentar a fidelidade do código ao padrão estabelecido para o projeto

PULO DO GATO:

Testes são EXTREMAMENTE importantes no XP!

Semana de 40 horas de trabalho (ritmo sustentável de trabalho)

O trabalho deve ser feito com qualidade em um ritmo sustentável, buscando o valor máximo de 40 horas / semanais. Horas extras não são bem-vindas e devem ser evitadas. 

DIRETO DO CONCURSO

(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ário

Gabarito é a letra A.

Conforme vimos, o XP possui como prática o ritmo sustentável, dessa forma, grandes quantidades de horas extras não são bem – vindas. Overtime está interligado com horas extras. Logo, não se trata de uma prática do modelo.

OBS: Os demais itens não fazem correlação com o modelo XP.

Gabarito: Letra A

CESPE / CEBRASPE – 2020 Engenharia de Software XP (eXtreme Programming)Ministério da Economia 

Tecnologia da Informação – Desenvolvimento de Sistemas

Julgue o item seguinte, a respeito de programação ágil com XP (extreme programming).

Grandes quantidades de horas extras são aceitáveis em médio e longo prazo, para agilizar a entrega de requisitos.

COMENTÁRIO

No Extreme Programming (XP), horas extras não são vistas como uma prática sustentável ou recomendada. O XP valoriza um ritmo de trabalho constante e saudável para garantir a qualidade do software e a motivação da equipe. Essa filosofia é expressa por meio do conceito de “sustainable pace” (ritmo sustentável), que sugere que os desenvolvedores devem trabalhar em um ritmo que possa ser mantido indefinidamente sem levar à exaustão.

Gabarito está ERRADO.

Refatoração

Refatoração significa melhorar o código sem alterar sua funcionalidade e é realizado constantemente pela a equipe de desenvolvimento. Logo, após a refatoração, o código continua funcionando como anteriormente (tratando-se da funcionalidade). As mudanças devem ser incluídas após este processo

Tornar o código limpo também é um processo de refatoração (simples, direto e de fácil entendimento).

A refatoração é uma prática do Extreme Programming (XP) que tem vários benefícios, como:

– Código mais legível

A refatoração torna o código mais claro e fácil de entender, o que facilita a manutenção e a inserção de novas funcionalidades. 

  • Código mais durável

A refatoração regular ajuda a manter o código limpo e organizado, o que aumenta a durabilidade do software. 

  • Facilita a localização de bugs

Um código mais legível facilita a localização de bugs, que podem passar despercebidos em um primeiro momento. 

  • Aumenta a confiança no código

A refatoração aumenta a confiança e a confiabilidade do código, permitindo testes e integração frequentes. 

  • Ajuda a responder a mudanças

A refatoração preserva a flexibilidade do código para responder rapidamente às mudanças nos requisitos e nas necessidades do cliente.

Código coletivo

A propriedade do código é coletiva e todos são responsáveis. Com isso, os desenvolvedores ganham tempo, pois não precisam esperar a autorização de alguém para editar o código. Essa prática torna mais constante a identificação de oportunidades de melhoria e erros, tornando a refatoração mais presente. Qualquer um pode mudar qualquer coisa!

A prática do código coletivo na metodologia Extreme Programming (XP) tem vários benefícios, entre os quais:

– Evita ilhas de conhecimento

Todos os membros da equipe têm acesso e autorização para editar qualquer parte do código, o que evita que haja “ilhas de conhecimento”. 

– Cria um mecanismo de revisão constante

Como o código é manipulado por diferentes pessoas, é criado um mecanismo de revisão constante. 

– Mantém o código simples

Como qualquer membro pode melhorar o código, o sistema evolui mantendo o código o mais simples possível. 

  • Facilita a manutenção

A ênfase na simplicidade do código e na refatoração contínua resulta em uma base de código mais organizada e limpa, o que facilita a manutenção. 

  • Nivela o conhecimento técnico

A prática do código coletivo nivela o conhecimento técnico dos programadores.

DIRETO DA PROVA

(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ário

Refatoração faz parte do XP! Ela ocorre de forma constante durante o desenvolvimento do produto.

Gabarito está ERRADO.

Equipe de Desenvolvimento

Formada por equipes pequenas, coesas e multidisciplinares, que trabalham de maneira colaborativa. É importante destacar que o código é de propriedade coletiva.

Ciente Sempre Presente no Desenvolvimento

Envolve manter um usuário real do sistema como parte integrante da equipe, sempre disponível para responder a possíveis perguntas. Este membro deve estar presente em tempo integral, faz parte da equipe de desenvolvimento e é responsável pelos requisitos.

A presença do cliente facilita a comunicação e a simplicidade do processo. Além disso, a proximidade física entre a equipe e o cliente é uma forma de valorizar a comunicação

Metáfora

As equipes XP utilizam metáforas para facilitar o desenvolvimento e a comunicação. Essas metáforas devem ser culturalmente aceitas pela equipe, tornando-se um contexto comum.

Padrões de Codificação

O modelo XP recomenda a aplicação de padrões de codificação desde as primeiras releases do produto, visando aumentar a produtividade e a qualidade do software.

Reuniões Diárias (Daily) em Pé

Originada do SCRUM, esta prática envolve a realização de uma rápida reunião em pé, na qual todos discutem as atividades concluídas no dia anterior, o planejamento para o dia atual e identificam possíveis impedimentos futuros.

Por
Publicado em
4 min. de leitura

Deixe um comentário

O seu endereço de e-mail não será publicado. Campos obrigatórios são marcados com *