Yazılım Geliştirme

Yazılım geliştirme, yazılımın ardışık safhalar yoluyla düzenli bir şekilde geliştirilmesi işlemidir.
Bu süreç sadece kodun asıl yazarlığını değil, aynı zamanda gereksinimlerin ve hedeflerin hazırlanmasını, neyin kodlanacağının tasarımı ve geliştirilenlerin amaçları sağladığının doğrulanmasını da içerir.
Yazılım Geliştirme Aşamaları;
Planlama
Analiz
Dizayn
Programlama
Testten oluşur.

Planlama Aşaması: Müşterinin ne istediğini öğrenip, ayırdığı bütçeyle belirlediği zaman dâhilinde gerçekte nelere ulaşabileceğinin belirlendiği aşamadır. Yazılımın “ne yapacağı”, bu aşamanın yazılım geliştirme sürecindeki payıdır. Bu aşamanın birde her bir yazılım geliştirme sürecinin bir proje oluşu nedeniyle planlama, bütçeleme, ekip oluşturma vb. yönü de olacaktır. Müşterinin ne istediğini öğrenip, ayırdığı bütçeyle belirlediği zaman dâhilinde gerçekte nelere ulaşabileceğinin belirlendiği aşamadır bu aşama. Yazılımın “ne yapacağı”, bu aşamanın yazılım geliştirme sürecindeki payıdır. Bu aşamanın birde her bir yazılım geliştirme sürecinin bir proje oluşu nedeniyle planlama, bütçeleme, ekip oluşturma vb. yönü de olacaktır.

Analiz Aşaması: Bu aşamanın amacı sistemin işlevlerini ve kesin gereksinimleri açıklığa kavuşturmak ve sonucunda bunları belirli bir formatta dokümante etmektir. Bu çalışma müşteri, yazılım mühendisi, sistem analisti, iş analisti, ürün yöneticisi vb. rollerin bir araya geldiği gruplar tarafından yapılabilir.

Dizayn Aşaması:Gereksinimlerin tamamlanmasıyla beraber sistem tasarım aşamasına başlanır. Yazılım ürün tasarımı, müşterinin gereksinim ve isteklerini karşılamak üzere yazılım ürününün özellikleri, yetenekleri, ve arayüzlerinin belirlenmesi etkinliğidir. İki tür tasarımdan bahsetmek mümkündür.Tasarım ve analiz aşamalarının ayrımı “Problem Ne?/Problem NasılÇözülür?” sorularının kullanımı ile ilgilidir. Gereksinimlerin belirlendiği analiz aşaması problemin ne olduğu ile ilgilidir.

Programlama Aşaması: Sistem ihitiyaçları doğrultusunda kodlama işleminin gerçekleştirildiği aşamadır.

Test: Kodlama sonrasının önemli bir aşamasıdır. Sistem ihtiyaca cevap veriyor mu? Herhangi bir güvenlik tehditi var mı? Hata yapma oranını ve maaliyeti düşürecek tüm testler bu aşamada yapılır. Sistem eksikleri düzeltilir.