Test Srelerinin Olgunluk Seviyesi Modeli ile yiletirilmesi Scrum

  • Slides: 19
Download presentation
Test Süreçlerinin Olgunluk Seviyesi Modeli ile İyileştirilmesi: Scrum ile Yazılım Geliştiren Bir İşletmede Uygulama

Test Süreçlerinin Olgunluk Seviyesi Modeli ile İyileştirilmesi: Scrum ile Yazılım Geliştiren Bir İşletmede Uygulama Şubat 2015 Dr. Ayfer BAŞAR 1

SUNUM GÜNDEMI • Giriş • Yazılım Testleri • Test Olgunluk Seviyesi Modeli (TMMI) •

SUNUM GÜNDEMI • Giriş • Yazılım Testleri • Test Olgunluk Seviyesi Modeli (TMMI) • Bir Teknoloji Şirketinin Yazılım Test Süreci • Test Faaliyetlerinin İyileştirilmesi İçin TMMI • Sonuç ve Öneriler 2

GIRIS • Artan rekabet ve gelişen müşteri istekleri dolayısıyla organizasyonların yazılım geliştirme faaliyetlerini güvenilir

GIRIS • Artan rekabet ve gelişen müşteri istekleri dolayısıyla organizasyonların yazılım geliştirme faaliyetlerini güvenilir ve verimli bir şekilde yürütme ihtiyacı, • Yazılımdaki hatalardan dolayı işletmelerin yüksek maliyete katlanma durumu, • Yazılım süreçlerinin olgun hale getirilebilmesi için süreç yetenekleri ve olgunluk faaliyetlerinin birlikte yürütülmesi ihtiyacı, • Yazılım süreçlerindeki test işlemlerinin detaylarına yönelik CMMI’da yeterli bilgi bulunmaması nedeniyle tamamlayıcı model olarak test süreçlerinin iyileştirilmesi amacıyla geliştirilen TMMI (Tümleşik Test Olgunluk Modeli - Test Maturity Model Integrated) uygulanması, 3

YAZILIM TESTLERI Birim Testi Entegrasyon Testi İşlevsel Test Kara Kutu Testi Kullanıcı Kabul Testi

YAZILIM TESTLERI Birim Testi Entegrasyon Testi İşlevsel Test Kara Kutu Testi Kullanıcı Kabul Testi Dinamik Test Performans Testi Yük Testi İşlevsel Olmayan Test Kullanılabilirlik Testi Güvenilirlik Testi Yazılımın Denetimi Statik Test Gözden Geçirme Üzerinden geçme Kodun Yeniden İncelenmesi 4

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • Test süreçlerinin iyileştirilmesi amacıyla Yetenek Olgunluk Model Entegrasyonu

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • Test süreçlerinin iyileştirilmesi amacıyla Yetenek Olgunluk Model Entegrasyonu (CMMI – “ Capability Maturity Model Integration”) referans alınarak Illinois Institute of Technology tarafından tasarlanan bir model, • Test çalışmalarının olgunluk hiyerarşisini gösteren seviyeleri ile her seviye için olgunluk hedeflerini tanımlama ve işletmelerin bu modele göre hangi aşamada olduğu bilgisini sağlama amacı, • Her seviyede olgunluk hedefleri, olgunluk alt hedefleri, anahtar süreç adımları, aktivite, görev ve sorumluluklara dair gerekli bilgilerin tanımlanması, 5

TEST OLGUNLUK SEVIYESI MODELI (TMMI) 6

