• Sonuç bulunamadı

Test Olgunluk Modelinin (TMMI) Agile ve Test Süreçleri ile Bütünleştirilmesi

N/A
N/A
Protected

Academic year: 2021

Share "Test Olgunluk Modelinin (TMMI) Agile ve Test Süreçleri ile Bütünleştirilmesi"

Copied!
12
0
0

Yükleniyor.... (view fulltext now)

Tam metin

(1)

Test Olgunluk Modelinin (TMMI) Agile ve Test Süreçleri

ile Bütünleştirilmesi

Ahmet Unudulmaz1 , Özgür Cingiz2, Oya Kalıpsız3 1,3 Yıldız Teknik Üniversitesi, İstanbul, Türkiye

[email protected], [email protected]

2 Bursa Teknik Üniversitesi, İstanbul, Türkiye

[email protected]

Özet. Test Olgunluk Modeli (TMMI) test süreçlerini iyileştirmek için kullanılan

belirli seviyeleri olan bir mimari modeldir. Bu yaklaşımın test süreçlerine entegre edilmesiyle birlikte proje ve ürün kalitesi üzerinde olumlu etkileri olmakta, test eforunu ise düşürmektedir. Bu pozitif etkilerinin yanında TMMI uygulamak do-kümantasyon açısından ağır bir yük getirmektedir. TMMI ve Scrum pratikleri bir arada kullanılarak hem test kalitesi arttırılabilir hem de mevcut olan bu doküman maliyeti azaltılabilir. Bu bildiride agile yazılım geliştirme metodolojisi ve test pratiklerinin TMMI Seviye – 2 ile entegrasyonu ele alınmıştır. TMMI Seviye – 2 alt adımları olan test politikası, test stratejisi, test planlama, test izleme ve kont-rol etme, test tasarım ve test çalıştırma adımlarının hem agile pratikleri hem de bazı test pratikleri ile (Risk bazlı test teknikleri, Kullanıcı Senaryo test teknikleri) birlikte kullanılması üzerine çalışma yapılacaktır. TMMI kapsam yüzde oranları da proje sonunda belirtilerek projelere nasıl uyarlanacağından bahsedilecektir.

Anahtar Kelimeler: TMMI, Agile ve TMMI, Test Politikası, Test Stratejisi,

Test Planlama, Test Tasarım.

Test Maturity Model Integration (TMMI) Level Two

Implementation with Agile and Software Test Process

Ahmet Unudulmaz1 , Özgür Cingiz2, Oya Kalıpsız3

1,3 Yıldız Teknik Üniversitesi, İstanbul, Türkiye

[email protected], [email protected]

2 Bursa Teknik Üniversitesi, İstanbul, Türkiye

[email protected]

Abstract. TMMI has a staged architecture and detailed model for process

imp-rovement. Appliying this approach has a positive impact on project and product

(2)

quality and test effort. Besides positive impact, TMMI contains heavy documen-tation. Appliying scrum practice with TMMI can reduce the documentation and improve test process quality by applying both of them. In this paper agile and testing practices are mapped with TMMI Level – 2 Managed step. Test Policy and Strategy, Test Plannig, Test Monitoring and Control, Test Design and Execu-tion and Test Environment areas are discussed and matched with not only scrum practice but also some test practice (Risk Based Testing, Use Case Testing). In the end TMMI coverage percentage will be given and Improvements areas will be defined. This model also can be adapted for every project which is using agile and scrum practice.

Keywords: TMMI, Managed, Agile with TMMI, Test Policy, Test Strategy,

Test Plan, Test Design.

1

Giriş

Çevik süreç manifestosunda da yer aldığı üzere bu metodolojinin temelinde süreçler ve araçlardan ziyade bireyler ve etkileşimlere, kapsamlı dokümantasyondan ziyade çalışan yazılıma, sözleşme pazarlıklarından ziyade müşteri ile iş birliği ön plana çıkmıştır [1,2]. Çevik süreç testleri gereksinimlerin dinamik olarak değişebileceği, müşterinin de yazı-lım geliştirme ve test süreçlerine dahil olabildiği iteratif yazıyazı-lım geliştirme metodu içinde yer alan süreçlerdir. Test fazı projenin başlangıç aşamasından bitiş anına kadar ele alınması gereken ve yazılımcı ile testçinin arasındaki entegrasyonu sağlayan süreç-leri kapsamalıdır. Kalite bağlamında bakıldığında ise test yükü ve test aktivitesüreç-leri pro-jeler için anahtar alanları oluşturmaktadır. Fakat günümüzde çevik süreç konseptleri kullanan projelerde genel olarak test süreçleri ihmal edilmekte, testler ve sonuçları ta-kip edilmemekte ve test anlamında herhangi bir süreç geliştirme modeli veya test kon-septi kullanılmakta veya daha az kullanılmaktadır. Çevik süreçler içinde bu eksiği ka-patmak adına Test Olgunluk Modelinin (TMMI) uyarlanması amaçlanmıştır. Projelere TMMI uyarlandığında proje ve ürün kaliteleri üzerinde pozitif etki yarattığı, test süreç-lerinin iyileştiği ve test yükü ve eforunun azaldığı bilinmektedir [3,4]. Bu faydalarının yanında TMMI ile birlikte ek olarak dokümantasyon ve limitasyon yükü de gelmekte-dir. Çevik süreçler ile birlikte kullanıldığında ise bu dokümantasyon yükünden kurtu-lunacağını ve süreçlerdeki eksik test yapısının da bu şekilde kapatılabilineceği düşü-nüldüğü için bu çalışma yapılmıştır.

