PDCA Modelini Kullanarak Süreç İyileştirmesini (TPI) Test Edin

⚡ Akıllı Özet

Test Süreci İyileştirme, her projenin ölçülebilir dersler bırakması için PDCA döngüsünü testlere uygular. Bu sayfa, PDCA'nın dört adımını, bunların ardındaki olgunluk modellerini ve iyileşmenin gerçekten gerçekleştiğini kanıtlayan ölçütleri açıklamaktadır.

  • 🔁 PDCA döngüsü: Planla, Uygula, Kontrol Et ve Harekete Geç, bir projenin hatalarını tekrarlanabilir bir standarda dönüştürür.
  • 🎯 Sorunlarla başlayalım: Herhangi bir iyileştirme eylemi seçmeden önce gerçek hataları, gecikmeleri ve maliyet aşımlarını listeleyin.
  • 📊 Her şeyi ölçün: TracHer değişiklikten önce ve sonra k verimliliği, hata sızıntısı ve test senaryosu başına maliyet.
  • ⚠️ Yan etkileri izleyin: Otomasyon burada verimliliği artırdı, ancak alet seçimi düzeltilene kadar kalite düştü.
  • 🪜 Aşamalı olarak iyileştirin: Küçük, ardışık işlemlerin başarı oranı, tüm sürecin yeniden yazılmasına göre çok daha yüksektir.
  • 🏛️ Bir model seçin: TPI NEXT dört olgunluk seviyesi kullanırken, TMMi ve CMMI'nin her biri beş olgunluk seviyesi tanımlamıştır.
  • 📝 Zaferi standartlaştırın: Test politikasını ve şablonlarını güncelleyerek bir sonraki projenin bu kazanımlardan faydalanmasını sağlayın.

PDCA modelini kullanarak Test Süreci İyileştirmesi (TPI)

Test Süreci İyileştirmesi Nedir?

Test Süreci İyileştirmesi Test etme, bir test sürecinin performansını ölçme, zayıf noktalarını belirleme ve bir sonraki projenin daha düşük maliyetle ve daha kısa sürede daha yüksek kalite sunması için kontrollü değişiklikler uygulama pratiğidir. Testi, her sürümde aynı şekilde tekrarlanan bir faaliyet yerine, ölçülebilen ve ayarlanabilen bir süreç olarak ele alır.

Düşünün Guru99 Bank projesi yeni tamamlandı. Yönetim kurulu çalışmalarınızı takdir ediyor ve müşteri de memnun. Buna rağmen, patronunuzun size hâlâ soruları var.

PDCA Modelini Kullanarak Süreç İyileştirmesini Test Edin

Yöneticiler sıklıkla şu şekilde tanımlarlar: yazılım testi Sorunlu ve kontrol edilemez bir süreç olarak. Geriye baktığımızda... Guru99 Bank projesinde aşağıdaki sorunlardan herhangi biriyle karşılaştınız mı?

Test Süreci İyileştirmenin çözdüğü yaygın sorunlar

Bunlar neredeyse her test projesinde karşılaşılan yaygın sorunlardır. Birçok kuruluş, test sürecini iyileştirmenin bu sorunları kalıcı olarak çözmenin tek yolu olduğunu fark eder, çünkü geçmiş hatalardan ders çıkarmak, aynı hataların bir sonraki sürüm döngüsünde tekrarlanmasını önler.

Neden Süreç İyileştirmeyi Test Etmelisiniz?

Aşağıdaki senaryo, test süreçlerinin iyileştirilmesinin neden önemli olduğunu göstermektedir. Guru99 Bank projesi tamamlandı, testlerin kalitesi mükemmeldi ve müşteriden olumlu geri bildirimler aldınız.

Test Süreci İyileştirmesine Neden İhtiyaç Duyulur - Rakip Karşılaştırma Senaryosu

