Yazılım Geliştirme Yaşam Döngüsünün (SDLC) 7 Aşaması/Aşaması

Yayınlanan: 2019-07-15

SDLC, yazılım geliştirmek için kullanılan bir süreçtir. Yaşam döngüsü, planlama aşamalarından işletme ve bakıma kadar yazılımın geliştirilmesini takip eder.

Yazılım geliştirme yaşam döngüsü (SDLC), yazılımın tasarlanması, oluşturulması ve teslim edilmesi için tamamlanması gereken görevleri tanımlar. Bu görevler, geliştiricilerin içinde çalışması için bir yapı oluşturur.

SDLC'de, tümü kendi benzersiz etkinliklerine ve görev tamamlama listesine sahip 7 aşama veya aşama vardır. Bu 7 aşama, yazılımın tamamlanıp teslim edilmesi için yapılması gerekenlerin bir yol haritasını sunar.

Bugün SDLC'nin 7 aşaması hakkında bilgi edinmek için okumaya devam edin!

İçindekiler tablosu gösterisi
  • 1. Planlama
  • 2. Sistem Analizi ve Gereksinimler
  • 3. Sistem Tasarımı
  • 4. Geliştirme
  • 5. Entegrasyon ve Test
  • 6. Uygulama
  • 7. İşletme ve Bakım
    • SDLC Modelleri
  • Çözüm

1. Planlama

Çalışma-Ekip-İletişim-Ofis-Ticaret-Toplantı-Plan

Bu, SDLC'nin ilk aşamasıdır. Bu aşama, iş operasyonlarını iyileştirmek için yeni bir sisteme ihtiyaç olup olmadığının belirlendiği aşamadır. İhtiyaç belirlendikten (veya sorun tanımlandıktan sonra) çözümlerin bulunması gerekir.

Bilgi ve kaynaklar, bu aşamada yeni bir sisteme olan ihtiyacı desteklemek veya halihazırda var olan bir sistemi iyileştirmek için toplanır. İhtiyacı destekleyen bilgiler doğrultusunda çözümler geliştirilir ve onaya sunulur.

Bu aşamada, ihtiyacı karşılayacak en güncel bilgilere ve kaynaklara sahip olmak için mevcut web geliştirme endüstrisi trendlerini tazelemek iyi bir fikirdir.

 Size önerilenler: Yapay Zeka, Modern Web Uygulamalarının Gelişimini Nasıl Etkiliyor?

2. Sistem Analizi ve Gereksinimler

web-tasarım-geliştirme-planlama

Bu, şirketin genel stratejisine ve hedeflerine en uygun çözüm bulunana kadar önerilen çözümlerin incelendiği yerdir. Bu aşamada, planlama hala yürütülür, ancak çok daha derin bir analitik düzeyde.

Problem ve ilişkili sistemler, proje veya çözüm için fonksiyonel gereksinimleri belirlemek üzere analiz edilir. Bunlar, sorunu çözmek ve kurumsal stratejiyle uyumlu hale getirmek için yeni sistemin karşılaması gereken gereksinimler olacaktır.

Burası bir zaman çizelgesinin seçildiği, bireysel parçalardan kimin sorumlu olduğunun belirlendiği ve işletmenin ihtiyaçlarının nasıl karşılanabileceği yerdir.

3. Sistem Tasarımı

user-interface-android-play-store-google-apps-games-gui-design

Göründüğü gibi burası yeni sistemin veya yazılımın tasarlanacağı yer. Parametreler, kullanılacak teknolojiler, proje kısıtlamaları, zaman ve bütçe ile birlikte paydaşlarla tartışılacaktır. İnceleme sonrasında, ikinci aşamada belirlenen gereksinimleri karşılayacak en iyi tasarım yaklaşımı seçilir.

Seçilen tasarım yaklaşımının, geliştirilmesi gereken tüm bileşenlerin, kullanıcı akışlarının ve veritabanı iletişimlerinin ve üçüncü taraf hizmetlerle iletişimin bir tanımını sağlaması gerekecektir.

4. Geliştirme

Yazılım Geliştirme Yaşam Döngüsü - SDLC - web sitesi-tasarım-geliştirme-kodlama-programlama

Geliştirme aşaması, yeni sistem veya yazılım üzerinde gerçek gerçek çalışmanın başladığı yerdir. Tipik olarak, kaynak kodu yazmaya başlamak için bir programcı, ağ mühendisi veya veritabanı geliştiricisi veya herhangi bir kombinasyon getirilir.

Bu aşamada bir akış şemasının oluşturulması önemlidir. Bu akış şeması, sistem süreçlerinin uygun şekilde organize edilmesini sağlamak için kullanılır.

