09 Ağustos 2015

Yazılım Süreç İyileştirme Modelleri Karşılaştırması CMMI ve ISO 15504 (SPICE)

Yazılım projelerinin karşılaştığı yaygın problemlerden olan ürünün planlanandan geç tamamlanması, proje başında planlanan bütçenin aşılması ve ürün kalitesinin ihtiyaç sahibinin beklentilerini karşılayamaması vb. problemlerini çözümleme ihtiyacı, son yıllarda giderek önem kazanan bir gereklilik halini almıştır.

Yazılım projelerinin karşılaştığı yaygın problemlerden olan ürünün planlanandan geç tamamlanması, proje başında planlanan bütçenin aşılması ve ürün kalitesinin ihtiyaç sahibinin beklentilerini karşılayamaması vb. problemlerini çözümleme ihtiyacı, son yıllarda giderek önem kazanan bir gereklilik halini almıştır. Organizasyonların, geliştirdikleri yazılımların kalitesini ve ekiplerinin üretkenliğini arttırmak,  bakım ve onarım maliyetlerini düşürmek, projeyi planlanan zaman ve bütçe ile tamamlamak, değişikliklere daha hızlı yanıt verebilmek amacıyla yürüttükleri süreç iyileştirme faaliyetleri, yazılım projelerini başarıya ulaştırmada kabul gören önemli bir yöntem haline gelmiştir.

 CMMI ve ISO/IEC 15504 (SPICE) uluslararası düzeyde kabul gören ve yaygın olarak kullanılan süreç iyileştirme modellerinden yalnızca ikisidir. CMMI, Amerikan Savunma Bakanlığı'nın isteği üzerine Carnegie Mellon Üniversitesi'ne bağlı Yazılım Mühendisliği Enstititüsü tarafından 1991 yılında yayınlanan bir yetenek olgunluk modeli olup, organizasyonların yazılım süreçlerinin (Yazılım planlama, geliştirme, yapılandırma vb.) olgunluğunu değerlendirmeyi amaçlamaktadır. SPICE, 1993’te Uluslararası Standartlar Örgütü (International Organization for Standardization - ISO) tarafından geliştirilen süreç geliştirme ve yetkinlik belirlemeyi temel alan uluslararası bir standarttır. Bu yazı ile her iki modelin benzerlik ve farklılıklarına değinilmiş, modellere ilişkin genel bir bakış açısı kazandırmak amaçlanmıştır.

Olgunluk seviyelerine göre CMMI ve SPICE’da yer alan süreç alanları tablodaki gibidir.

Tablo 1 Olgunluk Seviyelerine Göre CMMI ve SPICE Süreç Alanları

CMMI Olgunluk Seviyesi

CMMI-DEV Süreç Alanı

SPICE Olgunluk Seviyesi

ISO 15504 (SPICE) Süreç Alanı

-

-

Seviye 1

ENG.1 Gereksinim Toplama
ENG.2 Sistem Gereksinim Analizi
ENG.3 Sistem Mimari Tasarım
ENG.4 Yazılım Gereksinim Analizi
ENG.5 Sistem Tasarımı
ENG.6 Yazılım Geliştirme
ENG.7 Yazılım Entegrasyonu
ENG.8 Yazılım Test
ENG.9 Sistem Entegrasyonu
ENG.10 Sistem Test
ENG.11 Yazılım Kurulumu
ENG.12 Yazılım ve Sistem Bakımı
SPL.2 Ürün Yayımı

Seviye 2

Konfigürasyon Yönetimi (CM)
Ölçüm ve Analiz (MA)
Proje İzleme ve Kontrol (PMC)
Proje Planlama (PP)
Süreç ve Ürün Kalite Güvencesi (PPQA)
Gereksinim Yönetimi (REQM)
Altyüklenici Yönetimi (SAM)

Seviye 2

SUP.3 Geçerleme
SUP.4 Toplu Gözden Geçirme
SUP.7 Dokümantasyon
SUP.8 Konfigürasyon Yönetimi
SUP.9 Problem Çözüm Yönetimi
SUP.10 Değişiklik Talep Yönetimi
MAN.3 Proje Yönetimi
MAN.5 Risk Yönetimi
ACQ.3 Sözleşme Yönetimi
ACQ.4 Tedarikçi İzleme
ACQ.5 Müşteri Kabul
SPL.3 Ürün Kabul Desteği

Seviye 3

