Aşırı programlama (XP) neden Agile, Kanban vb. Lehine güncel değil?


15

XP'yi (aşırı programlama), özellikle de aynı ekranda 2 programlayıcının bulunduğu bölümü seviyorum, çünkü sadece ne yaptığınızı açıklarsanız ve bir çift programlama sizi ne yaptığınızı açıklamaya zorlarsa, bir sorunun çözümü genellikle daha hızlı bulunur yapıyor.

Son 10 yıl içinde, XP çalışma tarzı, çalışma yöntemleri: Agile ve / veya Kanban lehine güncelliğini yitirmiş gibi görünüyor. Neden? XP bana çalışmanın çok iyi bir yolu gibi göründüğünden ve programlama konusunda çok şey yaparken, Agile ve Kanban süreçlerle ilgili.


28
XP çevik bir yaklaşımdır. Yani "Agile" gerçekten XP'nin yerini alamaz.
Joachim Sauer

1
Volker'ın hemen hemen aynı şeyi söylediğini fark ettiğimde, bir cevap göndermek üzereydim . Çevik süreçler doğaya göre uyarlanabilir, "mükemmel / saf" Kanban, Scrum, XP gibi bir şey yoktur, daha çok bir karışım ve eşleşme şeyidir. XP, bu bağlamda, tanıttığı bazı kavramların neredeyse tüm diğer yaklaşımlar tarafından benimsenmesi nedeniyle hala güçlü hale geliyor.
yannis

3
Wikipedia'da XP'de ilginç bir eleştiri listesi var , ancak tarama yaparsanız, çoğu genel olarak Agile için geçerlidir.
yannis

3
XP'nin hiçbir yere gitmediğini sanmıyorum. Çoğu çevik gelişimin bir parçası olarak kabul edilir. Bence modası geçenler 'aşırı' terimini kullanmaktı. Bana her zaman Mt. Bir snowboard ile çiy masanın üstüne eğildi.
JimmyJames

Tüm "Eşli Programlama" olayı işe yaramadı, IMO. Belirli sorunların çözümü için harikadır, ancak programlama sorunlarının büyük çoğunluğu (kullanıcı arabirimleri, mimariler, iş kuralları), iki yazılım geliştiricisinin aynı ekranda oturmasının maliyetini haklı çıkarmaz.
Robert Harvey

Yanıtlar:


21

Tüm alan geliştirme ile ilgili birçok farklı stil, yöntem ve zihniyet vardır ve her şeyin kendine özgü parlak bir adı vardır.

Agile sadece alışılmış, statik programlama modellerinden (şelaleler gibi) uzaklaşan bir zihniyettir - birincil hedef daha esnek bir gelişme ve (en sonunda) daha iyi yazılım ve mutlu müşteriler elde etmektir. Çevik altında, Scrum, Kanban, XP gibi birçok farklı model var.

