Yazılım Testinde Test Tahmini Teknikleri

⚡ Akıllı Özet

Yazılım Testi Tahmin Teknikleri, testin ne kadar süreceğini ve ne kadar maliyetli olacağını yaklaşık olarak belirler. Dört adımlı bir süreç – görevleri bölmek, sorumluları atamak, iş yükünü tahmin etmek ve paydaşlarla doğrulamak – belirsiz zaman çizelgelerini yönetimin onaylayabileceği savunulabilir bir plana dönüştürür.

  • ???? İş Dağılımı ile başlayın: Projeyi modüllere, alt modüllere ve görevlere ayırın, böylece her tahmin küçük, size ait bir iş birimini kapsasın.
  • 🔢 Kanıtlanmış teknikleri kullanın: Fonksiyon Noktası ve Üç Noktalı tahmin yöntemleri yapılandırılmış sayılar sunarken; Geniş Bant Delphi ve Kullanım Durumu Noktası yöntemleri ekip konsensüsü ekler.
  • ???? Çabayı maliyete dönüştürün: Tahmini kişi-saat sayısını karma ekip ücretiyle çarparak finans departmanına net bir bütçe rakamı verin.
  • 🛡️ Tampon ekleyin ve doğrulayın: İzinleri, yeniden çalışmaları ve sürprizleri hesaba katacak şekilde zaman ayırın, ardından yönetim kurulunun planı gözden geçirmesini ve onaylamasını sağlayın.
  • 🤖 Tahminleri iyileştirmek için yapay zekayı kullanın: Yapay zekâ asistanları, geçmiş projeleri analiz eder, eksik görevleri belirler ve plandaki her satır için güven aralıkları önerir.

Yazılım Testi Tahmin Teknikleri

Yazılım Test Tahmini Nedir?

Yazılım Testi Tahmini Test tahmini, bir test görevinin ne kadar süreceğini ve ne kadar maliyetli olacağını yaklaşık olarak belirleyen bir yönetim faaliyetidir. Güvenilir bir test tahmini üretmek, en önemli sorumluluklardan biridir. test yönetimi Çünkü bu, zamanlama, bütçe ve kaynak tahsisi kararlarını etkiler.

Test Tahmininin Önemi

Müşteriler, test anlaşmasına onay vermeden önce her zaman iki soru sorarlar:

Tahmin Testinin Nedenleri

Küçük projeler için bu soruları cevaplamak kolaydır. Daha büyük bir proje içinse -örneğin test etmek için- durum farklıdır. Guru99 Bank web sitesi — cevabınızı savunmak için yapılandırılmış bir tekniğe ihtiyacınız var.

Ne Tahmin Edilmeli?

Test Yönetiminde Neler Tahmin Edilmeli?

  • Kaynaklar: İşin gerçekleştirilmesi için gereken insan gücü, ekipman, tesisler, finansman ve diğer her şey.
  • Saat: Her projede en değerli kaynak — her sürümün bir son teslim tarihi vardır.
  • İnsan becerileri: Ekibin bilgi ve deneyimi önemlidir. Daha deneyimli test uzmanları, daha az deneyimli bir ekibe göre işi daha hızlı bitirir.
  • Tutar: Proje bütçesi — planlanan testlerin gerçekleştirilmesi için gereken para miktarı.

Nasıl Tahmin Edilir

Yaygın olarak kullanılan yazılım test tahmin teknikleri şunlardır:

  • İş Kırılım Yapısı (WBS).
  • Üç Noktalı Tahmin.
  • Geniş bant Delphi.
  • Fonksiyon Noktası veya Test Noktası Analizi.
  • Kullanım Senaryosu Noktası yöntemi.
  • Yüzde dağılımı.
  • Geçici yöntem.

Tahmin teknikleri listesi

Aşağıdaki dört adımlı süreç, savunulabilir bir tahmine ulaşmak için çeşitli teknikleri bir araya getirir. Örnekte şunlar kullanılmıştır: Guru99 Bank vaka çalışması.

Dört aşamalı tahmin süreci

Adım 1) Tüm projeyi alt görevlere bölün.

Kullan İş Dökümü Yapısı Karmaşık bir projeyi modüllere, alt modüllere ve nihayetinde en küçük anlamlı görevlere ayırma tekniği. Tahminler, belirsiz başlık projelerine kıyasla en küçük düzeyde çok daha güvenilirdir.

Projeyi alt görevlere bölün.

Tekniği uygulayarak kırın Guru99 Bank projesini beş küçük göreve ayırdık:

Guru99 Banka görevi

Ardından her görev, her satır tahmin edilebilecek kadar ayrıntılı hale gelene kadar alt görevlere ayrılır.