Karar Analizi ve Çözümleme (DAR)
Bütünleşik Proje Yönetimi (IPM)
Kurumsal Süreç Tanımı (OPD)
Kurumsal Süreç Odağı (OPF)
Kurumsal Eğitim (OT)
Ürün Entegrasyonu (PI)
Gereksinim Geliştirme (RD)
Risk Yönetimi (RSKM)
Teknik Çözüm (TS)
Doğrulama (VAL)
Geçerleme (VER)

Seviye 3

RIN.1 İnsan Kaynakları Yönetimi
RIN.2 Eğitim
RIN.3 Bilgi Yönetimi
RIN.4 Altyapı
PIM.1 Süreç Tesisi
PIM.2 Süreç Değerlendirme
PIM.3 Süreç İyileştirme
MAN.2 Organizasyon Yönetimi
MAN.4 Kalite Yönetimi
MAN.6 Ölçme
SUP.5 Denetim
REU.1 Varlık Yönetimi
REU.2 Yeniden Kullanılabilir Program Yönetimi
REU.3 Bilgi Alanı Mühendisliği

Seviye 4

Kurumsal Süreç Performansı (OPP)
Nicel Proje Yönetimi (OPM)

Seviye 4

QNT.1 Nicel Performans Yönetimi

Seviye 5

Neden Analizi ve Çözümleme (CAR)
Kurumsal Performans Yönetimi (OPM)

Seviye 5

QNT.2 Nicel Süreç İyileştirme

 

CMMI ve SPICE modellerinin sahip olduğu özellikleri eşleştirme ve karşılaştırmalar yolu ile incelemek, diğer süreç iyileştirme modelleri hakkında da fikir sahibi olmayı kolaylaştıracaktır;

 Ortak Özellikler

Farklılıklar

CMMI ve SPICE modelleri, süreç alanlarının sahip olması gereken yeterliliği, bu yeterliliklerin karşılanması için organizasyonun sağlaması gereken pratikleri ve bu pratikleri anlamada yardımcı olabilecek diğer bilgileri içeren bileşenlerden oluşur.

CMMI’da yer alan ve pratiği amacına göre ayırmayı sağlayan süreç alanlarına SPICE’da süreç terimi karşılık gelmektedir. CMMI’da yer alan süreç alanı kavramı daha doğrudur. Çünkü modeller süreçleri tanımlamaz. Kavram olarak süreç kullanılması zaman zaman karmaşıklığa yol açabilmektedir.(1)

Her iki model de sürekli ve basamaklı olmak üzere iki çeşit gösterime sahiptir. Basamaklı gösterimde süreç alanları, Olgunluk Seviyelerine göre listelenir. Kurum, bir olgunluk seviyesini hedeflemek ile hangi süreç alanlarını hedefleyeceğini seçmiş olacaktır.

Her iki model de kurumun tüm süreçlerinin olgunluğunu değerlendiren olgunluk seviyelerine sahiptir. Ancak olgunluk seviyeleri ve her bir seviyede yer alan süreç uygulamaları farklılık göstermektedir. CMMI’da olgunluk seviyeleri 1’den başlarken, SPICE’da ilk seviye 0 olarak tanımlanmıştır.

Sürekli gösterim, kurumların bir veya bir grup süreç alanı seçerek süreçlerini bu doğrultuda geliştirmelerine imkan sağlar. Sürekli gösterimde bir süreç alanındaki gelişme, yetenek seviyeleriyle ifade edilir. Kurum hangi süreçlerinin geliştirilmesi gerektiğine ihtiyaç duyduğunu ve bu süreç alanları arasındaki ilişkiyi biliyorsa bu gösterim, basamaklı gösterime göre organizasyon için daha iyi bir seçimdir.

CMMI ve SPICE ortak amaçlar için kullanılan benzer bileşenler içeriyor olsa da farklı yapısal özellikler içermektedir. Her iki model de farklı bilgi alanlarına yönelik referans modelleri içermektedir. CMMI, geliştirme, Servis ve Tedarik bilgi alanlarını içeren referans modellere sahipken, SPICE otomotiv, bankacılık, finans, sağlık, uzay ve havacılık alanlarını kapsayan daha geniş bir bilgi alanı yelpazesine sahiptir.

CMMI ve SPICE pratiklerin nasıl karşılanacağını tariflemez, sürecin hangi niteliklere sahip olması gerektiği hakkında bilgi sunar. Her iki model de düşünülenin aksine, çevik yaklaşımlar ile uygulanabilir özelliğe sahiptir.