Test olgunluk modelinin (TMMI) çevik süreçlerle entegrasyonu için ilk aşama ola-rak ikinci seviye ele alınmıştır. Seviye iki altındaki adımlara bakıldığında test politikası, test stratejisi, test planlama, test izleme ve kontrol etme, test tasarım ve çalıştırma ve test ortamı konuları bu çalışma kapsamında ele alınacak olup detayları ve çevik süreç-lerle olan entegrasyonu anlatılacaktır. Uygulanabilir olan alanlar, yarı uygulanabilir alanlar belirtilecek, hiç uyarlanamayan alanlar özellikle belirtilerek çevik süreçlerle TMMI entegrasyonunun yapılıp yapılamayacağı üzerinde tartışılacaktır. TMMI seviye iki ve çevik süreç ve scrum pratikleri tartışılırken risk bazlı test teknikleri ve kullanıcı senaryo test teknikleri de gene bu çalışma kapsamında ele alınacak olup ilişkilendirme sürecinde bu kavramalara da yer verilecektir.

(3)

2

İlgili Çalışmalar

Malardalen üniversitesinde yazılım test süreç iyileştirme modelleri üzerine bir literatür taraması yapmışlar. 18 farklı test iyileştirme süreci incelenmiştir. Bu tarama sonrasında ise 5 model detaylandırılmıştır: TMM, TMMI, TPI Next, Test Spice, TPI Next. Çalış-manın ikinci aşamasında ise TPI Next ve TMMi modellerinin birbirleriyle olan farkları üzerine odaklanmışlardır. Buna göre bu iki model üzerindeki temel farklar ise model temsilleri üzerinedir. TMMi aşamalı bir model sunarken TPI Next ise sürekli bir model sunmaktadır [3].

Hacettepe üniversitesinde yapılan çalışmada ise gene Malardalen üniversitesinde ya-pılan çalışmaya paralel olarak test süreç iyileştirme modelleri üzerinde bir literatür ta-raması yapılmıştır. Tarama genelinde test olgunluk modeli (TMA) ile test süreç iyileş-tirme (TPI) bazlı modeller karşılaştırılmıştır. Toplamda 58 farklı süreç iyileşiyileş-tirme mo-deli kullanılmıştır [4].

TMMI vakfı tarafından yayınlanan dokümanlara göre TMMI seviyeleri bazında hangi alt alanların çevik süreçler ile uyumlu olduğunu belirtilmiştir. Buna göre seviye iki bazında test politikası ve test stratejisi, test planlama, test izleme, test dizayn ve koşum ve test ortam adımlarının büyük oranda çevik süreçlere uyarlanabilir olduğunu bildirmişlerdir [5,6].

Helwan üniversitesinde yapılan çalışmada ise scrum pratikleri ile TMMI ikinci se-viyesinin adreslenmesi ve projedeki performans ve kalite faktörleri üzerine bir çalışma yapmışlar. Bu çalışmaya göre bütün test alt alanları scrum pratikleriyle eşleşmiştir. Test konfigürasyon kısmında ise %90 oranında eşleşmeyen veya yarı uygulanabilir alan bul-muşlardır [7].

3

Metodoloji

