Eu gosto do XP (programação extrema), especialmente a parte em que existem 2 programadores na mesma tela, já que a solução de um problema é frequentemente encontrada mais rapidamente se você explicar o que está fazendo e emparelhar a programação o força a explicar o que você está fazendo. fazendo.
Nos últimos 10 anos, o estilo de trabalho XP parece ter desatualizado em favor das metodologias de trabalho: Agile e / ou Kanban. Por quê? Como o XP me parece ser uma maneira muito boa de trabalhar, é muito sobre a programação, enquanto o Agile e o Kanban são mais sobre processos.
agile
extreme-programming
kanban
Niklas
fonte
fonte
Respostas:
Existem muitos estilos, métodos e mentalidades diferentes relacionados a todo o desenvolvimento do campo, e tudo tem seu próprio nome brilhante.
O Agile é apenas uma mentalidade que se afasta dos modelos usuais de programação estática (como cascatas) - seu principal objetivo é obter um desenvolvimento mais flexível e (no final) melhores softwares e clientes satisfeitos. Abaixo do Agile, existem muitos modelos diferentes, como Scrum, Kanban, XP.
Especialmente o Kanban não vem do desenvolvimento de software originalmente, ele se origina na construção de carros (lembro que a Toyota o introduziu para a construção de carros e alguns desenvolvedores de software adotaram e expandiram)
A programação em pares, revisões de código e outras coisas são apenas ferramentas - você pode (e deve) sempre fazê-lo durante um projeto, independentemente do método usado. Só que esse material é mais nativo para o ágil do que para o estático.
O XP introduziu mais ou menos essas coisas (ou pelo menos deu a elas um nome brilhante) e todas as seguintes coisas as adotaram porque simplesmente funcionou bem.
fonte
Na minha opinião, XP é uma prática de programação, Scrum e Kanban são práticas de gerenciamento de projetos. Eles têm uma relação, mas não se substituem.
Em nosso projeto Kanban, usamos programação em pares (principalmente para seções complexas e depuração), TDD, CI. Portanto, ele ainda é usado, mas o gerenciamento está pressionando mais o lado do gerenciamento de projetos.
fonte
A programação extrema é sobre a mecânica do desenvolvimento, enquanto o Agile é sobre o SDLC (ciclo de vida de desenvolvimento de software).
A principal razão pela qual você não ouve mais "Extreme Programming" pelo nome é o uso do termo "Extreme" como um adjetivo positivo. É principalmente apenas uma vítima do marketing. É por isso que você quase o ouve chamado "XP", mesmo verbalmente.
fonte
Eu tenho alguns pensamentos sobre programação em pares.
Para mim, isso é algo que você faz quando está preso a alguma coisa. Nessas ocasiões, pode ser muito eficaz, pode tirar você da rotina. Mas também é cansativo e uma maneira de trabalhar que o programador do tipo estéreo não gosta de fazer mais do que ocasionalmente.
Se você está cavando um buraco, poucas pessoas se importariam em obter ajuda de um colega de trabalho. Mas assim que há criatividade envolvida, as pessoas preferem fazer as coisas do seu jeito, e não do outro. Portanto, a tensão está sempre próxima, a menos que alguém não se importe de um jeito ou de outro ou se o papel de alguém é apenas sugerir claramente.
Onde eu trabalho a programação em pares não é formalizada, mas temos sessões ad hoc e elas geralmente são breves. Não será como "Ei colega, que tal uma programação extrema?" Mais frequentemente, começaria com "Você pode dar uma olhada na minha tela?" e puxando uma cadeira para eles.
Portanto, não acho que a programação em pares seja inoperante ou menos popular, é apenas uma daquelas ferramentas que você não usa com muita frequência porque é dispendiosa e não principalmente porque você tem duas pessoas pagas trabalhando em uma coisa.
fonte
O Agile é mais comercializável porque envolve diferentes partes interessadas com diferentes funções e responsabilidades relacionadas ao processo de criação de software.
Quando em sua segunda edição, Kent Beck aumentou o escopo dos participantes do XP, já era tarde: as pessoas já adotavam outras metodologias porque a primeira versão do XP tinha como alvo os praticantes do código, e é disso que o público ainda se lembra inconscientemente ou não. XP não era comercializável no nascimento.
fonte
Sempre achei que o Scrum era a versão do Agile mais fácil de vender para a gerência: as estimativas determinísticas, sua natureza um tanto doutrinária e bem definida ("você não está realmente fazendo o Scrum - sinta-se culpado!") ...
Estique seus sprints por tempo suficiente e leve essas pequenas "cartas de pôquer" a sério o suficiente, e o Scrum pode fazer muito cócegas na mesma coceira que os métodos Waterfall fizeram. Isso não é necessariamente ruim, mas não vamos nos esconder atrás de espelhos de fumaça e espelhos aqui.
No lado do XP, a programação de pares geralmente não apela ao gerenciamento, especialmente ao gerenciamento não técnico.
Para colocá-lo no formato de analogia SAT, Scrum: XP :: The Monkees: The Beatles
fonte