QA Dokümantasyonu Nedir ve Oluşturma ve Bakım Maliyetlerini Nasıl Azaltabiliriz?

Yayınlanan: 2023-08-01

ITRex'te QA Ekip Lideri olan Andrii Hilov, yazılım projelerinde kalite güvencesi zorluklarını ve tuzaklarını tartışan başka bir makale yazdı. Andrii bu sefer, QA belgelerini ve bunun zamanında, bütçe dahilinde ve iş hedeflerinize uygun yüksek performanslı yazılım geliştirmede oynadığı rolü derinlemesine inceliyor.

İşte onun hakkında söyleyecekleri.

Bir kurumsal yazılım geliştirme şirketi ITRex'te bir QA Ekip Lideri olarak, müşterimizin tam işlevli bir ürünü zamanında ve maksimum değerle piyasaya sürerken yazılım geliştirme maliyetlerini düşürme isteklerinin tamamen farkındayım.

Bu hedefler anlaşılır olsa da, QA ekibinizi, günlük olarak hata bulmasalar bile projenin başlarında görevden almamanızı tavsiye ederim; ancak bu, maaş çekini azaltmak ve yazılım sürüm döngülerini hızlandırmak için kolay bir seçenek gibi görünebilir.

Ayrıca, çözümünüzün ve tüm özelliklerinin beklendiği gibi çalıştığını ve siber güvenliğinizden ödün vermediğini doğrulamak için proje boyunca en iyi kalite güvence uygulamalarını izlemenizi tavsiye ederim.

Ve böyle bir uygulama, uygun QA belgelerinin oluşturulması ve sürdürülmesidir.

Kalite güvence belgeleri tam olarak nedir? KG ve test hizmetlerinden en iyi şekilde yararlanmanıza nasıl yardımcı olabilir? Ayrıca, zayıf mimariye sahip, hatalarla dolu bir uygulama geliştirme ve her şeyi sıfırdan yeniden inşa etme riskini en aza indirirken, kalite güvence belgelerinin hazırlanmasıyla ilgili maliyetleri ve çabayı optimize etmenin bir yolu var mı?

Hadi bulalım!

QA belgelerine giriş

QA dokümantasyonu, yazılım geliştirme ve test süreci sırasında bir kalite güvence ekibi tarafından oluşturulan ve sürdürülen bir doküman ve yapıt koleksiyonudur.

Test stratejisini, test planlarını, test senaryolarını, test komut dosyalarını, test verilerini, test günlüklerini, hata raporlarını ve KG faaliyetleriyle ilgili diğer belgeleri özetleyen çeşitli belgeler içerebilir. Bu belgeler, QA ekibi üyeleri arasındaki iletişimi kolaylaştırır, test için yönergeler sağlar ve sorunları verimli bir şekilde tanımlamaya ve çözmeye yardımcı olur.

Bu nedenle, QA dokümantasyonu, yazılım ürünlerinin kalitesini ve güvenilirliğini sağlamada hayati bir rol oynar ve müşterilerimizin peşinde olduğu ana hedef de budur.

Yazılım projelerinde hangi QA belgeleri kullanılır?

Bu makalenin amacı doğrultusunda, size bir yazılım geliştirme projesinde test belgelerinin belkemiğini oluşturan kalite güvence belgeleri hakkında kısa bir genel bakış sunacağız:

  • Test planı, yazılım test etkinliklerinin genel yaklaşımını, hedeflerini, kapsamını, kaynaklarını ve zamanlamasını özetleyen bir KG belgesidir. Basitçe söylemek gerekirse, şunları kapsar:
  1. Test edilen uygulama türleri ve temel işlevleri de dahil olmak üzere bir projenin adı ve açıklaması
  2. Tercih edilen test yöntemleri (manuel, otomatik, karma) ve test türleri (yeni özellikler, entegrasyonlar, uyumluluk, regresyon vb.)
  3. Her test etkinliği için yaklaşık bir programın yanı sıra test edilmesi gereken özellikler
  4. Optimum takım kompozisyonu
  5. Test sürecinde ortaya çıkabilecek risklere ve sorunlara genel bakış
  6. QA ekibinizin proje sırasında kullanacağı test belgelerinin listesi

BT ekibiniz bir yazılım çözümü için işlevsel ve işlevsel olmayan gereksinimleri tanımladığında, uygun bir teknoloji yığını ve proje yönetimi metodolojisi seçtiğinde ve bir proje yol haritası oluşturduğunda, bir yazılım projesinin başında bir test planı yazmak pratik bir kuraldır.