Bildiri kapsamında TMMI Seviye 2 ile çevik süreç ve test süreçlerinin entegrasyonu amaçlanmaktadır. Bütün alt alanlar ayrı ayrı ele alınarak çevik süreçlerle eşleşme du-rumları ele alınacaktır [6,7]. Çevik süreçlerle beraber risk bazlı test teknikleri ve kulla-nıcı senaryo test tekniklerinin de TMMI ile entegrasyonuna bakılacak ve değerlendir-meler buna göre yapılacaktır. Tablo 1’de de belirtildiği üzere eğer TMMI pratiği çevik süreç ve test süreç pratiği ile gerçeklenebiliyorsa “Evet uygulanır (E)”, bazı alanlar uy-gulanır bazı alanlar uygulanamıyorsa yani çevik süreçlere tam anlamıyla uygun değil ama bazı pratiklerle gerçeklenebiliyorsa “Yarı uygulanır (Y)”, eğer hiçbir pratikle eş-leştirilemez ise “Hayır uygulanamaz (H)” seviyeleri ile eşleştirilecektir.

Tablo 1. Eşleştirme Kriterleri

Açıklama Kriter

Pratik uygulanabilir Evet uygulanır (E) Pratik yarı

uygulana-bilir

Yarı Uygulanır (Y)

(4)

Yapılacak çalışma kapsamında aşağıda belirtilen TMMI alt alanları ele alınacaktır [5]: • Test politikası ve test stratejisi

o Test politikası kurmak o Test stratejisi kurmak

o Test performans göstergesi kurmak • Test planlama

o Risk değerlendirmesi yapmak o Test yaklaşımı geliştirmek o Test tahmininde bulunmak o Test planlaması geliştirmek o Test planına bağlı kalmak • Test izleme ve kontrol

o Plan kapsamında test ilerlemesinin izlenmesi

o Plan ve beklentiler kapsamında ürün kalitesinin izlenmesi o Kapatmak için düzenleyici aktivitelerin yönetimi

• Test tasarım ve çalıştırma

o Test tasarım teknikleri kullanarak test analiz ve tasarımın gerçekle-mesi

o Test implementasyonunun gerçeklemesi o Test koşumunun gerçeklemesi

o Kapanış için test hatalarının yönetimi • Test ortamı

o Test ortamı gereksinimlerinin geliştirilmesi o Test ortamı implementasyonunu yapılması o Test ortamının kontrolü ve yönetilmesi

3.1 Test Politikası ve Test Stratejisi

TMMI ikinci seviyesinin ilk adımı olan test politikası ve test stratejisinin temel amacı test politikasının tanımlanması, organizasyon genelinde test stratejisinin ve test tipleri-nin belirlenmesidir. Ayrıca test performansının ölçümü içinde test performans göster-geleri belirlenmeli ve geliştirilmelidir [6].

Tablo 2’de de görüleceği üzere test politikası, test stratejisi ve test performans göster-gelerinin çevik süreçler ve test süreçleriyle eşleştirilmesi gösterilmiştir.

(5)

Tablo 2. Test Politikası ve Test Stratejisi

Adım TMMI Pratikleri Çevik Süreç ve Test Pratikleri Eşleştirme 1.1 – Test

Politi-kası

Test hedefi belirleme Sprint planlama toplantıları E

1.2 – Test Politi-kası

Test politikası belir-leme

Projeye başlanmadan önce test politi-kasının belirlenmesi (Testin tanımı & Kalite seviyeleri)

E

1.3 – Test Politi-kası

Paydaşlarla test politi-kasının paylaşılması

Sürüm planlama toplantılarında bu bilginin paylaşılması gerekmekte. Fa-kat çevik süreç kullanan projelerde aynı süreç her zaman kullanılma-makta ve paydaşlar dahil edilmemek-tedir. Y 2.1 – Test Strate-jisi Risk değerlendirmesi-nin gerçeklemesi

Risk bazlı test yaklaşımı

kullanıla-rak bu adım uyarlanabilir. Sadece çe-vik süreç kullanımı yeterli olmamak-tadır.

E

2.2 – Test Strate-jisi

Test stratejisi belirleme Projeye başlanmadan önce test strate-jisinin belirlenmesi ve her sprintte gözden geçirilmesi (Sorumluluklar & Araçlar & Riskler)

E

2.3 – Test Strate-jisi

Test stratejisinin pay-daşlarla paylaşılması

Sürüm planlama toplantılarında bu bilginin paylaşılması gerekmekte. Fa-kat çevik süreç kullanan projelerde aynı süreç her zaman kullanılma-makta ve paydaşlar dahil edilmemek-tedir.

Y

3.1 – Test Perf. Göstergesi

Test performans göster-gelerinin belirlenmesi

Sprint metrikleri tanımlanmalı, ilerle-menin ölçülmesi ve test kapsamının ölçülmesi metriklerinin kullanılması

E

3.2 – Test Perf. Göstergesi

Test performans göster-gelerinin geliştirilmesi

Test performans araçlarının projeye entegre edilmesi ve her sprinte bu bil-ginin güncellenmesi gerekmektedir

E

3.2 Test Planlama