Bu olaydan çıkarılan ders nedir? Basitçe şu: “Her zaman daha iyisini yapmaya çalışın”İyi bir iş çıkardığınıza inansanız bile, her zaman sizden daha iyi işler çıkaran başkaları vardır, çünkü onlar sizden daha iyi fikirler ve çözümler bulmuşlardır.

Her işletme projenin şu şekilde tamamlanmasını ister: en yüksek kalite, şurada en düşük maliyet ve içinde en kısa Teslim süresi. Test Süreci İyileştirmesi, bir test ekibinin aynı anda bu üç hedefe de ulaşmasına yardımcı olan şeydir.

Test Süreci İyileştirmenin Amaçları - kalite, maliyet ve zaman

Test Süreci İyileştirmesi Nasıl Uygulanır?

Test Süreci İyileştirmesini uygulamak için Guru99 Bank projesi kapsamında, Test Yöneticisi aşağıdaki adımları izleyebilir. PDCA PDCA (Planla-Uygula-Kontrol Et-Harekete Geç) modeli, işletmelerde bir sürecin kontrolü ve sürekli iyileştirilmesi için kullanılan dört adımlı bir yönetim yöntemidir. Döngünün her aşaması tek bir iyileştirme döngüsüdür ve Harekete Geç aşamasının çıktısı, bir sonraki Plan aşamasının girdisi olur.

Test Süreci İyileştirmesini uygulamak için kullanılan PDCA modeli

💡 İpucu: PDCA döngüsünü her seferinde tek bir dar kapsamlı probleme karşı çalıştırın. Regresyon yürütme süresi gibi tek bir ölçülebilir sorun noktasına odaklanan bir döngü, bir sürüm içinde sonuç gösterecek kadar hızlı tamamlanır.

Adım 1) Planlayın

Planlama aşaması, iyileştirmenin tasarlandığı aşamadır. Bu aşama üç küçük adıma ayrılmıştır.

Test Süreci İyileştirmesinde Planlama aşamasının üç adımı

Adım 1.1) Sorunu tanımlayın

Test iyileştirme sürecinin ilk faaliyeti belirlenmesi Mevcut projede meydana gelen sorunlar. Bu projedeki sorunlar başka projelerde de tekrarlanabilir. Sorunları çözmek ve gelecekte bu sorunlardan kaçınmak için çözümler bulmak Test İyileştirmenin temel hedefidir.

Şimdi projeye geri dönelim. Guru99 Bank web sitesinde herhangi bir sorun veya iyileştirme noktası buldunuz mu? Lütfen aşağıdan seçin.

Bay Hayır Sorun Açıklama Seç
1 Kalite Müşteri hâlâ biraz buldu kusur serbest bırakıldıktan sonra
2 Teslim Şekli Proje ertelendi
3 Team Bazı çalışanlar diğer ekip üyeleriyle işbirliği yapmadı
4 Becerileri Ekip üyesi görevlerini tamamlamak için gerekli becerilere sahip değildi
5 Yönetim Test Yöneticisi ilerlemeyi iyi izleyemedi ve bu da bazı projelerin gecikmesine neden oldu
6 Yakın İletişim Müşteriyle sürekli temas yok; müşterinin ihtiyacını yanlış anlamak
7 Ücret Proje maliyeti belirlenen bütçeyi aştı

Seninle sorunun var Kalite Teslim Şekli Team ,Yetenekler ,Yönetmek , İletişim ,Maliyet

Adım 1.2) Hedefi belirleyin

Projede ortaya çıkan sorunları ve problemleri anlayın. Bu şekilde, öncelikle dikkat edilmesi gereken iyileştirme noktalarını ve test aşamalarını belirleyebilirsiniz.

Diyelim ki test yürütme aşamasının da uzun sürdüğünü belirlediniz çok Tamamlanması için gereken zaman ve maliyet. Testler daha hızlı ve daha ucuz hale getirilebilir mi? Bu soru, döngünün hedefi haline gelir. Faydalı bir hedef, bir sayı ve bir son tarih olarak belirtilir; örneğin, "bir sonraki sürümden önce regresyon testi yürütme çabasını %30 azaltın".

