CMM ve eXtreme Programming
Nitelik, Bilişim 2003'e
yazılım kalitesi alanından son derece güncel bir bildiriyle katıldı. Genel
Müdür Orhan Kalaycı, Bilişim Kurultayı'nda sunduğu bildiride CMM ve XP
(eXtreme Programming) kavramları arasındaki ilintiyi irdeledi. Konuyla
ilgili olarak Orhan Kalaycı ile (Bilişim öncesinde) yaptığımız görüşmeyi sunuyoruz:
Bilişim
yalnızca bir fuardan ibaret değil. Kurultay bölümü de var. Bize biraz
Bilişim’in bu yönünden söz edebilir misiniz? Beylikdüzü'ndeki Bilişim
Fuarı, bilişim firmalarının son kullanıc ile buluştukları ve ürünlerini
tanıttıkları bir organizasyon. Bilişim Kurultayı ise, firmaların kendi
aralarında bilgi alışverişinde bulundukları sektör içi bir haberleşme ve
bilgilenme çalışması olarak tanımlanabilir. Sanırım, bu yıl Türkiye Bilişim
Derneği, yeni bir yaklaşım deneyecek ve Bilişim Haftası etkinlikleri ile
Beyoğlu, İstiklal caddesinde çeşitli faaliyetler düzenleyecek. Bu
faaliyetlerin bazılarının daha çok yine kullanıcıya ve bir miktar da sektör
içi bilgilendirmeye yönelik olacağını sanıyorum.
Bu yıl
Kurultay’a Nitelik de katkıda bulunacak. Nitelik’in Bilişim gündeminde neler
var? Kurultaya ilk defa 1996 yılında "Yazılım Şirketlerinde Toplam
Kaliyete Giden Yol: CMM" isimli bildiri ile katılmıştım. Bu yıl Nitelik
olarak katılacağız. Amacımız, Türk yazılım sektörünün uluslararası pazarda
rekabet gücünü arttırmak üzere kalite modellerini başarılı bir şekilde
uygulamasına ve başarılarını uluslararası sertifikalarla kanıtlamasına katkı
sağlamaktır. Hedefimiz, 2007 yılından önce en az bir Türk Yazılım şirketinin
CMM L4 seviyesine ulaşmasına doğrudan ve etkin katkıda bulunmaktır. Nitelik,
bu yılki Bilişim'de "Yazılım Kalitesinin Türk Yazılım Sektörünün Dünyaya
Açılmasındaki Önemi" konulu bir panele konuşmacı olarak katılacak ve "CMM ve
XP (Extreme Programming" başlıklı teknolojik bir bildiri sunacaktır.
Önümüzdeki bir kaç yıl içinde dünyanın ve Türkiye'nin bilişim sektöründe CMM
ve XP'nin en önemli gündem maddeleri olacağına inanıyoruz.
Nedir
Extreme Programming? Extreme Programming, kısaca XP, aslında yazılım
geliştiren herkesin iç güdüsel olarak izlediği/izlemek istediği bir
yaklaşımın resmi olarak tanımlanmış halidir. Yazılım geliştiren herkes
bilirki, "kodlama" geliştirmenin sabırsızlıkla beklenen kısmıdır. Aksi bir
baskı olmadığı takdirde yazılım mühendisleri, programcılar "kodlama" ya
hemen başlamak eğilimdedirler. Biz, yazılım kalitecileri, yıllarca bu
eğilimi, yanlış, hatalı ve kaçınılması gereken bir kötü alışkanlık olarak
değerlendirdik. XP ise bunun tam aksini öneriyor. Müşteri isteklerinin en
önemli kısmının öncelikle belirlenmesini, kodlanmasını, test edilmesini ve
çalışır duruma getirilmesini ve çalışan kod bozulmadan (çalışmasına devam
ettiği testler ile kontrol edilerek) müşterinin diğer istekleri bunun
üzerine yine çalışır bir kod ilave edilerek müşteriye teslim edilecek son
ürüne doğru ilerlemek XP nin temel felsefesidir. XP'nin prensipleri basittir
ama başarı ile uygulanması için ileri derecede yetişmiş bilgili elemanlara
ihtiyaç duyar. XP’nin dört temel taşı şunlardır:
-
İletişim: Yüz yüze iletişim taviz verilemez bir gerekliliktir. Yüz
yüze iletişimi engelleyecek her türlü kısıt kesinlikle ortadan
kaldırılmalıdır.
-
Basitlik: Basitlik, yapılmaması gereken işlerin maximum düzeye
çıkarılması sanatıdır. Yapılmaması gerekli olmayan bir şey kesinlikle
yapılmamalıdır.
-
Geri
Besleme: Sık sık projelerde yazılım ekibi ile müşteri önemli bir
sorunları olduğunu ürün teslim tarihinden çok kısa bir süre önce
keşfederler. XP de her hafta müşteriye çalışan bir ürün teslim edilmesi
hedeflendiğinde ürün üzerinden müşteri ile yazılım ekibinin ortak bir
zeminde buluşmaları en baştan kolaylaştırılır.
-
Cesaret: Yazılım projeleri genellikle başarısız olur. Başarısız olmak
kaçınılması gereken bir durum değildir. Doğaldır. Başarısızlıktan korkan
ekipler yavaş haraket ederler, genellikle başarısızlığı ortadan kaldırmaz
sadece geçiktirirler. Başarısızlığa mümkün olduğunca erken uğramak daha
sonra telafi etme şansını arttırır. XP, başarısızlıktan korkmayı değil en
kısa zamanda başarısız olmayı ve onu en kısa zamanda telafi etmeyi önerir.
Extreme
Programming konusunu çok önemsediğiniz anlaşılıyor. Neden?
Evet, Extreme Programming'i (XP'yi) çok
önemsiyoruz. CMM şirketin kurumsal yapısını, yönetsel süreçlerinin
başarısını ölçmek için yöntemler sunarken, XP yazılım geliştirme süreçi
konusunda çözümler önermektedir. CMM ile XP birlikte yazılım firmalarına
komple bir çözüm oluşturmaktadır. CMM, özellikle ABD pazarında yıllardır
kendini kanıtlamış ve kabul görmüştür. XP'nin de önümüzdeki yıllarda yazılım
geliştirmede yeni bir paradigma olarak benimseneceğini düşünüyoruz. Nesne
tabanlı yazılım tasarımı ilk çıktığında nasıl büyük bir ilgi ile karşılanmış
ise XP'de şu anda dünya yazılım literatüründe aynı şekilde ani bir sıçrama
ile gündeme girmiştir. Açıkcası, biz kalitecilerin yıllardır savunduğu
Şelale (Waterfall) ya da Aşamalı (Incremental) geliştirme, sanayi devrimi
disiplerinden özellikle inşaat sektöründen edinilen proje yönetimi
tecrübeleri sonucu önerilen yöntemlerdir. Sanırım, XP ve genel olarak çevik
geliştirme yöntemleri, bilgi çağı disiplerinin, özellikle yazılım sektörünün
proje geliştirme yöntemi olacaktır.
Tüm
bunların CMM ile nasıl bir bağlantısı var? Aslında, CMM ile XP, yazılım
firmasının farklı alanlarına hitap ediyorlar. CMM, kurumsallaşma ve yönetim
yapısı ile ilgilenirken, XP doğrudan yazılım geliştirme ile ilgileniyor.
Diğer, en önemli farklılık ise, CMM kurumun sorunlarını saptamaya odaklı
olmasına ve doğrudan çözüm önermekten özellikle kaçınmasına karşın, XP açık
ifadeler ile çözümler önermektedir. Literatürde bir çok defalar CMM ve XP
ilişkisi incelenmiş ve CMM ile XP nin birbirini tamamladığı sonuçuna
varılmıştır. CMM ya da CMM, yönetsel süreçlere önem verir demiştik. XP,
yazılım geliştirmeye getirdiği yeni paradigma ile, yazılım projelerinin
yönetimi çok kolaylaştırmış böylece CMM'nin üzerinde hassaslıkla durduğu bir
çok konuyu sorun olmaktan çıkarmıştır. Örneğin, müşteri isteklerinin takibi,
proje planlama, proje takip gibi CMM 2. seviye süreçleri, XP'nin küçük
sürümleri ile devamlı çalışan bir kod önermesi ile çok kolaylaşmakta ve
doğal olarak sorun olmaktan çıkmaktadır. XP'yi bütün yönleri ile tam olarak
uygulayan bir yazılım firması CMM ya da CMM 3. Seviye'ye çok yaklaşmaktadır.
Elbette, XP'de söz edilmeyen ve CMM'nin özellikle üzerinde durduğu bazı
süreçler vardır. Örneğin, eğitim, alt yüklenici yönetimi süreçleri XP de
karşılık bulamamaktadır.
Bilişim
katılımcıları, Kurultay’da Nitelik’in yapacağı sunuşları neden kaçırmamalı?
Yazılım dünyası şu anda bu iki modeli çok derinden tartışıyor ve bu ilgi
giderek büyüyecek. Türk yazılım sektörü, dünyadaki trendlerden uzak
kalmamalı ve bu tartışmaları sıcağı sıcağına takip etmelidir. Önümüzdeki
birkaç yıl içinde yazılım satın alanların, firmalardan CMM 2. ve 3. seviye
belgelerini istemeleri hiç sürpriz olmayacaktır. Gartner grubunun bu
konudaki öngörüleri de bu yöndedir. Yazılım firmalarının kendi iç işleri
açısından baktığımızda, önümüzdeki bir kaç yıl içinde XP kullanan firmalar,
artan müşteri memnuniyeti, daha hızlı ve daha az adamla teslim edebilmeleri
ile rakiplerine avantajlar sağlayacaklardır. Türk yazılım firmalarına her
iki konuda da mümkün olduğunca bilgilenmelerini ve bir an önce harekete
geçmelerini tavsiye ediyorum.
-Nerede
ve ne zaman yapacaksınız bu sunuşları?
CMM ve XP konusundaki sunuşumuz, 5 Eylül
Cuma 15.00 15.30 Askeri Müze, Kırmızı Salon, Harbiye (www.bilisimhaftasi.org.tr/program_uygulama.html)
Ayrıca, 2 Eylül Salı 10.00-13.00 Askeri Müze, Parke A, Harbiye (www.bilisimhaftasi.org.tr/program_toplu.html
).
|
|