Test planlama aşamasının temel amacı belirlenmiş olan riskler ve test stratejisi özelinde bir test yaklaşımı kullanmak, iyi planlanmış yönetilebilir bir test planı sayesinde de test aktivitelerini gerçekleştirebilmektir. Buradaki anahtar alan ileriyi düşünerek test planı oluşturmaktır [6].

(6)

Tablo 3’de görüleceği üzere risk tahmini, test yaklaşımları, test süre belirleme, test planı ve plana taahhütler yer almaktadır. Bu alanların çevik süreçler ve risk bazlı test teknikleri ile ilişkilendirilmesinden bahsedilecektir.

Tablo 3. Test Planlama

Adım TMMI Pratikleri Çevik Süreç ve Test Pratikleri Eşleştirme 1.1 – Risk

De-ğerlendirme

Ürün risk kategori ve parametrelerinin belir-lenmesi

Risk bazlı test yaklaşımı

kullanıla-rak risk kategorileri ve test hedefleri belirlenebilir E 1.2 – Risk De-ğerlendirme Ürün risklerinin belir-lenmesi

Ürün risklerini belirlemek için risk

bazlı test yaklaşımı kullanılabilir

(Nasıl test yapılacak, bağımlılıklar, etkilenen alt sistemler vb.)

E

1.3 – Risk De-ğerlendirme

Ürün risk analizi Risk bazlı test yaklaşımı kullanıla-rak risk olasılıkları, etki değerleri kul-lanılarak ürün riskleri analiz edilebilir

E

2.1 – Test Yakla-şımı

Test edilecek özellikle-rin belirlenmesi

Risk bazlı test yaklaşımı

kullanıla-rak test öncelik numarası belirlenebi-lir. Yüksek önceliğe sahip riskler ilk olarak test edilir.

E

2.2 – Test Yakla-şımı

Test yaklaşımının belir-lenmesi

Test yaklaşımı takım planlama & arıtma toplantılarında belirlenir (Her bir iş maddesi için test seviyesi ve test adımı belirlenir)

E

2.3 – Test Yakla-şımı

Girdi kriterinin belir-lenmesi

Girdi kriterleri takım arıtma toplantı-larında her bir iş maddesi için belirle-nir E 2.4 – Test Yakla-şımı Çıkış kriterinin belir-lenmesi

Tamamlanmanın tanımı (DoD) bu kriter için kullanılır

E

2.5 – Test Yakla-şımı

Askıya alma ve yeni-den başlama kriterleri-nin belirlenmesi

Günlük standup toplantılarında prob-lemli alanlar konuşulmakta fakat scrum içinde askıya alma ve yeniden başlama kriterleri bulunmamaktadır.

H

3.1 - Test Tah-mini

Üst seviye kırılım yapı-sının kurulması

Asgari pazarlanabilir ürünlerin (MMF) tanımlanması ve ürün rezerv-lerine eklenmesi (PBI) sprint plan-lama ve arıtma toplantılarında ele alı-nır. E 3.2 - Test Tah-mini Test yaşam döngüsü-nün belirlenmesi

Test yaşam döngüsü proje yaşam döngüsü ile ilişkilendirilir.

E

3.3 – Test Tah-mini

Test eforu ve maliyetle-rin kestirimi

Kullanıcı senaryoları puanlama ve t-shirt boyutu hesaplama gibi

(7)

ler kullanılarak sprint planlama top-lantılarında test eforu ve maliyetleri belirlenir.

4.1 - Test Plan-lama

Test zamanlamasının belirlenmesi

Sprint planlama aktivitesinde test eforu tahminleme üzerinden zaman-lama çıkarımı yapılmaktadır.

E

4.2- Test Plan-lama

Test yapacak kişilerin planlanması

Sprint & takım planlama toplantıla-rında scrum ekiplerinde test yapacak kişiler ve harcayacakları efor belir-lenmektedir.

E

4.3- Test Plan-lama

Paydaşların dahil olma-sının planlanması

Paydaşların bütün scrum aktivitele-rine dahil olmasının sağlanması ge-rekmektedir. Bunun için bütün proje-ler düşünüldüğünde yarı uygulanır olarak işaretlenmiştir.

Y

4.4 – Test Plan-lama

Proje risklerinin belir-lenmesi

Risk bazlı test yaklaşımı kullanılarak proje paydaşlarının katıldığı toplan-tıda riskler belirlenir.

E

4.5- Test Plan-lama

Test planını belirlemek Test planı sprint planlaması içinde ele alınmaktadır.

E

5.1 – Test Plan-lamasına Uyum

Test planını gözden ge-çirmek