Test senaryoları olmadan basit bir test planını hazırlamak ve gözden geçirmek normalde üç gün kadar sürer.

  • Test durumları , girdi verileri, beklenen sonuçlar ve yürütülecek adımlar dahil olmak üzere belirli test senaryolarını açıklar. Test senaryoları, bir yazılım ürününün işlevselliğini, performansını veya diğer yönlerini doğrulamak için tasarlanmıştır. Test senaryolarının hem manuel test hizmetleri hem de KG otomasyon hizmetleri ekipleri tarafından kullanıldığını lütfen unutmayın. Bu şekilde, maksimum test kapsamı sağlarsınız, yani üretim kodunda hiçbir hata kendini göstermez.

Yetenekli bir KG mühendisi yalnızca on dakikada üst düzey bir test senaryosu yazabilse de, orta ölçekli bir proje için test senaryosu sayısı kolayca 4.000'i (ve artmaya devam ediyor) geçebilir. Bu rakamı ortalama orta kalite güvence mühendisi saatlik ücretiyle (Kuzey Amerika pazarı için adam saati başına 65 ABD doları) çarpın ve etkileyici bir rakama ulaşacaksınız.

  • Kontrol listeleri , test sürecinde tamamlanması veya doğrulanması gereken eylemlerin veya görevlerin kısa, maddeler halinde listelenmiş halidir. Bu nedenle, KG belgelerindeki bir kontrol listesi genellikle bir KG ekibinin ilgilenmesini gerektiren bir uygulamanın veya siber-fiziksel sistemin işlevsel modüllerinin, bölümlerinin, sayfalarının ve diğer öğelerinin tam bir özetini içerir.

Daha küçük projelerde, kontrol listeleri, ayrıntılı test senaryolarının yerini başarıyla alabilir (bununla ilgili daha sonra konuşacağız).

  • Test komut dosyaları , Selenium, Appium ve Cucumber gibi belirli test araçları veya çerçeveleri kullanılarak yazılan kod parçalarıdır. Bu betikler, test senaryolarının yürütülmesini otomatikleştirerek test sürecini daha verimli hale getirir - özellikle, sık sık güncellenen ve en küçük hataların bile kullanıcı deneyimini olumsuz etkileyebileceği çok kiracılı SaaS sistemleri ve popüler B2C uygulamaları gibi büyük ve karmaşık yazılım projelerinde .
  • Test verileri, çeşitli koşullar altında bir yazılım çözümünün performansını, işlevselliğini, güvenilirliğini ve güvenliğini değerlendirmek için QA mühendisleri tarafından kullanılan verilerdir. Örnek girdi değerlerini, sınır koşullarını ve çeşitli senaryoları içerebilir. Örneğin, QA ekibiniz bir yazılım sistemine girmek için yalnızca doğru oturum açma kimlik bilgilerinin kullanılabileceğini doğrulamak için pozitif ve negatif test verilerini kullanabilir. Benzer şekilde, test verileri belirli uygulama türlerinde yaş kısıtlamaları uygulamak veya bir uygulamanın artan iş yüklerini nasıl ele aldığını araştırmak için kullanılabilir.
  • Test günlükleri , test performansının tarihi ve saati, yürütülen test senaryolarının özeti, QA ekibinizin elde ettiği sonuçlar, ekran görüntüleri ve test sırasında not edilen tüm sorunlar veya gözlemler dahil olmak üzere test yürütme sürecini belgeler. Test günlüğü, test ilerlemesini izlemek, test sonuçlarındaki kalıpları veya eğilimleri belirlemek ve test etkinliklerinin geçmiş kaydını sağlamak için hayati bir bilgi kaynağıdır. Sorunların verimli bir şekilde tanımlanmasına ve çözülmesine yardımcı olur ve gelecekteki test çalışmaları veya denetimler için bir referans görevi görür.
  • Kusur veya hata raporları, KG faaliyetleri sırasında bulunan kusurları ve sorunları detaylandıran test belgeleridir. Spesifik olarak, tespit edilen hataları, önemlerini ve önceliklerini ve kusurların meydana geldiği koşulları açıklarlar. Bir KG yöneticisi, yazılım test uzmanlarına görevler atamak ve durumlarını izlemek için hata raporlarını kullanır.
  • Bir izlenebilirlik matrisi, test durumları ile gereksinimler veya diğer eserler arasındaki ilişkiyi eşler. Tüm gereksinimlerin test senaryoları tarafından yeterince kapsandığından emin olunmasına yardımcı olur, proje genelinde test kapsamının izlenmesine izin verir ve gereksiz test faaliyetlerini ortadan kaldırır.
  • Bir test tamamlama raporu , test yürütme durumu, yürütülen test senaryolarının sayısı, bulunan kusurlar ve bekleyen görevler dahil olmak üzere bir projede gerçekleştirilen test etkinliklerini özetler.

