A metodologia XP ou Extreme Programming é um processo de desenvolvimento de software utilizado desde a sua criação, nos anos 90. Se você é iniciante e está em dúvida sobre qual metodologia investir para enriquecer o seu currículo, leia este artigo até o fim e saiba mais.
Como o próprio nome sugere, XP é a programação no extremo. Assim, as boas práticas adotadas no desenvolvimento são repetidas incansavelmente e em pequenas fases. Portanto, você está pronto para conhecer melhor essa metodologia, as suas características e saber o porquê da sua utilização até hoje? Acompanhe nos próximos tópicos.
Como foi a criação do Extreme Programming?
O Extreme Programming teve sua criação em 1996 por um engenheiro de software chamado Kent Beck. Mas para entender o conceito por trás dessa metodologia é interessante revisitar o contexto da sua criação.
Dessa forma, voltamos nos anos 60 e 70. Naquela época, a crise na indústria levou o Japão a criar novos modelos de produção. Por consequência, surgiu a filosofia JIT (Just in time).
Esse modo de gestão visa reduzir estoques para que os problemas reais da empresa apareçam mais claramente. A partir daí, eliminam-se os desperdícios para que as empresas concentrem seus esforços nas demandas do momento.
Dessa maneira, Beck trouxe para o XP o princípio de que a produção precisa ocorrer na hora exata. Evita-se, assim, gastar tempo com o desenvolvimento antecipado e, muitas vezes, desalinhado com as atuais necessidades do cliente.
Outro detalhe é que a metodologia XP surgiu poucos anos depois da popularização da internet, o que gerou uma nova corrida pelo desenvolvimento de softwares mais flexíveis. Isso porque, antes da internet, os softwares tinham uma vida útil mais longa.
Quais os cenários da aplicação do Extreme Programming?
Como você viu, a metodologia XP vem sendo usada nas empresas de TI (Tecnologia da Informação) desde a década de 90 nos países. Mas entre os seus cenários principais está o de empresas com equipes pequenas e médias, com até 12 pessoas.
Outro dado significativo é que esses times trabalham, geralmente, com requisitos vagos e em softwares que se modificam constantemente conforme a necessidade do cliente e a resposta do mercado.
Os desafios, portanto, fazem parte do cotidiano. Tanto é assim que Beck entendeu que existem 3 passos para implementar a metodologia XP e obter resultados na equipe. São eles:
- Escolha o pior dos problemas;
- Encontre uma solução para ele com o método XP;
- Quando ele deixar de ser um problema, repita os passos 1 e 2.
É justamente por isso que o XP se assemelha à filosofia JIT, ou seja, uma coisa de cada vez, até a sua complementação por completo.
Desse modo, acompanhe a seguir as características técnicas mais conhecidas de processo.
Quais são as características da metodologia XP?
O estudo da metodologia XP, especialmente para quem está iniciando na área de desenvolvimento e não quer perder nenhum detalhe de vista, se baseia em valores e princípios. Você irá conhecê-los melhor na sequência.
Valores
- comunicação: a falta dela pode gerar retrabalho e dificuldades na execução do projeto;
- simplicidade; assim como o JIT, o desperdício deve ser eliminado. Por isso, busque a solução mais simples e funcional possível. Assim, no desenvolvimento de um software não queira reinventar a roda;
- feedback: o feedback alimenta o processo e por isso é tão necessário obter o retorno do cliente para dar andamento aos ajustes;
- coragem: durante o processo de feedback é preciso ter coragem para jogar o código fora e voltar à estaca zero, recomeçando o projeto.
Princípios
- feedback rápido;
- simplicidade;
- abraçar mudanças;
- trabalho de alta qualidade.
Além disso tudo, outras características são típicas do desenvolvimento focado em metodologia XP. Confira a seguir as principais práticas do método.
Práticas
- padronização do código: favorecendo assim o trabalho em equipe;
- desenvolvimento orientado a testes: o que é essencial no teste unitário;
- refatoração: melhora a clareza e a leitura do código;
- integração continua: conhecendo assim o status real da programação;
- programação em pares: enquanto um codifica, o outro revisa;
- entrega em pequenas fases: não é preciso esperar o software ser finalizado para apresentar as funcionalidades ao cliente, já que esta apresentação gradativa, conforme a fase de execução, reduz as incertezas da equipe e o retrabalho, além de otimizar os pequenos ajustes.
Enfim, como você pode observar, a metodologia desenvolvida por Kant Beck foca nos esforços concentrados e na distribuição do projeto em pequenas etapas para eliminar a chance de falhas. Para reforçar, confira uma comparação feita pelo próprio Beck:
Precisamos controlar o desenvolvimento de software fazendo muitos pequenos ajustes, e não uns poucos grandes ajustes, tal quando conduzimos um carro. Isso significa que precisamos de feedback para saber quando estamos saindo do caminho, precisamos de muitas oportunidades para fazermos correções, além de fazer essas correções a um custo razoável.
Kant Beck
Conclusão
Quando se pensa em metodologia ágil, o método XP traz mais agilidade para a equipe de desenvolvimento de software. Isso é movido, principalmente, pela entrega de small releases (pequenas fases) com iterações frequentes.
Portanto, o método é muito adotado em startups, com equipes enxutas e prazos apertados. Nesse sentido, ele é uma boa pedida para devs iniciantes tomarem conhecimento e ganharem experiência nessa prática.
E, por falar em adquirir conhecimento para melhorar o currículo, a Coodesh é uma plataforma remota de recrutamento de pessoas desenvolvedoras para empresas e startups nacionais e internacionais.
Entre as skills solicitadas estão o conhecimento e o domínio de metodologias ágeis, conforme o seu nível de experiência e o perfil da empresa.
Portanto, para conhecer as vagas para devs na nossa plataforma, acesse o link e continue acompanhando as metodologias mais usadas abordadas nos conteúdos do nosso blog.