Günlük scrum toplantılarında test planı gözden geçirilmekte ve gere-kirse değiştirilmektedir. E 5.2- Test Planla-masına Uyum İş ve kaynak seviyeleri-nin uzlaştırılması Günlük scrum toplantılarında bu konu konuşmaktadır. Fakat kaynak seviyeleri ile ilgili ayrı bir toplantı yoktur.

Y

5.3- Test Planla-masına Uyum

Test plan taahhütlerinin sağlanması

Scrum master işlerin taahüte uygun yapılıp yapılmadığını, DoD’a uygun olduğundan emin olmaktadır.

E

3.3 Test İzleme ve Kontrol

Test izleme ve kontrol aşamasında ise test ilerlemesinin ve ürün kalitesinin izlenebil-mesi ve bu sürecin anlaşılabilizlenebil-mesi amaçlanmaktadır. Bu sayede ürün kalitesinde ve planlama aşamasındaki beklentiler karşılanabilir, düzenleyici aksiyonlar gene bu sü-reçte alınarak kalite istenen seviye getirilebilir [6].

Tablo 4’de görüleceği üzere test ilerlemesinin izlenmesi, ürün kalitesinin izlenmesi, düzenleyici önlemlerin alınma aşamaları çevik süreçler ve test yöntemleriyle ilişkilen-dirilmiştir.

(8)

Tablo 4. Test İzleme ve Kontrol

Adım TMMI Pratikleri Çevik Süreç ve Test Pratikleri Eşleştirme 1.1 – Test

ilerle-mesinin izlen-mesi

Test planlama paramet-relerinin izlenmesi

Sprint tahtaları ve online çözümler kullanılarak scrum pratikleri ile takip edilmektedir. E 1.2- Test ilerle-mesinin izlen-mesi Sağlanan ve kullanılan test ortam kaynakları-nın izlenmesi

Test ortam kaynakları otomatik araç-lar kullanıaraç-larak izlenmektedir. İnsan kaynağı da sprint tahtası ile izlenmek-tedir.

E

1.3- Test ilerle-mesinin izlen-mesi

Test taahhütlerinin iz-lenmesi

Test taahhütleri, takım taahhütleri ile birlikte günlük scrum toplantılarında ve değerlendirme toplantılarında kontrol edilmektedir. E 1.4- Test ilerle-mesinin izlen-mesi

Proje risklerinin izlen-mesi

Proje riskleri test otomasyon yakla-şımı sayesinde belirli periyotlarla kontrol edilmektedir. E 1.5- Test ilerle-mesinin izlen-mesi Paydaşlarının katılımı-nın monitör edilmesi

Paydaşların günlük scrum & plan-lama & inceleme ve arıtma toplantıla-rına katılımı herhangi bir scrum pren-sibi ile değil manuel olarak kontrol edilmektedir.

Y

1.6- Test ilerle-mesinin izlen-mesi

Test ilerlemesinin ince-lemesi

Günlük scrum ve gözden geçirme toplantıları ile kontrol edilmektedir.

E

1.7- Test ilerle-mesinin izlen-mesi

Test ilerlemesinin kilo-metre taşı bazında iler-lenmesi

Günlük scrum ve gözden geçirme toplantıları ile kontrol edilmektedir.

E

2.1 – Ürün kali-tesini izleme

Girdi kriterinin kontrol edilmesi

Günlük scrum toplantıları ile kontrol edilmektedir.

E

2.2 – Ürün kali-tesini izleme

Hataların izlenmesi Scrum tahtaları ve hata takip sistem-leri ile izlenmektedir. Günlük scrum toplantıları ile de kontrolü sağlan-maktadır. E 2.3 – Ürün kali-tesini izleme Ürün risklerinin izlen-mesi

Ürün riskleri otomatize edilen senar-yolar ile belirli periyotlarla kontrol edilmektedir. E 2.4 – Ürün kali-tesini izleme Çıkış kriterinin izlen-mesi

DoD’a uyum ile çıkış kriterleri izlen-mektedir fakat scrum pratikleri içinde kontrol çok sağlıklı yapılamamakta-dır.

Y

2.5 – Ürün kali-tesini izleme

Askıya alma ve devam etme kriterlerinin izlen-mesi

Günlük standup toplantılarında prob-lemli alanlar konuşulmakta fakat

(9)

scrum içinde askıya alma ve yeniden başlama kriterleri bulunmamaktadır. 2.6 – Ürün

kali-tesini izleme

Ürün kalitesinin ince-lenmesi

Scrum içinde sprint gözden geçirme-leri yapılmaktadır fakat ürün kalitesi için ayrı bir toplantı yapılmamaktadır.

H

2.7 – Ürün kali-tesini izleme