QA belgeleri neden önemlidir?

Kalite güvence belgelerine sahip olmak, müşterinin ve yazılım mühendisliği ekibinin beklediği kesin sonuçların elde edilmesine yardımcı olur.

Bu, aşağıdakileri içeren faktörlerin bir kombinasyonu ile elde edilir:

  1. QA belgeleri, yazılım test uzmanlarının görevleri tutarlı bir şekilde gerçekleştirmek, varyasyonları azaltmak ve ürün veya hizmetlerin genel kalitesini iyileştirmek için izleyebilecekleri açık talimatlar ve yönergeler sağlar.
  2. Kalite güvence belgeleri, geliştirme sürecinin sonlarında yazılım çözümlerindeki kritik kusurların ve hataların tespit edilme olasılığını azaltır ve böylece bütçe kontrolünde çok önemli bir rol oynar. Kalite Güvencesi uzmanları, tasarım/mimari aşaması için 3X'ten dağıtım aşaması için 30X ve daha fazlasına kadar, hataları düzeltme maliyetinin her proje aşamasında katlanarak arttığını öne sürüyor.
  3. Kalite güvence belgeleri, denetimleri basitleştirerek ve oluşturulmuş süreçler, prosedürler ve kalite kontroller hakkında kanıt sağlayarak, kuruluşunuzun karşılaması gereken yasal gereksinimler ve standartlara uygunluğun sağlanmasına yardımcı olur.
  4. Yazılım testi belgeleri, prosedürleri, kontrolleri ve risk değerlendirme süreçlerini belgeleyerek kuruluşların potansiyel riskleri belirlemesine ve bunların iş ve müşteri memnuniyeti üzerindeki etkilerini en aza indirmek için önleyici tedbirler almasına yardımcı olur.
  5. Yeni işe alınanlar, bir yazılım projesindeki kalite süreçlerini ve prosedürlerini anlamak, öğrenme eğrisini azaltmak ve kuruluş genelinde tutarlı eğitim sağlamak için QA belgelerinize başvurabilir.
  6. Şirketler uygunsuzlukları, düzeltici eylemleri ve öğrenilen dersleri belgeleyerek iyileştirme alanlarını belirleyebilir ve verimliliği ve kaliteyi artırmak için değişiklikleri uygulayabilir.
  7. İyi belgelenmiş KG süreçlerine ve prosedürlerine sahip olmak, müşterilerinizin şirketinizin ürünlerine veya hizmetlerine olan güvenini artırabilir. Kapsamlı yazılım testi belgeleri, kalite taahhüdünü gösterir ve kuruluşun tutarlı ve güvenilir sonuçlar sağlamak için sağlam sistemlere sahip olduğunu garanti eder.
  8. Yasal ihtilafların veya ürün geri çağırmalarının ortaya çıktığı durumlarda, KG belgeleri önemli bir kanıt görevi görebilir. Kuruluşunuzun belirlenmiş kalite süreçlerini takip ettiğini, gerekli önlemleri aldığını ve yükümlülüklerini yerine getirdiğini gösterebilir.

KG belgelerinin oluşturulması ne kadar sürer?

Bu soruya dürüst bir cevap, "Duruma göre değişir" olacaktır.

Spesifik olarak, zaman çerçevesi ve ilişkili maliyetler, kuruluşunuzun büyüklüğü ve süreçlerinin karmaşıklığı, içinde bulunduğunuz sektör ve geliştirmekte olduğunuz yazılımın türü gibi çeşitli faktörlere bağlıdır.

Daha önce yazılım geliştirme projelerine başladıysanız ve şirket içi bir KG ekibiniz varsa, mevcut KG belgelerini yeni projeler için yeniden kullanabilirsiniz. Yazılım testi belgeleri oluşturmak ve sürdürmek için proje yönetimi ve wiki yazılımı gibi şablonlar ve özel araçlar kullanmak da yararlıdır.

