Proje Geliştirme Süreçleri – Waterfall

Merhaba arkadaşlar
Yazılım geliştirmede çok sayıda farklı model ve süreçler mecvuttur. Bu yazımda sizlere yazılım dünyasında diğer modellere de örnek olan “Waterfall Model”inden bahsetmek istiyorum .Bu model bir yazılımın geliştirme sürecini Plan, Design, Built, Test ve Deploy aşamaları olarak ele alır. Bu aşamaların her biri birbirini bekleyen ve etkileyen  süreçlerdir.
Plan (Analiz)
Bir problem çözümü olarak nitelendirilen yazılımın ne yapacağını ve nasıl yapacağını belirlediğimiz yani problemi tanımladığımız aşama analiz aşamasıdır. Yazılan kod isteneni doğru bir şekilde yerine getirebiliyorsa başarılı bir yazılım olarak nitelendirilebilir bu sebeptendir ki  öncelikle yazılımdan ne istendiğinin doğru bir biçimde anlatılması ve yorumlanması gerekir. Analiz aşaması personel, donanım ve sistem gereksinimlerinin belirlenmesi, sistemin fizibilite çalışmasının yapılması, kullanıcıların gereksinimlerinin analizi, sistemin ne yapıp ne yapmayacağının kısıtlamalar göz önüne alınarak belirlenmesi, bu bilginin kullanıcılar tarafından doğrulanması ve proje planı oluşturulması adımlarından oluşur.

Design (Tasarım)
Yazılımın analizini yaptık ihtiyaçlarını belirledik artık bilgi sahibiyiz ne nasıl olur az çok biliyoruz bundan sonra ki aşamada neler yapacağiz peki ? Analizin sonucunda belirlenen ihtiyaçlara yanıt verecek yazılımın temel yapısının oluşturulduğu aşamadır. Yazılım tasarımı, bir bileşen veya sistemin nasıl gerçekleştirileceğini belirlemek için kullanılan teknikler, stratejiler, gösterimler ve desenlerle ilgilidir. Bu aşama yazılım bileşenleri arasındaki ara yüzler, mimari tasarım, veri tasarımı, kullanıcı ara yüzü tasarımı, tasarım araçları ve tasarımın değerlendirilmesi alt süreçlerini de kapsamaktadır. Tasarım aşaması, yazılımın hem kullanıcı ara yüzünü hem de programın omurgasını ortaya koymaktadır. Yapılacak tasarım, yazılımın işlevsel gereksinimlere uygun olmasının yanı sıra kaynaklar, performans ve güvenlik gibi kavramları da göz önüne alınarak gerçekleştirilmelidir. Kısaca tasarım kısmında yazılım içersinde karşılaşılabilecek tüm herşey göz önüne alınarak kodlama için start verilmeye uygun ortam hazırlanır.
Build (Kodlama)
Şimdiki kısım bizim en sevdiğimiz kısım Kodlama 😀 Bu aşama, tasarım sürecinde ortaya konan veriler doğrultusunda yazılımın gerçekleştirilmesi yani kodların yazılması aşamasıdır. Bu süreç programlama çalışmalarının yanı sıra yazılımın geliştirilmesi ve kullanıcıya ulaştırılması sürecindeki bütün çalışmaları kapsar. Tasarım sonucu üretilen süreç ve veri tabanının fiziksel yapısını içeren fiziksel modelin bilgisayar ortamında çalışan yazılım biçimine dönüştürülmesi çalışması olarak da nitelendirilebilir. Yazılım geliştirme ortamı, programlama dili, veri tabanı yönetim sistemi, yazılım geliştirme araçları seçimi kodlama aşamasında gerçekleştirilir.
Test
Yazılımı yazdık bitirdik yada sadece bitirdiğimizi sanıyoruz 😀 şimdi sıra geldi Test aşamasına, yazılım kodlanması sürecinin ardından gerçekleştirilen sınama ve doğrulama aşamasıdır. Elde edilen uygulama yazılımının hem belirlenen gereksinimleri sağlayıp sağlamadığı hem de gerçekleştirimin beklentilere uygun olup olmadığını kontrol etmek için statik ve dinamik sınama tekniklerinden yararlanır. Statik teknikler, yazılımın tüm yaşam döngüsü boyunca elde edilen gösterimlerin analizi ve kontrolüyle ilgilenirken, dinamik teknikler sadece gerçekleştirilmiş sistemi içerir. Yazılım üretiminde ilk testler genelde geliştirme sürecinde programcı tarafından yapılır. Bununla birlikte, asıl hata ayıklama ve geribildirim hizmeti test ekipleri tarafından yapılır. Testler ve geribildirim müşteri yazılımı kullandığı sürece devam eder. Test sürecinde en faydalı geribildirimler son kullanıcı test gruplarından gelir.
Deploy
Yazılımımız yapılan analiz doğrultusunda beklendiği gibi çalışıyor ve testlerinden de başarılı şekilde geçti sıra geldi artık müşterimizin kullanımına açmaya. Bu aşama tüm gereksinimler tamamlanmış ve müşterimiz memnun şekilde projesini teslim etme aşamasıdır. Bu aşamadan sonra belki bakım aşamasıda bu sürece dahil edilebilir.

Aşağıdaki resimde waterfall yönteminin işleyişini görebiliriz.

waterfall

Umarım Yararlı Olur
Bilgiyle Kalın
M.Zeki Osmancık

Leave a Reply

Please type the characters of this captcha image in the input box

Please type the characters of this captcha image in the input box