Görev alt görev
Yazılım gereksinim spesifikasyonunu analiz edin. Gereksinim özelliklerini inceleyin.
Web sitesi hakkında daha fazla bilgi edinmek için geliştiriciler ve diğer paydaşlarla görüşmeler yapın.
Test spesifikasyonunu oluşturun Test senaryoları tasarlayın.
Test senaryoları oluşturun.
RevTest senaryolarını inceleyin ve revize edin.
Test senaryolarını yürütün Test ortamını oluşturun.
Test senaryolarını çalıştırın.
RevTest yürütme sonuçlarını görüntüle.
Kusurları bildirin oluşturmak kusur raporlar.
Arızaları bildirin.

Adım 2) Her görevi bir ekip üyesine atayın.

Her alt görevi en uygun kişiye atayın.

Görev Mal sahibi
Yazılım gereksinim spesifikasyonunu analiz edin. Tüm takım üyeleri
Test spesifikasyonunu oluşturun Test Uzmanı / Test Analisti
Test ortamını oluşturun. Test yöneticisi
Test senaryolarını yürütün Test uzmanı, test yöneticisi
Kusurları bildir Test cihazı

Adım 3) Her Görev İçin Çaba Tahmini

Bu aşamada birbirini tamamlayan iki teknik iyi sonuç verir:

  1. Fonksiyon Noktası Yöntemi.
  2. Üç Noktalı Tahmin.

Yöntem 1) Fonksiyon Noktası Yöntemi

Test yöneticisi her görev için boyut, süre ve maliyet tahmininde bulunur.

Fonksiyon Noktası Yöntemi

Adım A) Görevin büyüklüğünü tahmin edin

Örneğin, "Test spesifikasyonunu oluşturun" görevini ele alalım. Spesifikasyonun boyutu, test edilecek sistemin fonksiyonel boyutuna bağlıdır; fonksiyon sayısı ne kadar fazlaysa, sistem o kadar karmaşıktır. Fonksiyon puanları genellikle üç gruba ayrılır: Karmaşık, Orta ve Basit.

Fonksiyon noktası karmaşıklık grupları

Test yöneticisi, karmaşıklığa bağlı olarak her bir fonksiyon noktasına bir ağırlık atar:

Grup ağırlık
Karmaşık 5
Orta 3
Basit 1

MKS Guru99 Bank web sitesi 12 işlev noktasına ayrılmıştır. Bunların karmaşıklığı aşağıda özetlenmiştir.

# modül Uygulanabilir Roller Açıklama ağırlık
1 Bakiye Sorgulama Yönetici, Müşteri Müşteri: Sadece kendi hesaplarınızın bakiyesini görüntüleyin.
Müdürü: Denetim altındaki her müşterinin bakiyesini görüntüleyin.
3
2 Fon Transferi Yönetici, Müşteri Müşteri: Kendi hesabınızdan herhangi bir yere para transferi yapın.
Müdürü: Herhangi bir kaynaktan herhangi bir hedefe para transferi yapın.
5
3 Kısa Açıklama Yönetici, Müşteri Bir hesabın son beş işlemi.
Müşteri: Sadece kendi hesaplarını görüntüle.
Müdürü: Herhangi bir hesabı görüntüleyin.
3
4 Özelleştirilmiş Bildirim Yönetici, Müşteri İşlemler tarih veya değere göre filtrelendi.
Müşteri: Sadece kendi hesaplarınız.
Müdürü: herhangi bir hesap.
5
5 Şifrenizi Değiştirin Yönetici, Müşteri Müşteri: Kendi şifrenizi değiştirin.
Müdürü: Kendi şifrenizi değiştirin (müşterinin şifresini değil).
1
6 Yeni Müşteri müdür Müşteri bilgilerini (adres, e-posta, telefon) ekleyin ve düzenleyin. 3
7 Yeni Hesap müdür Tasarruf ve cari hesaplar; bir müşteri her birinden birden fazla hesap açabilir. Yönetici, mevcut müşteriler için yeni hesaplar ekler. 5
8 Hesabı düzenlemek müdür Mevcut bir hesabın ayrıntılarını düzenleyin. 1
9 Hesabı sil müdür Bir müşteriye ait mevcut hesabı silme. 1
10 Müşteriyi Sil müdür Müşteriyi yalnızca aktif hesap kalmadığında silin. 1
11 mevduat müdür Şubedeki herhangi bir hesaba nakit para yatırın. 3
12 Para Çekme müdür Şubedeki herhangi bir hesaptan nakit çekin. 3

B) Görevin tahmini süresini belirleyin.

Karmaşıklık düzeyi belirlendikten sonra, her bir grubu test etmek için gereken süreyi tahmin edin.

