Yazılım, elektronik bir donanımın bir işi yapması için belirlenen kodların birleşimidir. Yazılımla ortaya çıkan ürünün, hem üretim hemde kullanım aşamalarında geliştirilmesi adına geçirdiği tüm süreçlere ‘’yazılımın yaşam döngüsü’’ adı verilir. Yazılımın geliştirilme süreçleri genellikle zamana, içeriğe ve plana dayalı olarak gerçekleştirilir. Yazılımın süreçleri her gün gelişip, değiştiği için söz konusu olan süreçler bir döngü şeklinde ilerler. Döngü içinde herhangi bir aşamayı tekrarlamak yada bir önceki aşamaya geri dönmek mümkündür.   

Temel Yazılım Aşamaları 

  1. Planlama: Döngünün ilk aşamasıdır. Yazılımı gerçekleştirebilmek için temel ihtiyaçlara odaklanır. Fizibilite etütleri bu aşamada yapılır ve proje planlaması oluşturulur. 
  2. Analiz: Bu aşamada yazılımın işlevleri ve kesin ihtiyaçlarını açıkça belirtmek oldukça önemlidir. Bunların sonucunda elde edilen analizler belirli bir formata göre belgelenir. Bu işler genellikle yazılım mühendisi, müşteri, sistem ve iş analisti, proje yöneticisi gibi kişilerin bir araya gelmesiyle yapılır. Müşteri ihtiyacının ne olduğunu bilmiyorsa ve sürekli fikir değiştiriyorsa burada etkin rol alacak kişi yazılım mühendisidir. Müşterinin ihtiyacını karşılayacak şekilde yazılım geliştirme metodolojilerini kullanmalı ve dökümanlar hazırlamalıdır. 
  3. Tasarım: İhtiyaçlar tamamlandığında sistemin tasarımına başlanır. Yazılımın tasarımı sistemin özelliklerini ve yeteneklerini ortaya çıkarmalıdır. Aynı zamanda müşterinin ihtiyaçları ve isteklerine de hitap etmelidir. İki tür yazılım tasarımı vardır: 

a) Mimari tasarım: Yazılımın genel yapısını ve etkileşimini oluşturur. Sonucunda bir belge elde edilir. 

b) Detaylı tasarım: Burada mimari tasarım belgeleri analiz edilir. 

Tasarım aşamasında genellikle en önemli adım ‘’soyutlama’’dır. Ortaya çıkan problemlerin kolay çözülebilmesi için bazı nesnelerin, olayların yada durumların görmezden gelinmesidir. Problemleri basite indirgeyerek daha önemli kısımlara odaklanmayı sağlar. Tasarımın modelleme kısmına gelecek olursak burada da iki farklı model mevcuttur. Statik model, programın değişmeyen özelliklerine odaklanırken, dinamik model programın çalışmasındaki işleyişe odaklanır. 

4. Kodlama ve Test: Müşteriye teslim edilecek yazılım ürünü bu aşamada programlanır. Belirli kodlama standartlarına göre programlama gerçekleşir. Burada diğer önemli aşama test aşamasıdır. Erken test mantığıyla analiz aşamasından itibaren testler yapılırsa iş aksama süresi ve maliyetler oldukça düşecektir.

5. Teslim ve Bakım: Tüm test aşamalarından başarıyla geçen yazılım ürünü artık teslim edilebilir durumdadır. Bu aşamada kesinlikle son kullanıcılar için bir kullanım kılavuzu oluşturulmalıdır. Teslim edildikten sonra bakım aşaması devam eder. Altyapı iyileştirici işlemler ve ürün güncelleştirme özellikleri bakıma dahildir. 

 

Bu aşamaların tümü yazılımın yaşam döngüsüdür ve aynı zamanda çekirdek süreçler olarak da bilinir. 

 

Yazılım Belirtim Yöntemleri 

Çekirdek süreçlerin fonksiyonlarını belirtmeye yarayan belirli yöntemler vardır. Bunlar;

Süreç Akışı Yöntemleri: Yazılımın oluşturulmasında ortaya çıkan süreçler arasındaki ilişkiyi ve iletişimi gösterir. Veri akış şemaları ve nesne şemaları bunlara örnek gösterilebilir.

Süreç Tanımlama Yöntemleri: Süreçlerin iç fonksiyonlarını gösterir. Algoritmalar ve programlama dilleri bunlara örnektir.

Veri Tanımlama Yöntemleri: Süreçlerde kullanılan ve çıktılar sonucunda elde edilen verilerin tanımlanmasını sağlayan yöntemlerdir. Veri tabanı tabloları bunlara örnek gösterilebilir. 

 

Sizde işiniz yada hayalinizdeki fikir için bir yazılıma ihtiyacınız varsa bize ulaşın ! [email protected]