Ürün kalitesinin kilo-metre taşı bazında ince-lenmesi

Scrum içinde ürün kalite kilometre taşı bazında inceleme yapılmamakta-dır H 3.1 – Kapama aşaması için dü-zenleyici aktivi-teler

Problem analizi Sprint gözden geçirme ve günlük scrum toplantılarında problem analizi yapılmaktadır. E 3.2- Kapama aşaması için dü-zenleyici aktivi-teler Düzeltici aksiyonların alınması

Scrum içinde geçmişe yönelik toplan-tılar ile düzeltici aksiyonlar alınmak-tadır. E 3.3- Kapama aşaması için dü-zenleyici aktivi-teler Düzeltici aksiyonların yönetimi

Scrum master öncülüğünde düzeltici aksiyonlar yönetilmektedir.

E

3.4 Test Tasarım ve Çalıştırma

Test tasarımı ve çalıştırma aşamasında ise test tasarım teknikleri kullanılarak, yapısal olarak testlerin çalıştırması sağlanıp test ilerleme kapasitesini arttırabilmektir. Bu sa-yede bu sevisa-yede ilgili hatalar bulunabilir ve raporlanarak bir sonraki aşamaya geçile-bilir [6].

Tablo 5’de görüleceği üzere test analiz ve tasarım, test implementasyonu, test ko-şumu ve hataların raporlanması aşamaları çevik süreçler ve test süreçleri ile ilişkilen-dirilmiştir.

Tablo 5. Test Tasarım ve Çalıştırma

Adım TMMI Pratikleri Çevik Süreç ve Test Pratikleri Eşleştirme 1.1- Test Analiz

ve Tasarım

Test durumlarının ön-celiklendirilmesi

Risk bazlı test tekniği kullanılarak testler önceliklendirilmektedir. E 1.2- Test Analiz ve Tasarım Test senaryolarının ön-celiklendirilmesi

Risk bazlı test tekniği kullanılarak testler önceliklendirilmektedir.

E

1.3- Test Analiz ve Tasarım

Gerekli test verilerinin belirlenmesi

Her proje için test verisi gerekli ol-mamaktadır.

Y

1.4- Test Analiz ve Tasarım

Gereksinimlerin yatay düzeyde takip edilebi-lirliği

Takip edilebilirlik matrisi kullanılabi-lir.

(10)

2.1- Test İmple-mentasyonu

Test prosedürlerinin geliştirilmesi ve önce-liklendirilmesi

Kullanıcı senaryo test tekniği

kulla-nılarak test prosedürleri ortaya çıkarı-labilir

E

2.2- Test İmple-mentasyonu

Spesifik test verisinin yaratılması

Her proje için test verisi gerekli ol-mamaktadır.

Y

2.3- Test İmple-mentasyonu

Giriş test prosedürünün belirtilmesi

Kullanıcı senaryo test tekniği larak pozitif ve negatif testler kullanı-lır

E

2.4- Test İmple-mentasyonu

Test koşum zamanının geliştirilmesi

Sprint planlama ve takım planlama ile adreslenmiştir

E

3.1 – Test Çalış-tırma

Giriş testinin yapılması Birim ve bileşen testlerin otomatik koşturulması ile adreslenmektedir. 3.2- Test

Çalış-tırma

Test senaryolarının ko-şumu

Testlerin farklı seviyelerde koşturul-ması ile adreslenmektedir.

E

3.3- Test Çalış-tırma

Test bulgularının rapor-lanması

Hata takip sistemleri kullanılarak bul-gular raporlanabilir.

E

3.4- Test Çalış-tırma

Test çıktılarının yazıl-ması

Test otomasyon araçları kullanılarak çıktılar otomatik olarak depolanmak-tadır. Her test maddesi için anlamlı log bilgisi yazmak önemli olmaktadır.

E

4.1 – Kapama için test bulgula-rının yönetimi

Hataların dağılımının kontrol edilmesi

Hata takip sistemleri kontrol edilerek bunlar üzerinde modeller çıkarılmak-tadır. E 4.2- Kapama için test bulgularının yönetimi Hataların düzeltilmesi için düzeltici aksiyon-lar

Hataların düzeltilmesi için yeni iş planları yaratılarak scrum tahtası üze-rinden kontrol edilmektedir.

E

4.3- Kapama için test bulgularının yönetimi

Test hatalarının duru-munun takibi

Hataların durumunun kontrolü için hata takip sistemi ve scrum tahtaları kullanılmaktadır.

E

3.5 Test Ortamı