Bu aşama genellikle kullanılacak gerçek yazılımın geliştirilmesiyle ilgili olsa da, prototip modelde bu, prototipin geliştirildiği aşamadır. Prototip daha sonra, müşterinin ihtiyaçlarını karşılayana ve müşteri tatmin olana kadar sürekli olarak geliştirilir ve test edilir. Bundan sonra, prototip son bir kez bu aşamaya geri döner.

Geliştirme aşamasına son yolculuğunda geliştirilerek kullanılacak asıl yazılım veya sisteme dönüştürülür.

5. Entegrasyon ve Test

Geliştirici-Çalışma-Ofis-Bilgisayar-Mobil-Tartışma-Ekibi

Bu aşamada deneyimli test uzmanları, yazılımı veya sistemi gereksinimlere karşı test etmeye başlayacaktır. Amaç, sistemdeki herhangi bir kusuru ve ikinci aşamadan itibaren belgelenen gereksinimlere uygun davranıp davranmadığını belirlemektir.

Bu aşama, yazılımı teslim etmek için çok önemlidir. Test aşamasından geliştirme aşamasına gidip gelmek yaygın bir durumdur. Bunun nedeni, yazılım veya sistem içinde kusurlar veya sorunlar bulunduğunda not edilmesi ve çözüm için geliştirme aşamasına geri gönderilmesidir.

Test uzmanlarının sistemleri ve yazılımları test etmesinin birkaç farklı yolu vardır. Bir test betiği veya keşif testi kullanabilirler.

Bir test komut dosyası kullanmak, sistemin gereksinimlere uygun olduğundan emin olmak için önceden belirlenmiş bir dizi testi otomatik olarak çalıştırır. Keşif testini kullanmak daha çok deneyime dayalıdır. Testi yapan kişi, yeni sistemi veya yazılımı çalıştırarak kullanımlarını, özelliklerini ve yeteneklerini keşfederek yeni sistemi test edecektir. Testi yapan kişi, yalnızca deneyime dayalı olarak sistemde gezinecek ve gereksinimleri karşılayıp karşılamadığını değerlendirecektir.

Tüm gereksinimler sistem tarafından karşılandıktan sonra, test uzmanı sistemi veya yazılımı bir sonraki aşamaya geçirecektir. Sistemdeki sorunların kapsamına ve boyutuna bağlı olarak, bunun gerçekleşmesi birkaç günden birkaç aya kadar sürebilir.

 İlginizi çekebilir: 2019'da Odaklanacak En İyi 7 Web Geliştirme Trendi.

6. Uygulama

dizüstü-masa-iş-ofis-seo-pazarlama-tasarım-geliştirme

Yine, göründüğü gibi, bu, yeni sistemin normal iş operasyonlarına uygulandığı aşamadır. Yeni yazılım veya sistem kurulur ve daha fazla kod yazılmasının yanı sıra herhangi bir dosya veya verinin yeni sisteme taşınması gerekir.

Kurulum sırasında iş operasyonlarını kesintiye uğratma riski nedeniyle, bu aşama genellikle yoğun olmayan saatlerde gerçekleşir. Bunun nedeni, entegrasyon veya aktarımla ilgili herhangi bir hata olasılığıdır. Amaç bu hataları en aza indirmek olsa da, bunlar meydana gelebilir ve yoğun saatlerde meydana geldiklerinde şirket üretkenlik ve gelir kaybına uğrayabilir.

Son kullanıcılar ve analistler, bitmiş sistemin ve şirkete getireceği değişikliklerin ilk görüntülerini görüyor olmalıdır.

7. İşletme ve Bakım

cmms - araçlar-bakım-destek-hizmeti

SDLC'nin son aşaması, düzenli bakım ve zorunlu güncellemeleri yayınlamayı içerir. Burada son kullanıcılar, sistemi gelecekteki ihtiyaçlara daha iyi uyacak şekilde ince ayar yapma olanağına sahiptir.

BT, yeni güncellemeleri uzaktan yükleyebilecek ve aynı zamanda sistemin şirketin ihtiyaçlarını sürekli olarak karşılayacak şekilde özelleştirilmesine yardımcı olacaktır. BT ayrıca gelecekte ortaya çıkabilecek hataları veya sorunları düzeltmekten de sorumludur. Hiçbir sistem mükemmel değildir ve devam eden bakım, herhangi bir yeni sistemin veya yazılım projesinin gerekli bir parçasıdır.

SDLC Modelleri

SDLC, model adı verilen çeşitli şekillerde kullanılabilir. Bu modeller birbirinden farklılık gösterse de kendilerine göre avantaj ve dezavantajları olsa da hepsi aynı adımları aynı sırayla kullanıyor. İşte SDLC'yi takip ederken kullanılacak en popüler modellerden ikisi.