Süre hesaplaması

  • Toplam Çaba: Web sitesinin her fonksiyonunu test etmek için tam çaba sarf edildi.
  • Toplam Fonksiyon Puanları: Web sitesinin toplam modül sayısı.
  • Fonksiyon Noktası Başına Tahmini Maliyet: Puan başına ortalama çaba; takım verimliliğine bağlıdır.

Ekibin fonksiyon puanı başına tahmini şu şekildedir: 5 saat/noktaToplam çaba Guru99 Bank örneği şöyledir:

Grup ağırlık İşlev Puanları Toplam
Karmaşık 5 3 15
Orta 3 5 15
Basit 1 4 4
Fonksiyon Toplam Puanı 34
Nokta başına tahmini değer 5
Toplam Tahmini Çaba (kişi-saat) 170

“Test spesifikasyonunu oluşturma” işlemini tamamlamak için gereken toplam çaba yaklaşık olarak şöyledir: 170 kişi-saatHarcanacak çaba miktarı bilindiğinde, süre ve maliyeti belirlemek için kaynaklar tahsis edilebilir.

C) Görevlerin maliyetini tahmin edin.

Bu adım, müşterinin ikinci sorusuna ("Maliyeti ne kadar?") cevap verir. Ortalama ekip ücretinin şu şekilde olduğunu varsayalım: $ 5 / saatYukarıdaki görev 170 saat sürüyor, dolayısıyla maliyeti şu şekildedir: 170 × $5 = $850Proje bütçesine ulaşmak için aynı hesaplamayı her bir WBS görevi için uygulayın.

Tahmin ne kadar doğru olursa, projenin bütçesini o kadar iyi yönetebilir ve her kuruşun geri dönüş sağlamasını sağlayabilirsiniz.

Yöntem 2) Üç Noktalı Tahmin

Üç Noktalı Tahmin, Test Yöneticisinin her görev için üç değer sağladığı yapılandırılmış bir tekniktir. iyimser, büyük ihtimalle, ve kötümser Çaba — önceki deneyimlere veya en iyi tahminlere dayanır.

Üç Nokta Tahmini

"Test spesifikasyonunu oluştur" için üç değer şu olabilir:

  • En iyi senaryo: Güçlü ve deneyimli bir ekiple 120 kişi-saat (~15 gün).
  • Büyük ihtimalle: Tipik bir ekip ve kaynaklarla 170 kişi-saat (~21 gün).
  • En kötü durumda: Daha az deneyimli bir ekiple ve ek yeniden çalışmayla 200 kişi-saat (~25 gün).

Parametre değerleri

PERT tarzı formülü kullanarak ağırlıklı ortalamayı hesaplayın:

Üç Nokta Formülü

Değer E olduğunu ağırlıklı ortalama — "Test spesifikasyonunu oluşturun" için tahmin edilen en yüksek rakam.

Yönetici sorusu

güveni ifade etmek için EStandart sapmayı hesaplayın:

Standart Sapma formülü

Için Guru99 Bank örneğinde tahmin şu şekilde çıkıyor: 166.6 ± 13.33 kişi-saat — 153.33 ile 179.99 kişi-saat arasında bir aralık.

Adım 4) Tahmini doğrulayın

İş kırılım yapısındaki her görevin tahminini bir araya getirin ve planı inceleme ve onay için yönetim kuruluna (CEO, proje yöneticisi, kilit paydaşlar) sunun.

Tahmini Doğrula

Tahmini mantıklı bir şekilde yönetim kuruluna açıklayın, böylece varsayımları, seçilen teknikleri ve eklediğiniz olası riskleri anlasınlar.

Test Tahmini En İyi Uygulamaları

Tampon süresi ekle

Planlar nadiren gerçeklikle temas ettiğinde ayakta kalır; ekip üyeleri ayrılır, testler beklenenden uzun sürer, bağımlılıklar aksabilir. Her tahmine makul bir pay ekleyin ki, zaman çizelgesi küçük sürprizleri absorbe edebilsin.

Kaynak kullanılabilirliğine yönelik planlama

Planlı izinleri, eğitimleri ve nöbet rotasyonlarını hesaba katın. Müsaitlik durumunu göz ardı eden tahminler kağıt üzerinde harika görünse de uygulamada çöker.

Geçmiş deneyimlerinizi referans olarak kullanın.

Benzer projelerden elde edilen geçmiş veriler paha biçilmezdir. Geçen yıl benzer bir web sitesini test ettiyseniz, oradaki gerçek verilerden, karşılaşılan sorunlardan ve günü kurtaran çözümden ders çıkarın.

Tahmine sadık kalın, ancak daha sonra tekrar gözden geçirin.

