7 Nisan 2013 Pazar

Yazılım Projeleri Yönetimi

Ne zaman ki yazılım ürünlerin bir parçası haline geldi o zaman dünyanın aklı karışmaya Eminim Şaka Yapıyorsunuz Bay Feynman  Kalem ya da motor parçası ya da bir kutu değildi ki bu. Üretim bandında ölçümler yapıp süreç adımlarını iyileştirme pek uygulanamıyordu (en azından başlangıçta). 

Söz konusu olan yazılımdı ve tabii ki ilk ürünler savunma araçları idi. Kritik sistemlerdi. Manhattan Projesi'ni ilk örneklerden biri olarak düşünebiliriz. Manhattan Projesi 1939 yılında başlayıp 130 000'den fazla çalışanı ve yaklasık 2 milyar dolara (bugünün parası ile 26 milyar dolara) mal olmuştur bkz. Richard P. Feynman bu projenin üyelerinden biriydi. Hayatında gördüğü en güçlü bilgisayarın bu projede kullanıldığını ve işlemlerin nasıl yapıldığını Eminim Şaka Yapıyorsunuz Bay Feynman kitabında anlatmıştır.

Yazılım geliştirme projesine başladığında istenen ile sonunda çıkan ya pek aynı olmuyordu. Ya da, istenen elde ediliyordu da ayrılan bütçeden kat be kat fazlaya mal oluyordu. 

İşin içinden çıkılamadığında da "Amaan, ArGe (!) zaten bu proje" denilip başarısızlığın üstü güzelce örtülüyordu.

Zaman geçtikçe yazılım geliştirme süreçlerinin kontrol altına alınması, proje yönetiminin de yazılım işlerinden anlar hale gelmesi en önemli beklenti olmaya başlandı.

En çok yazılım projesi yöneticileri ve takım üyelerinin kafa patlattığı bir kavramdır yazılım projesi yönetimi.  Gerçek vakalar ile PMBOK 5. sürümü temel alarak elimden geldiğince yardımcı bir çalışmayı bu blog aracılığı ile yapacağım bundan sonra.

PMI bir ek dokümanıolan SW PMBOK taslak olarak hazırladı. 2013 yılı başında gözden geçirilmesi için sitesinde yayımladı. Henüz resmi olarak yayımlamadı. Bu sebepten dolayı temel olarak PMBOK 5th Edition, gerektiğinde CMMI-DEV v1.3 ile diğer ilgili standart/modeller belirteç olarak kullanacağım yolumuzu daha gerçekçi kılmak için.

Girizgahı şimdilik bitiriyorum. Önümüzdeki günlerde hem beni hem de siz okuyucuları tatmin edecek bilgi birikimi blogda oluşması umudu ile.




4 Nisan 2013 Perşembe

CMMI Süreç Alanları

CMMI 1.3 sürümü 4 ana kategoride 22 süreç alanından oluşmaktadır.

4 ana kategori şunlardır:

  1. Süreç Yönetimi (Process Management)
  2. Proje Yönetimi (Project Management)
  3. Engineering (Mühendislik)
  4. Destek (Support)
Bu kategorilerin içerdiği süreç alanları ait oldukları seviyelerden bağımsız olarak aşağıdaki şekilde verilmiştir. Şekildeki süreç alanları ingilizcedir. Analam karmaşası oluşmaması için orjinal dilinde bıraktım şimdilik. Herbirini tek tek açıklayacğım. O zaman türkçesini düzgün biçimde belirteceğim.


2 Nisan 2013 Salı

CMMI Çeşitleri

CMMI yerinde durmayan sürekli gelişen ve iyileşen bir modeldir. CMMI tarihçesindeki son noktası 1.3 sürümüdür.

1 Kasım 2010'da yayımlanan CMMI V1.3'e ait üç çeşit CMMI vardır:


  1. Ürün ve hizmet yönetimi için CMMI Development
  2. Hizmet kurulumu, yönetimi ve temini için CMMI Services
  3. Ürün ve servis idinimi için CMMI Acquisition


1 Nisan 2013 Pazartesi

CMMI - Tarihçe

Herşeyin bir başlangıcı olduğu malumunuz. CMMI, Carnegie Universitesi'nde bulunan Yazılım Mühendisliği Enstitüsü'nün bir ürünüdür, SEI'dir yani.

