Yazılım geliştirme, programcıların bilgisayar programları oluşturmak için kullandıkları süreçtir. Yazılım Geliştirme Yaşam Döngüsü (SDLC) olarak da bilinen süreç, teknik özellikleri ve kullanıcı gereksinimlerini karşılayan ürünler oluşturmak için bir yöntem sağlayan birkaç aşama içerir.
SDLC, yazılım şirketlerinin bilgisayar programlarını oluşturmak ve geliştirmek için kullanabilecekleri uluslararası bir standart sağlar. Geliştirme ekiplerinin yüksek kaliteli yazılımların tasarımında, oluşturulmasında ve bakımında takip etmesi için tanımlanmış bir yapı sunar. BT yazılım geliştirme sürecinin amacı, tanımlanmış bir bütçe ve zaman çizelgesi dahilinde etkili ürünler oluşturmaktır.
Yazılım geliştirme yaşam döngüsünde aşağıdakiler dahil altı ana adım vardır:
1. Kimlik gerekiyor
İhtiyaç tespiti, sürecin bir pazar araştırması ve beyin fırtınası aşamasıdır. Bir firma yazılım geliştirmeden önce, ürünün uygulanabilirliğini belirlemek için kapsamlı bir pazar araştırması yapmalıdır. Geliştiriciler, hedef tüketicilerinin yazılımdan en iyi şekilde yararlanması ve gerekli ve yararlı bulması için yazılımın sağlaması gereken işlevleri ve hizmetleri belirlemelidir. Potansiyel ve mevcut müşterilerden gelen geri bildirimler ve anketler de dahil olmak üzere bu bilgileri almanın birkaç yolu vardır.
Şirketteki BT ekipleri ve diğer bölümler ayrıca ürünün güçlü, zayıf yönlerini ve fırsatlarını da tartışmalıdır. Yazılım geliştirme süreçleri, ancak ürünün başarısı için mutlaka her parametreyi sağlaması durumunda başlar.
2. İhtiyaç analizi
Gereksinim analizi, yazılım geliştirme yaşam döngüsünün ikinci aşamasıdır. Burada paydaşlar, hedeflerine ulaşmak için önerilen ürünün teknik ve kullanıcı gereksinimleri ve özellikleri üzerinde anlaşırlar. Bu aşama, kaliteli bir ürün sunmak için her bileşenin, kapsamın, geliştiricilerin görevlerinin ve test parametrelerinin ayrıntılı bir taslağını sağlar.
Gereksinim analizi aşaması geliştiricileri, kullanıcıları, testçileri, proje yöneticilerini ve kalite güvencesini içerir. Bu aynı zamanda programcıların şelale veya V modeli gibi yazılım geliştirme yaklaşımını seçtiği aşamadır. Ekip, bu aşamanın sonucunu, proje uygulaması sırasında ekiplerin her zaman danışabilecekleri bir Yazılım Gereksinim Belirtimi belgesine kaydeder.
3. Tasarım
Tasarım, yazılım geliştirme sürecinin üçüncü aşamasıdır. Burada mimarlar ve geliştiriciler, yazılımları gereksinimlere göre oluşturmak için ihtiyaç duydukları gelişmiş teknik özellikleri çizerler. Paydaşlar risk seviyeleri, ekip kompozisyonu, uygulanabilir teknolojiler, zaman, bütçe, proje sınırlamaları, yöntem ve mimari tasarım gibi faktörleri tartışacaklar.
Tasarım Spesifikasyon Belgesi (DSD), ürünün mimari tasarımını, bileşenlerini, iletişimini, ön uç gösterimini ve kullanıcı akışlarını belirtir. Bu adım, geliştiriciler ve test edenler için bir şablon sağlar ve bitmiş üründe kusur ve gecikme olasılığını azaltır.
4. Geliştirme ve uygulama
Bir sonraki aşama, tasarım parametrelerinin geliştirilmesi ve uygulanmasıdır. Geliştiriciler, önceki aşamalarda üzerinde anlaşmaya varılan ürün özelliklerine ve gereksinimlerine göre kod yazar. Şirket prosedürlerini ve yönergelerini izleyerek, ön uç geliştiriciler arayüzler ve arka uçlar oluştururken, veritabanı yöneticileri veritabanında ilgili verileri oluşturur. Programcılar ayrıca birbirlerinin kodunu test eder ve gözden geçirir.
Kodlama tamamlandıktan sonra, geliştiriciler ürünü uygulama aşamasında bir ortama dağıtır. Bu, performansın gereksinimlerle eşleşmesini sağlamak için programın bir pilot sürümünü test etmelerini sağlar.
5. Test
Test aşaması, yazılımı hatalara karşı kontrol eder ve kullanıcılara teslim edilmeden önce performansını doğrular. Bu aşamada, uzman test uzmanları, gereksinim analizi belgesine göre performans gösterdiğinden emin olmak için ürünün işlevlerini doğrular.
Test uzmanları, yazılımın tek tek bileşenlerinin performansını doğrulamak için bu yazılımla veya bir test komut dosyasıyla ilgili deneyimleri varsa keşif testi kullanır. Geliştiricilere koddaki kusurları bildirirler. Geliştiriciler kusurların geçerli olduğunu onaylarsa, programı geliştirirler ve testçiler, yazılım hatasız olana ve gereksinimlere göre davranana kadar süreci tekrarlar.
6. Dağıtım ve bakım
Yazılım hatasız olduğunda, geliştiriciler onu müşterilere teslim edebilir. Bir yazılımın üretim sürümünün yayınlanmasından sonra, BT yazılım geliştirme şirketi, müşterilerin ürünü kullanırken karşılaştıkları sorunları yönetmek için bir bakım ekibi oluşturur. Küçük bir sorunsa bakım bir düzeltme olabilir, ancak ciddi yazılım arızaları bir güncelleme gerektirir.