Validation (Geçerleme): Geliştirilen sistem müşteri tarafından istenen sistem midir? Müşteri ile yapılan gözden geçirme toplantıları, (Şartname-> Gereksinimler->Tasarım->Kod->Doğrulama) akışının izlenebilirliği, şartname maddelerinin gereksinimlerinin yazılmış olması, gereksinimlerin hepsinin yerine getiirlmiş olması ile sağlanabilir.
Verification(Doğrulama): Sistem doğru çalışıyor mu? Doğrulama için 4 ana yöntem var. Test etme, Demonstrasyon yapma, Gözlem, Analiz etme. Functional özellikler genelde test, demonstrasyon ile doğrulanırken non functional özellikler gözlem ile doğrulanabilir. Performans gereksinimleri analiz yöntemi ile doğrulanabilir.
Test Aşamaları:
Birim testler: Bunu daha çok geliştirici yaptığı işi test etmek için yapar. Metotları otomatik test edecek kod yazılır. Otomatik deployment vs yapılırken önce bu testler çalıştırılır hepsi geçiyorsa deployment yapılır.
Yeterlilik Testleri: Sistemdeki yazılım konfigürasyon elemanlarının kendilerine atanmış gereksinimleri yerine getirdiğinin testidir. Bunu testçiler yapar. Diğer adları yeterlilik yerine kalifikasyon denilebilir. Başına bileşen, yke, ke getirilebilir.
Entegrasyon Testleri: Bu konfigürasyon elemenlarını birlikte çalıştırırken entegre olduklarını doğrulamak için kullanılır. Diğer adları sistem entegrasyon testleri, bileşen entegrasyon testleri olabilir.
Sistem Testleri: Entegre edilmiş sistem üzerinden gereksinimleri karşıladığının test edilmesidir. Diğer adı fabrika kabul testleri.
Kabul Testleri: Müşteri önünde sistemin gereksinimleri karşıladığının gösterilmesidir. Sistem testlerinin sonuçları bu testlere eklenip sadece ana akış ya da kritik örnekler üzerinden testler yapılabilir. Diğer adı saha kabul testleri.