Yazılım Test Mühendisliği Dersleri

Yazılım Test Mühendisliği Dersleri: Bölüm 5

Agile Test Süreçleri | Scrum, Kanban, Jira, Kullanıcı Hikâyeleri, INVEST | yazilimtestmuhendisligi.com

Agile Test Süreçleri: Scrum, Kanban, Jira, Kullanıcı Hikâyeleri ve INVEST Yaklaşımı

Çevik (Agile) yazılım geliştirmede test etkinliği, sprint döngüsüne ve ekip iş akışına derinlemesine entegre olur. Bu rehberde Scrum ve Kanban çerçevelerini, Jira ile iş takibini, iyi bir kullanıcı hikâyesinin nasıl yazılacağını ve INVEST kriterlerini adım adım ele alıyoruz.

Scrum Kanban Jira Kullanıcı Hikâyeleri INVEST

i Agile Test Süreçlerine Giriş

Geleneksel (Waterfall) yaklaşımlarda test, geliştirme tamamlandıktan sonra ayrı bir aşama olarak yürütülürken; Agile (çevik) yaklaşımlarda test, geliştirmeyle iç içe, sürekli ve erken başlayan bir etkinliktir. Bu felsefeye “shift-left testing” denir — yani test faaliyetleri süreç içinde mümkün olduğunca sola, yani en başa kaydırılır.

Agile ekiplerde test mühendisi, sadece son ürünü kontrol eden değil; gereksinim analizinden kabul kriterlerinin yazımına, sprint planlamasından günlük geliştirmeye kadar tüm sürece dahil olan aktif bir paydaştır.

Bu sayfada, Agile dünyasının iki temel çerçevesi olan Scrum ve Kanban‘ı, bu çerçevelerde en yaygın kullanılan iş takip aracı Jira‘yı, gereksinimlerin nasıl kullanıcı hikâyeleri haline getirildiğini ve iyi bir hikâyenin sahip olması gereken INVEST kriterlerini inceliyoruz.

1 Scrum ve Test Mühendisinin Rolü

Scrum, işi sabit uzunluktaki zaman dilimlerine (genellikle 1-4 hafta) bölen, bu dilimlere sprint denilen, yinelemeli (iterative) bir çevik çerçevedir. Her sprint sonunda potansiyel olarak yayınlanabilir bir ürün artırımı (increment) hedeflenir.

Scrum Rolleri

🎯 Product Owner

Ürün vizyonundan ve backlog’un önceliklendirilmesinden sorumludur. Hangi özelliğin, hangi sırayla geliştirileceğine karar verir.

Test ile ilişkisi: Kabul kriterlerini test ekibiyle birlikte netleştirir.

🧭 Scrum Master

Ekibin Scrum kurallarına uymasını sağlar, engelleri (impediment) ortadan kaldırır, süreci kolaylaştırır.

Test ile ilişkisi: Test darboğazlarının hızlı çözülmesine yardımcı olur.

👥 Geliştirme Ekibi

Geliştirici ve test mühendislerinden oluşan, kendi kendini yöneten (self-organizing) çapraz fonksiyonlu ekiptir.

Test ile ilişkisi: Test mühendisi sprint içinde geliştirmeyle eş zamanlı test yazar/yürütür.

Sprint Döngüsü ve Törenler (Ceremonies)

Sprint PlanningSprint hedefi ve iş kalemleri belirlenir
Daily Scrum15 dakikalık günlük senkronizasyon
Sprint ReviewArtırım paydaşlara gösterilir
RetrospectiveEkip süreci değerlendirir, iyileştirir
Test mühendisinin sprint içindeki katkısı: Sprint Planning’de test edilebilirlik açısından hikâyeleri değerlendirir; sprint boyunca test senaryoları yazar ve yürütür; Sprint Review’da kalite durumunu raporlar; Retrospective’de test sürecine dair iyileştirme önerileri sunar. Ayrıca Definition of Done (Bitti Tanımı)‘nin içinde test kriterlerinin (örn. “tüm kritik senaryolar geçti”, “regresyon testleri tamamlandı”) yer almasını sağlar.

2 Kanban ile Sürekli Akış

Kanban, işin sabit zaman dilimlerine (sprint) bölünmediği, bunun yerine görselleştirilmiş bir pano (board) üzerinde sürekli akış (continuous flow) halinde ilerlediği bir çevik yaklaşımdır. Temel prensipleri: iş akışını görselleştirmek, devam eden iş miktarını sınırlamak (WIP Limit) ve akışı sürekli ölçüp iyileştirmektir.

