DEV Community

hdemiray
hdemiray

Posted on

Pair Programming Nedir ? Faydaları Nelerdir ?

Pair programming 2 yazılımcının bir proje veya problem üzerinde çalışmasıdır. İkili programlama da denilebilir.

Agile(çevik yazılım geliştirme) yöntemlerindendir.

2 yazılımcı bilgisayar başına oturur ikiside aynı anda yazamayacağı için biri Observer(gözlemci) diğeri ise Driver(sürücü) rollerine geçer.

Sürücü, projeyi geliştiren veya probleme çözüm arayan kişi.

Gözlemci ise problem çözümünü inceleyen, feedback'ler veren ve sürücüyü yönlendiren kişidir.

Eşleşmeler

Bu ikili çalışmada 3 farklı eşleşme olabilir

Uzman Uzman
Acemi Uzman
Acemi Acemi

Bunları incelediğimizde :

Uzman - Uzman : Çok iyi sonuçlar alınır. Kötü yanı ise, deneyim yüksek seviyede olduğu için, eğer ortada bir problem varsa çözümlere genelde deneyim ile ulaşırlar ve bu yeni fikirler açısından olumsuz bir durumdur.

Acemi - Uzman : Bu ikili en fazla verim alınan modeldir. Uzman geliştiricinin acemiye akıl hocalığı yapması ve gelişimine destek vermesi açısından önemlidir. Acemi geliştiricinin öğrenmeye açık olması ve sorgulayıcılığı ile yeni fikirler ortaya çıkacaktır. Çırak usta ilişkisi ile aceminin gelişimi gözlemlenebilecektir.

Acemi - Acemi : Bir acemi geliştiricinin akıl hocası yoksa eğer. Tek başına çalışmaktansa 2 aceminin beraber çalışması, farklı bakış açısından faydalı olur.

Pair Programming Faydaları

  • Disiplin artırır.
  • Kodun kalitesi artar.
  • Ortak kod sahipliği oluşur, birinin yazdığından diğerinin de haberi vardır ve bunun üzerine aynı bilgi ile tartışabilirler.
  • Moral ve motivasyonu yüksek tutar. Bir işte iki kişinin çalışması kodu yazan kişiyi motive eder.

Şirketler bunu kullanıyor mu?

Şirketlerin çoğu pair programmingi uygulamıyor, bunu maaliyetli buluyor bir işe iki kişi verildiği için.

Ancak burada maaliyetten çok bir kazanç var, ortaya çıkan iş daha kaliteli ve ileriye dönük oluyor.

Ekip ve takım olarak çalışan start up veya kurumsal firmalar mutlaka bu konuya önem veriyor.

Pair Programming için yanyana olma zorunluluğu yoktur.
Driver roldeki kişi ekranını Gözlemci kişiye paylaşarak ta eşli programlama yapılabilir.

Yine pair programminge çok benzeyen diğer eşli programlama türü olan Mob Programming (Çoklu programlama) ise ekipler tarafından kullanılır, burada 1 kişi sürücü ve ekibin geri kalanı gözlemci olur.

Discussion (0)