TEST OLGUNLUK SEVIYESI MODELI (TMMI) 6

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • Birinci seviye: Başlangıç aşamasında, olgunluk hedefleri bulunmayıp kod

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • Birinci seviye: Başlangıç aşamasında, olgunluk hedefleri bulunmayıp kod yazıldıktan sonra test işlemleri başlamakta, test faaliyetlerinin sürdürülebilirliğinin sağlanması için önemli bir çaba harcanmamakta, test vakaları geçici olarak yürütülmektedir. • Test faaliyetleri, yazılım geliştirmenin önemli ve kritik bir süreci olarak görülmemektedir. 7

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • İkinci seviye: Faz Tanımlama aşamasının olgunluk hedefleri ve

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • İkinci seviye: Faz Tanımlama aşamasının olgunluk hedefleri ve alt hedefleri: • Test ve hata ayıklama işlemlerine ait hedeflerin tespit edilmesi, • Test ve hata ayıklama işlemleri ile ilgili olarak komitelerin belirlenmesi, • Komite tarafından, test ve hata ayıklama işlemlerine ait hedeflerin geliştirilip dokümante edilmesi, • Test planlama sürecinin önceliklendirilmesi (test amaçlarının tanımlanması, risk analizinin gerçekleştirilmesi, stratejilerin belirlenmesi, test spesifikasyonlarının geliştirilmesi ve kaynakların atanması), • Test planlama görevinin bir komiteye atanması, • Komite tarafından bir test plan taslağının oluşturulması, • Test planlarının oluşturulması ve yönetilmesi için uygun araçların kullanılması • Müşteri ihtiyaçlarının test planına dâhil edilebilmesi için sözleşmelerin göz önünde bulundurulması, • Temel test teknik ve metotlarının kurumsallaştırılması, • Temel test teknik ve metotları ile ilgili uzman görüşünden yararlanılması, • Uzman görüşünün uygulanabilmesi için yönetim tarafından gerekli politikaların belirlenmesi 8

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • Üçüncü seviye: Entegrasyon aşamasının olgunluk hedefleri ve alt

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • Üçüncü seviye: Entegrasyon aşamasının olgunluk hedefleri ve alt hedefleri : • Yazılım test grubunun oluşturulması, • Lideri olan ve destek verilen kurum çapında etkin bir test grubunun oluşturulması, • Yazılım geliştirme sürecinin her aşamasına test grubunun dâhil edilmesi, • Eğitimli ve motivasyon gücü yüksek test mühendislilerinin gruba atanması, • Test grubunun müşteriler iletişim kurması, • Teknik eğitim programının oluşturulması, • Test işlemlerinin yazılım yaşam döngüsü ile birleştirilmesi, • Test faaliyetlerinin birim, entegrasyon, sistem ve kabul testleri şeklinde farklı gruplara ayrılması, • V modelinin izlenmesi, • Test süreçlerinin kontrol edilmesi ve izlenmesi, • Test projelerinin kontrolü ve izlenmesine yönelik politikaların geliştirilmesi, • Test projeleri ile ilgili metriklerin tanımlanması, 9

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • Dördüncü seviye: Yönetim ve Ölçüm aşamasının olgunluk hedefleri

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • Dördüncü seviye: Yönetim ve Ölçüm aşamasının olgunluk hedefleri ve alt hedefleri: • Kurum çapında gözden geçirme programının oluşturulması, • Yönetim tarafından gözden geçirme politikalarının oluşturulması, • Test grubu tarafından hedef, plan, prosedür ve kayıtların oluşturulması, • Test grubu üyelerinin eğitilmesi, • Test ölçüm programının oluşturulması, • Test ölçüm metrikleri ve hedeflerinin tanımlanması, • Veri toplama ve analizi için test yönetim planının geliştirilmesi, • Süreç iyileştirme faaliyetlerine yönelik olarak bir aksiyon planının oluşturulması, • Yazılım kalite değerlendirmesi, • İşletme tarafından ürünlerin kalite hedeflerinin tanımlanması, • Yönetim tarafından kalite hedeflerini destekleyen politikaların geliştirilmesi, 10

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • Beşinci seviye: Optimizasyon / Hata Önleme ve Kalite

TEST OLGUNLUK SEVIYESI MODELI (TMMI) • Beşinci seviye: Optimizasyon / Hata Önleme ve Kalite Kontrol aşamasının olgunluk hedefleri ve alt hedefleri: • Hata önleme işlemlerine yönelik uygulamalar, • Hata önleme ekibinin oluşturulması, • Tanımlanan hataların dokümante edilmesi, • Her hata için kök neden analizinin gerçekleştirilmesi, • Yaygın hataların tekrar etmesinin engellenmesi için aksiyon planının oluşturulması, • İstatiksel kalite kontrol, • Üst seviyede ölçülebilen kalite hedeflerinin tanımlanması (örn. test vakası uygulama oranı, hata oluşma oranı vb. ) • Yeni kalite hedeflerinin test planı kapsamında değerlendirildiğinin garanti edilmesi, • İstatistiksel test ve analiz yöntemleri konusunda test grubunun eğitilmesi, • Test süreci optimizasyonu, • Test sürecini kontrol etmek için test süreç iyileştirme grubunun oluşturulması ve iyileştirilecek alanların tanımlanması, • Test süreç yeteneğinin iyileştirilmesi için yeni teknoloji ve uygulamaların değerlendirilmesi, • Test süreç etkinliğinin sürekli değerlendirilmesi için yöntem belirlenmesi, 11 • Kalite hedeflerine bağlı olarak test durma koşullarının tanımlanması.

ISLETMENIN YAZILIM TEST SURECI • Çevik yazılım geliştirme yaklaşımı olan Scrum metodolojisinin takibi, •