Backlog 8
Şifre sıfırlama akışı
Fatura PDF export
Mobil bildirim ayarları
Devam Ediyor 3 / 3 WIP
Ödeme entegrasyonu testi
Sepet API regresyonu
Giriş ekranı erişilebilirlik
Test / Review 2
Kupon kodu doğrulama
Sipariş iptal senaryosu
Tamamlandı 5
Kullanıcı profili güncelleme
Arama filtresi düzeltmesi
WIP Limit neden önemli? “Devam Ediyor” sütunundaki iş sayısını sınırlamak, ekibin yeni işe başlamak yerine mevcut işi bitirmeye ve test etmeye odaklanmasını sağlar. Bu da yarım kalmış işlerin (ve test edilmemiş kodun) birikmesini önler.

3 Scrum vs Kanban Karşılaştırması

Scrum

  • Sabit uzunlukta sprint‘ler (1-4 hafta)
  • Sabit roller: Product Owner, Scrum Master, Ekip
  • Belirli törenler (Planning, Daily, Review, Retro)
  • Sprint sonunda değişiklik yapılmaz (dondurulmuş kapsam)
  • İlerleme ölçümü: Velocity, Burndown Chart

Kanban

  • Sabit zaman dilimi yok, sürekli akış
  • Rol zorunluluğu yok, esnek yapı
  • Zorunlu tören yok, istenirse eklenebilir
  • İstenildiği zaman yeni iş eklenebilir (WIP limit dahilinde)
  • İlerleme ölçümü: Cycle Time, Lead Time, Cumulative Flow
BoyutScrumKanban
En uygun olduğu durumÖngörülebilir, planlı ürün geliştirmeSürekli destek, bakım, hızlı değişen öncelikler
Test yaklaşımıSprint içinde test tamamlanır (Definition of Done)Her kart “Test” sütununu geçmeden “Done” olamaz
Değişikliğe açıklıkSprint ortasında düşükHer zaman yüksek

4 Jira ile İş ve Hata Takibi

Jira (Atlassian), Agile ekiplerin hem Scrum hem de Kanban panolarını yönetmek, gereksinimleri (hikâyeleri), görevleri ve hataları izlemek için en yaygın kullandığı araçlardan biridir. Test mühendisleri için Jira genellikle şu amaçlarla kullanılır:

  • Issue (İş kalemi) türleri: Epic (büyük iş paketi), Story (kullanıcı hikâyesi), Task (görev), Bug (hata), Sub-task (alt görev).
  • Workflow (İş akışı): To Do → In Progress → In Review → In Testing → Done gibi özelleştirilebilir durumlar arasında geçiş.
  • Hata kaydı: Önceki bölümde ele aldığımız hata yaşam döngüsü (New, Assigned, Fixed, Retest, Closed vb.) doğrudan Jira’nın “Bug” issue tipi ve workflow’u üzerinden yönetilir.
  • Bağlantılar (Links): Bir Bug, ilgili Story’ye “relates to” veya “blocks” ilişkisiyle bağlanarak izlenebilirlik (traceability) sağlanır.
  • Test yönetimi eklentileri: Xray, Zephyr Scale gibi Jira eklentileri, test senaryolarını, test koşumlarını (test run) ve kapsam raporlarını doğrudan Jira içinde yönetmeyi sağlar.

Örnek Jira Issue Kartı

Issue Tipi : Bug
Anahtar    : SEPET-482
Başlık     : Kupon kodu %100 indirimde negatif tutar hesaplıyor
Öncelik    : Yüksek
Şiddet     : Kritik
Sprint     : Sprint 24
Durum      : In Progress
Atanan     : Ayşe Yılmaz (Geliştirici)
Raporlayan : Mehmet Demir (Test Mühendisi)
Bağlı Story: SEPET-410 - Kullanıcı sepete kupon kodu uygulayabilmeli
Etiketler  : regresyon, ödeme, sprint-24
İpucu: Jira panosunda her sütun, ekibin üzerinde anlaştığı bir durumu temsil eder. Test mühendisleri için ayrı bir “In Testing” veya “Ready for QA” sütunu eklemek, test edilmeyi bekleyen işleri görünür kılar ve darboğazların erken fark edilmesini sağlar.

5 Kullanıcı Hikâyeleri (User Stories)

Kullanıcı hikâyesi, bir yazılım özelliğinin, teknik detaylardan çok kullanıcı değeri odaklı, kısa ve sade bir dille anlatılmasıdır. Klasik gereksinim dokümanlarının aksine, hikâyeler ekip içinde tartışılmaya ve birlikte netleştirilmeye açık bir başlangıç noktasıdır.

Bir olarak,
istiyorum,
böylece .

