Nesibe Merve Harmancı-121213010 Aybüke Babadağ-121213060
SUNUM PLANI CMMI NEDİR? TAKIM YILDIZLARI CMMI’IN YAPISI CMMI SEVİYELERİ CMMI’IN KULLANIM ALANLARI CMMI’IN SAĞLADIĞI AVANTAJLAR CMMI’IN HEDEFLERİ TÜRKİYE’DEKİ REFERANSLAR ÖZET
CMMI Nedir? İngilizce, Capability Maturity Model Integration kelimelerinin kısaltmasıdır. Dilimize, Bütünleşik Yetenek Olgunluk Modeli olarak çevrilebilir. Amerikan savunma bakanlığının talebi üzerine 1986 yılında Carnegie Mellon Üniversitesine bağlı Yazılım Mühendisliği Enstitüsü (SEI) tarafından geliştirilmeye başlanmıştır.
CMMI Nedir? Yazılım kalite süreçlerini düzenleyen ve belirleyen bir modeldir. Etkin bir yazılım sürecinin anahtar elemanlarını tanımlar. Yazılım proje yönetimini kolaylaştırmak ve hedeflenen yazılım kalitesini sağlamak için oluşturulmuş referans bir modeldir. Yazılım geliştirme sürecini yönetilebilir, ölçülebilir, tahmin edilebilir ve tekrarlanılabilir bir iş süreci hâline getirmeyi hedefler.
CMMI Nedir? Bir sistemin kalitesi, o sistemin işleyişine ait süreçlerin kaliteli olmasına bağlıdır. CMMI modelinin genel anlayışında, bir kurumun süreçlerini iyileştirmek yatar. Süreç alanları bazında nelerin eksik olduğunu ve nelerin olması gerektiğini anlatır. Model sorunlarına ait çözümlerin kurumlara hatta projelere ait olduğunu düşünerek, eksikliklerin nasıl giderileceğine dair yöntemler tanımlamaz.
TAKIM YILDIZLARI (YILDIZ KÜMESİ) CMMI v1.2 ile beraber,belirli bir ilgi alanında süreç gelişimine yönelik, «Takımyıldız» adı verilen 3 yeni oluşum gelişmiştir. Bir organizasyonun yetenek ve olgunluk seviyesi üç ayrı takımyıldızı halinde iyileştirilir.
Takımyıldızlar CMMI-DEV: (Development) Ürün ya da hizmet oluşturmak CMMI-SVC: (Services) Hizmet vermek CMMI-ACQ: (Acquisition) Satın Alma
Takımyıldızlar CMMI-DEV CMMI-DEV, Hizmet ya da ürün geliştiren kuruluşlar için tasarlanmıştır. Projeler gerçekleştiren, bu projelerinin sonunda yeni bir ürün ya da hizmet oluşturan kuruluşlar, bu yıldız kümesinden faydalanabilirler. CMMI-SVC Geliştirilmesi tamamlanmış, müşteriye teslim edilmiş bir hizmetin ya da ürünün, yürütülmesi, bakımının yapılması ya da işletilmesi ile ilgili hizmetler için CMMI-SVC kullanılması planlanmaktadır. CMMI-ACQ Satın almanın başarısı, tedarikçinin başarısı kadar satın alma makamının başarısına da bağlıdır. CMMI-ACQ, satın alma süreçlerinin olgunluğunun ölçülmesi ve iyileştirilmesini amaçlayan bir modeldir.
CMMI Yapısı Olgunluk Seviyeleri (Aşamalı Model) ya da Yeterlilik Seviyeleri (Sürekli Model) Süreç Alanları Hedefler (Genel - Özel) Ortak Özellikler Uygulamalar (Genel - Özel)
Farklı Model Yaklaşımı Sürekli Model Kurumun ön planda tuttuğu hedefleri için önem arz eden belli bir takım süreçlere odaklanmaya olanak sağlar. Kurumun süreçlerinin yetenek seviyelerini belirlemek için kullanılır.
Farklı Model Yaklaşımı Aşamalı Model Standart bir dizi iyileştirme sağlayarak farklı projeler arasındaki olgunluğun karşılaştırılmasını sağlar. Kurumun tüm süreçleri baz alınarak olgunluk düzeyini göstermek için kullanılır.
Süreç Alanı (Process Area) CMMI modelinin temel yapısal elemanıdır. 22 adet süreç alanı mevcuttur. Süreç alanları aşamalı ve sürekli modellerde ortaktır. Her bir süreç alanı bir dizi hedef ve uygulama içerir. Genel Hedef ve Uygulamalar: Her süreç alanının parçasıdır. Özel Hedef ve Uygulamalar: Verilen süreç alanına özgüdür.
Hedefler (Goals) Her süreç alanı için bir takım hedefler tanımlanmıştır. Bu tanımlama yapılırken hedefler özel ve genel olmak üzere ikiye ayırılır. Özel hedeflerin her biri belirli bir süreç alanına karşılık gelir. Örneğin proje planlaması süreç alanına ait proje planını geliştir hedefi özel bir hedeftir. Peki, bu hedeflere nasıl ulaşılacak? CMMI her bir hedefe ulaşılması için bir takım uygulamalar sunar.
Ortak Özellikler Anahtar süreç alanının iyileştirilmesinin ve kurumsallaştırılmanın etkili, tekrarlanabilir ve kalıcı olup olmadığını gösteren niteliklerdir.
Uygulamalar (Practices) Bir kurumun gerekli bileşenleri başarması için yapması gerekenleri tanımlar. Hedeflerde olduğu gibi özel ve genel olmak üzere ikiye ayrılır.
Sürekli Model Bu gösterim kullanıldığında, süreç alanları için ayrı ayrı olgunluk seviyeleri tespit edilir ve 1-6 arası olgunluk seviyelerini gösteren değerlerle derecelendirilir. Ana fikir; Bir süreç ne kadar olgunsa o kadar iyidir.
Sürekli Model Süreç alanları içinden iyileştirilmek istenilen süreç alanlarının tek tek seçilmesine olanak sağlar. Bu gösterimin kullanılabilmesi için, kurumun hem süreç alanlarının ve hem de süreç alanları arasındaki ilişkilerinin çok iyi bilinmesi gerekir. Aksi takdirde uzun ve pahalı bir çalışmayı sonuçsuz bırakma riski doğar.
Seviye 0: Tamamlanmamış (Incomplete) Süreç alanıyla ilişkili en az bir belirli hedef tatminkar düzeyde değildir. Bu seviyede genel bir hedef tanımlanmamıştır. Aşamalı modeldeki 1. olgunluk seviyesine eştir.
Seviye 1: Gerçekleştirilen (Performed) Süreç alanıyla ilişkili hedefler tatminkardır. Süreç, öngörülen temel uygulamaları büyük oranda sağlamaktadır. Tüm bu süreçler için yapılacak olan iş kümesi açıkça bildirilmiştir. Üretim için ihtiyaç duyulan faaliyetler yerine getirilerek desteklenmektedir.
Seviye 2: Yönetilen (Managed) Süreç, planlanır ve planlanılan sürece bağlı kalınır. Süreç, temel uygulamaların performansını ve ilgili iş ürünlerini düzenli bir şekilde yönetmeyi başarmıştır ve süreci destekleyen alt yapı mevcuttur.
Seviye 3: Tanımlı (Defined) Bu seviye sürecin kurumsal olarak standartlaşması ve yayılımına odaklanmıştır. Ürünlerin ölçümleri ve organizasyon süreç varlıkları toplanmalı ve gelecekteki süreç iyileştirmesi için kullanılmalıdır.
Seviye 4: Nicel Olarak Yönetilen(Quantitatively managed) Alt süreçlerin kontrolünde kullanılan istatistiksel ve diğer nicel metodların kullanımında kurumsal bir sorumluluk söz konusudur. Kalite ve süreç performansı istatistiksel açıdan anlaşılarak, süreç yaşam döngüsünde kullanılmaktadır. Süreç, sayısal olarak ölçülen verilere göre kontrol edilmektedir.
Seviye 5: Optimize Edilen(Optimizing) Kurum, süreç ve ürün ölçümlerini süreci iyileştirmek için kullanmalıdır. Süreçler değişen iş ihtiyaçlarına adapte olmalıdır.
AŞAMALI MODEL (OLGUNLUK SEVİYELERİ) Düzey 1: Başlangıç Düzey 2: Yönetilen Düzey 3: Tanımlanmış Düzey 4: Nicel olarak yönetilen Düzey 5: İyileştirilen
AŞAMALI MODEL(OLGUNLUK SEVİYELERİ) Yazılım üreten firmalar,firma olarak olgunluk düzeyi notu alır. Olgunluk seviyeleri, kurumun “hangi süreçler benim için en uygun? Nereden başlamalıyım?”sorularına cevap bulmasını kolaylaştırır. Kurumun hedeflemesi gereken seviye şu anda sağladığı en düşük olgunluk seviyesinden bir fazlasıdır. Her olgunluk seviyesinin, genel bir hedefi ve bir dizi süreç alanı vardır.
AŞAMALI MODEL(OLGUNLUK SEVİYELERİ) Bütün kurumlar kesin olarak en azından birinci olgunluk seviyesini karşılarlar. Birinci olgunluk seviyesinde olmak için hiç bir şey yapmanız gerekmez.Kurumun var olması yeterlidir. Dolayısı ile hedeflenmesi gereken en düşük olgunluk seviyesi ikinci olgunluk seviyesidir. CMMI modeli süreç alanlarını “olgunluk seviyesi” adı altında 5 gruba ayırmıştır:
SEVİYE 1: BAŞLANGIÇ(İnitial) Yazılım geliştirme süreci gelişi güzel yapılmaktadır ve bu seviyenin ilgilendiği belirli bir konu yoktur. Bu seviyede başarı bireysel gayretlere bağlıdır. Herhangi bir kriz durumda eğer varsa «var olan» planlar terkedilir(gözardı edilir). Anlık çözümler geliştirilir. Yazılım süreç yetenekleri ise önceden kestirilemez.
SEVİYE 2:TEKRARLANABİLİR(Repeatable) Proje yönetiminin yapıldığı ve kısmen sonuçların tahmin edilebildiği olgunluk seviyesidir.Halen kişisel çabaların etkinliği vardır. Proje yönetimi konusundaki kontrol noktaları belirlenmiştir ve projeler önceden dökümante edilmiş olan proje planlarına göre yürütülmekte ve yönetilmektedir. Yazılım gereksinimleri bir şekilde yönetilir. Bu gereksinimler ile ilgili ürünler oluşturulur ve denetlenir.
SEVİYE 2:TEKRARLANABİLİR(Repeatable) Proje yönetim sistemi, proje geliştirme sürecini kontrol eder. Proje yönetimi disiplini yerleştirmiştir ve proje performansı tahmin edilebilir. Bir önce yapılan benzer işin verdiği deneyim sayesinde organizasyon; maaliyetler, zamanlamalar ve değişen talepler üzerinde kontrol sağlamayı başarır ve önceki başarılar tekrarlanabilir.
Tedarikçi Sözleşme Yönetimi Yapılandırma Yönetimi Ölçme ve Çözümleme 2. Olgunluk Seviyesinin Süreç Alanları Şunlardır: Gereksinim Yönetimi Proje Planlama Proje İzleme ve Takip Tedarikçi Sözleşme Yönetimi Yapılandırma Yönetimi Ölçme ve Çözümleme Süreç ve Ürün Kalite Güvencesi
SEVİYE 3:TANIMLANMIŞ(Defined) Bu düzeyde süreçler artık iyice tanımlanmış standartlar,prosedürler,araçlar ve metotlar belirlenmiştir. Bu seviyedeki tüm süreçler, 2.seviyeye göre daha kapsamlı ve detaylı olarak tanımlanmıştır. Yazılımla ilgili tüm projelerde CMMI standartları uygulanmaya başlanmıştır. Yazılım mühendisliği ve yönetim süreçleri tanımlanmış ve bütünleştirilmiştir.
3. Olgunluk Seviyesinin Süreç Alanları Şunlardır: Tanımlı Gereksinim Geliştirme Teknik Çözüm Ürün Bütünleştirme Doğrulama Geçerlilik Kurumsal Süreç Odaklanması Kurumsal Süreç Tanımlama Kurumsal Eğitim Bütünleşik Proje Yönetimi Risk Yönetimi Karar Çözümleme ve Çözüm Üretme
SEVİYE 4:YÖNETİLEN(Managed) Bu seviyede, sürecin başarılı olup olmadığını belirlemek için; istatistiksel ve diğer nicel ölçüm teknikleri kullanılarak süreçlerin per- formansları kontrol edilir. 3.seviye ile temel farklılık;ileri zamanlardaki süreç performansının öngörülebilir olmasıdır. Maliyet ve süre tahminlerinde yüksek oran-larda başarı görülür. Projelere ne gereğinden fazla ne de gereğinden az kaynak atandığından, proje başarımları çok daha yüksektir.
4. Olgunluk Seviyesinin Süreç Alanları Şunlardır: Kurumsal Süreç Performansı (Organizational process performance) Nicel Proje Yönetimi (Quantitative project management)
SEVİYE 5:SÜREKLİ İYİLEŞTİRİLEN(Optimizing) Önceki seviyede elde edilen veriler , sayısal geribeslemelerden ve teknolojiden yararlanılarak sürekli süreç iyileştirmesi yapılır. 4. ve 5.seviye arasındaki önemli fark, adreslenen süreçlerin değişme derecesidir. Bu süreçte tüm organizasyon projeleri iyileştir-meye odaklanmıştır. Bu sayede iyileştirme ve projelerden tam verim hedeflenir. Yaygın olarak karşılaşılan ortak sorunlar saptanır ve ortak sorunlar üzerinde sebep çözümlemeleri yapılarak,ortak sorunlar için ortak çözümler geliştirilir.
5. Olgunluk Seviyesinin Süreç Alanları Şunlardır: Kurumsal Gelişim ve Konuşlandırma (Organizational innovation and deployment) Sebep Analizi ve Çözümleme (Causal analysis and resolution)
CMMI’IN KULLANIM ALANLARI Dünyada ve Türkiye’de özellikle yazılım geliştirme yapılan kurum,departman ve projelerde,yazılım kalitesini arttırmak için kullanılan bir referans model olarak uygulanmaktadır. Donanım ve Network Savunma sanayi AR-GE Uzay Otomobil üretimi Bankacılık Telekomünikasyon alanları Ürün ve Hizmet Geliştirme
CMMI’IN SAĞLADIĞI AVANTAJLAR Yazılımın belirlenen zaman diliminde bitmesine yardımcı olur. Daha kısa sürede ürün gelişimine olanak sağlar. Üretim maliyetlerinde azalma sağlar. Yazılım hatalarının sayısını azaltır. Şirketi yönetirken, şirket içindeki işler gerçekleştirilirken, kişisel egolardan çok, topluma faydanın ön plana çıktığı şirketleri yaratmak amaçlanır. CMMI,Kurumlara süreçlerini iyileştirme konusunda gereken temel adımları gösteren bir süreç iyileştirme yaklaşımıdır ve bu yaklaşım organizasyonun süreçlerini iyileştirme ve geliştirme konusunda kurumlara rehberlik eder. Uluslararası alanda tanınıp yurtdışındaki potansiyel müşterilerinize gerekli güveni sağlarsınız.
CMMI’IN HEDEFLERİ Yazılım geliştirme sürecinin önceden kestirilemez bir sanat dalı olmaktan çıkarıp yönetilebilir,ölçülebilir,tahmin edilebilir ve tekrarlanılabilir bir iş süreci haline getirilmesi İş planlaması ve standartlaşma Maliyetlerin azaltılması Kalite ve üretim veriminin arttırılması Müşteri memnuniyetinin arttırılması
TÜRKİYE’DEKİ REFERANSLARI 22 firma CMMI seviye 3 ve üzeri sertifikaya sahiptir. Milsoft Havelsan Koç Sistem Bimar Aydın Yazılım ASELSAN TUBITAK TÜRKSAT SIEMENS Cybersoft Savunma Sanayii Müşteşarlığı(SSM)
ÖZET Bu bilgiler sonucu CMMI bir yazılım geliştirme süreci değil de Etkin ve Verimli bir sürecin tipik özelliklerini, ana hatlarını tanımlayan ve süreç iyileştirmesi için bir temel sağlayan bir modeldir. Özel ve geçici olarak kurulmuş, olgunlaşmamış bir süreçten; olgun ,disiplinli bir sürece evrimsel bir iyileştirme yolu tanımlar. CMMI, süreçlerin iyileştirilmesi için Ne yapılması gerektiğini sağlarken,bunların Nasıl yapılacağına dair detaylara girmemektedir.
BİZİ DİNLEDİĞİNİZ İÇİN TEŞEKKÜR EDERİZ.