DERSİN GENEL BİLGİLERİ

Ders Kodu Ders Adı Yıl Yarıyıl Teorik Pratik Kredi AKTS
60612METOZ-YZM0127 Yazılım Mühendisliği Süreçleri 4 Güz 2 2 3 6
Dersin Türü: Zorunlu
Dersin Düzeyi: Lisans      TYYÇ:6. Düzey      QF-EHEA:1. Düzey      EQF-LLL:6. Düzey
Dersin Öğretim Dili: Türkçe
Dersin Ön/Yan Koşulu: Yoktur
Dersin Veriliş Şekli:
Dersin Koordinatörü: Profesör Dr. ERCAN SOLAK
Dersin Öğretim Eleman(lar)ı:

Dersin Kategorisi: Mesleki Alan

BÖLÜM II: DERSİN TANITIMI

Dersin Amacı ve İçeriği

Dersin Amacı: Öğrencilere, yazılım geliştirme süreçleri, yazılım geliştirme yöntemleri ve yazılım modellemesi yaklaşımlarını ve bunların rasyonel altyapılarını tanıtmak
Dersin İçeriği: Bu derste öğrenciler yazılım mühendisliğinin spesifikasyon ve tasarım, geliştirme, doğrulama ve geçerli kılma ve test etme aşamalarının teorik ve pratik yönlerini öğrenirler. Bu ders proje tabanlı öğrenme yaklaşımını kullanır. Bu bakımdan dersin geleneksel içeriğinin yanı sıra proje tabanlı öğrenme bileşeni de bulunmaktadır. Proje tabanlı öğrenme bileşeni, belirli ara ve nihai çıktıların adım adım geliştirilmesini içeren öğrenme amaçlı tasarlanmış bir projenin öğrenciler tarafından bireysel olarak veya proje takımları halinde gerçekleştirilmesini amaçlamaktadır. Proje tabanlı öğrenme bileşeninin değerlendirilmesi, proje çıktılarının ve proje çalışmalarının eğitmen ve/veya jüri tarafından notlandırılmasını içerir.

Dersin Öğrenme Çıktıları (DÖÇ)

Ders Öğrenme Çıktıları (DÖÇ), dersi başarı ile tamamlayan öğrencilerin kendilerinden sahip olmaları beklenen bilgi, beceri ve yetkinlikleri ifade eder. Bu bağlamda, bu ders için tanımlanmış olan Ders Öğrenme Çıktıları aşağıda verilmektedir.
Bilgi (Kuramsal ve/veya olgusal bilgi olarak tanımlanmıştır.)
  1) Alanı ile ilgili temel bilim konularındaki kuramsal ve uygulamalı bilgileri yazılım mühendisliği problemlerinin çözümü için birlikte kullanır ve uygular. 1.1 Matematik, fen bilimleri, bilgisayar bilimleri ve yazılım mühendisliği ile ilgili mühendislik konularında yeterli bilgi birikimine sahiptir; bu alanlardaki kuramsal ve uygulamalı bilgileri yazılım mühendisliği problemlerinin çözümü için birlikte kullanır ve uygular.
Beceriler (Bilişsel ve/veya uygulama becerileri olarak tanımlanmıştır.)
  1) Yazılım mühendisliği uygulamalarını analiz eder, modeller ve tasarlar, gerçekçi kısıtlamalar ve koşullar altında belirli gereksinimleri karşılamak için çözümler geliştirir; bu amaçla uygun yöntemleri, araçları ve teknolojileri seçer ve kullanır. 2.1 Karmaşık yazılım mühendisliği problemlerini belirler, tanımlar, formüle eder ve çözer; bu amaçla uygun analitik yöntemleri ve modelleme tekniklerini seçer ve uygular. 2.2 Ekonomik, çevresel, sürdürülebilirlik, üretilebilirlik, etik, sağlık, güvenlik, sosyal ve politik faktörler gibi gerçekçi kısıtlamalar ve koşullar altında belirli gereksinimleri karşılamak için karmaşık bir yazılım tabanlı sistem, süreç, cihaz veya ürün tasarlar; bu amaçla modern tasarım yöntemlerini uygular. 2.3 Yazılım mühendisliği uygulamaları ve bilgisayar bilimi için gerekli modern teknikleri, araçları ve bilgi teknolojilerini seçer ve etkili bir şekilde kullanır. 2.4 Yazılım mühendisliği problemlerini ve araştırma konularını araştırmak için deneyler tasarlar, deneyler yürütür, veri toplar, sonuçları analiz eder ve yorumlar.