Tahminler kesin değildir.tracBunlar sadece tahminlerdir. RevMüşteriyi bilinen dönüm noktalarında ziyaret edin ve yalnızca gereksinimler önemli ölçüde değiştiğinde veya yeni bilgiler durumu değiştirdiğinde ayarlamalar yapın. Herhangi bir değişikliği müşteriyle şeffaf bir şekilde müzakere edin.

Yazılım Test Tahmin Şablonu

Yazılım Testi Tahmini Excel dosyasını (.xlsx) indirin.

Diğer Tahmin Teknikleri

WBS, Fonksiyon Noktası ve Üç Noktalı tahmin yöntemlerine ek olarak, yaygın olarak kullanılan birkaç başka teknik daha vardır:

  • Geniş Bant Delphi: Uzmanlar panelinin yinelemeli fikir birliği tahmini.
  • Kullanım Senaryosu Noktası Yöntemi: Çaba, kullanım durumlarının sayısı ve karmaşıklığından kaynaklanmaktadır.
  • Yüzde Dağılımı: Projenin toplam çabasının belirli bir yüzdesini test etmeye ayırır.
  • Geçici Yöntem: Tarihsel verilerin eksik olduğu durumlarda uzman görüşü.

Aşağıdan Yukarıya ve Yukarıdan Aşağıya Tahminleme

Tahminlemenin pratik bir bakış açısı da iki tamamlayıcı stratejiye ayrılır:

  • Aşağıdan yukarıya tahmin: İş kırılım yapısının en alt seviyesindeki görevlere dayanır. Birden fazla paydaş, deneyimli personel ve katkıda bulunanlar, doğru bir toplam elde etmek için rakamlarını birleştirir. İşin iyi anlaşıldığı durumlarda idealdir.
  • Yukarıdan aşağıya tahmin: Projeyi boyut ve karmaşıklık açısından sınıflandırır ve benzer şekildeki tamamlanmış projelerle karşılaştırır. Ayrıca proje başına ortalama çabayı da kullanır. test durumu ve öngörülen vaka sayısına göre ölçeklenir. Detayların az olduğu bir projenin erken aşamalarında faydalıdır.

Çoğu ekip bu iki yaklaşımı birleştirir: ana rakam için yukarıdan aşağıya, güven için aşağıdan yukarıya. Bütçeler izin verdiğinde ise sonucu gelişmiş modellerle desteklerler.

SSS

Çaba, işi tamamlamak için gereken toplam insan-saat sayısını ölçer. Süre ise, işe insanlar atandıktan sonra geçen takvim süresini ölçer. 170 saatlik bir iş, tek bir kişi için 170 saat sürerken, paralel çalışan on kişi için yaklaşık 21 saat sürer.

Projeyi bölmek için önce İş Kırılım Yapısı (WBS) ile başlayın, ardından üzerine Fonksiyon Noktası veya Üç Noktalı tahmin yöntemini ekleyin. WBS yapı sağlar; Fonksiyon Noktası veya Üç Noktalı yöntem ise savunulabilir rakamlar sunar.

İstikrarlı projeler için yüzde on ila yirmi arası yaygın bir tampon orandır. Yeni alanlar, alışılmadık araçlar veya büyük ekipler için bu oranı artırın. Tamponu, bilinen kapsamdan ziyade bilinmeyen belirsizlikler için ayırın.

Çevik ekipler, geliştirme ile birlikte test süreçlerinin boyutlandırılması için hikaye puanları ve planlama pokerini kullanır. Önceki sprintlerden elde edilen hız verileri, hikaye puanlarını beklenen takvim süresine dönüştürerek, önceden yapılan ayrıntılı tahminlerin yerini alır.

PERT (Program Değerlendirme ve RevGörüş Tekniği, iyimser (O), en olası (M) ve kötümser (P) tahminleri E = (O + 4M + P) / 6 formülüyle birleştirerek beklenen çabayı üretir.

RevKapsam değiştiğinde, bağımlılıklar aksadığında veya ekip yapısı önemli ölçüde değiştiğinde tahmini kullanın. Değişikliği erken bildirin ve son tarihi sessizce uzatmadan önce müşteriyle yeniden görüşün.

Yapay zekâ araçları, geçmiş projeleri analiz eder, eksik görevleri önerir, güven aralıkları tavsiye eder ve gerçekleşen veriler doğrultusunda planı günceller. Bu, plan ile gerçeklik arasındaki farkı azaltır ve kör noktaları en aza indirir.

Evet. Yapay zekâ asistanları, proje özetini bir İş Dağılım Yapısı, Fonksiyon Puanı sınıflandırması ve formüllerle üç noktalı tahminlere dönüştürerek test yöneticisinin incelemesi ve iyileştirmesi için hazır hale getirir.

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