Adım 1.3) İyileştirme eylemlerini tanımlayın

Belirlenen hedefe göre iyileştirme eylemleri belirlenir. Her şeyi bir anda değiştirmek gerçekçi olmadığı için bu eylemler kademeli olarak ve parça parça uygulanmalıdır.

Örneğin, test sürecini daha hızlı ve daha ucuz hale getirmek için aşağıdaki eylemler aday olabilir.

Daha hızlı ve daha ucuz testler için iyileştirme eylemlerinin tanımlanması

Yukarıdaki örnekte, A ve B seçenekleri test sürecini daha hızlı ve daha ucuz hale getiriyor. C seçeneği test sürecini hızlandırır, ancak daha deneyimli bir test uzmanının daha yüksek maaş alması nedeniyle maliyeti daha yüksektir. Bu denge, her aday eylemin sezgiye göre değil, hedefe göre değerlendirilmesinin tam olarak nedenidir.

Adım 2) Yapın

Geliştirme noktalarını zaten belirlediniz. Şimdi bunları uygulamaya koyacak bir plan oluşturmanın zamanı geldi. Bu plan aşağıdaki soruları yanıtlamalıdır.

  • Hangi iyileştirme noktalarının uygulanması gerekiyor ve hangi sırayla?
  • Plan ne zaman tamamlanmalıdır?
  • Planın gerçekleştirilmesi için hangi adımların tamamlanması gerekiyor?
  • Her aşamanın sorumluluğu kime ait ve tamamlanma nasıl teyit edilecek?

İyileştirme eylemleri gerçekleştirin

Plan oluşturulduktan sonra uygulanması gerekir. İyileştirme faaliyetleri, halihazırda devam eden test çalışmalarını aksatabilir, bu nedenle Test Yöneticisinin dikkatli olması gerekir. Dikkat onlara, istenmeyenlerden kaçının sonuçlar.

Şu senaryoyu ele alalım. Guru99 Bank projesi kapsamında, testleri daha hızlı ve daha ucuz hale getirmek için şunları kullanmaya karar verdiniz: otomasyon testi Çok sayıda manuel regresyon testinin yerine, bu işlem uygulandı. Uygulama sonrasında verimlilik önemli ölçüde arttı.

Adım 3) Kontrol Et

Kontrol adımında üç şey yaparsınız.

  • Değerlendir verim test iyileştirme eylemlerinin
  • Nasıl olduğunu ölçün etkili çözüm şuydu
  • Bunun mümkün olup olmadığını analiz edin. gelişmiş daha fazla

Bu aşamanın amacı, iyileştirme eylemlerinin başarıyla uygulandığını doğrulamak ve Planda belirlenen hedefe gerçekten ulaşılıp ulaşılmadığını değerlendirmektir.

Bu değerlendirmeyi yapmanın en iyi yolu şudur: metrikleriÖlçümler, başarılı organizasyon yönetimi için çok önemlidir. Test yöneticisi veri toplar ve bu verileri verimlilik, kalite ve maliyet gibi parametreleri ölçmek için kullanır.

Örneğin, projeye otomasyon uygulanmadan önce, test verimliliği şu şekildeydi: Adam-saat başına 10 test vakasıOtomasyon uygulandıktan sonra verimlilik şu şekilde ölçüldü: Adam-saat başına 20 test vakası.

İyileştirme işleminden önce ve sonra verimliliğin kontrol edilmesi

Ancak bu kazanımın yanında istenmeyen bir sorun da ortaya çıktı.

İyileştirme eyleminin yan etkisi - verimlilik artarken kalite düşer.