Yetkinlikler ("Bağımsız Çalışabilme", "Sorumluluk Alabilme", "Öğrenme", "İletişim ve Sosyal" ve "Alana Özgü" yetkinlikler olarak tanımlanmıştır.)
  1) Sürekli gelişen yazılım mühendisliği alanının ve küresel rekabet ortamının gerektirdiği yetkinliklere sahiptir. 2.1 Sorumluluk alarak hem bireysel olarak hem de disiplinler arası takımlarda etkin bir şekilde çalışır. 2.2 Bilgiye erişir, kaynak araştırması yapar ve bu amaçla veri tabanlarını ve diğer bilgi kaynaklarını kullanır. 2.3 Yaşam boyu öğrenmenin gerekliliğinin farkındadır; bilim, teknoloji ve alanındaki gelişmeleri takip eder ve kendini sürekli günceller. 2.5 Projeleri yönetir, işyeri uygulamaları, iş sağlığı, çevre ve iş güvenliği konularının farkındadır; mühendislik uygulamalarının yasal etkilerinin farkındadır. 2.6 Mühendislik çözümlerinin ve uygulamalarının sağlık, çevre ve güvenlik üzerindeki evrensel ve toplumsal etkilerinin farkındadır; girişimcilik ve inovasyon konularının farkındadır ve çağdaş konular hakkında bilgilidir. 2.7 Mesleki ve etik sorumluluk duygusuna sahiptir. 2.8 Yazılım mühendisliği uygulamalarında kullanılan standartlar hakkında bilgi sahibidir. 2.9 Kalite duygusuna sahiptir. 2.10 Bilgisayar bilimi ve yazılım mühendisliğinin önemli uygulama alanlarından en az birinde çalışma kapasitesine sahiptir.
  2) Üniversitemizin kurumsal çıktıları olarak tanımlanan, iş dünyası ve toplumun beklentileri doğrultusunda geliştirilen ileri düzeyde yetkinlikleri edinir. 2.1 Sorunları analiz etme, çözme ve çatışmaları yönetme yetkinliğini kazanır. 2.2 Sorun çözme gerektiren ortamlarda sorumluluk alır ve ekip üyesi olarak hareket eder, gerektiğinde liderlik yapar. 2.3 Etik ve sosyal sorumluluk duygusuna sahiptir. 2.4 Öğrendiklerini nicel ve nitel verilerle destekler; bunları yazılı, sözlü ve görsel iletişim araçlarını kullanarak kendi alanı içindeki ve dışındaki gruplara sistematik ve ikna edici bir şekilde iletir. 2.5 Sorumlu olduğu işlerdeki mevcut norm ve standartları eleştirel bir şekilde değerlendirir. 2.6 Stratejik, yenilikçi ve girişimci fikirler geliştirir. 2.7 Değişimi yönetme becerisi kazanır. 2.8 Yaşam boyu öğrenme bilinciyle kişisel ve sosyal gelişim gösterir. 2.9 İleri teknolojilerdeki ve dijital dönüşümdeki gelişmeleri takip eder.

Haftalık Ders Planı

Hafta Konu
Materyal Paylaşımı *
Ön Hazırlık Pekiştirme
1) Yazılım çözümleri
2) Yazılım çözümleri
3) Yazılım Aktiviteleri
4) Yazılım Aktiviteleri
5) Yazılım Aktiviteleri
6) Yazılım Aktiviteleri
7) Ara sınavı
8) Çevik kırılma
9) Çevik kırılma
10) Çevik Yöntemler
11) UML
12) UML
12) UML
13) UML
14) Revizyon
15) Final
*Bu alan öğrencilerin ders öncesi hazırlık ve sonrası dersi pekiştirme için paylaşılan ders materyallerini içerir.

Ders İçin Zorunlu/Önerilen Kaynaklar

Ders Notları / Kitaplar:
Diğer Kaynaklar:

Dersin Program Öğrenme Çıktılarına Katkı Düzeyi

Etkisi Yok 1 En Düşük 2 Düşük 3 Orta 4 Yüksek 5 En Yüksek
           
