CMMI olgunluk seviyeleri
Blog & Makaleler
Bir süreç iyileştirme modeli olarak ifade edebileceğimiz CMMI; Yazılım, Ürün Geliştirme ve Destek süreçlerinin verimliliğini ve kalitesini artırmak için kullanılan, yazılım süreçlerinin anahtar elemanlarını tanımlayan çerçeve modeldir. Bunun çeşitli olgunluk seviyeleri vardır. Yazının devamında bu olgunluk seviyelerini inceleyeceğiz.
Yazılım dünyasında kalite bir ilkeler bütünüdür. Bu ilkeler tecrübeler sonucunda oluşmuşlardır. İyi bir uygulamada sorunların öngörülmesi ve çözüm için önceden eyleme geçilmesi beklenir. Bunun yanında, yazılım geliştirme yaşam döngüsünde çıktı olan ürün kadar süreçler de önemlidir ve bu süreçlerin sürekli iyileştirilmesi hedeflenmelidir. Süreç, amacı bir iş yapış biçiminde standart oluşturmak, değişkenliği azaltmak ve bu şekilde iş yapış biçiminde iyileşme sağlamak olan bir iş yapma yöntemidir. Genellikle bazı alt süreç ve aktivitelerden oluşur. Süreçler mutlaka girdisi ve çıktısı olan tekrarlı işlemlerdir. Örneğin risk yönetim süreci, ölçümleme ve analiz süreci, kurumsal süreç performans iyileştirme süreci. Standartlar belirlenmeli, sürekli ölçümler yapılarak sonuçlar değerlendirilmelidir. CMMI (Capability Maturity Model Integration), bu ilkelerin uygulanabilir olması için kurulmuş bir organizasyondur.
Olgunluk seviyelerini açıklayacak olursak; start-up bir yazılım firmasının CMMI 1 ile başladığını söyleyebiliriz. Buradan CMMI’ın kolaylıkla ulaşılabilecek seviye olduğunu düşündüyseniz yanılırsınız. Aslında 1 seviyesi CMMI açısından hiçbir şeydir. Süreç, yönetilebilir olmaya başladığı an 2. seviyeye geçmiş demektir. Bu seviye reaktif bir davranış modelinden öteye geçemediği için ancak problemler oluştuktan sonra aksiyon alınabilir. Böylece verifikasyon ve validasyon (doğrulama ve geçerleme) aşamasında yığınla hatanın geliştiricilere iletildiğini görmekteyiz. Bu ilkellikten anlaşılacağı üzere bu iki seviye için bir sertifikasyon süreci yoktur. CMMI3’te proaktif bir davranış modeli geliştirilmesi gerektiğinden, bir danışmana ihtiyaç duyulur. Olası problemlerin öngörülerek ortaya çıkmadan önce önlemlerin belirlenmesi ve uygulanması proaktif bir davranıştır. Örneğin misafire kahve ikram ederken sehpayı önüne koyarak kahvenin dökülmesini önlemek gibi… Danışman; süreç sahibine 23 süreç konusunda bilgi verir ve süreç sahibinin öncelikle Kurumsal Süreç Tanımlama Süreci için kendi misyonunu, vizyonunu ve müşterileri ile ilişkisini tanımlamasını bekler. Oluşturulmuş olan bu tanımlara uygun olarak rehber bu süreçlerden uygun süreçleri belirleyerek bu süreçlerin altının doldurulması için firmaya “soft skill” eğitimler verir. Firma bu bilgiler ışığında kendine uygun süreç tanımlarını ve bu süreçlerin niteliklerini oturtur. Bu süreçler giriş-çıkış verileri açısından nicel ölçümlenerek yönetilmeye başlandığında CMMI4’e adım atılmış olur. Bu ölçümler sonucunda geliştirilebilecek strateji ve süreç iyileştirmeleri CMMI5’in odağıdır. CMMI4 ve 5’in gerçek odağı ise maksimum kalite ve minimum risktir. Bütün bu süreç çalışmalarının amacı da budur zaten.
Buraya kadar üretici/geliştirici/destek firma açısından baktık. Müşteri gözüyle bakacak olursak; özel-kamu ihalelerinin bir kısmında CMMI 3; Askeri ihalelerinin ise büyük bölümünde CMMI 5 seviyelerinin, olmazsa olmaz bir şart olarak karşımıza çıktığını görüyoruz. Büyük, külfetli ve yüksek bütçeli bir sözleşmeyi yüklenecek bir firmanın belirli bir yetkinlik seviyesinde olması gereklidir. Seviyeleri daha önce ölçülmüş firmalar ile iş yapmak İhale sahibi müşteri Kurum için büyük bir avantaj olup; özellikle önceden kestirilmesi zor olan iş süreçlerini içeren yazılım ürünlerinin geliştirilmesi konusunda bu tür bir modeli uygulayabilen bir firma ile çalışmak Kamu ve Askeri Kurumlar için vazgeçilmez bir durumdur.
CMMI seviyelerinin önemini ne kadar anlatsak yandaki karikatür kadar anlamlı olamaz dı. Konuya hem müşteri hem de süreç sahibi firma açısından bakıp ikisinin aynı dili konuşmaları ve tam olarak istenen ürünün geliştirilmesini garanti etmek için izlenen süreçlerin müşteri de dahil edilerek tüm aşamaların belgeli ve onaylı olarak ilerlemesi gerekir. Aşağıdaki karikatüre bakarak bu kadar da olmaz diye düşünebilirsiniz ancak, büyük ve kapsamlı projelerde karşılaşılması muhtemeldir.