Bu durumda otomasyon uygulamak artmış Testlerin verimliliği değil, testlerin kalitesi. azalmışDolayısıyla bir iyileştirme eylemi ciddi sorunlara yol açabilir. sonuçları Başka yerlerde. Böyle bir senaryoda, test aracı çok daha dikkatli seçilmeli ve otomatikleştirilmiş test paketi, üretim koduna gösterilen aynı titizlikle incelenmelidir. Aday araçların yapılandırılmış bir değerlendirmesi, örneğin aşağıdaki bölümde açıklanan gibi, Selenium öğreticiBu durum, bir aracın sırf popüler olduğu için benimsenmesini engeller.

⚠️Uyarı: Bir iyileştirme eylemini asla tek bir ölçüte göre değerlendirmeyin. İşlem hızını iki katına çıkarırken hata tespitini düşüren bir değişiklik, süreci aynı anda hem daha hızlı hem de daha kötü hale getirmiştir. Hız ölçütünü her zaman bir kalite ölçütüyle birlikte değerlendirin.

Aynı senaryoyu tekrar ele alalım. Guru99 proje maliyeti vardı taşması çünkü takım üyeleri çok fazla aldı çok zaman Test senaryolarını yürütmek için. Otomatik test aracını kullanarak tasarruf ettiniz Yüzde 30 artış. Proje maliyetinin bir kısmı. Bu iyi bir gelişme, ancak patronunuz daha fazlasını bekliyor.

Yönetim, ilk iyileştirme döngüsünün ardından maliyetlerde daha fazla azalma bekliyor.

Bu nedenle, test sürecini daha da iyileştiren yeni çözümler aramak her zaman gereklidir. Bu senaryoda, diğer seçenekler ek proje maliyetinden tasarruf sağlayabilir.

  • İnsan kaynaklarınızı etkin bir şekilde yönetin, böylece yetenekli test uzmanları en fazla değer kattıkları yerlerde kullanılsın.
  • Ekipman ve personel tedarikçilerinizle daha iyi ticari şartlar için pazarlık yapın.
  • Otomatikleştirmek yerine, yinelenen veya düşük değerli test senaryolarını kullanımdan kaldırın.

Adım 4) Harekete Geçin

İyileştirme eylemleri başarıyla uygulandıktan ve hedefe ulaşıldıktan sonra, Test Yöneticisi aşağıdaki faaliyetlerle döngüyü tamamlamalıdır.

PDCA Test Süreci İyileştirme döngüsündeki Eylem aşaması faaliyetleri

  • Değerlendirme iyileştirme faaliyetlerini yürütmek ve edinilen derslerden yola çıkarak harekete geçmek.
  • Standartlaştırın test yönetim sürecindeki iyileştirme noktası
  • Güncelle politika belgeleri, test planı şablonları ve standart süreç belgeleri
  • Belirlemek Bu değişikliklerin bir sonraki projede ne zaman ve nerede uygulanacağı

Hedefe ulaşılamaması durumunda döngü durmaz. Ulaşılamayan hedef, Kontrol aşamasında eylemin neden düşük performans gösterdiğine dair ortaya çıkan her şeyle birlikte yeni bir Planlama aşamasına taşınır.

TPI NEXT, TMMi ve CMMI Karşılaştırması

PDCA, iyileştirmenin motorudur, ancak referans model size "daha iyi"nin neye benzediğini söyler. Yaygın olarak kullanılan üç model vardır ve bunlar sıklıkla birbirleriyle karıştırılır.

TPI SONRAKİ Sogeti tarafından yayınlanan, teste özel bir referans modelidir. Üç gruba ayrılmış 16 temel alanı dört olgunluk seviyesine göre değerlendirir: Başlangıç, Kontrollü, Verimli ve Optimize Edici. Değerlendirme temel alan temel alan yapıldığı için, bir ekip bir alanda Verimli iken başka bir alanda Kontrollü olabilir.