Program Öğrenme Çıktıları Katkı Oranı (1-5)
1) Matematik, fen bilimleri, bilgisayar bilimleri ve yazılım mühendisliği ile ilgili mühendislik konularında yeterli bilgi birikimine sahiptir; bu alanlardaki kuramsal ve uygulamalı bilgileri yazılım mühendisliği problemlerinin çözümü için birlikte kullanır ve uygular.
2) Alanı ile ilgili temel bilim konularındaki kuramsal ve uygulamalı bilgileri yazılım mühendisliği problemlerinin çözümü için birlikte kullanır ve uygular.
3) Yazılım mühendisliği uygulamalarını analiz eder, modeller, gerçekçi kısıtlar ve koşullar altında belirli gereksinimleri karşılayacak şekilde tasarlar ve geliştirir; bu amaçla uygun yöntemleri, araçları ve teknolojileri seçer ve kullanır.
4) Karmaşık yazılım mühendisliği problemlerini saptar, tanımlar, formüle eder ve çözer; bu amaçla uygun analitik yöntemler ile modelleme yöntemlerini seçer ve uygular.
5) Bilgisayar bilimleri ve yazılım mühendisliği uygulamaları için gerekli olan modern teknik ve araçları ve bilişim teknolojilerini seçer ve etkin bir şekilde kullanır.
6) Bilgisayar ve yazılım tabanlı karmaşık bir sistemi, süreci, cihazı veya ürünü ekonomi, çevre sorunları, sürdürülebilirlik, üretilebilirlik, etik, sağlık, güvenlik, sosyal ve politik sorunlar gibi öğeler dahil gerçekçi kısıtlar ve koşullar altında, belirli gereksinimleri karşılayacak şekilde tasarlar; bu amaçla modern tasarım yöntemlerini uygular.
7) Sorumluluk aldığı çalışmalarda var olan normları ve standartları eleştirel bakış açısıyla değerlendir.
8) Sürekli gelişen yazılım mühendisliği alanının ve küresel rekabet ortamının gerektirdiği yetkinliklere sahiptir.
9) Türkçe sözlü ve yazılı olarak etkili iletişim kurar ve B2 düzeyinde Yabancı Dilde (İngilizce) iletişim kurma yetkinliğine sahiptir.

BÖLÜM IV: DERSİN ÖĞRENME VE ÖĞRETME YÖNTEMLERİ İLE ÖLÇME VE DEĞERLENDİRME YÖNTEMLERİ

Dersin Öğrenme ve Öğretme Yöntemleri

(Üniversitemiz genelinde kullanılan tüm öğrenme ve öğretme yöntemleri sistematik olarak yönetilmektedir. Akademik birimlerden gelen talepler doğrultusunda bölüm/programların öğrenme ve öğretme yöntemleri ilgili kurullarımız tarafından değerlendirilmekte ve uygun bulunursa, üniversite havuzunda toplanmaktadır. Bölüm ve programlar, kendileri için program tasarımlarına uygun olan yöntemleri bu havuzdan seçebilmektedirler. Benzer şekilde, dersler için kullanılması uygun görülen yöntemler de programlar düzeyinde belirlenmiş olan yöntemler arasından seçilebilmektedir.)
Programa Genelinde Kullanılan Öğrenme ve Öğretme Yöntemleri
Ders İçin Kullanılan Öğrenme ve Öğretme Yöntemleri

Dersin Ölçme ve Değerlendirme Yöntemleri

(Üniversitemiz genelinde kullanılan tüm ölçme ve değerlendirme yöntemleri sistematik olarak yönetilmektedir. Akademik birimlerden gelen talepler doğrultusunda bölüm/programların ölçme ve değerlendirme yöntemleri ilgili kurullarımız tarafından değerlendirilmekte ve uygun bulunursa, üniversite havuzunda toplanmaktadır. Bölüm ve programlar, kendileri için program tasarımlarına uygun olan yöntemleri bu havuzdan seçebilmektedirler. Benzer şekilde, dersler için kullanılması uygun görülen yöntemler de programlar düzeyinde belirlenmiş olan yöntemler arasından seçilebilmektedir.)
Programa Genelinde Kullanılan Ölçme ve Değerlendirme Yöntemleri
Ders İçin Kullanılan Ölçme ve Değerlendirme Yöntemleri

Dersin Ölçme ve Değerlendirme Yöntemlerinin Başarı Notuna Katkısı

Ölçme ve Değerlendirme Yöntemleri Uygulama Sayısı / Yarıyıl Katkı Oranı
Projeler 1 % 30.00
Ara Sınavlar 1 % 15.00
Yarıyıl Sonu Sınavı 1 % 50.00
Derse Aktif Katılım 1 % 5.00
Toplam % 100
YARIYIL İÇİ ÖLÇME VE DEĞERLENDİRME YÖNTEMLERİNİN BAŞARI NOTUNA KATKI ORANI % 50
YARIYIL SONU SINAVININ BAŞARI NOTUNA KATKI ORANI % 50
Toplam % 100

BÖLÜM V: DERSİN İŞ YÜKÜ VE AKTS KREDİSİ