Özellikle Kanban başlangıçta yazılım geliştirmekten gelmez, otomobil inşa etmekten kaynaklanır (Toyota'nın otomobil inşa etmek için tanıttığını ve bazı yazılım geliştiricilerinin benimsediğini ve genişlettiğini hatırlatırım)

Çift programlama, kod incelemeleri ve bu tür şeyler sadece araçlardır - hangi yöntemi kullanırsanız kullanın, bir proje sırasında her zaman yapabilirsiniz (ve yapmalısınız). Sadece bu şeylerin statik olmaktan çok çevik olduğu daha doğal.

XP bu şeyleri az çok tanıttı (ya da en azından onlara parlak bir isim verdi) ve aşağıdakilerin hepsi bunları benimsedi çünkü iyi çalıştı.


3
@Refro'dan da bahsedildiği gibi, Scrum ve Kanban çift programlama veya kod incelemeleri içermez (ancak bunları hariç tutmazlar). Her ikisi de bir yazılım geliştirme sürecinden çok bir proje yönetimi metodolojisidir. Bu nedenle, yazılım geliştirme dışındaki çok çeşitli alanlara uygulanabilirler. Oysa XP özellikle bir yazılım geliştirme yaklaşımıdır. Bunlar bir arada olabilir - XP ekibinizi Scrum'da yönetebilirsiniz.
Péter Török

16

Bence XP bir programlama uygulaması, Scrum ve kanban proje yönetimi uygulamaları. Bir ilişkileri var ama birbirlerinin yerini almıyorlar.

Kanban projemizde çift programlama (çoğunlukla karmaşık bölümler ve hata ayıklama için), TDD, CI kullanıyoruz. Bu yüzden hala kullanılıyor, ancak yönetim proje yönetimi tarafını daha da zorluyor.


1
Çift programlama müzisyen uygulamalarında sıkışma gibidir. Bazen çalışıyor bazen de hiç çalışmıyor. Nadir durumlarda, genel bir oyun yolu olarak ve çok nadir durumlarda da beste yolu olarak benimsenebilir .
Alex Yu

0

Aşırı Programlama geliştirme mekaniği ile ilgili iken Agile SDLC (yazılım geliştirme yaşam döngüsü) ile ilgilidir.

Artık "Extreme Programming" hakkında ismin duyulmamasının ana nedeni, "Extreme" teriminin olumlu bir sıfat olarak kullanılmasıdır. 90'lı yılların başında 00'ın şimdi bayat olarak görülen şeydir. Çoğunlukla sadece bir pazarlama kurbanı. Bu yüzden neredeyse tamamen sözlü olarak "XP" olarak anıldığını duyuyorsunuz.


0

Çift programlama hakkında bazı düşüncelerim var.

Bana göre bu, bir şeye takıldığınızda yaptığınız bir şeydir. O zamanlar çok etkili olabilir, sizi rut'tan çıkarabilir. Ancak stereo tipi programlayıcının ara sıra yapmaktan daha fazlasını sevmemesi de yorucu ve bir çalışma biçimidir.

Bir çukur kazıyorsanız, çok az insan bir iş arkadaşından yardım almayı düşünür. Ancak yaratıcılık söz konusu olduğunda, insanlar başkalarının yollarından ziyade işleri kendi yollarıyla yapmayı tercih ederler. Bu nedenle, biri şu ya da bu şekilde umursamadığı veya rolünün açıkça önerilmediği sürece gerilim her zaman yakındır.

Çalıştığım yerde çift programlama resmileştirilmiyor ancak geçici oturumlarımız var ve bunlar genellikle kısa. "Hey iş arkadaşı, sıra dışı programlamaya ne dersiniz?" Daha sık "Ekranıma bakabilir misiniz?" ve onlar için bir sandalye çekiyorlar.

Bu yüzden çift programlamanın ölü ya da daha az popüler olduğunu düşünmüyorum, çok sık kullanmadığınız araçlardan sadece bir tanesi çünkü pahalı, çünkü öncelikle bir şey üzerinde çalışan iki ücretli insanınız olduğu için değil.


0

Çevik yazılım pazarlaması süreci ile ilgili farklı rol ve sorumluluklara sahip farklı paydaşları içerdiğinden daha pazarlanabilir.

İkinci baskısında Kent Beck, XP içindeki katılımcıların kapsamını genişlettiğinde, geç oldu: insanlar zaten diğer metodolojileri benimsedi çünkü ilk XP sürümü kodun yapıcılarını hedefliyor ve seyircinin bilinçsiz olarak hala hatırladığı ya da hatırlamadığı şey bu. XP doğumda pazarlanamazdı.


0

Her zaman Scrum'ın yönetime satmak için en kolay olan Agile versiyonu olduğunu düşündüm: deterministik tahminler, biraz doktrini, iyi tanımlanmış doğası ("Scrum'ı gerçekten yapmıyorsunuz - suçlu hissediyorum!") ...

Sprintlerinizi yeterince uzatın ve bu küçük "poker kartlarını" ciddiye alın ve Scrum, Waterfall yöntemlerinin yaptığı kaşıntıyı gıdıklayabilir. Bu mutlaka kötü değil, ama burada duman ve aynaların arkasına saklanmayalım.

XP tarafında, çift programlama genellikle yönetime, özellikle de teknik olmayan yönetime hitap etmez.

SAT benzetme biçimine koymak için Scrum: XP :: The Monkees: The Beatles

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.