Test ortamının amacı ilgili test verilerini içererek testlerin düzgün bir şekilde ve tekrarlı bir şekilde çalıştırılabilmesini sağlamaktır. Burada sadece test teknikleri ve çevik süreç yeterli olmamaktadır [6].

Tablo 6’da test ortamının gerçeklemesi, test ortam implementasyonunun gerçeklen-mesi, test ortamının kontrol ve yönetimi çevik süreçlerle adreslenmeye çalışılmıştır. Tablo 6’da birçok alan sadece çevik süreçler kullanılarak TMMI seviye iki ile direkt olarak adresleyememiştir. Burada yazılım operasyon yaklaşımlarını da sürece dahil et-mek gereket-mektedir. Bu çalışma kapsamında sadece çevik süreçler ve test süreçleri da-hil edildiği için diğer alt adımlarda olduğu gibi yüksek bir kapsama çıkmamaktadır.

(11)

Tablo 6. Test Ortamı

Adım TMMI Pratikleri Çevik Süreç ve Test Pratikleri Eşleştirme 1.1- Test ortam

gereksinimleri-nin geliştirilmesi

Test ortam gereksinim-lerinin ortaya çıkarımı

Sprint planlama ve arıtma toplantıları ile gereksinimler ortaya çıkarılır

E

1.2- Test ortam gereksinimleri-nin geliştirilmesi

Test ortam gereksinim-lerinin geliştirilmesi

Sprint planlama ve arıtma toplantıları ile gereksinimler geliştirilir

E

1.3- Test ortam gereksinimleri-nin geliştirilmesi

Test ortam gereksinim-lerinin analiz edilmesi

Test mimarı veya test yöneticisi ge-reksinimlerin analizinden sorumlu-dur. H 2.1 – Test ortam implementasyo-nunun gerçekle-mesi

Test ortamlarının imp-lementasyonu

Test ortamının implementasyonundan sprint günleri dahilinde takımlardaki testçiler sorumludur. E 2.2- Test ortam implementasyo-nunun gerçek-lenmesi

Kapsamlı test verisinin yaratılması

Bütün projeler için test verisine ihti-yaç duyulmamaktadır. Y 2.3- Test ortam implementasyo-nunun gerçek-lenmesi

Giriş test prosedürleri-nin test ortamına uyar-lanması

Giriş test prosedürleri scrum pratik-leri ile adreslenememektedir.

H

2.4- Test ortam implementasyo-nunun gerçek-lenmesi

Test ortamı için giriş testlerinin gerçeklen-mesi

Scrum pratikleri içinde test ortamı için giriş testleri adreslenememekte-dir. H 3.1 – Test orta-mının kontrolü ve yönetimi Sistem yönetiminin gerçeklenmesi

Sistem yönetimi çevik süreçler ile ad-reslenememektedir. Yazılım operas-yon yaklaşımları kullanılmalıdır.

H

3.2- Test ortamı-nın kontrolü ve yönetimi

Test veri yönetiminin gerçeklenmesi

Bütün projeler için test verisine ihti-yaç duyulmamaktadır.

H

3.3- Test ortamı-nın kontrolü ve yönetimi

Test ortamının kullanı-labilir olduğunun gös-terilmesi

Test otomasyon sistemleri bu madde için kullanılabilir.

E

3.4- Test ortamı-nın kontrolü ve yönetimi

Test ortamını hataları-nın raporlanması ve yö-netimi

Hata takip ara yüzü ve scrum tahtaları bu madde için kullanılabilir.

E

4

Sonuçlar ve Öneriler

Yapılan çalışma kapsamında test olgunluk modeli (TMMI) seviye iki altında bulunan adımların çevik süreçler ile entegrasyonundan bahsedilmiştir.Toplamda 5 başlık altında

(12)

70 alt başlık incelenmiştir. Bunlardan 51 tanesi çevik süreçler, risk bazlı test yaklaşımı ve kullanıcı senaryo test yaklaşımı ile adreslenebilinmiştir. 9 tanesi ise herhangi bir scrum pratiği ile adreslenememiştir. 10 tanesi ise parçalı olarak scrum ve test pratikleri ile adreslenmiştir. Tek başına scrum bütün alt maddeleri adreslemek için yeterli gele-memektedir. Örneğin test ortamı alt maddesinde de bahsedildiği üzere yazılım operas-yon yaklaşımlarının da bu sürece dahil edilmesi gerekmektedir. TMMI kapsam yüzdesi %72,8 olacak şekilde belirlenmiştir.

