12 Nisan 2012 Perşembe

YAZILIM MÜHENDİSLİĞİ


Yazılım Geliştirme Yaşam Döngüsü: Gereksinim Analizi à Sistem Tasarımı à Program Tasarımı à Program Kodlaması  à Modül Testi à  Birleştirme Testi à Sistem Testi à Teslim à Sistemin İdamesi

Yazılım Süreci Modelleri
1. Gelişigüzel Model: Herhangi bir model ya da yöntem yok. Genellikle tek kişilik üretim ortamı. Basit programlama. İzlenebilirliği ve bakımı zor.
2. Barok Modeli : Gerçekleştirim aşamasına daha fazla ağırlık veren bir model olup, günümüzde kullanımı önerilmemektedir.
3. Çağlayan (Şelale) Modeli : İyi tanımlı projeler ve üretimi az zaman gerektiren yazılım projeleri için uygun bir modeldir.
4. V Modeli : Belirsizliklerin az, iş tanımlarının belirgin olduğu BT projeleri için uygun bir modeldir.
5. Helezonik (Spiral) Model : Prototip yaklaşımı vardır.
6. Evrimsel Model : Coğrafik olarak geniş alana yayılmış, çok birimli organizasyonlar için önerilmektedir (banka uygulamaları).
7. Artırımsal Model: Üretilen her yazılım sürümü birbirini kapsayacak ve giderek artan sayıda işlev içerecek şekilde geliştirilir. Bir taraftan kullanım, diğer taraftan üretim yapılır.
8. Araştırma Tabanlı Model: Geliştirilen yazılımlar genellikle sınırlı sayıda kullanılır ve kullanım bittikten sonra işe yaramaz hale gelir ve atılır.



Metodoloji
Bir BT projesi ya da yazılım yaşam döngüsü aşamaları boyunca kullanılacak ve birbirleriyle uyumlu yöntemler bütünü. Günümüzdeki metodolojiler genelde Çağlayan ya da Helezonik modeli temel almaktadır

Bir Metodolojide Bulunması Gereken Temel Bileşenler (Özellikler)

§ Ayrıntılandırılmış bir süreç modeli
§ Ayrıntılı süreç tanımları
§ İyi tanımlı üretim yöntemleri
§ Süreçler arası arayüz tanımları
§ Ayrıntılı girdi tanımları
§ Ayrıntılı çıktı tanımları
§ Proje yönetim modeli
§ Konfigürasyon yönetim modeli
§ Maliyet yönetim modeli
§ Kalite yönetim modeli
§ Risk yönetim modeli
§ Değişiklik yönetim modeli
§ Kullanıcı arayüz ve ilişki modeli
§ Standartlar



Programlama Dilleri
§ Çok yüksek seviyeli diller: VisualBasic, VB.NET, Acces , Foxpro ...
§ Yüksek seviyeli diller: Pascal ,Basic ,Fortran...
§ Orta seviyeli diller: C, C++, C# , Java ,ADA...
§ Düşük seviyeli diller: Assembly...
§ Makine dilleri: Bilgisayarın çalışma dilleri 1 ve 0'lardan oluşur...

Programlama Yaklaşımları
§ Prosedür yönelimli diller (örn. Fortran, Pascal)
§ Nesne yönelimli diller (örn. C++, C#, Java)
§ Mantık yönelimli diller (örn. Prolog)
§ Görev yönelimli diller

İyi bir programın temel özellikleri
§ Doğruluk : Verilen görevlerin tam olarak yerine getirilmesi.
§ Dayanıklılık : Beklenmedik hatalardan dolayı programın çalışması kesilmemeli.
§ Genişleyebilme : İleri aşamalarda görevlerin değişikliği veya yenilerinin eklenmesi kolay olmalıdır.
§ Basitlik : Karmaşık tasarımlardan kaçınmak gerekir.
§ Modülerlik : Program kodları başka programlarda da kullanılabilmelidir.
§ Uyumluluk : Başka bilgisayar ve sistemlerde çalışabilmelidir.
§ Kontrol edilebilirlik : Hata olabilecek yerlere açıklayıcı hata mesajları konulmalıdır.
§ Kolay kullanım : Kullanıcı arabirimi kolay olmalı ve rahat öğrenilebilmelidir.
§ Parçalanabilirlik : Problemi küçük parçalara ayrılarak yazmak.
§ Anlaşılırlık : Başkasının yazdığı program elden geçirilirken rahatça okunabilmeli.
§ Koruma : Modüller birbirlerine müdahale etmemelidirler.


Hiç yorum yok:

Yorum Gönder