1984 yılında Amerika Savunma Bakanlığı tarafından SEI kuruldu ya da kurulması için fon sağladı. O yıllarda dünyada yazılıma en çok bütçe ayıran kurumu idi. Silah teknolojisi yazılımın nasıl bir gelişim sağlayacağını öngörmüştü. Bununla birlikte maliyet çok yüksekti. Yazılım konusu ile ilgili bilgi birikiminin azlığı, kritik sistemlerde kullanımının maliyeti, doğrulama/geçerleme süreçlerinin olgun olmaması gibi problemler yaşanmaktaydı. Kuvvetle muhtemel bu maliyetli işi kontrol altına almak istediler ve bunu sağlamak için de işi sahiplenecek bir yapılanma olmasını istediler. SEI'nin kurulma dinamikleri aşağı yukarı bu şekildedir.

Modelin babası Watts Humphrey. Önce yazılım geliştirmeye de süreç yaklaşımını sonra da bu süreçlerin yönetilebileceği önerdi. Bütün bu önerileri daha geniş kapsamlı içeren Software CMM yayımlandı SEI tarafından. Daha sonrasında yazılım yetenek değerlendirme akabinde System CMM yayımlandı.CMM versiyon 2.0 için çalışışırken bu çalışma CMMI çalışması sebebi ile iptal edildi. Şu anda CMMI V1.3'tür.





19 Mart 2013 Salı

NE OLA Kİ ŞU CMMI?



CMMI ---> Capability Maturity Model-Integration

Türkçesi  Yetenek Olgunluk Modeli-Bütünleşik, aşağıdaki şekilde Türkçe anlamları da mevcuttur.

Kelimelerin tanımları doğrultusunda şöyle bir çıkarımda bulunmak doğru olacaktır:

“Gerçekleştirilen işleri aynı işleri yapan diğerlerine örnek olacak şekilde anlayıp bunları belli bir nitelikte ve yetkin bir şekilde bütün olarak yerine getirmek”



5 Mart 2013 Salı

Kalite Boyutları

Kalite dokuz boyutludur. Bir ürün ya da hizmetin tüm kalite boyutlarını karşılaması ederi ile ilgilidir.

Başarı (Performance)             Birincil ürün karakteristiği  
Özellikler (Features)             İkincil ürün karakteristiği
Uyumluluk (Conformance)      Spefikasyonları, standartları karşılama
Kararlılık (Reliability)            Başarının zamana karşı tutarlılığı
Dayanıklılık (Durability)         Kullanım süresi
Servis (Service)                    Problem ve şikayetlerin çözümü, tamir kolaylığı
Yanıt (Response)                 İletişim, arayüz 
Estetik (Aesthetics)              Duyusal algı karakteristikleri
Ün (Reputation)                   Daha önceki başarılar ve diğer soyut faktörler



Kalite Malite


Her zaman en son konuşulan, en son düşünülen bununla birlikte iş patladı mı en çok lafı geçen bir kavramdan bahsedeceğim malumunuz bu yazıda. Farkettiyseniz kalite nedir gibi beylik bir başlık vermedim.

Kalite bizim işimiz. Çalışmalarımızda önceliklidir, diyorsanız buralara kadar geldiğiniz için teşekkür ederim, sizi bir sonraki yazıya beklerim. Diğerleri, gelin bakalım benimle...

Satın aldığımız ürün ya da hizmet ile ilgili algımızdır kalite:
  • BMW sahibi olmak
  • Projeden ev almak
  • Düşman çatlatmak
  • Krallar gibi ağırlanmak
  • Paramızla rezil olmak...

Matematiksel olarak kalite başarının beklentiye oranıdır. Ne zaman ki 1’e eşit ya da büyük olur, ortada kalitenin varlığından bahsedebiliriz.

Kalite = Başarı    (Performance)
            Beklenti (Expectations)

Kalite: Özdeki bir takım karakteristiklerin geresinimleri karşılama derecesidir.
  • Derece: İyi, kötü, mükemmel olma durumu
  • Öz: Kalıcı bir karakteristiğin varlığı
  • Karakteristik: Nicel ya da nitel olabilir
  • Gereksinim: İhtiyaç ya da beklenti

Müşterimizin beklentilerini en az söz verdiğimiz derecede karşılama sanatıdır kalite.

Bol kaliteli günler dilerim.