TMMiTMMi tarafından sürdürülmektedir. FoundationBu, beş seviyeden oluşan aşamalı bir test olgunluk modelidir: Başlangıç, Yönetilen, Tanımlanan, Ölçülen ve Optimizasyon. Bir kuruluş, ancak o seviyedeki süreç alanlarını karşıladıktan sonra o seviyeye ulaşır.

CMMI TMMi aslında bir test modeli değildir. Tüm geliştirme organizasyonunu kapsar ve aşamalı temsili de beş olgunluk seviyesine sahiptir: Başlangıç, Yönetilen, Tanımlanan, Nicel Olarak Yönetilen ve Optimize Edilen. TMMi, CMMI'nin yerini almak yerine onu tamamlamak için tasarlanmıştır.

Model kapsam Structure Olgunluk seviyeleri
TPI SONRAKİ Sadece test süreci 3 grupta 16 temel alan, kontrol noktaları ve kümeler 4 — Başlangıç, Kontrollü, Verimli, Optimize Edici
TMMi Sadece test süreci Aşamalı, her seviyeye süreç alanları atanmış. 5 — Başlangıç, Yönetilen, Tanımlanan, Ölçülen, Optimizasyon
CMMI Bütünsel kalkınma organizasyonu Aşamalı veya sürekli temsil 5 (aşamalı) — Başlangıç, Yönetilen, Tanımlanan, Nicel Olarak Yönetilen, Optimize Edilen

Test Süreci İyileştirmesini Kanıtlayan Ölçütler

Sayılar olmadan kontrol aşaması çöker. Her döngüden önce ve sonra toplanan küçük, istikrarlı bir ölçüm kümesi yeterlidir ve karşılaştırmanın her iki tarafında da aynı tanımlar kullanılmalıdır.

  • Test yürütme verimliliği — Adam saati başına yürütülen test senaryoları
  • Hata Tespit Yüzdesi (DDP) — Test aşamasında bulunan kusurların, piyasaya sürüldükten sonra bildirilenler de dahil olmak üzere, bulunan tüm kusurlar içindeki payı
  • Gerçekleştirilen test senaryosu başına maliyet — toplam test çaba maliyeti / yürütülen test sayısı
  • Gereksinim kapsamı — en az bir bağlantılı gereksinim test durumu
  • Arıza giderme süresi — kusurların ortalama yaşı kusur yaşam döngüsü

Kullanma Guru99 Bank verilerine göre, testlerde 180 kusur tespit edilmiş ve bunların 20'si ürün piyasaya sürüldükten sonra müşteri tarafından bildirilmiştir; hesaplama oldukça basittir.

# Defect Detection Percentage and improvement deltas
def ddp(found_in_test, found_after_release):
    return found_in_test / (found_in_test + found_after_release) * 100

def delta(before, after):
    return (after - before) / before * 100

print("Defect Detection Percentage: %.1f%%" % ddp(180, 20))
print("Productivity gain: %.1f%%" % delta(10, 20))
print("Test cost change: %.1f%%" % delta(50000, 35000))

Çıktı:

Defect Detection Percentage: 90.0%
Productivity gain: 100.0%
Test cost change: -30.0%

%90'lık bir DDP (Hata Düzeltme Oranı), her on üründen birinin müşteriye ulaştığı anlamına gelir; bu nedenle, verimlilik iki katına çıkmış ve maliyetler %30 düşmüş olsa bile, kalite hedefi tam olarak karşılanmamıştır. İşte bu tek bakış açısı, bir ekibin zaferi çok erken ilan etmesini engeller.

Test Süreci İyileştirmesinde Sık Yapılan Hatalar