ISLETMENIN YAZILIM TEST SURECI • Çevik yazılım geliştirme yaklaşımı olan Scrum metodolojisinin takibi, • Çevik sürecin şelale (“waterfall”) tekniğinden temel farkı dolayısıyla analiz, tasarım, kodlama, test vb. adımların ayrı gruplar tarafından yürütülmemesi, • Müşteri tarafından talep edilen ürün ya da hizmetlerin; 2 -4 haftalık dönemler halinde planlanan sprintlerde geliştirilmesi, • Analiz, yazılım, test vb. işlemler için ayrı alt grupların bulunmaması ve tek bir hedefe ulaşmak için mücadele eden - sürekli iletişim halinde olan çalışanlardan oluşan ekipler, 12

ISLETMENIN YAZILIM TEST SURECI • Scrum metodolojisinin gereği olarak yazılım geliştirme hayat döngüsünün kısa

ISLETMENIN YAZILIM TEST SURECI • Scrum metodolojisinin gereği olarak yazılım geliştirme hayat döngüsünün kısa sürelerde sürekli tekrar etmesi, • Test, analist, yazılım geliştirme rollerine sahip fonksiyonel ekiplerin sprint boyunca planlamaya dahil edilen müşteri iş birimi taleplerini gerçekleştirmeye odaklanması, • Her gün ayakta yapılan 15 dakikalık toplantılarla gidişat hakkında tüm takımın bilgilendirilmesi, • Yazılım geliştirme yaşam döngüsünün farklı aşamalarında farklı (birim, sistem, müşteri kabul vb. ) testler gerçekleştirilmesi, 13

İSLETMENIN TEST FAALIYETLERININ İYILEŞTIRILMESI İÇIN TMMI – 1 VE 2. SEVIYE • TMMI yaklaşımına

İSLETMENIN TEST FAALIYETLERININ İYILEŞTIRILMESI İÇIN TMMI – 1 VE 2. SEVIYE • TMMI yaklaşımına göre genel olarak 2. seviyenin gerektirdiği hedef ve alt hedeflerin tamamı karşılanmaktadır. 14

İSLETMENIN TEST FAALIYETLERININ İYILEŞTIRILMESI İÇIN TMMI – 3. SEVIYE • Uygulama Geliştirme (UG) servislerinde

İSLETMENIN TEST FAALIYETLERININ İYILEŞTIRILMESI İÇIN TMMI – 3. SEVIYE • Uygulama Geliştirme (UG) servislerinde farklı test türlerinin uzmanlık alanına göre farklı gruplar tarafından yürütülmesi, • Testlerin iyileştirilmesi için atölye çalışmaları veya test geliştirme projelerinin oluşturulması, • V modelinin izlenmesi, • Risk planının hazırlanması, bu sayede UG servislerinin mevcut durumda 2 olan olgunluk düzeyini 3. seviyeye yükselebilmesi, 15

İSLETMENIN TEST FAALIYETLERININ İYILEŞTIRILMESI İÇIN TMMI – 4. SEVIYE 16

İSLETMENIN TEST FAALIYETLERININ İYILEŞTIRILMESI İÇIN TMMI – 4. SEVIYE 16

İSLETMENIN TEST FAALIYETLERININ İYILEŞTIRILMESI İÇIN TMMI – 5. SEVIYE • Üst seviyede ölçülebilen kalite

İSLETMENIN TEST FAALIYETLERININ İYILEŞTIRILMESI İÇIN TMMI – 5. SEVIYE • Üst seviyede ölçülebilen kalite hedeflerinin tanımlanması, yeni kalite hedeflerinin test planı kapsamında değerlendirildiğinin garanti edilmesi ve test süreç etkinliğinin sürekli değerlendirilmesi için yöntem belirlenmesi önemlidir. 17

SONUÇ VE ÖNERILER • Mevcut durumda olgunluk düzeyi 2 olan UG servislerinin 3. seviyeye

SONUÇ VE ÖNERILER • Mevcut durumda olgunluk düzeyi 2 olan UG servislerinin 3. seviyeye yükselebilmesi için; • Scrum yaklaşımı ile uyumlu olmayan test grubunun oluşturulması dışında, • Personelin test konusunda eğitilmesi, • Farklı test türlerinin uzmanlık alanına göre farklı gruplar tarafından yürütülmesi, • Testlerin iyileştirilmesi için atölye çalışmaları veya test geliştirme projelerinin gerçekleştirilmesi, • V modelinin izlenmesi, • Risk planının hazırlanması önerilmiştir. 18

TEŞEKKÜRLER… 19

TEŞEKKÜRLER… 19