Her zaman KG belgelerine mi ihtiyacınız var? Oluşturma ve bakım maliyetlerini azaltmak mümkün mü?

Ne kadar yararlı olursa olsun, kalite güvence belgeleri, oluşturulması ve bakımı için gereken ek çaba ve personel nedeniyle yazılım proje maliyetlerini artırabilir.

Bu, ekonomik durgunluk zamanlarında dijital dönüşüm geçiren girişimler veya yetersiz bir şekilde faaliyet gösteren girişimler için bir sorun olabilir.

O halde her tür yazılım projesinin süper ayrıntılı KG dokümantasyonuna ihtiyacı var mı - ve bununla ilişkili maliyetleri azaltmak mümkün mü?

KG belgesi oluşturmaya yönelik en iyi yaklaşımı belirlemek için aşağıdaki faktörleri göz önünde bulundurun:

  • Proje boyutu ve bütçesi . Küçük bütçeli ve kısa vadeli projeler söz konusu olduğunda (büyük BT ekipleri tarafından yürütülen son derece yenilikçi ve teknik projelerden bahsetmediğimiz sürece), dokümantasyon sürecini aşırı karmaşıklaştırmaya gerek yoktur, bu nedenle KG ekibiniz ayrıntılı listeler yerine kontrol listelerini seçebilir. test durumları. Genel test stratejisini belirleyen test planı belgesi ile ilgili olarak, bunun için bütçe olmadığı veya projenin kısa vadeli olduğu ve ileri teknolojiler içermediği durumlarda yazmaktan da vazgeçebiliriz.
  • QA ekibinin büyüklüğü ve deneyimi . Projede ne kadar çok QA mühendisi varsa ve kalite güvence konusunda ne kadar az deneyime sahip olurlarsa, test sürecini kontrol etmek o kadar zorlaşır. Bu nedenle, ekip üyelerini aynı sayfada tutmak için kapsamlı kalite güvence belgelerine ihtiyacınız var. Bu gibi durumlarda, görevleri mühendisler arasında deneyim ve bilgilerine göre daha etkin bir şekilde dağıtmak için kontrol listelerinden ziyade test senaryolarına yönelmek ve test senaryosu oluşturmaya normalde daha yüksek saatlik ücretlere sahip olan daha deneyimli KG uzmanlarını dahil etmek tavsiye edilir.
  • Proje yönetimine Çevik ve Şelale yaklaşımı . ITRex ekibi bu blog gönderisinde Çevik ve Şelale metodolojileri arasındaki temel farkları özetlemiş olsa da, kalite güvencesi açısından iki yaklaşımı birbirinden ayıran şeylerden bahsetmeye değer. Waterfall'da yazılım testi en sona saklanır, yani QA ekibiniz testleri yalnızca kodlama kısmı %100 tamamlandığında yapacaktır. Bariz sebeplerden dolayı, gereksinimleri ortaya çıkarma aşamasında hazırlanması gereken uygun kalite güvence belgeleri olmadan bunu yapamazlar. BT ekiplerinin yinelemeli olarak daha küçük yazılım parçaları oluşturma ve her döngünün sonunda kodu test etme eğiliminde olduğu Çevik'te, önceden yaratıcı kapsamlı QA dokümantasyonu tercih edilmez. Yine de, mevcut durumu müşterinin ve yazılım mühendislerinin beklentileriyle daha uyumlu hale getirmek için bir test planı yazmanızı tavsiye ederim.

Genel olarak, QA belgelerine sahip olmak, karmaşıklığı ve boyutu ne olursa olsun herhangi bir yazılım geliştirme projesine fayda sağlayabilir.

Bununla birlikte, müşteri odaklı bir şirket olarak, hedeflerinizi ve bütçenizi göz önünde bulundurarak geçici çözümler önermeye her zaman hazırız.

Projeniz için kapsamlı kalite güvence belgeleri hazırlamanız gerekip gerekmediğinden emin değilseniz ve görevi emanet edecek yetenekli KG mühendisleri arıyorsanız, ITRex ile iletişime geçin! Yüksek performanslı, hatasız bir yazılım çözümünü zamanında, bütçe dahilinde ve spesifikasyonlara uygun olarak piyasaya sürmenizi sağlayacağız!


İlk olarak 30 Haziran 2023'te https://itrexgroup.com adresinde yayınlandı.