
Sanal Kaytarma(Cyberloafing) Nedir?
21 Ekim 2024Yazılım Test Yaşam Döngüsü (Software Testing Life Cycle – STLC), yazılımların kalite standartlarını karşılamasını sağlamak için uygulanan yapılandırılmış bir test sürecidir. STLC, yazılım geliştirme sürecinde kritik olan birkaç aşamayı içerir ve her aşama yazılımın başarılı bir şekilde test edilmesi ve iyileştirilmesi için gereklidir.
Bir yazılım ürününün geliştirilmesi sırasında STLC aşamaları, yazılımın istenen kalite seviyesine ulaşana kadar gerektiği kadar tekrar edilir ve bu süreçte yazılım sürekli olarak rafine edilir. STLC, döngüsel bir yaklaşımı takip eder ve yazılımın kullanıcılara sunulmadan önce kapsamlı testlerden geçmesini ve kalite güvencesinin sağlanmasını hedefler.
Yazılımın karmaşıklığı nedeniyle, yalnızca bir test yapılması durumunda ürünün hatasız olacağını garanti etmek imkansızdır. Bu nedenle, Yazılım Test Yaşam Döngüsü (STLC) içindeki her aşamada birden fazla test gerçekleştirilir.
STLC, doğrulama (verification) ve geçerlilik (validation) aktivitelerini kapsar. Yaygın inanışın aksine, yazılım testi sadece tek bir faaliyet değildir; aksine, yazılımın kalitesini garantilemeye yardımcı olmak amacıyla metodolojik bir şekilde yürütülen bir dizi faaliyetlerden oluşur.STLC’nin amacı, yazılımın kullanıcı ihtiyaçlarına, iş gereksinimlerine ve kalite standartlarına uygun olduğunu doğrulamak ve yazılımın güvenilirliğini artırmaktır.
STLC Aşamaları

