İçindekiler
Bölüm 1.
GİRİŞ
1.1.
Bilgisayar Yazılımı Tarihçesi
1.2.
Yazılım Mühendisliğ
1.3.
Yazılım Mühendisi
1.4.
Donanım ve Yazılım Karşılaştırması
1.5.
Yazılım Sınıflandırması
1.6.
Yazılım Özellikleri
1.6.1.
Niteliksel Özellikler
1.6.2.
Kullanıma Yönelik Özellikler
1.6.3.
Taşınmaya Yönelik Özellikler
1.6.4.
Yenileştirmeye Yönelik Özellikler
1.7. Özet
1.8.
Sorular
Bölüm
2.
BİLGİ
SİSTEMLERİ VE SINIFLANMASI
2.1.
Bilgi/Bilişim Sistemleri
2.1.1.
Çevrimiçi Sistemler
2.1.2.
Gerçek Zamanlı Sistemler
2.1.3.
Karar Destek Sistemleri
2.1.4.
Bilgi Tabanlı Sistemler
2.1.5.
Kişisel Bilgisayarlar
2.1.6. Ofis
Otomasyonu
2.1.7.
İletişim Sistemleri
2.1.8.
Endüstriyel Sistemler
2.1.9.
Kontrol Sistemleri
2.1.10.
Askeri Sistemler
2.1.11.
Robotik
2.1.12.
Gömülü Sistemler
2.1.13.
Yönetim Bilgi Sistemleri
2.1.14.
Veritabanı Yönetim Sistemleri
2.1.15. Bilgi
Yönetim Sistemleri
2.2. Sistem
Yapıları
2.3. Sistem
Bileşenleri
2.3.1.
Donanım
2.3.2.
Altyapı Yazılımları
2.3.3.
Uygulama Yazılımları
2.4. Özet
2.5.
Sorular
Bölüm 3.
BİLGİSAYAR SİSTEMİ MÜHENDİSLİĞİ
3.1. Sistem
Maliyeti
3.2.
Yapılabilirlik Araştırması
3.3. Proje
Yaşam Çevrimi
3.4. Proje
Yönetimi
3.4.1.
Yönetsel Planlar
3.4.2. Teknik
Planlar
3.5. Sistem
Mühendisliği
3.5.1. Sistem
Mühendisliği Yaşam Süreci
3.5.2.
Mühendislik Etkinlikleri
3.5.2.1.
Tanımlama
3.5.2.2.
Donanım ve Donanım Mühendisliği
3.5.2.3.
Yazılım ve Yazılım Mühendisliği
3.5.2.4.
İnsan Mühendisliği
3.6. Sistem
Çözümlemesi
3.6.1.
Kavramsal Tanımlama
3.6.2. Sistem
İsterlerinin Belirlenmesi
3.6.2.1.
Modelleme
3.6.2.2.
Benzetim
3.6.2.3.
Yöntembilimler
3.6.3.
İsterler Belirtimi
3.6.4.
Yardımcı Araçlar
3.6.5.
Belgelendirme
3.7. Sistem
Tasarımı
3.7.1.
Tasarım Etmenleri
3.7.2.
Tümleştirme
3.7.3. Sistem
Bileşenleri
3.7.4. Sistem
Mimari Tasarımı
3.7.5.
Belgelendirme
3.8.
Sistemin Gerçekleştirilmesi
3.8.2. Sistem
Tümleştirme
3.8.3. Elle
Denetim Yordamları
3.8.4.
Belgelendirme
3.9. Sistem
Kurulumu
3.10. Sistem
Testi
3.11. Sistem
Teslimi
3.12. Sistem
Bakımı
3.13. Genel
Belgelendirme
3.14. Özet
3.15. Sorular
Bölüm 4.
YAZILIM MÜHENDİSLİĞİ
4.1. Yazılım Mühendisliği Yöntembilimleri
67
4.1.1.
Klasik Çevrim
4.1.2. “V”
Modeli
4.1.3.
Prototipleme
4.1.4. Spiral
Model
4.1.5.
Evrimsel Geliştirme
4.1.6.
Evrimsel Prototipleme
4.1.7.
Artımlı Geliştirme
4.1.8.
Araştırmaya Dayalı Geliştirme
4.1.9.
Gelişigüzel Geliştirme
4.1.10. Özneye Yönelik Geliştirme
4.1.11. Bileşen Tabanlı Geliştirme
4.1.12. Özelliğe Yönelik Programlama
4.1.13. Uç/Aykırı Programlama
4.1.14. Birleştirilmiş Teknik
4.2. Yazılım Mühendisliği Araçları
4.2.1. Yönetsel
Araçlar
4.2.2. Çözümleme
ve Tasarım Araçları
4.2.3.
Gerçekleştirme Araçları
4.2.4. Bakım
Araçları
4.2.5.
Destekleyici Araçlar
4.2.6.
Model-Güdümlü Mimari Araçları
4.3. Yazılım Geliştirme Süreci
4.3.1. Yazılım
Proje Planlaması
4.3.2. Yazılım
Geliştirme Ortamının Kurulması
4.3.2.1. Ana
Sistemin Kurulması
4.3.2.2. Yazılım
Test Ortamının Oluşturulması
4.3.2.3. Yürütme
Ortamının Oluşturulması
4.3.2.4.
Kullanım Ortamının Sağlanması
4.3.3. Yazılım
İsterleri Çözümlemesi
4.3.3.1. Sistem
Yazılım İsterleri Çözümlemesi
4.3.3.2. Yazılım
Öge Çözümlemesi
4.3.3.3. Test
Hazırlığı
4.3.4. Yazılım
Tasarımı
4.3.4.1. Sistem
Yazılım Tasarımı
4.3.4.2. Öge
Tasarımı
4.3.4.3.
Ayrıntılı Tasarım
4.3.4.4.
İzlenebilirlik
4.3.5. Yazılım
Gerçekleştirmesi ve Birim Testi
4.3.6. Yazılım
Tümleştirme ve Test
4.3.7. Yazılım
Yeterlilik Testi
4.3.8. Sistem
Tümleştirme ve Test 91
4.3.9. Sistem
Yeterlilik Testi
4.3.10. Yazılımı
Kullanıma Hazırlama
4.3.11. Yazılımı
Aktarmaya Hazırlama
4.3.12. Yazılım
Bakımı
4.4. Özet
4.5.
Sorular
Bölüm 5.
YAZILIM İSTERLERİ ÇÖZÜMLEMESİ
5.1. İsterler Çözümlemesi Aşaması
5.1.1. Çözümleme
Çalışmaları
5.1.2.
İsterlerin Değişmesi
5.2. İsterlerin Belirlenmesi
5.2.1.
İsterlerin Düzeyleri
5.2.2. İster
Belirleme Adımları
5.2.3. İster
Tanımlama Teknikleri
5.2.4.
İsterlerin Sınıflandırılması
5.3. Çözümleme Yöntemleri
5.4. Yapısal Çözümleme
5.4.1. Veri Akış
Diyagramı
5.4.2. Davranış
Modellemesi
5.4.3. Veri
Sözlüğü
5.5. Nesneye Yönelik Çözümleme
5.5.1. Nesne
5.5.2. Çözümleme
5.5.3. Modelleme
5.5.4. Tasarım
5.6. Veri Yapılarına Yönelik Çözümleme
5.7. Belgelendirme
5.8. Özet
5.9.
Sorular
Bölüm 6.
YAZILIM TASARIMI
6.1. Tasarım Aşaması
6.2. Yazılım Tasarım Süreci
6.2.1. Veri
Tasarımı
6.2.2. Mimari
Tasarımı
6.2.3. Yordamsal
Tasarım
6.2.4. Arayüz
Tasarımı
6.3. Tasarım Yöntemleri
6.3.1. Veri
Akışına Yönelik Tasarım
6.3.2. Nesneye
Yönelik Tasarım
6.3.2.1. Temel
Özellikler
6.3.2.2. Nesneye
Yönelik Tasarım Aşamaları
6.3.3. Veriye
Yönelik Tasarım
6.3.4. Tasarım
Kalıpları
6.4. Kullanıcı Arayüzü Tasarımı
6.4.1.
İnsan-Bilgisayar Arayüz Tasarımı
6.4.2. Arayüz
Yazılımları
6.5. Gerçek Zamanlı Sistem Tasarımı
6.5.1. Yapısal
Özellikler
6.5.2.
Gerçekleştirme Teknikleri
6.5.3. Dinamik
Özellikler
6.6. Veritabanı Uygulamaları Tasarımı
6.6.1. Mimari
6.6.2.
Sınıflandırma
6.6.3. Tasarım
6.7. İnternet Uygulamaları Tasarımı
6.8. Yazılım Tasarımında Kurallar
6.8.1. Modüler
Tasarım
6.8.2. Modüler
Tasarım İlkeleri
6.8.3. Tekrar
Kullanım
6.8.4. Denetim
ve İşlevin Ayrılması
6.8.5. Genel
Yaklaşım
6.9. Belgelendirme
6.10. Özet
6.11. Sorular
Bölüm 7.
YAZILIMIN GERÇEKLEŞTİRİLMESİ
7.1. Programlama Dilleri
7.2. Kod Çevrim İşlemi
7.2.1.
Derleyiciler
7.2.2.
Yorumlayıcılar
7.3. Kodlama
7.3.1. Kodlama
Dili
7.3.2. Veri
Bildirimi
7.3.3. Deyim
Yapıları
7.3.4. Etkinlik
7.3.5. Atık
Toplama
7.3.6. Aykırı
Durumların Kotarılması
7.3.7. Hata
Ayıklama
7.4. Kodlama İçin Kurallar
7.5. Modüler Gerçekleştirme Kuralları
7.6. Belgelendirme
7.7. Özet
7.8.
Sorular
Bölüm 8.
YAZILIM TESTİ
8.1. Yazılım Testi/Sınaması Temelleri
8.1.1. Testin
Amaçları
8.1.2. Testin
Yapılışı
8.1.3. Test
Yöntemleri
8.1.4. Özel
Sistemlerin Testleri
8.1.5.
Otomatik Test Araçları
8.2. Test Stratejileri
8.3. Birim Testi
8.3.1. Birim Testi
Yöntemleri
8.3.2. Birim
Testinin Yapılışı
8.4. Tümleştirme Testi
8.4.1. Yukarıdan
Aşağı Tümleştirme
8.4.2. Aşağıdan
Yukarıya Tümleştirme
8.5. Yeterlilik Testleri
8.5.1. Doğrulama
8.5.2. Geçerleme
8.5.3.
Gelişigüzel Testler
8.6. Sistem Testi
8.6.1. Yükleme
Testi
8.6.2. Germe Testi
8.6.3. Geri
Kazanma Testi
8.6.4. Emniyet
Testi
8.6.5. Güvenlik
Testi
8.6.6. Başarım
Testi
8.7. Kabul Testleri
8.7.1. Üretim
Hattı Testleri
8.7.2. Kullanım
Hattı Testleri
8.7.3. Deneme
Testleri
8.7.4. Alfa ve
Beta Testleri
8.7.5. Kabul
Kıstasları
8.8. Test Yönetimi
8.9. Hata Ayıklama Süreci
8.10. Belgelendirme
8.11. Özet
8.12. Sorular
Bölüm 9.
YAZILIM BAKIMI
9.1. Yazılım Bakımının Temelleri
9.1.1. Bakım
Türleri
9.1.2.
Örgütlenme
9.1.3. Bakım
Aşamaları
9.1.4. Raporlama
9.2. Bakım Kolaylığı
9.2.1. Denetim
Etmenleri
9.2.2. Bakımın
Niteliği
9.2.3. Bakım
Sorunları
9.3. Bakım İşlemleri İçin Kurallar
9.4. Özet
9.5.
Sorular
Bölüm 10.
NİTELİK GÜVENCE
10.1. Yazılım Niteliği
10.2. Nitelik Metrikleri
10.3. Yazılım Metrikleri
10.4. Nitelik Güvence Etkinlikleri
10.5. Nitelik Güvence Yönetimi
10.6. Süreç Modelleri
10.7. Nitelik Sistem Standartları
10.8. Gözden Geçirmeler
10.8.1. Eşdüzey
Gözden Geçirme
10.8.2. Resmi Teknik
Gözden Geçirmeler
10.8.3. Birleşik
Gözden Geçirme
10.8.4. Yazılım
Ürün Değerlendirmesi
10.8.4.1.
Nitelik Raporu
10.9. Güvenilirlik Ölçümü
10.9.1.
Yararlanılabilirlik Ölçümü
10.10. Yazılım Emniyeti 200
10.11. Bütünleştirici Süreçler
10.12. Özet
10.13. Sorular
Bölüm 11.
DÜZENLEŞİM/KONFİGÜRASYON YÖNETİMİ
11.1. Sistem Düzenleşim Yönetimi
11.2. Yazılım Düzenleşim Yönetimi
11.2.1. Düzenleşim
Yönetim Planı
11.2.2. Düzenleşim
Yönetim Sistemi
11.3. Düzenleşim Yönetimi Süreci
11.3.1. Tanımlama
11.3.2. Sürüm
Denetimi
11.3.3. Değişiklik
Denetimi
11.3.4. Değişiklik
Denetim Süreci
11.4. Düzenleşim Denetimi İle Geliştirme
11.5. Ürün Çoğaltma
11.5.1.
Belgelendirme
11.5.2. Ürün
Teslimi
11.6. Özet
11.7. Sorular
Bölüm 12.
YAZILIM GELİŞTİRME YÖNTEMBİLİMLERİ
12.1. Yazılım Geliştirme Standartlarının Geçmişi
12.2. IEEE/EIA 12207
12.2.1. Standardın
Kullanımı
12.2.2. Yazılım
Yaşam Süreci
12.2.2.1. Temel
Süreçler
12.2.2.2.
Destekleyici Süreçler
12.2.2.3.
Örgütsel Süreçler
12.2.3.
Destekleyici Standartlar
12.3. Yazılım Geliştirme Süreçleri
12.4. Belgeler
12.5. Özet
12.6. Sorular
EKLER
A.
Yönetsel
Öneriler
A.1. Proje Yönetimi
A.2. İnsan Kaynakları Planlaması
A.3. Maliyet Kestirimi ve Planlama
A.4. Metrik Kullanımı
A.5. Kazanılmış Değerlerin İzlenmesi
A.6. Nitelik Hedeflerinin İzlenmesi
A.7. İsterlerin Yönetimi ve İzlenmesi
A.8. Sistem Tabanlı Yazılım Tasarımı
B.
Geliştirmeye Yönelik Öneriler
B.1. Tasarım
B.2. Gerçekleştirme
B.3. Sürekli Test
B.4. Sık Derleme ve Test
B.5. Hata Ayıklama
C.
Niteliği
Artırma Önerileri
C.1. İşlevsel Nitelik
C.2. Güvenilirlik
C.3. Bakım Kolaylığı
C.4. Kullanışlı Sistem Geliştirme
D.
Arayüz
Tasarım Önerileri
D.1. Yüksek Nitelik
D.2. Kullanıcı Dostluğu
D.3. Güvenilirlik
D.4. Yardımlar
D.5. Hatalar ve Uyarılar
E.
Elektrik/Elektronik Mühendisleri Odası (EMO)
F. IEEE
G.
Türkçe –
İngilizce Karşılıklar
KAYNAKÇA
Dizin
Akademik Kitaplar - Bilimsel Kitaplar -
Üniversite Kitapları