MSDN Türkiye A. Serdar Gökcen Seminerin Amacı: Yazılım geliştirme süreci hakkında izlenecek adımlar ve gerçek dünya örnekleri verilecektir seminerimizde. Çoğu programcı yada piyasaya yeni giriş yapacak programcı arkadaşların nasıl bir yol izleyeceği ve şuan piyasada bulunan programcı arkadaşlarımızın hatalarını yada eksik yaptığı işlemleri gidermeye çalışarak daha istikrarlı bir yazılım geliştirmeye teşvik etmek amacıyla seminerimize başlıyoruz. YAZILIM GELİŞTİRME SÜRECİ GEREKSİNİM ANALİZİ TASARIM KODLAMA TEST BAKIM GEREKSİNİM ANALİZİ Gereksinim analizi, ana sistem öğeleri ve işlevlerinden yazılıma ilişkin olanlarının ele alınarak, ayrıntılı şekilde tanımlanmasıdır. Bu amaçla, iki yöntemden biri uygulanmaktadır. Yöntemleri inceleyelim: GEREKSİNİM ANALİZİ Birinci yöntem; bilişim alanının, işlevlerinin, ara birimlerinin, kısıtlarının, kabul kriterlerinin belirlenmesi ve akış diyagramları halinde gösterilmesidir. Böylece yazılım özellikleri ortaya konmuş olmaktadır. Ancak, bu yöntemin uygulanabilmesi için, gereksinimler daha önce müşteri ile birlikte saptanmalıdır. GEREKSİNİM ANALİZİ İkinci yöntem; yazılım için bir prototip (model) oluşturmak ve bu prototip üzerinde müşteri ile tartışarak, prototipi gereksinimlere uygun hale getirmektir. Bu yöntemde, gereksinimler önceden saptanmayıp, prototip üzerinde müşteri ile birlikte kararlaştırılmaktadır. Gereksinimlerin karşılanmasına ya da kaynak kısıtlamalarına göre yazılım tasarımının özellikleri; yazılım öğelerinin kabaca analizi ile de gereksinimleri karşılama derecesi belirlenmektedir. YAZILIM TASARIMI Belirlenmiş olan bir dizi gereksinimin, ana sistem içerisinde işlevsel bir öğe haline getirilmesi, başka bir deyimle, yazılım şekline dönüştürülmesidir. Yazılım tasarımı; Ön tasarım, Ayrıntılı tasarım, Yazılımın sınanması olarak üç basamak halinde gerçekleştirilmektedir… YAZILIM TASARIMI ÖN TASARIM Ön tasarımda, yazılımın belirlenmiş olan amaç ve hedeflere nasıl ulaştırılabileceğine ilişkin tanımlar geliştirilmektedir. Bunun için; yazılımın işlevleri tanımlanmakta ve modül adı verilen bağımsız öğelere ayrılmakta, veri yapıları oluşturulmakta, modül ara birimleri kurulmakta, kısıtlar belirtilmektedir. Bir rapor halinde düzenlenen ön tasarım, incelenerek kabul edilmekte ya da tekrar düzeltilmektedir. YAZILIM TASARIMI AYRINTILI TASARIM Ayrıntılı tasarımda; ön tasarım aşamasında oluşturulan modüller alt modüllere ayrılmakta ve ayrıntılı olarak tanımlanmaktadır. Kütükler, ekran görüntüleri ve rapor biçimleri tasarlanmakta, programlar için ayrıntılı plânlar düzenlenmektedir. Böylece hazırlanan tasarım raporu incelemeye sunulmaktadır. Ayrıntılı tasarım raporu kabul edilince program planları bir bilgisayar dilinde kodlanarak dış belleklere aktarılmaktadır.(Kodlama ve Yayımlama) YAZILIM TASARIMI YAZILIMIN SINANMASI Geliştirme sürecinin her aşamasında "kalite kontrolü" yapıldığı gibi, ayrıca son aşamada da "kabul muayenesi" anlamında bir testten geçirilmektedir. Bu amaçla, yazılım projesinin plânlanmasında bir "yazılım denetleme plânı" ve son aşamada da kabul muayenesi için bir "test plânı" düzenlenmektedir. Sınama; önce her bir modülün, sonra da bir bütün halinde yazılımın testten geçirilmesi ve onaylanması ile tanımlanmaktadır. Yazılımda kullanıcılar tarafından bulunan hataların çoğunun nedeni problemi ifade etme ve anlama hatasıdır. BAKIM VE KORUMA Bakım ve koruma, sınama sonunda uygun bulunan yazılımın kullanım için düzenlenmesi, faaliyete geçirilmesi ve gerektiğinde üzerinde değişiklik yapılması işlemlerinden oluşmaktadır. Uzun süre kullanılacak olan sistem yazılımları ile uygulama paket programlarının gerektiğinde bakımının yapılması ya da değiştirilmesi yoluna gidilmektedir. Yazılımın bakımı, geliştirilmesinden iki kat daha pahalıdır. Büyük yazılım kurumlarında yazılım bakım ve değiştirme giderleri, bütçelerinin %50-70'ine ulaşmaktadır. Seminer Hakkında Sorular? Seminere katıldığınız için teşekkür ederim. Lütfen seminer boyunca aklınıza takılan yada merak ettiğiniz soruları sorarsanız, cevaplamaktan memnuniyet duyarım. Teşekkürler; Ali Serdar GÖKCEN. msdn Türkiye.