CMMI’da yer alan başlangıç olgunluk seviyeleri yönetim ve destek süreçlerine odaklanırken, SPICE, temel mühendislik ve ürün geliştirme süreçlerini ele almaktadır.

CMMI’da süreç alanlarının karşılanması için istenen özellikler, genel ve özel hedefler ile tariflenirken, SPICE’da bu gereklilikler süreç özellikleri ile tanımlanmaktadır.

 

Türkiye’de son yıllarda IT sektöründe yer alan kurumlar başta olmak üzere pek çok organizasyon, CMMI başta olmak üzere, süreç iyileştirme modellerini temel alarak uluslararası kabul görmüş sertifika uyumluluğuna sahip süreçler ile daha kaliteli ürünler sunmak, müşteri memnuniyetini arttırmak, ulusal ve uluslararası alanda rekabet gücünü, karlılığını ve güvenilirliğini arttırmak amacı ile süreç iyileştirme projelerine hız vermiştir. Bu nedenlerin yanı sıra, önemli diğer bir sebep ise askeri projelere ve bazı kamu ihalelerine teklif vermek için en az CMMI Seviye 3 seviyesinde olmanın kurumlar için bir ön koşul olmasıdır.

 

Kurumların süreç iyileştirme projelerinde başarılı olabilmesi; stratejik hedefleri, ihtiyaçları ve beklentileri doğrultusunda organizasyonun yapısına en uygun modeli seçmeleri ve yönetim desteğinin sağlanması ile mümkündür. Aynı zamanda proje süresince, süreç iyileştirme çalışmalarının anlaşılması ve kabul görmesi için gereken eğitimler sunulmalıdır. İlgili modeller kapsamında yaptıkları iyileştirme çalışmaları ile tecrübesini kanıtlamış, doğru yönlendirme sağlayan Süreç iyileştirme danışmanlarının desteği ile bu projelerin süreleri kısalmakta ve başarı olasılıkları arttırılabilmektedir. 


 

 PROVEN Bilişim Teknolojileri Süreç İyileştirme Ekibi olarak, hem SPICE hem de CMMI- DEV danışmanlığı hizmetleri kapsamında müşterilerimizin ihtiyaç ve hedefleri doğrultusunda süreç değerlendirme ve iyileştirme çalışmalarında rehberlik sunmaktayız. Bu kapsamda, Süreç İyileştirme  Danışmanlık hizmetleri, PROVEN’İN başarısı ispatlanmış süreç iyileştirme metodolojisi kullanılarak yürütülmektedir. Aşağıdaki şekil PROVEN Süreç tanımlama ve iyileştirme çalışmalarında izlenen yaklaşım adımlarını içermektedir:

 

PROVEN, süreç iyileştirme danışmanlık faaliyetleri kapsamında;

  • Kurumun sahip olduğu süreçlerin gözden geçirilerek; kurumun stratejik hedefleri ve ihtiyaçları göz önüne alınarak iyileştirme faaliyetleri ve aksiyonlarının belirlenmesi,
  • Proven iyileştirme altyapısı ve modelleme yöntemleri kullanılarak, referans alınan süreç iyileştirme modelleri ve kuruma özgü kalite yönetim sistemi ile uyumlu süreçlerin modellenmesi,
  • Pilot çalışmalar ile süreçlerin kurum genelinde uygulanması ve yaygınlaştırılması,
  • Ölçümler ile süreç performansının izlenmesine imkan tanıyan süreç performans yönetiminin kurulması

çalışmalarına destek sağlamaktadır.

PROVEN Bilişim Teknolojileri, alanında uzman ve tecrübeli Süreç İyileştirme Ekibi ile süreç iyileştirme eğitim ve danışmanlık hizmetleri kapsamında her iki modelin sunduğu yol haritası, olgunluk ve yetkinlik seviyelerinin nitelikleri ile organizasyonları, ihtiyaç ve hedefleri doğrultusunda süreç değerlendirme ve iyileştirme çalışmalarına yönlendirecek süreç iyileştirme çözümleri sunmaktadır.

Beril Taşdemir - [email protected]

[1] N. Alpay KARAGÖZ, Ünal AKSU, Yazılım Süreç İyileştirme Modelleri Özellikleri, Seçimi ve Karşılaştırılması: ISO/IEC 15504 (SPICE) ve CMMI