İyileştirme programlarının çoğu teknik nedenlerden ziyade organizasyonel nedenlerle başarısız olur. Aşağıdaki hatalar, terk edilen girişimlerin büyük çoğunluğunun nedenini oluşturmaktadır.

  • Başlangıç ​​noktası olmadan gelişmek. Değişiklikten önce kimse süreci ölçmediyse, değişikliğin faydalı olduğunu kimse kanıtlayamaz. Planlama sırasında temel verileri kaydedin, sonrasında değil.
  • İşletmenin temel itici gücü yerine olgunluk düzeyinin peşinde koşmak. Maliyetleri, kusurları veya teslim sürelerini azaltmayan bir sertifika, iyileştirme değil, bir masraftır.
  • Aynı anda çok fazla şeyi değiştirmek. Beş işlem aynı sürümde gerçekleştiğinde, geriye dönük bir sürüm oluşturulamaz. tracOnlardan herhangi birine bağlı.
  • Bozuk bir süreci otomatikleştirmek. Otomasyon, zayıf test tasarımı ve belirsiz giriş kriterleri de dahil olmak üzere uygulandığı her süreci katlayarak büyütür.
  • Atlamakping Eylem aşaması. Test politikasına hiçbir zaman yazılmayan bir iyileştirme ve yazılım testi yaşam döngüsü Belgeler, onları icat eden proje ekibiyle birlikte yok olur.
  • Test edenler hariç. Değişiklik konusunda görüşleri alınmayan kişiler, mutlaka bu değişikliği aşmanın yollarını bulurlar.

Bu fikirleri daha da ileri götürmek için, aşamaları gözden geçirin. yazılım testi yaşam döngüsü, sıkın test durumu tasarım, resmileştirme kusur yönetimi sürecinerede olduğunu değerlendir otomasyon testi Gerçek bir getiri sağlıyor ve aşağıdaki gibi bir aracın nasıl işe yaradığını görün. HP ALM'si Kontrol aşamanızın bağlı olduğu ölçütleri tutabilir.

SSS

Sürüm yayınlandıktan hemen sonra, geriye dönük veriler henüz tazeyken ve kimse teslimat baskısı altında değilken başlamak en iyisidir. Sprint ortasında başlamak, sürümün kendisiyle rekabet eder ve aylar sonra başlamak ise çaba, hata ve maliyet rakamlarının artık güvenilir olmadığı anlamına gelir.

Test yöneticisi döngünün ve ölçümlerin sorumluluğunu üstlenir, ancak her eylem için işi gerçekleştiren ekipten belirlenmiş bir sorumluya ihtiyaç vardır. Kişiye değil de gruba atanan iyileştirmeler genellikle sessizce duraksayanlardır.

Geriye dönük değerlendirmeler yerel sorunları iyi bir şekilde ele alsa da, test verisi temini veya ortam kullanılabilirliği gibi kuruluş genelindeki zayıflıkları nadiren ele alır. Bir referans modeli, çevik ekiplere geriye dönük değerlendirmenin yerini almadan, bu ekipler arası sorunlar için ortak bir terminoloji sağlar.

Üretkenlik veya döngü süresi gibi uygulama ölçütleri genellikle tek bir sürüm içinde değişir. Hata sızıntısı gibi kalite ölçütleri ise iki veya üç sürüm gerektirir, çünkü gözden kaçan hatalar ancak müşteriler yazılımı üretimde kullandıktan sonra sayılır.

Evet, kalıp tespiti için. Hata geçmişleri, derleme günlükleri ve yürütme kayıtları üzerinde eğitilmiş modeller, istikrarsız testleri, gereksiz durumları ve tekrarlanan kaçışlara sahip modülleri ortaya çıkarabilir. Hangi bulgunun üzerinde işlem yapmaya değer olduğuna karar vermek, iş riskiyle ilgili insan yargısına kalır.

Hacim, kapsama alanı ile karıştırılabilir. Yapay zeka, aynı yolları tekrar tekrar test ederken yürütme sayılarını şişiren binlerce durum üretebilir. TracHata tespiti, vaka sayımlarıyla birlikte yapılır ve regresyon test paketine girmeden önce oluşturulan vakalar incelenir.

Bu yazıyı şu şekilde özetleyin: