12. SınıfBilişim Teknolojileri

Yazılım Geliştirme Yaşam Döngüsü ve Test

Bilişim Teknolojileri · 12. Sınıf · Proje ve Süreç Yönetimi

Konu Anlatımı

Yazılım Geliştirme Yaşam Döngüsü ve Test

Yazılım geliştirme yaşam döngüsü, bir yazılımın fikirden kullanıma ve bakıma kadar geçtiği aşamaların tümüdür. Bu aşamaların sırası, projenin büyüklüğüne ve kullanılan yönteme göre değişebilir; ancak analiz, tasarım, kodlama, test, yayın ve bakım başlıkları her yöntemde bulunur. Yazılımın kalitesi, bu aşamalardan hangisinin atlandığıyla doğrudan ilişkilidir.

Analiz ve Tasarım

Analiz aşamasında kullanıcının ne istediği anlaşılır ve gereksinimler yazılı hâle getirilir. Gereksinimler; işlevsel olmayan isteklerle birlikte kullanım senaryosu, veri sözlüğü ve akış şemaları gibi belgelerle desteklenir. Tasarım aşamasında bu gereksinimler; veri tabanı şemasına, arayüz tasarımına ve modül yapısına dönüştürülür. İyi bir tasarım, sonradan değişikliği en az maliyetle yapmayı sağlar.

Kodlama ve Kod İnceleme

Kodlama aşamasında tasarım dile dönüştürülür. Yazılan kod; okunabilir, anlaşılır ve gereksiz karmaşıklıktan arındırılmış olmalıdır. Kod inceleme yöntemi, kodun ayrı bir kişi tarafından okunarak hataların yazılı aşamadan yakalanmasını sağlar. Küçük ekiplerde bile eşleşmeli inceleme yararlıdır; çünkü inceleyen kişi farklı bir bakış açısıyla hatayı görür.

Çevik ve Geleneksel Yöntem

Geleneksel şel model, tüm gereksinimlerin baştan tanımlandığı ve aşamaların sırayla yürütüldüğü yöntemdir; büyük ve değişmeyen gereksinimlere uygundur. Çevik yöntem ise kısa döngülerle çalışır, müşteri geri bildirimini sık alır ve değişikliğe esnek davranır. İki yöntem arasındaki fark, projenin belirsizlik düzeyi ve geri bildirim sıklığıyla ilgilidir.

Test Türleri

Birim testinde geliştirici tek bir modülü kendi yazdığı kodla dener. Entegrasyon testinde modüllerin birbirine veri aktarımı sınanır. Sistem testinde tüm uygulama gereksinimlere karşı sınanır. Kabul testinde kullanıcı, sistemi gerçek senaryolarla kullanarak uygunluğa karar verir. Performans testi yanıt süresini ve yükü, güvenlik testi ise yetkisiz erişim senaryolarını ölçer.

Hata Takibi ve Metrikler

Her hata için kusur kaydı açılır; kayıtta hatanın yeniden üretilme adımları, beklenen sonuç ile gerçekleşen sonuç ve etkisi bulunur. Kusur kalan oranı = açık kusur / (kapalı kusur + açık kusur) × 100 bağıntısıyla izlenir. Bu oran projenin olgunluğunu gösterir; kabul aşamasına girmeden düşürülmesi gerekir.

Yayın ve Bakım

Yayın aşamasında sürüm numarası verilir ve değişiklik kayıtları yazılır. Bakım aşamasında ortaya çıkan hatalar giderilir, kullanıcı talepleri değerlendirilir ve performans ölçümleri yapılır. Bakım maliyeti, geliştirme maliyetinin önemli bir bölümünü oluşturduğu için yazılımın baştan ölçeklenebilir ve belgelenmiş tasarlanması gerekir.

Sürüm ve Yapılandırma

Sürüm numaralarında değişiklik derecesine göre artış yapılır ve her sürüm için geri dönüş noktası oluşturulur. Yapılandırma ayarları koddan ayrı tutulur; böylece aynı yazılım farklı kurumlarda farklı değerlerle çalıştırılabilir. Bu ayrım, hem test hem de bakım süreçlerini hızlandırır.

Ne Öğreneceğiz

Analiz, tasarım, kodlama, test, yayın ve bakım aşamalarından oluşan yazılım geliştirme sürecini, çevik ve geleneksel yöntem farklarını, test türleri ile hata takibini kapsar. Bu konuda ögrenme çıktıları:

Ön Bilgi

Bu konuya başlamadan önce temel kavram ve ön koşulları kavramanız yardımcı olacaktır. Konunun çerçevesinde şu kavramlar dikkat ister:

Basit Örnek ve Günlük Yaşam

Günlük yaşamda ve mesleki bağlamda bir uygulama:

Soru: Bir uygulamada 40 modülden 34'üne test senaryosu yazıldı.

  1. Test edilen modül sayısı belirlenir.
  2. Toplam modül sayısıyla karşılaştırılır.
  3. Oran hesaplanıp eksik modüller listelenir.

Sonuç/cevap: Test kapsamı 34 / 40 = %85 olarak bulunur; kalan 6 modül için senaryo yazılmalıdır.

İleri Örnek

Daha ileri bir uygulama:

Soru: Kullanıcı, rapor ekranında filtre uygulandığında liste boş göründüğünü bildirmiştir.

  1. Hatanın yeniden üretilme adımları kayda yazılır.
  2. Beklenen sonuç ile gerçekleşen sonuç karşılaştırılır.
  3. Öncelik ve etki bilgisi belirtilerek kusur kaydı açılır.

Sonuç/cevap: Yeniden üretilebilir, beklenen ve gerçek sonucu içeren kayıt, hatanın düzeltilmesi için gereklidir.

Adım Adım Çözülmüş Örnek

Test Kapsamının Hesaplanması konusunun adımları:

  1. Test edilen modül sayısı belirlenir.
  2. Toplam modül sayısıyla karşılaştırılır.
  3. Oran hesaplanıp eksik modüller listelenir.

Karşılaştırma Tablosu

KavramAçıklama
Gereksinimler yazılı hâle gelmeden kodlaGereksinimler yazılı hâle gelmeden kodlama aşamasına geçilmemelidir.
Kod inceleme, hataları yazılı aşamadan yKod inceleme, hataları yazılı aşamadan yakalamanın en etkili yollarından biridir.
Birim, entegrasyon, sistem ve kabul testBirim, entegrasyon, sistem ve kabul testleri farklı amaçlara hizmet eder.
Her hata kaydında yeniden üretme adımlarHer hata kaydında yeniden üretme adımları bulunmalıdır; aksi hâlde hata düzeltilemez.
Sürüm numarası ve değişiklik kaydı olmadSürüm numarası ve değişiklik kaydı olmadan bakım yapılamaz.

Sık Yapılan Hatalar

Testi en sonda tek seferde yapmak: Test geciktirildiğinde hata maliyeti hızla artar; testin her sürümde tekrarlanması gerekir.

Hata kaydına yalnızca başlık yazmak: Yeniden üretim adımları olmayan bir kayıt düzeltilemez ve geliştiriciye boşa zaman kaybettirir.

Kusur kalan oranını tek başına kalite ölçütü saymak: Oran tek başına yeterli değildir; hangi modüllere dağıldığı da incelenmelidir.

Sürüm numarasını değiştirmemek: Sürüm bilgisi olmayan bir yayın, hangi düzeltmenin yapıldığının izini bırakmaz.

Kabul testini kullanıcıya bırakmadan bitirmek: Kullanıcı beklentisiyle yazılı gereksinim arasındaki fark ancak kabul aşamasında görünür.

Özet

Yazılım geliştirme yaşam döngüsü analiz, tasarım, kodlama, test, yayın ve bakım aşamalarından oluşur. Gereksinimler yazılı hâle getirilmeden kodlamaya geçilmez; kod inceleme hataları erken yakalar. Geleneksel şel model büyük ve sabit gereksinimlere, çevik yöntem ise belirsiz gereksinimlere uygundur. Test kapsamı = test edilen modül / toplam modül × 100 bağıntısıyla ölçülür; 40 modülden 34'ü test edildiyse kapsam = %85 olur. Kusur yoğunluğu bin satır başına düşen kusur sayısıdır. Kusur kalan oranı açık kusurların toplama oranını gösterir; 120 kusurun 18'i açıksa oran = %15 olur. Test verimliliği testte yakalanan kusurun toplama oranıdır; 240 kusurun 180'i testte bulunmuşsa verimlilik = %75 olarak hesaplanır.

Kendini Dene

Soru: Küçük bir kütüphane uygulaması için yazılım geliştirme yaşam döngüsü aşamalarını sıralayın ve her aşamada üretilecek çıktıyı yazınız.

Örnek cevap: Puanlama anahtarı: Altı ana aşamanın doğru sırayla yazılması 4 puan; analiz aşamasında gereksinim belgesi ve kullanım senaryosunun belirtilmesi 3 puan; tasarımda veri şeması ve arayüz tasarımının açıklanması 3 puan; test aşamasında test senaryosu ve kabul ölçütünün yazılması 3 puan; yayın ve bakım aşamalarının çıktılarının belirtilmesi 2 puan. Toplam 15 puan.

Yazılım Geliştirme Yaşam Döngüsü ve Test — Sık Sorulan Sorular

Yazılım Geliştirme Yaşam Döngüsü ve Test nedir?

Yazılım geliştirme yaşam döngüsü, bir yazılımın fikirden kullanıma ve bakıma kadar geçtiği aşamaların tümüdür. Bu aşamaların sırası, projenin büyüklüğüne ve kullanılan yönteme göre değişebilir; ancak analiz, tasarım, kodlama, test, yayın ve bakım başlıkları her yöntemde bulunur. Yazılımın kalitesi, bu aşamalardan…

Yazılım Geliştirme Yaşam Döngüsü ve Test konusunda ne öğrenilir?

Gereksinimler yazılı hâle gelmeden kodlama aşamasına geçilmemelidir.

Yazılım Geliştirme Yaşam Döngüsü ve Test konusunda sık yapılan hatalar nelerdir?

Testi en sonda tek seferde yapmak: Test geciktirildiğinde hata maliyeti hızla artar; testin her sürümde tekrarlanması gerekir. Hata kaydına yalnızca başlık yazmak: Yeniden üretim adımları olmayan bir kayıt düzeltilemez ve geliştiriciye boşa zaman kaybettirir.

Yazılım Geliştirme Yaşam Döngüsü ve Test için hangi formüller ve kurallar kullanılır?

Test Kapsamı (%) = Test Edilen Modül Sayısı / Toplam Modül Sayısı × 100. · Kusur Yoğunluğu = Bulunan Kusur / Toplam Kod Satırı × 1000. · Kusur Kalan Oranı (%) = Açık Kusur / Toplam Kusur × 100. · Hata Düzeltme Oranı (%) = Giderilen Kusur / Toplam Kusur × 100.

Yazılım Geliştirme Yaşam Döngüsü ve Test kazanımları nelerdir?

Yazılım geliştirme yaşam döngüsü aşamalarını sıralar ve her aşamanın çıktısını belirler. Çevik yöntem ile geleneksel yöntemin farklarını karşılaştırır ve uygun yöntemi seçer. Test kapsamı, hata yoğunluğu ve kusur kalan oranı gibi ölçütleri hesaplar.

Yazılım Geliştirme Yaşam Döngüsü ve Test Kazanımları

Örnek Sorular ve Çözümleri

Örnek Soru 1 kolay

Yazılım geliştirme yaşam döngüsünde kodlamadan önce hangi aşama tamamlanmalıdır?

  1. A) Gereksinim analizi
  2. B) Yayın ve dağıtım
  3. C) Bakım ve destek
  4. D) Kullanıcı eğitimi
Cevabı göster

Doğru cevap: A) Gereksinim analizi

Gereksinim analizi kavramı Yazılım Geliştirme Yaşam Döngüsü ve Test konusunun temel bir kavramıdır. Detaylar konu anlatımında verilmiştir.

Örnek Soru 2 orta

Kod inceleme yönteminin temel amacı nedir?

  1. A) Yazılan kodu başka bir dile çevirmek
  2. B) Hataları yazılı aşamadan yakalamak ve kod kalitesini artırmak
  3. C) Kodu mümkün olduğunca uzatmak
  4. D) Yazılımın çalışma hızını ölçmek
Cevabı göster

Doğru cevap: B) Hataları yazılı aşamadan yakalamak ve kod kalitesini artırmak

Kod incelemede ayrı bir kişi kodu okur ve hataları yazılı aşamada belirtir. Bu, hataların sonradan düzeltilmesinden çok daha ucuzdur.

Örnek Soru 3 zor

Test aşamasında 240 kusurdan 180'i yakalanmışsa test verimliliği yüzde kaçtır?

  1. A) %60
  2. B) %90
  3. C) %82
  4. D) %75
Cevabı göster

Doğru cevap: D) %75

Testte bulunan kusur sayısı, toplam kusur sayısına bölünür ve yüzdeye çevrilir. Bu bölme test verimliliğini = %75 olarak verir.

Sıradaki adım

Konu anlatımları hesapsız okunur. Quiz, slayt ve deneme için hesap gerekir.

DersTeders ile devam et

Bilişim Teknolojileri için çalışma yolu

  1. OkuKonu anlatımını bu sayfada bitir.
  2. Soru çözÖrnekleri çöz, cevabı açıklamayla karşılaştır.
  3. Quiz ile pekiştirHesapla kendini ölç.

Slaytla adım adım öğren · Tüm dersler · Ana sayfa

Hesap açTüm dersleri keşfet

Konu anlatımları hesapsız okunur; quiz, slayt ve deneme için hesap gerekir.

Bu sayfa Yazılım Geliştirme Yaşam Döngüsü ve Test konusunun anlatımını, kazanımlarını ve örnek sorularını içerir. Konuyla ilgili tüm sorular için testi çöz, diğer konular için DersTeders ana sayfasına geçebilirsin.

Bu konunun öğretmen materyallerini (ders planı, çalışma kâğıdı, çözümlü soru bankası, rubrik) yazdırabilirsin: Yazıcı çıktısı modülünü aç