software test estimation techniques
Herhangi bir projenin başarısı için test tahmini ve doğru uygulama, geliştirme döngüsü kadar aynı derecede önemlidir. Tahmine bağlı kalmak, müşteri ile iyi bir itibar oluşturmak için çok önemlidir.
Deneyim, 'Yazılım Test Çabalarının' tahmin edilmesinde önemli bir rol oynar. Çeşitli projeler üzerinde çalışmak, test döngüsü için doğru bir tahmin hazırlamaya yardımcı olur. Açıkçası, herhangi bir test görevi için körü körüne birkaç gün ayıramazsınız. Test tahmini gerçekçi ve doğru olmalıdır.
Bu makalede, bazı noktaları çok basit bir şekilde ortaya koymaya çalışıyorum, bu da doğru test tahmini hazırlamaya yardımcı olur.
Ne öğreneceksin:
- Test Tahmin Sürecinin Kısa Açıklaması
- Test Tahmin Örnekleri
- Test Süresinin Doğru Şekilde Tahmin Edilmesine Dair 9 Genel İpucu
- Sonuç
- Önerilen Kaynaklar
Test Tahmin Sürecinin Kısa Açıklaması
'Tahmin, girdi verileri eksik, belirsiz veya istikrarsız olsa bile bir amaç için kullanılabilen bir değer olan bir tahmin veya yaklaşıklık bulma sürecidir.' (Referans: Wikipedia )
Profesyoneller olarak hepimiz hayatımız boyunca farklı görevler, görevler ve son tarihlerle karşılaşıyoruz, şimdi bir soruna çözüm bulmak için iki yaklaşım var.
İlk yaklaşım, elimizdeki soruna ancak ulaştıktan sonra bir çözüm bulmaya çalıştığımız reaktif bir yaklaşımdır.
Proaktif Yaklaşım olarak adlandırılabilecek ikinci yaklaşımda, ilk önce kendimizi hazırladığımız Sorun, geçmiş deneyimlerimizle gelmeden çok önce ve ardından geçmiş deneyimlerimizle, ortaya çıktığında zorluğa bir çözüm bulmaya çalışırız.
Bu nedenle tahmin, soruna proaktif bir yaklaşım benimsediğimizde uygulanan bir teknik olarak düşünülebilir.
Böylece Tahmin, tanımlanmış bir görevi tamamlamak için zaman ve maliyet açısından ne kadar çaba gerektiğini tahmin etmek için kullanılabilir.
Test ekibi eldeki sorunu tahmin edebildiğinde, eldeki soruna en uygun çözümü bulmaları kolaylaşır.
Tahmin uygulaması, bir iş parçasının olası maliyetinin yaklaşık bir hesaplaması olarak daha resmi olarak tanımlanabilir.
Ayrıca oku=> Selenyum Otomasyon Projesinin Test Tahminini Etkileyen 7 Faktör
Test Tahmin Sürecinin Temel Ön Koşulları
# 1) Geçmiş deneyimlerle çalışmaktan elde edilen bilgiler : Mevcut çabaya benzer zorluklar ortaya çıkaran geçmiş projeleri hatırlayarak biraz zaman geçirmek her zaman iyi bir uygulamadır.
# 2) Mevcut belgeler veya eserler: test yönetimi veri havuzu araçları gelir Gereksinim ve açıklama belgelerini sakladıkları için bu tür senaryolarda kullanışlıdır. Bu belgeler, projenin kapsamını açıkça tanımlamak için test ekibi tarafından referans alınabilir.
# 3) İşin türüne ilişkin varsayımlar: Geçmiş çalışma deneyimi, proje hakkında varsayımlarda bulunmaya yardımcı olur. Burası deneyimli profesyonelleri işe almanın en önemli olduğu yerdir.
Test yöneticileri, istenen sonuçları elde etmek için bu kişilerin beyinlerini toplayabilirler.
# 4) Potansiyel risk ve tehditlerin hesaplanması: Test ekibinin ayrıca gelecekte ekip için ortaya çıkabilecek potansiyel riskleri, tehditleri ve tuzakları görselleştirmesi gerekir.
# 5) Belgelerin temeli olup olmadığının belirlenmesi: Test ekibinin ayrıca gereksinimlerin temel olup olmadığını belirlemesi gerekir. Belgeler temel alınmamışsa, değişikliklerin sıklığını belirlemek önemlidir.
# 6) Tüm sorumluluklar ve bağımlılıklar net olmalıdır: Kuruluş, tahmin sürecini gerçekleştirecek tüm kişilerin rollerini ve sorumluluklarını açıkça tanımlamalıdır.
# 7) Tahmin kayıtlarının dokümantasyonu ve takibi: Tahmin süreciyle ilgili tüm bilgiler belgelenmelidir.
# 8) Test tahmin süreci sırasında yapılması gereken faaliyetler
- Tahminleri gerçekleştirecek ekibi organize edin
- Projeyi proje aşamalarına ve müteakip kurucu faaliyetlere ayırın
- Tahmini önceki projelere ve profesyonel deneyime dayalı olarak hesaplayın
- Olası tehditlere öncelik verin ve bu riskleri azaltmak için yaklaşımlar geliştirin
- Çalışmanın ilgili bölümünü inceleyin ve belgeleyin
- Çalışmayı ilgili paydaşlara sunun
En Öne Çıkan Test Tahmin Teknikleri
Test tahmini için en önemli tekniklerden bazıları şunlardır:
- Test noktası tahmini
- Çalışma aşamasına dayalı tahmin
- Durum noktası tahminini kullanın
Bu teknikleri nasıl ve nerede kullanıyoruz:
# 1) Test Noktası tahmini yazılım test yelpazesinde yaygın olarak kullanılan basit ve kolay anlaşılır bir tahmin tekniğidir. Yinelemeli aşamalar ve basitlik, bu özel tekniğin en önemli özellikleridir.
ilişkisel ve ilişkisel olmayan veritabanı artıları ve eksileri
# 2) Çalışma aşamasına dayalı tahmin belirli bir aşamada (normalde aşamaların en kısa ve en basit olanı) bir tahmin tahmininin yapıldığı ve ardından test ekibinin yavaş yavaş diğer aşamaları başlangıç tahmine eklediği ve sonunda uygun bir tahminde bulunduğu tahmin tekniğidir.
# 3) Kullanım Durumu Noktası tahmin tekniği yazılım test tahminini belirlemek için, düzeltilmemiş aktör ağırlıklarının ve ayarlanmamış kullanım durumu ağırlıklarının kullanıldığı kullanım durumlarının tahminidir.
Test Noktası Tahmin Tekniğinin Detayları
Test noktası tahmin tekniği, listelenen adımlar izlenerek yapılır: -
(Projeden projeye değişebilen aşağıdaki ağırlıklar bu paradigma altında düşünülebilir - Bu ağırlıklardan bazıları, kodun karmaşıklığına, uygulama türüne dayalı uygulama ağırlığına ve test ağırlıklarına dayalı programlama dilinin ağırlığıdır. yazılım testinin farklı aşamalarına göre atanır.)
İşlenmemiş Test Noktaları, Test Noktasının Boyutundaki test boyutunu elde etmek için CWF ile çarpılır.
Verimlilik Faktörü, bir test mühendisinin bir Test Noktasının testini tamamlaması için geçen süreyi gösterir.
Kişi Saatlerinde Test Eforu, Test Noktası boyutu Verimlilik faktörü ile çarpılarak hesaplanır.
Test noktası tahmin tekniğinin hesaplanması için aşağıdaki değişkenleri dikkate alıyoruz.
- Test gereksinimi karmaşıklığı
- Diğer gereksinimlerle arayüz
- Toplam doğrulama noktası sayısı
- Temel test verileri
Daha sonra, veri değişkenlerinin her biri için ağırlık vektörlerini dikkate almalı ve bunları aşağıdaki şekilde düzenlemeliyiz.
Ayarlama faktörü = Ortalama (karmaşıklık ağırlığı ve faktör ağırlığı ürünü) / 30
Test senaryosu tasarımı için Ayar Test Noktası = Toplam Test Noktası X (1 + Test Durumu tasarımı için Ayarlama faktörü)
kalite güvence testi soruları ve cevapları
Test senaryosu yürütmesi için Ayarlanmış Test Noktası = Toplam Test Noktası X (1 + Test Senaryosu yürütmesi için ayarlama faktörü)
Toplam Test Noktası (normalleştirilmiş) X (1 + Test Durumu tasarımı / yürütmesi için ayarlama faktörü) = Test Senaryosu tasarımı / uygulaması için Ayarlanmış Test Noktası
Kişi Saatlerinde toplam efor (PH) = Normalleştirilmiş Test Noktalarının Sayısı / Üretkenlik (Kişi Saatine Göre Normalleştirilmiş Test Puanlarında)
Test Tahmin Örnekleri
Yukarıdaki formülasyonu başka bir pratik kullanıma uygulamaya çalışalım.
Test edilecek 5 test senaryosuna sahip olduğumuz bir test gereksinimiyle sonuçlandığımızı varsayalım.
Şimdi, Test senaryosu 1'in 5 test beklenen sonucu, test senaryosu 2 6 test beklenen sonuç, test senaryosu 3 sadece 2 test beklenen sonuç, test senaryosu 4 9 beklenen sonuç, test senaryosu 5 ve test beklenen sonuç 9 olduğunu varsayalım.
Bu nedenle, test senaryolarını bu üç sınıfta bulunan beklenen sonuçların toplam sayısına göre karmaşık, basit ve orta olmak üzere üç sınıfta sınıflandırıyoruz.
Karmaşık sınıflar 7'den fazla beklenen sonuca sahipken basit olanlar 5'ten az beklenen sonuçtan oluşacak ve orta senaryolar 4 ila 7 beklenen sonuçtan oluşacaktır.
Bu nedenle, test senaryosu 1 ve test senaryosu 2'yi orta senaryolar, senaryo 5 ve senaryo 6'yı karmaşık senaryolar ve test senaryosu 3'ü basit olarak sınıflandırıyoruz.
Şimdi tüm bu senaryolara test noktaları uygulayacağız. Karmaşık sınıflar için 5, orta sınıflar için 3 ve basit senaryolar için 2 test puanı uyguluyoruz.
Tüm bu test senaryolarında varsayılan test noktalarını toplam beklenen sonuç sayısı ile çarpıyoruz. Böylece aşağıdaki tahminlerle sonuçlanırız.
Senaryo 1: 3 test noktası * 5 test beklenen sonuç = Düzeltilmiş test noktası = 25
Senaryo 2: 3 test noktası * 6 test beklenen sonuç = Düzeltilmiş test noktası = 30
Senaryo 3: 2 test noktası * 2 test beklenen sonuç = Düzeltilmiş test noktaları = 4
Senaryo 4: 5 test noktası * 9 test beklenen sonuçları = Düzeltilmiş test noktaları = 45
Senaryo 5: 5 test noktası * 9 test beklenen sonuçları = Düzeltilmiş test noktaları = 45
Bu nedenle, ayarlanmış her test noktası için 5 Kişi Saatini belirtmek için başvurmamız gerektiğini düşünürsek, aşağıdaki yaklaşık sonucu elde ederiz.
Test Senaryosu 1: 25 ayarlanmış test noktası * 5 Kişi Saati = 125 Kişi Saat
Test Senaryosu 2: 30 ayarlanmış test noktası * 5 Kişi Saati = 150 Kişi Saat
Test Senaryosu 3: 4 ayarlanmış test noktası * 5 Kişi Saati = 20 Kişi Saat
Test Senaryosu 4: 45 ayarlanmış test noktası * 5 Kişi Saati = 225 Kişi Saat
Test Senaryosu 5: 45 ayarlanmış test noktası * 5 Kişi Saati = 225 Kişi Saat
Yani toplam yaklaşık kişi-saat: 745 Kişi Saat
Durum Noktası Tahmin Yöntemini Kullan
Kullanım Durumu Puanı Yöntemi, kullanım senaryolarına veya gereksinimlere göre genel test tahmini çabasını hesapladığımız kullanım durumlarına dayanır.
Kullanım örneği nokta tahmini yönteminin ayrıntılı süreci şu şekildedir:
Buna bir örnek, belirli bir gereksinimde sırasıyla 5 kullanım durumumuz var, kullanım durumu 1, kullanım durumu 2,…, kullanım durumu 5 var. Şimdi 1. kullanım senaryosunun 6 aktörden, 2. kullanım senaryosunun 15 aktörden, kullanım senaryolarının sırasıyla 3, 4 ve 5, 3, 4 ve 5 aktörden oluştuğunu düşünelim.
Toplam aktör sayısının 5'ten az olduğu herhangi bir kullanım durumunu negatif olarak, toplam aktör sayısı 5'e eşit veya daha fazla ve 10'a eşit veya daha az olan herhangi bir kullanım durumunu pozitif olarak ve daha fazla 10'dan fazla oyuncu olağanüstü.
İstisnai kullanım durumlarına 2 puan, olumlu olanlara 1 ve olumsuz olanlara -1 puan atamaya karar veriyoruz.
Bu nedenle, yukarıda belirtilen varsayımlarımıza dayanarak 1. ve 5. Kullanım senaryolarını olumlu, 2. kullanım senaryosunu istisnai ve 3. ve 4. kullanım durumlarını olumsuz olarak sınıflandırıyoruz.
Dolayısıyla, İşlenmemiş oyuncu ağırlıkları = Kullanım durumu 1 = (toplam oyuncu sayısı) 5 * 1 (atanan puan) = 5. Benzer şekilde
Kullanım durumu 2 = 15 * 2 = 30.
Geri kalan kullanım durumları için işlemi tekrarlayarak, İşlenmemiş oyuncu ağırlıkları = 33
İşlenmemiş kullanım durumu ağırlığı = toplam no. kullanım durumları = 5
İşlenmemiş kullanım durumu noktası = Ayarlanmamış oyuncu ağırlıkları + Ayarlanmamış kullanım durumu ağırlığı = 33 + 5 = 38
İşlenmiş kullanım örneği = 38 * (0.65+ (0.01 * 50) = 26.7 veya yaklaşık 28 Kişi Saat
Çalışma Aşaması Dağılım Tekniği
Çalışma aşaması arıza tekniği aşağıdaki adımlarda açıklanabilir.
- Genel çalışmayı aşamalara ayırın.
- En basit aşamayla başlayın ve ona yaklaşık bir tahmin değeri atayın.
- Ardından, bu aşama tamamlandıktan sonra başlatılabilecek bir sonraki olası aşamayı belirlemeye devam edin.
- Bu aşamaya uygulanabilecek olası bir yaklaşım değerleri kümesi türetin ve türetilen tüm yaklaşım değerleri arasından maksimum değeri seçin.
- Mevcut faz efor tahmin değerini mevcut değere ekleyerek yaklaşık tahmin değerini toplayın.
- İlk adımda tanımlanan tüm aşamalar bitene kadar 3 ila 5 adımlarına devam edin.
- Nihai yaklaşık tahmin değerini nihai olarak kabul edin.
Bir gereksinimde 5 gerekli aşama olduğunu varsayalım. Dolayısıyla, ilk aşama 1'de, gereken toplam çabanın 35 kişi-saat olduğunu varsayıyoruz ve ardından sırasıyla 35, 45, 55 ve 65 olmak üzere 4 karşılaştırmalı varsayımımız olan bir sonraki aşama 2'ye başlıyoruz.
Bu yüzden burada maksimum değer olan 65 kişi-saati dikkate alıyoruz. Aşama 3, 4, 5'te sırasıyla (12, 33, 43, 54), (15, 10, 7, 8) ve (2, 16, 5, 13) tahminleriyle geliriz. Söz konusu prensibi uygulayarak sırasıyla 185 Kişi Saat elde ediyoruz.
Deneyimlerimden öğrendiğim herhangi bir test görevi için test çabalarının nasıl tahmin edileceğine dair bilgi veriyorum.
Test Süresinin Doğru Şekilde Tahmin Edilmesine Dair 9 Genel İpucu
Yazılım Test Tahminini Etkileyen Faktörler ve Doğru Tahmin Etmek İçin Genel İpuçları:
# 1) Biraz Ara Zaman Düşünün
Tahmin biraz tampon içermelidir. Ancak gerçekçi olmayan bir tampon eklemeyin. Tahminde bir tampona sahip olmak, meydana gelebilecek gecikmelerin üstesinden gelmeyi sağlar. Bir tampona sahip olmak ayrıca maksimum test kapsamı sağlamaya yardımcı olur.
# 2) Hata Döngüsünü Düşünün
Test tahmini ayrıca hata döngüsünü de içerir. Gerçek test döngüsü tahmin edilenden daha uzun sürebilir. Bundan kaçınmak için, test döngüsünün yapının kararlılığına bağlı olduğu gerçeğini dikkate almalıyız. Derleme kararlı değilse, geliştiricilerin düzeltmek için daha fazla zamana ihtiyacı olabilir ve tabii ki test döngüsü otomatik olarak uzatılır.
# 3) Tüm Kaynakların Tahmini Dönem İçin Kullanılabilirliği
Test tahmini, ekip üyeleri tarafından önümüzdeki birkaç hafta veya önümüzdeki birkaç ay içinde planlanan tüm izinleri (genellikle uzun izinler) dikkate almalıdır. Bu, tahminlerin gerçekçi olmasını sağlayacaktır.
Tahmin, bir test döngüsü için bazı sabit sayıda kaynağı dikkate almalıdır. Kaynakların sayısı azalırsa, tahmin yeniden ziyaret edilmeli ve buna göre güncellenmelidir.
# 4) Paralel Test Yapabilir miyiz?
Çıktıyı karşılaştırabilmek için aynı ürünün önceki sürümlerinden bazıları var mı? Evetse, bu test görevinizi biraz daha kolaylaştırabilir. Ürün sürümünüze dayalı olarak tahmini düşünmelisiniz.
# 5) Tahminler Yanlış Gidebilir - Bu nedenle, taahhüt etmeden önce ilk aşamalarda tahminleri sık sık tekrar ziyaret edin.
Erken aşamalarda, test tahminlerini sık sık tekrar ziyaret etmeli ve gerekirse bir değişiklik yapmalıyız. Gereksinimlerde büyük değişiklikler olmadıkça, bir kez dondurduğumuzda tahmini uzatmamalıyız.
# 6) Karar Vermek İçin Geçmiş Deneyimlerinizi Düşünün!
Geçmiş projelerden edinilen deneyimler, zaman tahminlerini hazırlarken hayati bir rol oynar. Geçmiş projelerde karşılaşılan tüm zorluklardan veya sorunlardan kaçınmaya çalışabiliriz. Önceki tahminlerin nasıl olduğunu ve ürünün zamanında teslim edilmesine ne kadar yardımcı olduklarını analiz edebiliriz.
# 7) Projenin Kapsamını Düşünün
Projenin son hedefinin ne olduğunu bilin ve tüm nihai çıktıların listesi. Küçük ve büyük projeler için dikkate alınması gereken faktörler çok farklıdır.
Büyük proje tipik olarak bir test ortamı kurmayı, test verileri oluşturmayı, test komut dosyalarını vb. İçerir. Dolayısıyla tahminler tüm bu faktörlere dayanmalıdır. Küçük projelerde ise, tipik olarak test döngüsü, test senaryolarının yazılması, yürütülmesi ve regresyonu içerir.
# 8) Yük Testi Gerçekleştirecek misiniz?
Performans testine önemli ölçüde zaman ayırmanız gerekiyorsa, buna göre tahmin yapın. Yük testini içeren projeler için tahminler farklı şekilde düşünülmelidir.
# 9) Takımınızı Tanıyor musunuz?
Ekibinizde çalışan kişilerin güçlü ve zayıf yönlerini biliyorsanız, test görevlerini daha kesin bir şekilde tahmin edebilirsiniz. Tahmin ederken, tüm kaynakların aynı üretkenlik seviyesini vermeyebileceği gerçeği dikkate alınmalıdır. Bazı insanlar diğerlerine göre daha hızlı işleyebilir. Bu önemli bir faktör olmasa da, çıktılardaki toplam gecikmeye katkıda bulunur.
Sonuç
Yazılım testi tahmini, deneyimli profesyonellerin katılımının yanı sıra test senaryosu noktası gibi endüstri çapında en iyi uygulamaların tanıtılmasını gerektiren ve vaka noktası yöntemlerini kullanan bir uygulamadır.
Gerekli süreçleri özelleştirmek için açık fikirli olmak da önemlidir. Bu süreçlerin başarılı bir şekilde uygulanması, test sürecinde genel bir iyileşmeye yol açar.
Bu, Yazar “N. Sandhya Rani ”.
fonksiyonları kullanan c ++ program örnekleri
Önerilen Kaynaklar
- SoftwareTestingHelp'ten En İyi QA Yazılım Test Hizmetleri
- QA Outsourcing Guide: Software Testing Outsourcing Companies
- Alfa Testi ve Beta Testi (Tam Kılavuz)
- Perfect Software Testing Resume Guide (Software Tester Resume Sample ile birlikte)
- Yazılım Test İşleri: QA Test İşleri İçin Eksiksiz Kılavuz
- Çevik Tahmin Teknikleri: Çevik Bir Projede Doğru Bir Tahmin
- Başarılı Bir Test Uzmanı Olmak İçin 68 Temel Kaynaklar (Kaçırmayın!)
- Yazılım Testi Türleri: Ayrıntılarla Birlikte Farklı Test Türleri