Çevik Model

Yazılım Geliştirme Yaşam Döngüsü - SDLC - 1. Nokta Çevik model ( wiki ), geliştirme sırasında gereksinimlerden çok esnekliğe odaklanır. Çevik modeli kullanmak, projeyi daha küçük artımlı bölümlere ayırmayı gerektirir. Her segment, bir sonraki segment üzerinde çalışma başlamadan önce son kullanıcı veya müşteri tarafından geliştirilir, test edilir ve değerlendirilir.

Etkili bir şekilde her segment, her adımda müşteri girdisi ve geri bildirimi ile bir önceki segmentin işlevselliğini ve özelliklerini geliştirir. Üzerinde çalışılacak her segment için zaman çerçevesi, sprint olarak bilinir.

Sprintler yaklaşık 2 ila 4 hafta sürebilir. Sprintin süresi ne olursa olsun, sprintin sonunda mal sahibi ürünü doğrular ve ürünü müşteriye teslim edip etmeme konusunda onay verir.

Müşteriler de aynı şekilde şirketin geliştirme ekibine geri iletmesi için yorum ve eleştiri bırakacak. Müşteri geri bildirimleri ve önerileri, yolun her adımında toplanır. Ancak, bir müşteri sistemin ne yapmasını istediği konusunda net değilse, model ve sistem başarısız olabilir.

Prototip Modeli

Yazılım Geliştirme Yaşam Döngüsü - SDLC - 2. Nokta Bu model, gerçek yazılım veya sistemden önce en az bir veya birden fazla prototip geliştirmeyi içerir. Bu prototipler, tam yazılım veya hizmetin sağladığı hizmetlerin tam kullanılabilirliğini sunmaz. Ancak, müşterilerin ihtiyaçlarını belirlemede faydalı olabilirler.

Gerçek yazılımın test aşamasında müşterilere geri bildirim için gönderilmesi yerine prototip modeli ( wiki ) ile prototip gözden geçirilir. Müşteri yine de geri bildirim sağlar ve prototip, değişiklikleri yapması için geliştirmeye geri gönderilir. Bu değişiklikler yapıldıktan sonra, inceleme için müşteriye geri gönderilir.

Bu, müşteri tatmin olana ve ihtiyaçları karşılanana kadar devam eder. Müşteri tatmin olduktan sonra prototip oluşturulur ve SDLC'nin sonraki aşamalarına gönderilir.

Bu modelin en büyük avantajlarından biri maliyet tasarrufudur. Test, gerçek yazılım yerine prototipler üzerinde yapıldığından, hatalar çok daha erken bulunur. Bu, son teslim tarihlerini ve lansman tarihlerini karşılama konusunda paradan ve zamandan tasarruf sağlayabilir. Diğer bir avantaj da, müşterilerinizin geri bildirimleriyle güncel web geliştirme endüstrisi trendlerinden haberdar olabilmenizdir.

Ancak, bu modelin dezavantajı aynı zamanda avantajlarından biridir. Müşteriler, geri bildirim sağlayarak ve kullanacakları ve ihtiyaçlarını karşılayan bir yazılım oluşturmaya yardımcı olarak sürecin erken aşamalarında yer alırlar. Ancak bu nedenle müşteri, son ürünün gereksinimlerini değiştirerek lansman ve dağıtımda gecikmelere neden olabilir.

 Şunlar da hoşunuza gidebilir: Laravel, İş Web Uygulaması Geliştirme için Mükemmel Bir Çerçeve mi?

Çözüm

Yazılım Geliştirme Yaşam Döngüsü - SDLC - sonuç

SDLC'ye uyum ve bağlılık, bir sorunu çözmek veya bir ihtiyacı karşılamak için gereken herhangi bir projenin veya yazılımın başarısını sağlamak için kritik öneme sahiptir. SDLC, yazılım geliştirmenin yaşam döngüsünü tanımlayan ve açıklayan 7 aşamadan oluşan bir dizidir.

SDLC, en dikkate değer olanı çevik ve prototip model olan birkaç modelle uygulanabilir. Her iki model de, döngünün başlarında büyük ölçüde müşteri geri bildirimlerine güvenir. Bu, şirketin müşterinin ihtiyaçlarını etkili ve zamanında karşılamasını sağlar.

SDLC'yi ve dağıtım için bir modeli benimsemek, şirketinizin sorunlarını çözmesine, şirketin ve müşterilerin ihtiyaçlarını belirlemesine ve bu ihtiyaçları karşılamak için yeni sistemler ve yazılımlar dağıtmasına yardımcı olmak için uzun bir yol kat edecektir.