QA (Quality Assurance)

Yasin Bulgan
Innova-tech
Published in
3 min readJan 20, 2023

QA Nedir?

kalite güvence, bir ürün veya hizmetin belirli kalite standartlarına uygunluğunu sağlamak için yürütülen aktivitelerin tümünü ifade eder. Bu aktiviteler arasında proses kontrolü, test etme, hata tespit etme ve düzeltme gibi araçlar kullanılır. QA, üretim veya hizmet sağlama sürecinin her aşamasında yer alır ve müşteri memnuniyetini artırmak için tasarlanmıştır.

Yazılımda QA nedir?

Yazılımda QA, yazılım ürünlerinin kalite standartlarına uygunluğunu sağlamak için yürütülen aktivitelerin tümünü ifade eder. Bu aktiviteler arasında yazılım test etme, hata tespit etme ve düzeltme, performans testleri, güvenlik testleri, kullanılabilirlik testleri gibi araçlar kullanılır. QA ekibi yazılımın tüm aşamalarında yer alır, yazılımın tasarlanmasından üretilmesine, dağıtılmasına ve kullanılmasına kadar tüm süreci izler ve müşteri memnuniyetini arttırmak için çalışır.

Yazılımda QA için kullanılan yöntemler arasında:

-Manual Test : Test etme, hata tespit etme ve düzeltme işlemleri için el ile yapılan testleri ifade eder.

-Automation Testing: Test etme, hata tespit etme ve düzeltme işlemleri için otomatik olarak yapılan testleri ifade eder.

-Functional Testing: Yazılımın belirli bir işlevi gerçekleştirip gerçekleştirmediğini test etmeye yarayan yöntem.

-Performance Testing: Yazılımın belirli bir yük altında nasıl çalıştığını test etmeye yarayan yöntem.

-Security Testing: Yazılımın güvenliği açısından nasıl olduğunu test etmeye yarayan yöntem.

-Usability Testing: Yazılımın kullanılabilirliği açısından nasıl olduğunu test etmeye yarayan yöntem.

-Acceptance Testing: Yazılımın müşterinin beklentilerini karşıladığını test etmeye yarayan yöntem.

Bu yöntemler yazılımın tüm aşamalarında kullanılabilir ve QA ekibinin kullanımına göre değişebilir.

Yazılımda QA işi, yazılım test etme, hata tespit etme ve düzeltme, yazılım kalitesini artırmak için gerekli araçları ve yöntemleri kullanabilen, yazılım geliştirme sürecini ve yazılımın işlevlerini anlayabilen kişiler tarafından yapılabilir. Bu iş için genellikle yazılım mühendisliği veya bilgisayar bilimleri gibi alanlarda eğitim almış kişiler tercih edilir. Ancak bu alan dışındaki kişiler de bu işi yapabilirler, önemli olan yazılım test etme, hata tespit etme ve düzeltme gibi konuları iyi bilmeleri ve yazılım geliştirme sürecini anlamalarıdır.

Yazılımda QA için kullanılan programlar arasında:

-Test Management Tools: Test senaryolarının planlanması, yürütülmesi ve raporlanması için kullanılan araçlar. Örnekler: TestRail, qTest, Jira.

-Automation Testing Tools: Test otomatizasyonu için kullanılan araçlar. Örnekler: Selenium, Appium, TestComplete, Testim.

-Performance Testing Tools: Yazılımın performansını test etmek için kullanılan araçlar. Örnekler: Apache JMeter, LoadRunner, Gatling.

-Static Analysis Tools: Kodun kalitesini ve güvenliğini test etmek için kullanılan araçlar. Örnekler: SonarQube, Fortify, Checkmarx

-Bug Tracking Tools: Hataların takip edilmesi ve düzeltilmesi için kullanılan araçlar. Örnekler: Jira, Bugzilla, Trello

Bu programlar yazılımın tüm aşamalarında kullanılabilir ve QA ekibinin kullanımına göre değişebilir. Ayrıca bu programlar arasında ücretsiz ve ücretli olanlarıda bulunmaktadır.

Yazılımda QA için öneriler:

  1. QA sürecinin erken aşamalarda başlaması: QA sürecinin yazılım geliştirme sürecinin ilk aşamalarında başlaması, hata tespit etme ve düzeltme işlemlerinin daha kolay ve etkili olmasını sağlar.
  2. Test senaryolarının iyi planlanması: Test senaryolarının iyi planlanması ve yürütülmesi, yazılımın tüm işlevlerini ve senaryolarını test etmeyi ve hata tespit etmeyi kolaylaştırır.
  3. Otomatik testlerin kullanılması: Otomatik testler, yazılımın işlevlerini ve senaryolarını tekrarlayan ve zaman alan testleri hızlandırır ve hataları daha erken tespit etmeye olanak tanır.
  4. Performans ve güvenlik testlerinin yapılması: Performans ve güvenlik testleri, yazılımın yük altında nasıl çalıştığını ve güvenliği açısından nasıl olduğunu test etmeye olanak tanır.
  5. Kullanılabilirlik testlerinin yapılması: Kullanılabilirlik testleri, yazılımın kullanımı açısından nasıl olduğunu test etmeye olanak tanır.
  6. Müşteri memnuniyetini hedeflemek: QA sürecinin amacı, müşteri memnuniyetini arttırmaktır. Bu nedenle, müşteri beklentilerini ve ihtiyaçlarını dikkate alarak test senaryolarını ve testleri planlamak önemlidir.
  7. Sürekli iyileştirmeye odaklanmak: Yazılım kalitesini arttırmak için sürekli iyileştirmeye odaklanmak önemlidir. Bu nedenle, QA sürecinin sonunda elde edilen veriler kullanılarak prosesler ve araçlar iyileştirilmelidir.

Yazılımda QA, yazılım ürünlerinin kalite standartlarına uygunluğunu sağlamak için yürütülen önemli bir aktivitedir. QA sürecinin erken aşamalarda başlaması, test senaryolarının iyi planlanması, otomatik testlerin kullanılması, performans ve güvenlik testlerinin yapılması, kullanılabilirlik testlerinin yapılması, müşteri memnuniyetini hedeflemek ve sürekli iyileştirmeye odaklanmak gibi öneriler ile yazılımın kalitesi arttırılabilir ve müşteri memnuniyeti sağlanabilir. QA ekibi, yazılımın tüm aşamalarında yer alır ve yazılımın kalitesini arttırmak için çalışır.

--

--