Örnek: Bir e-ticaret müşterisi olarak, sepetime kupon kodu girebilmek istiyorum, böylece siparişimde indirim kazanabilirim.

Kabul Kriterleri (Acceptance Criteria)

Her kullanıcı hikâyesi, “ne zaman tamamlanmış sayılır” sorusuna cevap veren kabul kriterleriyle desteklenmelidir — bu kriterler doğrudan test senaryolarına dönüşür:

Hikâye: Kullanıcı sepetine kupon kodu uygulayabilmeli

Kabul Kriterleri:
  1. Geçerli bir kupon kodu girildiğinde indirim sepet toplamına yansır.
  2. Süresi dolmuş bir kupon kodu girildiğinde hata mesajı gösterilir.
  3. Aynı kupon kodu bir siparişte yalnızca bir kez kullanılabilir.
  4. Kupon kodu alanı boş bırakılırsa "Uygula" butonu pasif kalır.
Kabul kriterleri, test mühendisinin sprint planlamasında hikâyeyi incelerken sorması gereken en önemli sorulardan doğar: “Bu nasıl doğrulanır?”, “Sınır değerler neler?”, “Hata durumunda ne olmalı?”

6 INVEST Yaklaşımı

İyi yazılmış bir kullanıcı hikâyesinin sahip olması gereken altı özellik, Bill Wake tarafından tanımlanan ve baş harflerinden oluşan INVEST kısaltmasıyla özetlenir:

I
Independent

Bağımsız — diğer hikâyelere aşırı bağımlı olmamalı, tek başına geliştirilip test edilebilmeli.

N
Negotiable

Müzakere edilebilir — katı bir sözleşme değil, ekip ve müşteri arasında tartışılabilir bir başlangıç noktasıdır.

V
Valuable

Değerli — son kullanıcıya veya müşteriye somut bir değer sunmalıdır.

E
Estimable

Tahmin edilebilir — ekip, hikâyenin büyüklüğünü/karmaşıklığını makul ölçüde tahmin edebilmelidir.

S
Small

Küçük — tek bir sprint içinde tamamlanabilecek kadar küçük ve yönetilebilir olmalıdır.

T
Testable

Test edilebilir — net kabul kriterleriyle, “tamamlandı” durumunun nesnel olarak doğrulanabilmesi gerekir.

Kriterİyi UygulamaKötü Uygulama
Independent“Kullanıcı profil fotoğrafı yükleyebilmeli”“Profil sayfasının 3. adımı tamamlanmadan bu hikâye başlayamaz”
Small“Kullanıcı e-posta ile giriş yapabilmeli”“Kullanıcı yönetim modülünün tamamı” (çok büyük, epic seviyesinde)
Testable“3 başarısız girişten sonra hesap 15 dakika kilitlenmeli”“Giriş ekranı güvenli olmalı” (ölçülemeyen, belirsiz)
Test mühendisi için altın kural: Bir hikâye “Testable” (test edilebilir) kriterini karşılamıyorsa, sprint’e alınmadan önce mutlaka Product Owner ile netleştirilmelidir. Belirsiz kabul kriterleri, sprint sonunda “bu tamamlandı mı, tamamlanmadı mı?” tartışmalarının en büyük kaynağıdır.

Sonuç ve Öneriler

Agile test süreçleri, testin ayrı bir aşama değil, geliştirme akışının doğal bir parçası olduğu bir kültür değişimini temsil eder. Scrum öngörülebilir, döngüsel bir yapı sunarken; Kanban sürekli akış gerektiren, önceliklerin sık değiştiği ortamlarda daha uygundur. Her iki çerçevede de Jira gibi araçlar, hikâyelerden hatalara kadar tüm iş kalemlerinin şeffaf şekilde izlenmesini sağlar.

Sürecin kalitesi, büyük ölçüde girdisinin kalitesine bağlıdır: iyi yazılmış kullanıcı hikâyeleri ve bu hikâyelerin INVEST kriterlerini karşılaması, test mühendisinin işini kolaylaştırır ve sprint sonunda ortaya çıkan belirsizlikleri en aza indirir.

Pratik öneri: Sprint Planning toplantısına girmeden önce her hikâyeyi INVEST kriterlerine göre hızlıca gözden geçirin. “Testable” ve “Small” kriterlerini karşılamayan bir hikâyeyi sprint’e almak yerine, Product Owner ile birlikte küçük ve net parçalara bölün.
Başa Dön →

yazilimtestmuhendisligi.com — Nihat Ük

Bu içerik eğitim amaçlı hazırlanmıştır. © 2026

Yorum bırakın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir