On-site Customer(Ekipteki Müşteri)
Daha önce de dediğimiz gibi XP’de süreç müşteriye göre şekil alır ve onun
istekleri doğrultusunda yazılım şekillenir. Bu yüzden müşterinin (genelde bir
kişi tercih edilir; ama uyumlu ise birden fazla kişi de olabilir) ekipte olması
önemlidir.
Planning Game(Oyun Planı)
XP
iteratif (tekrarlanan, ardışık devam eden) ve incremental (değişen, marjinal)
bir yazılım metodolojisidir, bu yüzden tam bir takım oyunu gerektirir, bu
nedenle her bir sürüm için ekip bir arada planı geliştirir. Plan herhangi bir
iş için kaçınılmazdır, aksi halde süreçleri kontrol etmek ve ortaya düzgün bir
iş koymak mümkün değildir.
Short Releases(Kısa Sürümler)
XP
temelde kısa sürede ortaya çalışan bir uygulama koymak ister, böylece hem
müşteri istekleri doğru alınır, hem memnuniyeti sağlanır hem de ekibi canlı
tutmayı sağlar. Uzun vadeli işler genelde sıkıcı olabileceği için kısa vadede
ortaya çıkan ürün geliştiriciler için de şevk vericidir. Bu yüzden basitlik
tercih edilir.
Stand-up Meeting(Ayakta Toplantı)
Bu tür toplantılar
en fazla 15 dakika olacak şekilde ayarlanır. Temelde yapılmak istenen
projenin durumu hakkında bilgi alışverişinde bulunmaktır.
Retrospective(Geriye Bakış)
Temel amaç yaşanan problemlerin analizini yapmaktır, böylece aynı hatanın
gelecekte tekrar etmesinin önüne geçilmiş olur.
Metaphor(Mecaz)
Mecaz kullanmanın maksadı
geliştirilecek yazılımın içeriği hakkında ekibin bir fikrinin oluşmasıdır. Örneğin
e-ticaret uygulaması geliştirecek ekip için alış veriş sepeti bir metafor olarak
kullanılabilir. Böylece metafor ekibe söylendiğinde herkesin kafasında
e-ticaret sistemi yazacağı fikri kolaylıkla oluşacaktır.
Collective Ownership(Ortak Sorumluluk)
Klasik modelde
programcılar genelde yalnız kendi yazdıkları kodlardan sorumludurlar, klasik
yöntemle çalışan programcılar başkalarının kodları üzerinde oynamak istemezler.
Oysaki XP’de tüm programcılar kodu sahiplenir, gerektiğinde değiştirir.
Continious Integration(Sürekli Entegrasyon)
Projeye eklenen
yeni bölüm veya komponentler sisteme hemen entegre edilir ve test edilirler. Bu
hem diğer programcıların da gelişimi görebilmesini sağlar hem de daha sonra
yazılımın parçalarını entegre etmek için ekstra zaman kaybı yapılmamış olur.
Coding Standards(Kod Yazma Standartları)
Birden fazla
yazılım geliştiricinin yer aldığı uygulamalarda olmazsa olmaz bir durumdur.
Ortaya kaliteli ve stabil çalışan bir ürün çıkarılabilmesi için değişken
isimlendirmeden, kullanılacak alt yordam, fonksiyon formatına kadar belirlenir.
Böylece her programcı bir başkasının koduna müdahale ettiğinde kodu okumakta
zorlanmaz ve gerekli değişiklikleri yapabilir.
Sustainable Pace(Kalıcı Tempo)
XP, haftalık 40 saat
çalışma planı sunar. Yorgun, uykusuz bir programcı verimli olamayacağı için
fazla çalıştırılmasına tamamen karşı çıkar ve günlük 8 saat olmak üzere haftada
40 saat çalışmaya sadık kalır. Böylece projede aksamalar kolay kolay olmaz.
Testing(Test Etmek)
XP testleri çok önemser
ve muhakkak yapılması gerektiği üzerinde durur, hatta daha da ileri giderek
önce gerekiyorsa test yazılımlarının kodu yazılır, sonra yazılım geliştirme
aşamasına geçilir.
Simple Design(Basit Dizayn)
XP’de geliştirilen
yazılım en basit hali ile geliştirilir, kompleks olmamasına özen gösterilir,
böylece yeni geliştirmeler kolayca entegre edilebilir.
Refactoring(Yeniden Yapılandırma)
Yazılım
tasarımı yapılırken yapılan bir hata bazen telafisi zor sorunlara yol açabilir,
bunun için yazılan kod parçacığının yeniden yapılandırması gerekebilir.
Pair Programming(Eşli Programlama)
Temelde aynı bilgisayarda
iki programcının çalışması tavsiye edilir. Bir programcı yazarken diğer
programcı kodlama yapısına dair düşünür ve tavsiyelerde bulunur, sonra diğer
programcı yazmaya başlar ve diğeri aynı görevi yerine getirir. Bu hem programcı
yedekliliğini sağlar, hem de kod yazanların kalitesinin yükselmesini sağlar.
Hiç yorum yok:
Yorum Gönder