Şelale Metodolojisi ve RUP
Günümüzde yazılım endüstrisinde kullanılan birçok farklı yazılım geliştirme metodolojisi vardır. Şelale geliştirme yöntemi en erken yazılım geliştirme yöntemlerinden biridir. Şelale yazılım geliştirme metodolojisi, her bir fazın tam olarak tamamlandığı ve sabit bir sırayla takip edildiği sıralı bir modeldir. RUP (Rasyonel Birleştirilmiş Süreç), yinelemeli yazılım geliştirme yöntemlerinin uyarlanabilir bir süreç çerçevesidir. RUP, Şelale gelişiminin sertlik gibi çeşitli eleştirilerini ele alıyor.
Şelale Metodolojisi Nedir?
Şelale metodolojisi en eski yazılım geliştirme modellerinden biridir. Adından da anlaşılacağı gibi, ilerlemenin bir şelaleye benzer şekilde yukarıdan aşağıya birkaç aşamadan geçtiği sıralı bir süreçtir. Şelale modelinin aşamaları gereksinim analizi, tasarım, geliştirme, test etme ve uygulamadır. İş Analistleri (veya küçük bir kuruluşsa programlayanlar) projenin müşterisinden sistem ve iş gereksinimlerini alarak analiz aşamasını yürütür. Ardından, yazılım mimarları (veya kıdemli yazılım geliştiricileri), önerilen sistemin yapısını ve bileşenlerini gösteren tasarım belgeleri hazırlar. Daha sonra küçük geliştiriciler tasarım belgelerini kullanarak kodlamayı yaparlar. Geliştirme tamamlandıktan sonra ürün test ve doğrulama işlemleri için test ekibine teslim edilir. Son olarak, ürün müşteri sitesine uygulanır (veya entegre edilir) ve proje imzalanır. Burada dikkat edilmesi gereken önemli nokta, bir sonraki aşamaya geçmeden önce her bir aşamanın tamamen tamamlanmış olmasıdır. Bu model, donanım odaklı geliştirme yönteminin (imalat ve inşaat endüstrilerinde bulunur) basitçe uyarlanmasının doğrudan bir sonucuydu, bir zamanlar yazılım geliştirme için resmi bir model yoktu.
RUP nedir?
RUP, yinelemeli yazılım geliştirme metodolojileri ailesine aittir. 2003 yılında Rational Software Corporation (IBM'den) tarafından geliştirilmiştir. Aslında, kalkınma organizasyonu tarafından ihtiyaçlarına göre özelleştirilebilen, uyarlanabilir bir süreç çerçevesidir (tek bir somut süreç değildir). Şelaleye biraz benzer şekilde, başlangıç, detaylandırma, inşaat ve geçiş gibi sabit fazlara sahiptir. Ancak şelalenin aksine, RUP yinelemeli bir süreçtir. RUP tarafından yakalanan üç strateji, geliştirme, süreci hızlandırmak için otomatik araçlar ve süreç ve araçların daha hızlı benimsenmesine yardımcı olan hizmetler için özelleştirilebilir bir süreçtir. Bu stratejiler stajyer, yazılım mühendisliğinin en iyi altı uygulamasını (yinelemeli geliştirme, gereksinimleri yönetme, bileşen tabanlı mimari, görsel yazılım modelleri, sürekli doğrulama ve değişikliklerin yönetimi) yakalar..
Şelale Metodolojisi ve RUP arasındaki fark nedir?
Şelale metodolojisi ve RUP sabit fazlar tanımlamış olsa da, bu iki model arasında önemli farklılıklar vardır. Ana dezavantajı Şelale metodolojisi, bir sonraki aşamaya geçmeden önce mevcut fazın tamamlandığı öngörülen adımlarla açıkça sıralı bir süreç olsa da, RUP tekrarlı bir süreçtir. Şelale yönteminden farklı olarak, RUP ürünü hissedarların geri bildirimlerine dayanarak birkaç aşamada geliştirir. Her bir RUP yinelemesi yürütülebilir bir sürüm ürettiğinden, müşteriler Waterfall'dan çok daha önce faydalar elde ederler. Son olarak, Şelale metodolojisi kuralcı bir somut süreçtir, RUP ise yazılım süreçlerinin uyarlanabilir bir çerçevesidir..