Yapılan bu çalışma ileride yapılacak olan çalışmaların temelini oluşturmaktadır. Sonraki aşamalarda beş TMMI seviyesi çevik süreçler ve test süreçleriyle eşleştirilecek ve yeni bir model ortaya konacaktır. Test yaklaşımının ikinci plana itildiği süreçlerde bu yeni modeli kullanmak kalite ve test süreçleri anlamında da olumlu bir etki sağlaya-caktır. Oluşturulacak bu yeni modelle birlikte proje ve ürün kalitesinin ölçümü hedef-lenmektedir. Proje aşağıdaki metriklerle ölçülerek iyileştirilen alanlar TMMI öncesi ve sonrası ortaya konulacaktır [7]. Tahmin edilen ve gerçeklenen test eforu ve test mali-yeti, tahmin edilen ve gerçeklenen test senaryo sayısı, önceliklerine göre bulunan hata sayıları, toplam hata sayıları, hata bulma oranı, hata yoğunluğu, meslektaş değerlen-dirme kapsamı, kod kapsamı, gereksinim kapsamı, haftalık koşturulan test senaryoları metriklerinin detaylı ölçümü gerçekleştirilecektir.

İleride yapılacak çalışmalarda yukarıda bahsedilenlere ek olarak kapsam yüzdesini daha da yukarılara çıkarmak hedeflenmektedir. Bunun için çevik süreç pratiklerinin yanında farklı test pratikleri, yazılım operasyon yaklaşımları ve farklı test süreç iyileş-tirme modellerinin de kullanılması amaçlanmaktadır.

Kaynakça

1. Ken S., Jeff S.: The Definitive Guide to Scrum The Rules of the Game, The Scrum Guide (2017).

2. Kent B., Mike B., Arie v., Alistair C., Ward C., Martin F., James G., Agile manifeto, https://agilemanifesto.org/iso/tr/manifesto.html

3. Wasif A., Snehal A., Kerstin G., Richard T.: Software test process improvement approaches A systematic literature review and an industrial case study, The Journal of Systems and-Software, pp.1-33, Elsevier (2016)

4. Vahid G., Michael F., Tuna H.: Software test maturity assessment and test process impro-vement A multivocal literature review, Information and Software Technology, pp.16-42, Elsevier (2017)

5. TMMI Foundation, Test Maturity Model Integration (TMMI) Guidelines for Test Process Improvement,https://tmmi.org/tm6/wp-content/uploads/2018/11/TMMi-Framework-R1-2.pdf

6. TMMI Foundation, TMMI in the Agile World, Version 1.3, https://www.tmmi.org/tm6/wp-content/uploads/2019/07/TMMi-in-the-Agile-world-V1.3.pdf

7. Ahmed B., Enas M., Mahmoud A.: Towards Agile Implementation of Test Maturity Model Integration (TMMI) Level 2 using Scrum Practices, Interantional Jouranl of Advanced Com-puter Scienes and Applications Vol. 6 (2015)

8. Vahid G., Michael F., Tuna H.: What We Know about Software Test Maturity and Test Process Improvement, IEEE Computer Society (2018)

Şekil

Tablo 1. Eşleştirme Kriterleri
Tablo 2. Test Politikası ve Test Stratejisi
Tablo 3. Test Planlama
Tablo 4. Test İzleme ve Kontrol
+3

Referanslar

Benzer Belgeler

• Baykul (2015) ‘ e göre ifade edilen test geliştirme aşamaları sırasıyla testin amacı, testin kapsamı, maddelerin yazılması, madde redaksiyonu, deneme

• Spearman’ın öne sürdüğü bu kuramın özünde gözlenen test puanı kuramsal olarak, gerçek puan ve tesadüfi hata isimlerinde iki bileşene ayrılmaktadır..

[r]

Yukarıdaki grafikte Ocak ayından Eylül ayının sonu- na kadar avlanma izni olan bir balıkçı teknenesinin her ay tuttuğu balık miktarı verilmiştir. Grafik f(x)=-x ax b

Doğal çevre ile insan sürekli etkileşim içindedir. İnsan, sahip olduğu akıl sayesinde doğal çevreye önce uyum sağlar, daha sonra doğal çevreyi

A) Yeryüzünde ilk oluşan kayaç türüdür. C) İç püskürük kayaçlar derinlerde geç soğuyarak oluştukları için kristal yapıları küçük olur. D) Püskürük kayaçların

A) Dört mevsim belirgin olarak yaşanmaktadır. B) Sıcaklık yıl boyunca yüksektir ve yılın bir dönemi kuraktır. C) Yıl boyunca yağışlı ve sıcaktır. D) Yıl boyunca

Testlerimizin tamamı için web sitemizi ziyaret edin. İNSAN VE DOĞA ETKİLEŞİMİ.. 8- Aşağıdakilerden hangisi insanların doğal çevreyi etkilemesine örnek olarak