=Paper= {{Paper |id=Vol-1483/9_Bildiri |storemode=property |title=Test Olgunluk Seviyesi Modeli |pdfUrl=https://ceur-ws.org/Vol-1483/9_Bildiri.pdf |volume=Vol-1483 |dblpUrl=https://dblp.org/rec/conf/uyms/DulgerS15 }} ==Test Olgunluk Seviyesi Modeli== https://ceur-ws.org/Vol-1483/9_Bildiri.pdf
                      Test Olgunluk Seviyesi Modeli

                                Barış Sarıalioğlu1, Berk Dülger1,
    1
     Keytorc Yazılım Test Hizmetleri, Eski Büyükdere Caddesi GIZ 2000 Plaza Ofis No: 41
                                  Maslak / İstanbul, Türkiye
                  baris.sarialioglu@keytorc.com berk.dulger@keytorc.com



        Özet. Kalite Kontrol/Test aktiviteleri, sistemdeki hataların en etkin ve verimli
        bir biçimde ortaya konulup, düzeltilmesini hedeflemektedir. Yazılım
        sistemlerinde ise, benimsenen yaşam döngüsü modeline göre bu aktiviteler
        farklı şekillerde kurgulanabilmektedir. Geleneksel modellerde test aktiviteleri,
        diğer aktiviteler gibi bağımsız bir adım olarak kurgulanırken, çevik modellerde
        kodlama aktivitelerine entegre biçimde yer almaktadır. Bunun yanında, test
        süreçlerinin olgunluk seviyesi ölçümü için farklı modeller kullanılabilmektedir.
        Bu bildiride, belirtilen modellerden sonuncusu olan ve Barış Sarıalioğlu
        tarafından 2011 yılı itibariyle geliştirilmeye başlanan Test Process and
        Capability Rating (TPCR)’ın yapısı ve özelliklerine yer verilecektir. TPCR
        modelini diğerlerinden ayıran en büyük özellik, yalnızca test süreçlerine
        odaklanmayıp, ilgili diğer süreçleri de inceliyor olmasıdır. Bu kapsamda
        incelenen otuz iki kritik alanın, dört başlık altında listelenebilmesi mümkün
        olmaktadır.

        Anahtar Kelimeler: Yazılım Testi, Test Olgunluk Modeli, Test Process and
        Capability Rating - TPCR



1 Yazılım Projelerinin Yönetimi ve Kalite

   Yazılım sektörünün gelişmesiyle birlikte, projelerin gerçekleştiriminde “Zaman”,
“Maliyet” ve “Kapsam” unsurlarının toplam kalite üzerindeki etkisi gittikçe daha
belirleyici hale gelmektedir. Proje yönetimi kuramlarının temelini oluşturan bu
yaklaşımda, mevcut kaynaklarla gerçekleştirilebilecek bir projenin ancak belirli bir
seviyede değer üretebileceği ve bu değerin farklı unsurlar arasında istenilen oranlarla
paylaştırılabileceğine değinilmektedir. Bu paylaşımın denge merkezinde ise Kalite
kavramı bulunmaktadır. Bazı modellerde de “Kapsam” ve “Kalite” tek bir unsur
olarak kabul edilerek “Ürün” ismiyle değerlendirilmektedir. Ancak, kurgulanan
model ne olursa olsun temel ilke değişmemektedir; proje kriterleri üzerindeki
herhangi bir değişiklik mutlaka diğerlerini de etkiliyor olacaktır. Bir diğer deyişle,
gerçekleştirilen hiçbir değişikliğin bütünsel sistem üzerindeki etkisi göz ardı
edilemeyecektir.
   Bu kabulle yola çıkıldığında, toplam kalitenin arttırılması için kriterlerde iyileşme
gerekliliği ortaya çıkmaktadır. Bu da dolaylı olarak, yazılım geliştirme yaşam
döngüsünün tüm aşamalarında eş zamanlı nitelik artışı anlamına gelmektedir. Ancak
bu sayede toplam kalite üzerinde belirgin bir artış sağlanabilecektir. Özetle, herhangi
bir yazılım projesinde kalite tüm proje paydaşlarının sorumluluğundadır.

                                                94
   Bu      kapsamdaki       teorik   yaklaşımların     pratiğe     geçirilebilmesi    için
gerçekleştirilebilecek iki farklı yaklaşım söz konusu olmaktadır. İlki,
engelleme/önleme aktiviteleri olarak tanımlayabileceğimiz “Kalite Güvence”, ikincisi
ise tespit etme anlamında değerlendirebileceğimiz “Kalite Kontrol/Test” aktiviteleri
olarak nitelendirilebilir. Ülkemizde sık sık rast gelindiği gibi, bu iki kavram birbirleri
yerine hatalı bir biçimde kullanılabilmektedir.


1.1 Yazılım Kalitesi ve Test

   Kalite Güvence faaliyetleri isminden de anlaşılacağı gibi, hataların daha oluşmadan
önlenebilmesi için gerçekleştirilmektedir. Bu alanda önce çıkan “ISO”, “Kaizen”,
“Six Sigma” gibi çatıların tümü, üretim süreçlerinde hata oluşumunu hedef
almaktadır.
   Kalite Kontrol/Test aktiviteleri, sistemdeki hataların en etkin ve verimli bir
biçimde ortaya konulup, düzeltilmesini hedeflemektedir. Yazılım sistemlerinde ise,
benimsenen yaşam döngüsü modeline göre bu aktiviteler farklı şekillerde
kurgulanabilmektedir. Geleneksel/Sıralı modellerde test aktiviteleri diğer aktiviteler
gibi bağımsız bir adım olarak kurgulanırken, çevik modellerde kodlama aktivitelerine
entegre biçimde yer almaktadır. Ancak, hangi model uygulanırsa uygulansın yazılım
testine olan ihtiyaç değişmemektedir. Bu sebeple, yüksek olgunlukta bir yazılım test
sürecine sahip olunması nihai ürün kalitesi, müşteri memnuniyeti, marka algısı,
çalışan motivasyonu gibi birçok alan üzerinde belirleyici olmaktadır.


1.2 Test Olgunluk Seviyesi Modelleri

   Test süreçlerinin olgunluk seviyesi            ölçümü    için   farklı   metodolojiler
kullanılabilmektedir. Bunlar özetle;


Tablo 1. Test Olgunluk Seviyesi Modelleri

    Acronym        Details                          Author/Organization
    BTM            Beizer’s Testing Model           Authored by Beizer in 1990
    TOM            Test Organization Maturity Authored by Gerrad Consulting in
                   Model                           the U.K in the late 1990s
    TMAP           Test Management Approach        Authored by Martin Pol, Rudd
                                                   Teunissen      and      Erik   can
                                                   Veenendaal in 1995 and now
                                                   owned by Sogeti which is part of
                                                   Capgemini
    TSM            Testability Support Model       Authored by Dr. David Gelperin in
                                                   1996
    TPI            Test    Process     Improvement Authored by Tim Koomen and
                   Model                           Martin Pol in 1996
    TMM            Test Maturity Model             Authored by Dr.Ilene Burstein, at
                                                   the    Illinois      Institude  of

                                             95
                                                     Technology in 1996
    TCMM            Technical Capability Maturity Authored by Torry Harris in 2001
                    Model
    TIM             Test Improvement Model           Authored by Thomas Ericson in
                                                     2002
    TCI             Test Capability Improvement      Authored by Atos Origin
    TPA             Test Process Assesment           Authored by CTG
    TMAP Next       Test Management Approach for Authored by Tim Koomen,
                    Next Generation                  Michiel Vroon, Leo van der Aalst
                                                     & Bart Broekman in 2005
    TMMi            Test Maturity Model Integrated   By TMMi Foundation in 2007. In
                                                     2010 level 4 and 5 framework was
                                                     released.
    TPCR            Test Process & Capability Rating Authored by Baris Sarialioglu in
                                                     2011 and revised in 2013


olarak listelenebilir.


2 Test Process and Capability Rating – TPCR Modeli

   Bu makalede, yukarıda belirtilen modellerden sonuncusu olan ve Barış Sarıalioğlu
tarafından 2011 yılı itibariyle geliştirilmeye başlanan TPCR’ın yapısı ve prensiplerine
yer verilecektir. TPCR modelini diğerlerinden ayıran en büyük özellik yalnızca test
süreçlerine odaklanmayıp, ilgili diğer süreçleri de inceliyor olmasıdır. Bu süreçler
“Test Processes” başlığı dışında gruplanmıştır. Bu kapsamda incelenen 32 kritik
alanın, dört başlık altında listelenebilmesi mümkündür. Bunlar;

Tablo 2. “Test Process and Capability Rating” Modeli Kritik Alanları

                  Acronym        Key Process Area
                  TP             Test Processes
                  TP.01          Test Methodology
                  TP.02          Test Policy
                  TP.03          Test Planning & Budgeting
                  TP.04          Test Effort Estimation
                  TP.05          Early Involvement
                  TP.06          Test Basis
                  TP.07          Test Stop Criteria
                  TP.08          Risk Assessment
                  TP.09          Test Metrics
                  TP.10          Test Documentation
                  TP.11          Test Monitoring & Reporting
                  TP.12          Test Design Techniques
                  TP.13          Static Testing
                  TP.14          Functional Testing
                  TP.15          Non-Functional Testing
                  TP.16          Regression Testing

                                              96
                 TP.17         Testing Activities for Development & Unit
                               Testing
                 TP.18         User Acceptance Testing
                 TP.19         Negative Testing
                 PO            People & Organization
                 PO.01         People / Organization
                 PO.02         Project Roles for Testing
                 PO.03         Test Skills
                 PO.04         Test Training Program
                 TT            Technology Tools
                 TT.01         Test Tools & Utilization
                 TT.02         Test Environments
                 TT.03         Test Automation
                 TT.04         Test Data Management
                 RP            Related Processes
                 RP.01         Defect Management
                 RP.02         Configuration Management
                 RP.03         Release Management
                 RP.04         Requirements Management
                 RP.05         User Experience & Usability




   TPCR modeli bu alanlardaki olgunluğun ölçümlenip, iyileştirilmesine katkı
sağlamak amacıyla geliştirilmiştir. Modelde 10’luk skala üzerinden derecelendirme
yapılmaktadır. Bu derecelendirme sonucunda elde edilen puanların, niteliksel
açıklamaları şu şekildedir.

  Ad-Hoc [0-2): Bu seviyede test süreçleri el yordamıyla gerçekleştirilmektedir. Bu
nedenle gerçekleştirilen aktiviteler tekrar edilebilir ya da standartlara uygun değildir.

   Adoption [2-4): Bu seviyede test aktiviteleri bir süreç olarak kurgulanmıştır. Bu
nedenle tanımlı bir strateji dokümanı, test planı ve müşteri isterlerini baz alan test
senaryoları bulunmalıdır. Test aktiviteleri, ürün test fazına gelene kadar
başlayamamaktadır.

   Moderate [4-6): Bu seviyede test fazı, yazılım geliştirme yaşam döngüsüne
tamamen entegre hale gelmiştir. Testler, risk yönetimine dikkat edilerek, geliştirme
aktivitelerinden bağımsız olarak ele alınmaktadır.

  Advanced [6-8): Bu seviyede test aktiviteleri, isterlerin ve tasarımın doğrulanması
dahil tüm yaşam döngüsü fazlarında yer almaktadır. Kalite kriterleri tüm kurum
genelinde kabul edilmiş haldedir.

  Standardized [8-10]: Bu seviyede test aktiviteleri sürekli olarak kontrol edilmekte
ve geliştirilmektedir. Genellikle bir araç desteği ve hata engelleme aktiviteleri söz
konusu olmaktadır.



                                            97
2.1 TPCR Değerlendirme Süreci

   TPCR Olgunluk Ölçümü çalışmalarında diğer denetleme çalışmalarında olduğu
gibi, mevcut durumun ortaya konulması için çeşitli değerlendirme adımları
gerçekleştirilmektedir. Her bir aşamanın ise, toplam puan üzerinden belirli bir ağırlığı
bulunmaktadır. Bunlar sırasıyla;

  Teorik Değerlendirme [%25]
           Test Politika, Strateji ve Metodolojisi
           Süreçler, Çıktılar ve Araçlar
           Dokümantasyon ve Prosedürler
  Mülakatlar / Anket Sonuçları [%25]
           Üst Yönetim, Proje Yönetimi, İş Birimleri, Yazılım, Analiz, Test ve Altyapı
           Ekipleri ile Görüşmeler
  Denetçi Görüşü [%15]
           Kurum Kültürü
           Yerinde Analiz
  Kanıt Değerlendirmesi [%35]
           Projelerde Kurgulan Yapının İncelenmesi

  oranlarında katkı sağlamaktadırlar.

  Belirtilen fazlardan elde edilen veriler ışığında, her bir kritik alan için ayrı ayrı
değerlendirme yapılmaktadır.


2.2 TPCR Olgunluk Seviyesi Hesaplaması

   Her bir alanın değerlendirmesi sonucunda, ağırlıklı ortalama ile (Her bir kritik
alanında farklı ağırlık derecesi bulunabilmektedir.) mevcut test seviyesi
hesaplanabilmektedir. Benzer modellerde olduğu gibi, bir seviyedeki tüm kritik
alanların karşılanması, bir üst seviyeye yönelmek için zorunlu tutulmamaktadır (Bknz
TMMi).


2.3 TPCR, TMMi ve Diğer Olgunluk Modelleri

   TPCR modelinin bir diğer avantajı da, elde edilen değerlendirme sonuçlarının
diğer birçok modele dönüştürülebilir olmasıdır. Örneğin, TPCR değerlendirmesi
tamamlanmış bir kurumun TMMi ve TPI modellerindeki olgunluk seviyesi de
kolaylıkla hesaplanabilmektedir. Böyle bir dönüşüm mümkün olma nedeni, TPCR’ın
TMMi ve TPI gibi modellerin üzerine kurgulanmış olmasıdır(Kapsar kümesi).
Süreçsel olarak da benzer yapıları olduğundan, bazı kritik alanların hesaplamalardan
çıkarımı olgunluk derecesi dönüşümü için yeterli olacaktır.




                                            98
Tablo 3. “TPCR”, “TMMi” ve “TPI” Modellerinin Karşılaştırılmalı Analizi

          TPCR                        TMMi                        TPI
      •    32 Kritik Alanın       •    16 Kritik Alanın       •    16 Kritik Alanın
           Bulunması                   Bulunması                   Bulunması
      •     ‘Related Processes’   •    Geniş Çapta Kabul      •     Geniş Çapta Kabul
           Kısmının Bulunması          Edilir Olması               Edilir Olması
      •     “Test Processes”,     •    Dünya’da Bilinirliği   •     Excel Tabanlı
           “People &              •    CMMi ile                    Ücretsiz Bir Aracı
           Organization”,              Entegrasyonu ve             Olması
           “Technology &               Uyumu                  •     TMAP Alyapısı
           Tools” ve “Related     •    Tümleşik Kritik        •     CMMi Entegre
           Processes”                  Alanlar                     Süreçleri
           Başlıklarının Ayrı     •    Dokümantasyon ve       •     Dokümantasyon ve
           Ayrı İncelenmesi            Kaynaklar                   Kaynaklar
      •    Organizasyonel
           Önceliklerin
           Adreslenmesi
      •    Teorik ve Pratik
           Değerlendirme
           yapılması
      •    Sürecin Şeffaf
           İşletilmesi




3 Özet

TPCR olgunluk modeli ile mevcutta sunulmuş olan modeller ile çözümlenememiş
sorunların adreslenebilmesi ve test olgunluk seviyesinin en doğru şekilde
belirlenmesini hedeflenmektedir. Bu sebeple test süreçlerinin yanında; teknoloji,
kişiler, organizasyon ve ilgili süreçler de değerlendirilip toplam test olgunluk
seviyesinin belirlenmesinde dikkate alınmaktadır. Bu doğrultuda, özellikle bankacılık
ve telekomünikasyon alanında gerçekleştirdiğimiz olgunluk seviyesi ölçümlerinde
TPCR’ın benzerlerine göre daha anlamlı ve kesin bir sonuç üretmekte olduğunu
gözlemlemekteyiz. İleriki dönemde TPCR’ın açık hale getirilecek, değerlendirme
kriterleri ve yöntemlerinin paylaşılması hedeflenmektedir.


Kaynaklar

1.   Project Management Triangle: Lewis, James P. (2005). Project Planning,
     Scheduling & Control, 4E. McGraw Hill. ISBN 978-0-07-146037-8
2.   Project Management, The Managerial Process: Erik W. Larson, Clifforg F. Gray,
     5E. McGraw Hill. ISBN 978-0-07-340334-2
3.   Juran, Joseph M. (1995), A History of Managing for Quality: The Evolution,
     Trends, and Future Directions of Managing for Quality, Milwaukee, Wisconsin:

                                              99
   ASQC Quality Press, p. 596, ISBN 9780873893411, OCLC 32394752, retrieved
   2013-10-20
4. Erik van Veenendaal, Jan Jaap Cannegieter, “The Little TMMi”, 2011
5. Sogeti, “TPI Framework”, December 2012
6. Sogeti, “TMap Next 1.3” Test Management Framework, 2006




                                     100