30 Ocak 2016 Cumartesi

CMMI - DAR Süreci

Giriş
CMMI yazısının Decision Analysis and Report (DAR) hakkında olan kısmını buraya taşıdım. CMMI seviye 3'te  sürecin tüm kurum aynı olması gerekir.

DAR Nedir?
DAR
,  (Türkçesi Karar Analizi ve Çözümleme) CMMI Seviye 3 olan firmaların yapması gereken süreç alanlarından birisidir (process area). Amacı ise kullanılabilecek alternatifleri bir değerlendirme işlemine tabi tutarak, en uygun olanını seçmektir.


Zorunlu DAR Nedir?
Normalde DAR herhangi bir karar için yapılabilir ancak bazı kurumlar, süreçlerini geliştirirken yapılmasını zorunlu kıldıkları DAR'ları tanımlıyorlar.

Süreç tarafından zorunlu olabilecek konu örnekleri:
  1. Kullanılacak RAHAT (Rafta Hazır Ticari Ürün) yazılımın seçilmesi. (COTS software selection)
  2. Kullanılacak RAHAT (Rafta Hazır Ticari Ürün) donanımın seçilmesi.(COTS hardware selection).
  3. Kullanılacak yazılım geliştirme yaşam döngüsü modelinin seçilmesi (Software Development Life-cycle selection)
  4. Altyüklenici seçilmesi (Subcontractor selection)
  5. Mimari seçimi (Architecture selection)
1. DAR ve RAHAT Yazılım
Eğer kullanılabilecek RAHAT yazılım varsa, aralarında seçim yapmak için kullanılır. Örneğin İşletim Sistemi (Linux/Windows), Veritabanı (Oracle, MySql) seçimi için kullanılır.

2. DAR ve RAHAT Donanım
Eğer kullanılabilecek RAHAT donanım varsa, aralarında seçim yapmak için kullanılır. Örneğin Bilgisayar, Modem modeli seçimi için kullanılır.

3. DAR ve Yazılım Yaşam Döngüsü Modeli
Normalde kurumun süreci projeye özel olmamalıdır. Böylece çalışanlar süreci kolayca anlayıp her projeye daha iyi uyum sağlarlar. Ancak bazen projeye özgü yaşam modeli seçmek gerekebilir. DAR bu yüzden yapılır.

4. DAR ve Altyüklenici Seçilmesi
Altyükleniciler aralarında seçim yapmak için kullanılır.

5. Yazılım Mimarisi DAR
Diğer mimari seçeneklerinin değerlendirildiği ve alınan kararların neden alındığının açıklandığı bir belge olması beklenir. Burada bence en zor kısım "diğer" seçeneklerin değerlendirilmesi. İnsanın "diğer" mimarileri iyi bilmesi ve kullanmış olması gerekiyor ki artı ve eksileriyle mukayese edebilsin. Ancak bir çok "yazılım mimarının" zaten bu kadar tecrübesi olmadığı için, mukayese bence hakkının vererek yapılamıyor.

Zorunlu DAR İçinde Neden Geliştirme Ortamına Ait Bir Şey Yok 
Bence yazılım firmalarının en büyük eksikliği bu. Nadiren de olsa bazı firmalar bu gibi durumlarda da DAR yapıyor, ancak çoğu  zaman yazılıma ait önemli kararlar - mesela hangi framework'ün kullanılacağı - hem bir bilene sorularak seçiliyor.

DAR Kriterlerinin imzalanması
Bazı kurumlar süreçlerini DAR kriterlerini belirledikten sonra, DAR ekibi tarafından imzalanması şeklinde tasarlamışlar. 

DAR ve Puanlama
Kriterlere göre puanlama yapılıyor.Yapılan puanlamalar neticesinde en uygun alternatif seçiliyor.

DAR Waiver Formu
Zorunlu olan bir DAR yapılmayacaksa gerekçesi bu forma yazılır. Genellikle gerekçe olarak

RAHAT Donanım
DAR için harcanacak efor, ürünün kendisinden çok daha maliyetli olacağı için DAR yapılmadı.

Yaşamsal Döngü Modeli
Default kurum süreci kullanılacağı için DAR yapılmadı

Yazılım Mimarisi DAR
Tekrar kullanılacak yazılım mimarisi olduğu için DAR yapılmadı.

gibi gerekçeler yazılabilir.

Sonuç
Bu süreç alanı anlaması ve uygulaması en kolay şeylerden birisi. Proje alternatifler ve seçimler silsilesi olarak düşünülürse aslında bu süreç alanı CMMI olmayan projelerde bile bilinçli veya bilinçsiz şekilde zaten uygulanıyor.

Birçok süreç alanı için piyasada çok çeşitli yazılımlar bulunmakta ancak DAR kayıtlarını basit bir excel tablosu olarak tutmanın bile yeterli olduğunu düşünüyorum.

Hiç yorum yok:

Yorum Gönder