Yazılım Geliştirme ve Testi Yaşam Döngüleri

Bu eğitimde Şelale Döngüsü (Waterfall Cycle), Yinelemeli Döngüler (Iterative Cycle - RAD & Agile) gibi Yazılım/Sistem Geliştirme Yaşam Döngüleri ayrıntılı olarak anlatılacaktır. Ve ayrıca, V-Modeli ve Yazılım Testi Yaşam Döngüsü açıklanacaktır.

Yazılım Geliştirme Döngüsünün AşamalarıGerçekleştirilen Aktivite
Gereksinim Toplama aşamasıİstenen yazılımın ayrıntıları ve spesifikasyonları hakkında müşteriden mümkün olduğunca fazla bilgi toplayın.
Tasarım aşamasıProje için Java, PHP, .net gibi uygun bir programlama dilini ve Oracle, MySQL gibi uygun bir veritabanı dilini planlayın.
Yapı aşamasıTasarım aşamasından sonra, yazılımın kodlanmasıdır.
Test aşamasıYazılımı, müşteri tarafından verilen spesifikasyonlara göre inşa edildiğini doğrulamak için test edin.
Dağıtım aşamasıUygulamayı ilgili çevreye dağıtma
Bakım aşamasıSisteminiz kullanıma hazır hale geldiğinde, kodu müşteri talebine göre daha sonra değiştirmeniz gerekebilir

Tüm bu seviyeler yazılım geliştirme yaşam döngüsünün Şelale yöntemini oluşturmaktadır. Gözlemlediğiniz gibi, testler ancak uygulama bittikten sonra başlar.

Ancak, sistemlerin karmaşık olduğu büyük bir projede çalışıyorsanız, gereksinim aşamasındaki kilit ayrıntıları kaçırmak kolaydır. Bu gibi durumlarda, tamamen yanlış bir ürün müşteriye teslim edilebilir ve projeye yeniden başlamak zorunda kalabilirsiniz. Veya gereksinimleri doğru bir şekilde not etmeyi başarıp, ancak yazılımınızın tasarımında ve mimarisinde ciddi hatalar yaparsanız, hatayı düzeltmek için tüm yazılımı yeniden tasarlamanız gerekir. 

Binlerce proje değerlendirildiğinde, gereksinim ve tasarım sırasında ortaya çıkan hataların, toplam hata sayısının yarısına yakın olduğu ortaya çıktı. 



Ayrıca, bir hatanın giderilmesinin maliyeti, geliştirme yaşam döngüsü boyunca artar. Yaşam döngüsünün başında bir hata tespit edilirse, onu düzeltmek daha ucuza mal olur. Dedikleri gibi: "Bugünün işini yarına bırakma."

Bu endişeyi gidermek için, V-Modeli geliştirildi; bu modelde, her aşamada, geliştirme yaşam döngüsündeki aşamalara karşılık gelen bir test aşaması vardır.




  • Modelin sol tarafı Yazılım Geliştirme Yaşam Döngüsü'dür.
  • Modelin sağ tarafı Yazılım Testi Yaşam Döngüsü'dür.
  • Bütün figür V'ye benziyor. Bu yüzden V-Modeli olarak adlandırılmıştır.
V-Modeli'nin yanı sıra, geliştirmenin aşamalı olarak gerçekleştirildiği yinelemeli geliştirme modelleri vardır; her aşama, yazılıma bir işlevsellik katmaktadır. Her aşama bağımsız geliştirme ve test faaliyetlerinden oluşur.

Yinelemeli yöntemi takip eden geliştirme yaşam döngülerinin iyi örnekleri Hızlı Uygulama Geliştirme, Çevik Geliştirme'dir.

Anahtar Terimler: 

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

Geliştiriciler tarafından yüksek kaliteli yazılım tasarlamak ve geliştirmek için yürütülen faaliyetler dizisi.

"Geliştirme" terimini kullanmasına rağmen, sadece geliştiriciler tarafından yapılan görevleri kodlamakla kalmayıp, aynı zamanda test uzmanları ve paydaşların katkıda bulunduğu görevleri de içermektedir.

Bu döngüde test senaryoları oluşturulur.

  • Yazılım Testi Yaşam Döngüsü

Test uzmanları tarafından metodolojik olarak yazılım ürününüzü test etmek için yürütülen etkinlikler dizisinden oluşur. 

Her ne kadar "test" terimini kullansa da, sadece test uzmanlarını içermez, bazı durumlarda geliştiricileri dahil etmeleri gerekir. 

Bu döngüde test senaryoları koşulur.

  • Şelale Modeli

Şelale modeli, yazılım geliştirme faaliyetinin farklı aşamalara bölünmüş ardışık bir modelidir. Her aşama, yazılım geliştirme yaşam döngüsü sırasında özel etkinlik gerçekleştirmek üzere tasarlanmıştır. Şelale modelinde test aşaması, ancak sistemin devreye alınmasından sonra başlar. 

Test, yazılım geliştirme yaşam döngüsü içinde yapılır.

  • V-Modeli

V-modeli, şelale modelinin bir uzantısıdır. Şelale modelinin aksine, V-Modeli'nde, her bir yazılım geliştirme aşaması için karşılık gelen bir test aşaması vardır. V-Modeli'nde test, yazılım geliştirme yaşam döngüsü aşamasına paralel olarak yapılır.

Test, Yazılım Geliştirme Yaşam Döngüsü'nün bir alt projesi olarak yapılır. 

Sonuç

Çok sayıda geliştirme yaşam döngüsü modeli vardır. Bir proje için seçilen geliştirme modeli, o projenin amaç ve hedeflerine bağlıdır.
  • Test, bağımsız bir faaliyet değildir ve proje için seçilen geliştirme modeline uyum sağlamalıdır.
  • Herhangi bir modelde, testler her seviyede; yani, gereksinimlerden bakıma kadar yapılmalıdır.
~~~~~~~~~~O~~~~~~~~~~

Referanslar
Turkish Testing Board
Guru99

Yorumlar

Bu blogdaki popüler yayınlar

YAZILIM TESTİ KARİYER REHBERİ

Testin 7 Temel İlkesi