Gereksinim Aşaması Testi (Requirement Phase Testing)
Gereksinim Aşaması Testi, Gereksinim Analizi olarak da adlandırılır ve bu aşamada test ekibi, gereksinimleri test perspektifinden inceleyerek test edilebilirliklerini değerlendirir. QA ekibi, gereksinimleri daha iyi anlamak için paydaşlarla etkileşimde bulunur. Gereksinimler işlevsel veya işlevsel olmayan türde olabilir. Ayrıca, otomasyon fizibilite analizi bu aşamada gerçekleştirilir.
Gereksinim Aşaması Testindeki Faaliyetler
- Gerçekleştirilecek test türlerini belirlemek.
- Test öncelikleri ve odaklanılacak alanları tanımlamak.
- Gereksinim İzlenebilirlik Matrisi (RTM) oluşturmak.
- Test ortamı gereksinimlerini belirlemek.
- Otomasyon fizibilite analizi yapmak (gerekiyorsa).
Çıktılar:
- RTM
- Otomasyon fizibilite raporu (uygunsa).
STLC’de Test Planlama (Test Planning in STLC)
Bu aşamada, kıdemli QA yöneticisi test planı ve stratejisini belirler. Çabalar ve maliyet tahminleri yapılır, test ortamı, kaynaklar ve test takvimi oluşturulur. Test planı bu aşamada hazırlanır ve sonuçlandırılır.
Test Planlama Faaliyetleri:
- Test planı/strateji belgesi hazırlamak.
- Test araçlarını seçmek.
- Test çabası tahmini yapmak.
- Kaynak planlaması ve sorumluluk dağılımı yapmak.
- Eğitim ihtiyaçlarını belirlemek.
Çıktılar:
- Test planı/strateji belgesi.
- Çaba tahmini dokümanı.
Test Senaryosu Geliştirme Aşaması
Bu aşama, test senaryolarının ve otomasyon komut dosyalarının oluşturulmasını, doğrulanmasını ve yeniden işlenmesini içerir. QA ekibi test senaryolarını geliştirmeye başlar ve test verilerini oluşturur.
Faaliyetler:
- Test senaryoları ve otomasyon komut dosyalarını geliştirmek.
- Test senaryolarını gözden geçirmek ve temel almak.
- Test verilerini hazırlamak.
Çıktılar:
- Test senaryoları/komut dosyaları.
- Test verileri.
Test Ortamı Kurulumu
Test ortamı, bir yazılımın test edileceği donanım ve yazılım gereksinimlerini içerir. Bu aşamada ortamın duman testi yapılır.
Faaliyetler:
- Donanım ve yazılım gereksinimlerini belirlemek.
- Test ortamını kurmak ve test verilerini yüklemek.
- Duman testi gerçekleştirmek.
Çıktılar:
- Test verisi kurulumuyla ortam hazır.
- Duman testi sonuçları.
Test Yürütme Aşaması
Test uzmanları, hazırlanan test planlarına göre testleri gerçekleştirir. Hatalar raporlanır, düzeltilir ve yeniden test yapılır.
Faaliyetler:
- Testleri plana göre yürütmek.
- Test sonuçlarını belgelemek ve hataları raporlamak.
- Hataları RTM ile eşleştirmek ve yeniden test yapmak.
- Hataların kapatılmasını takip etmek.
Çıktılar:
- Yürütme durumuyla güncellenmiş RTM.
- Güncellenmiş test senaryoları.
- Kusur raporları.
Test Döngüsü Kapanışı
Testin tamamlandığı bu aşamada, test metrikleri, kapanış raporları hazırlanır ve süreç analiz edilir.
Faaliyetler:
- Test döngüsü kriterlerini değerlendirmek.
- Test ölçümleri ve kapanış raporlarını hazırlamak.
- Projeden öğrenilenleri belgelemek.
Çıktılar:
- Test kapanış raporu.
- Test metrikleri.
STLC(Yazılım Test Yaşam Döngüsü) ve SDLC(Yazılım Geliştirme Yaşam Döngüsü) Arasındaki Farklar
Kriter | SDLC (Yazılım Geliştirme Yaşam Döngüsü) | STLC (Yazılım Test Yaşam Döngüsü) |
---|---|---|
Köken | Geliştirme Yaşam Döngüsü | Test Yaşam Döngüsü |
Tanım | SDLC, kullanıcı beklentilerini aşan veya karşılayan, mevcut ve planlanan bilgi teknolojisi altyapısında etkili çalışan ve yönetimi uygun maliyetli bir sistem oluşturur. | STLC, hangi test aktivitelerinin ne zaman yapılacağını belirler ve yapılandırılmış bir test yaklaşımı sunar. |
Odak Noktası | Hem geliştirme hem de test süreçlerini kapsar. | Sadece test sürecine odaklanır. |
Gerçekleştirilme Zamanı | SDLC aşamaları, STLC aşamalarından önce tamamlanır. | STLC aşamaları, SDLC aşamalarından sonra gerçekleştirilir. |
Amacı | Başarılı yazılım geliştirme sürecinin önündeki engelleri aşmak. | Sistemdeki zayıflıkları ve hataları tespit etmek ve çözmek. |
Diğer Döngülerle İlişki | SDLC, STLC’nin öncülü olarak kabul edilir. | STLC, SDLC’nin ardılı olarak kabul edilir. |
Dahil Olan Ekipler | Proje Yöneticileri, İş Analistleri, Tasarımcılar ve Geliştiriciler. | Kalite Güvence (QA) ve Test Ekipleri. |
Temel Hedef | Güvenilir ve tamamen işlevsel bir yazılım ürünü teslim etmek. | Yazılımın belirlenen gereksinimleri karşıladığını ve düzgün çalıştığını doğrulamak. |
Belirgin Aşamalar | Gereksinim toplama, tasarım, geliştirme, test, teslim ve bakım gibi aşamalardan oluşur. | Test planlama, test tasarımı, test uygulama, hata raporlama ve test kapanış gibi aşamalardan oluşur. |
Kapsam | Yazılım geliştirme sürecinin başlangıcından teslimine kadar tüm aşamaları kapsar. | Test planlamasından test kapanışına kadar olan tüm test sürecini kapsar. |
Temel İlişki | SDLC, yazılım ürününün doğrulanması ve onaylanması için STLC tarafından takip edilir. | STLC, SDLC’nin ayrılmaz bir parçasıdır ve yazılımın kapsamlı şekilde test edilmesini sağlar. |
Sonuç | Kullanıcıya yüksek kaliteli bir yazılım ürünü teslim edilir. | Kullanıcıya hatasız veya minimum hatalı bir yazılım ürünü sunulur. |
KAYNAKÇA
- BrowserStack. (2024). SDLC ve STLC arasındaki fark. Erişim adresi: https://www.browserstack.com/guide/difference-between-sdlc-and-stlc
- GeeksforGeeks. (2024). SDLC ve STLC arasındaki fark. Erişim adresi: https://www.geeksforgeeks.org/difference-between-sdlc-and-stlc/
- Hamilton, T. (2024, 31 Aralık). STLC (Yazılım Test Yaşam Döngüsü). Guru99. Erişim adresi: https://www.guru99.com/tr/software-testing-life-cycle.html