Yazılım geliştirme biraz sabıkalı bir etkinlik. Yazılım projelerinde maliyet, zaman ve kalite açısından her üç kriteri başarı ile sağlayarak tamamlanma oranı maalesef hiç bir zaman istediğimiz oranlarda değil. Çeşitli araştırmalar, projelerin sadece %15'inin bu üç kriterdeki beklentileri sağlayabildiğini gösteriyor. Yazılım projelerinin başarılarını başka kriterler açısından inceleyen benzer araştırmalar da pek iç açıcı sonuçlara ulaşmıyor.
Yazılım projelerinin başarısının altında yatan en önemli etmenlerden biri, yazılım personelinin verimliliği. Bir proje ekibinin başarılı olmasında bir çok teknik, yönetimsel ve psikolojik neden rol oynuyor. Oldukça karmaşık olan bu ekip dinamiğinin arkasında ekibi oluşturan elemanların bireysel verimliliği ise bu etmenlerin sanırım en önemlisi.
Yazılım personelinin verimliliği oldukça geniş değişkenlikler gösterebiliyor. Çeşitli araştırmalar bu değişkenliğin en iyi ile en kötü arasında 1'e 10'a kadar, hatta bazı yazılım geliştirme faaliyetlerinde 1'e 20'ye kadar çıkabildiğine işaret ediyor. Hemen hemen başka hiç bir disiplinde bu kadar geniş verimlilik değişkenliğine rastlanmıyor. Örneğin bu yazının yazarı ile dünya yüz metre rekoru sahibi bir koşucu arasında yüz metrelik yarışı tamamlama konusundaki "verimlilik" farkı sadece %200 civarındadır. Yazılım personeli verimliliği içindeki değişkenliğin bu kadar yüksek olması, aynı zamanda yazılım evleri arasında da verimlilik anlamında 1-11'e kadar varan farkların oluşmasına neden oluyor.
Verimliliği etkileyen ve maalesef sıkça göz ardı ettiğimiz bir konu ise ofis yerleşimi. BT yöneticilerinin bence üzerinde durmaları gereken bir konu, BT elemanlarının oturma yoğunluğunun verimliliğe doğrudan etkisi olduğudur. Bu konuda Demarco ve Lister'in yaptığı araştırmalar, önemli gerçeklere ışık tutuyor. Bu araştırmalardan sanırım en ilginci oturma sıklığı ile gürültü arasındaki ilişkiyi inceleyen ve daha sonra da gürültü ile yazılım kalitesi arasındaki ilişkiyi inceleyen araştırmalar. DeMarco ve Lister'in bu konuda yaptığı çalışmalar, "Peopleware: Productive Projects and Teams (1999, Second ed., Dorset House)" kitabında yer alıyor.
Kitapta bahsedilen bir başka araştırma ise IBM'in Santa Teresa kampusünün mimarisi sırasında yapılan bir araştırmadır. IBM kampusü kurmadan önce bir çok mühendis, destek elemanı, yazılım geliştirici ve kalite kontrol elemanının çalışmalarını izleyerek minimum oturma düzeninin ne olması gerektiğini araştırmış. Araştırma sonuçlarına göre BT elemanlarının minimum çalışma koşullarının aşağıdaki gibi olması gerektiği sonucuna varılmıştır:
- Her çalışana 9.2 metre karelik bir oturma alanı,
- Her çalışana 2.8 metre karelik bir masa yüzeyi,
- 1.8 metre yüksekliğinde ya da kapalı ofis şeklinde bir gürültü önleme mekanizması kurulmalıdır.
DeMarco ve Lister yukarıdaki bulguları bir çok IT firmasının oturma düzeni ile karşılaştırmış, ama sadece %16'sında her BT elemanına 9.2 metrekarelik bir oturma alanı verildiğini bulmuşlardır. Genelde "tasarruf tedbirleri" nedeniyle ofis maliyetlerinde bir tasarrufta bulunulmakta, ancak bunun çalışan verimliliğine etkisi göz önüne alındığında bu tasarrufun özellikle yazılım geliştirme etkinliklerinde bizi zarara uğrattığı ortaya çıkmaktadır.
Kısaca özetlemek gerekirse programcı verimliliğini etkileyen bir çok faktör bulunuyor. Bu faktörlerin önemli bir bölümü ofis ortamı ve gürültü ile ilgili. Firmaların ofis maliyetlerinden tasarruf etmek için yoğunluğu artırmaları bir çok çalışma türü için mantıklı olmasına rağmen BT kategorisindeki çalışmalar için ters etki yaratıyor. Bu şekilde ofis maliyetlerinden tasarruf edilebiliyor, ancak bu yoğunluk ve gürültü artışı BT personel verimliliğini düşürüyor. BT yöneticilerinin verimlilik ve ofis kullanımı arasındaki ilişkiyi inceleyerek temel prensipleri devreye almaları başarılı BT operasyonları için şart! Aksi durumda düşen verimlilik ve düşen kalite ile ilgili çözümü çok daha maliyetli problemler ile karşı karşıya kalınıyor.
Yazarın Diğer Köşe Yazıları
Yazılım Sektörünün Önündeki Engeller (Mayıs 2003)