Genel Bilgi
| Birim | ADANA MESLEK YÜKSEKOKULU |
| Bilgisayar Programcılığı | |
| Kod | BPP261 |
| Ad | Sürüm Kontrol ve Yazılım Süreçleri |
| Dönem | 2026-2027 Eğitim-Öğretim Yılı |
| Yarıyıl | 3. Yarıyıl |
| Süre (T+U) | 2-1 (T-U) (17 Hafta) |
| AKTS | 4 AKTS |
| Yerel Kredi | 2.5 Yerel Kredi |
| Eğitim Dil | Türkçe |
| Seviye | Belirsiz |
| Tür | Normal |
| Etiket | Z Zorunlu |
| Öğretim Şekli | Yüz Yüze Öğretim |
| Bilgi Paketi Koordinatörü | Öğr. Gör. Dr. MEHMET İSMAİL SOLMAZ |
| Dersin Öğretim Elemanı |
Güncel dönem ders programı henüz yapılmamıştır.
|
Dersin Amacı / Hedefi
Bu dersin amacı, öğrenciye yalnızca kod yazmayı değil; yazılım geliştirme sürecini planlama, izleme, düzenleme ve paylaşma becerisi kazandırmaktır. Ders sonunda öğrencilerin komut satırı araçlarını kullanabilmesi, Git ile temel sürüm kontrol işlemlerini gerçekleştirebilmesi, teknik dokümantasyon hazırlayabilmesi ve takım çalışmasına yönelik temel iş akışlarını tanıyıp uygulayabilmesi hedeflenmektedir.
Dersin İçeriği
Bu ders; komut satırı kullanımı, Git ile sürüm kontrolü, yerel ve uzak depolarda temel iş akışları, dallanma ve birleştirme işlemleri, çakışma çözümü, Markdown ile teknik dokümantasyon, görev takibi ve çevik yazılım geliştirme yaklaşımının temel kavramlarını kapsar. Uygulamalar öncelikle çevrimdışı ve yerel ortamda yürütülür; paylaşımlı klasör, bare repo ve mümkün olması hâlinde yerel ağ/Gitea kullanımıyla iş birliği senaryoları desteklenir. GitHub, Fork, Pull Request ve CI/CD gibi çevrimiçi süreçler ise gösterim ve temel farkındalık düzeyinde ele alınır.
Dersin Ön Koşulu
Programlama Temelleri dersini almış olmak.
Kaynaklar
Ders notları öğretim elemanı tarafından sağlanacaktır. Yardımcı kaynak olarak Git temelleri, Markdown kullanımı ve temel çevik yazılım geliştirme kavramlarına yönelik güncel dokümanlar ve uygulama örnekleri kullanılacaktır. Önerilen kaynaklar: Pro Git, Git for Windows kullanım notları, temel Markdown rehberleri ve öğretim elemanı tarafından hazırlanan uygulama föyleri.
Notlar
Scott Chacon, Ben Straub, Pro Git (2nd Edition), Apress / git-scm.com. Git Reference Documentation, git-scm.com/docs. Git Tutorial, git-scm.com/docs/gittutorial. Markdown Guide, markdownguide.org. GitHub Docs - Pull Requests, Forks ve Remote Repositories bölümleri, docs.github.com. The Scrum Guide, scrumguides.org.
Dersin Öğrenme Çıktıları
| Sıra | Dersin Öğrenme Çıktıları |
|---|---|
| ÖÇ01 | Komut satırı araçlarını kullanarak temel dosya, klasör ve depo işlemlerini uygular. |
| ÖÇ02 | Git kullanarak yerel bir depo oluşturur, değişiklikleri izler ve temel commit işlemlerini gerçekleştirir. |
| ÖÇ03 | Dallanma ve birleştirme işlemlerini uygular; basit çakışma durumlarını çözümler. |
| ÖÇ04 | Markdown kullanarak README ve temel teknik dokümantasyon hazırlar. |
| ÖÇ05 | Yerel veya uzak depo mantığını açıklar; temel paylaşım, eşitleme ve iş birliği iş akışlarını uygular. |
| ÖÇ06 | Görev takibi, çevik iş akışı ve sürekli entegrasyon kavramlarını temel düzeyde ilişkilendirir ve yazılım geliştirme sürecindeki yerini değerlendirir. |
Program Öğrenme Çıktıları ile İlişkisi
| Sıra | Tür | Program Öğrenme Çıktıları | Duzey |
|---|---|---|---|
| PÖÇ01 | Yetkinlikler - İletişim ve Sosyal Yetkinlik | Sektörel bazda tüm paydaşlarla etkili iletişim kurar. | 3 |
| PÖÇ02 | Bilgi - Kuramsal, Olgusal | Bilgisayar yazılımı geliştirmek için gerekli olan, algoritma, sıralı ve eşzamanlı akış mantığını kurabilecek temel bilgilere sahiptir. | 1 |
| PÖÇ03 | Yetkinlikler - Alana Özgü Yetkinlik | Mikrodenetleyiciler, gömülü sistemler ve analog/dijital elektronik alanlarında temel düzeyde problemlere yönelik sistemler tasarlar. | |
| PÖÇ04 | Yetkinlikler - Alana Özgü Yetkinlik | Bilgi iletişim teknolojileri ile ilgili, mesleğine özgü temel yazılımları kullanır. | 5 |
| PÖÇ05 | Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği | Bilgisayar Programcılığı alanındaki yazılımsal ve donanımsal gelişmeleri bağımsız öğrendiklerini uygular. | 4 |
| PÖÇ06 | Bilgi - Kuramsal, Olgusal | Bilgisayar Teknolojileri ve Programlama alanında tanımı iyi yapılmış problemlerin çözümü için gerekli olan yöntemleri açıklar. | 3 |
| PÖÇ07 | Bilgi - Kuramsal, Olgusal | Web, mobil ve diğer elektronik platformlara özgü yazılım geliştirmek için gerekli temel bilgi düzeyine sahiptir. | 1 |
| PÖÇ08 | Beceriler - Bilişsel, Uygulamalı | Masaüstü ve diğer ortamlar için yazılım geliştirir. | 2 |
| PÖÇ09 | Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği | Planlanmış bir proje dahilinde, proje geliştirme süreçlerinde, bağımsız veya gruba dahil olarak etkin rol üstlenir. | 5 |
| PÖÇ10 | Bilgi - Kuramsal, Olgusal | Proje planlama, geliştirme, uygulama süreçlerini bilir. | 5 |
| PÖÇ11 | Yetkinlikler - Alana Özgü Yetkinlik | Bilgisayar ve ağ ortamında veriler ile ilgili saklama, düzenleme, sorgulama, vb. işlemlerini yapar. | 3 |
| PÖÇ12 | Yetkinlikler - Alana Özgü Yetkinlik | Öngörülemeyen donanımsal ve yazılımsal sorunları çözme becerisine sahiptir. | 2 |
| PÖÇ13 | Beceriler - Bilişsel, Uygulamalı | Çözümlemesi yapılmış ve algoritması hazırlanmış, yazılım bileşenlerini kodlar. | 1 |
| PÖÇ14 | Bilgi - Kuramsal, Olgusal | Yazılım geliştirlirken kullanılacak yöntemleri bilir. | 5 |
| PÖÇ15 | Yetkinlikler - Öğrenme Yetkinliği | Bilişim teknolojileri alanı ile ilgili güncel yenilik ve gelişmeleri sürekli takip eder. | 4 |
| PÖÇ16 | Yetkinlikler - İletişim ve Sosyal Yetkinlik | Bir yabancı dilde sözlü ve yazılı olarak iletişim kurar. | |
| PÖÇ17 | Yetkinlikler - İletişim ve Sosyal Yetkinlik | Bilişim teknolojileri mesleğini ile ilgili ahlakı ve etik davranışların gerekliliği olgusuna sahiptir. | |
| PÖÇ18 | Yetkinlikler - Alana Özgü Yetkinlik | Alanı ile ilgili, iş güvenliği ilgili gerekli bilince sahiptir. | |
| PÖÇ19 | Beceriler - Bilişsel, Uygulamalı | İşletim sistemlerini yönetici özellikleri ile kullanır. | 4 |
| PÖÇ20 | Bilgi - Kuramsal, Olgusal | Girişimcilik, kariyer yönetimi, yaşamboyu öğrenme ile ilgili temel bilgilere sahiptir. | |
| PÖÇ21 | Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği | Çevre bilincine, çevre duyarlılığına,atık depolama ve güvenliği ile ilgili temel bilgiye sahiptir. |
Haftalık Akış
| Hafta | Konu | Ön Hazırlık | Yöntemler |
|---|---|---|---|
| 1 | Sürüm Kontrolü ve Yazılım Disiplini | Sürüm kontrolünün ne işe yaradığını ve Git’in temel amacını araştırınız. | Öğretim Yöntemleri: Anlatım, Tartışma |
| 2 | Komut Satırı (CLI) ve Terminal Kullanımı | Dosya, klasör ve yol kavramlarını gözden geçiriniz. | Öğretim Yöntemleri: Anlatım, Alıştırma ve Uygulama |
| 3 | Yerel Depo (Local Repo) Yönetimi | init, add, commit ve status komutlarının temel mantığını inceleyiniz. | Öğretim Yöntemleri: Anlatım, Gösterip Yaptırma |
| 4 | Geçmişi İzleme ve Dosya Filtreleme | log, diff ve .gitignore kavramlarını araştırınız. | Öğretim Yöntemleri: Gösterip Yaptırma |
| 5 | Dallanma (Branching) Mantığı | Branch kavramı ve yeni özellik geliştirme yaklaşımını inceleyiniz. | Öğretim Yöntemleri: Anlatım, Alıştırma ve Uygulama |
| 6 | Birleştirme (Merge) ve Çakışma Yönetimi | Merge ve conflict kavramlarının temel mantığını araştırınız. | Öğretim Yöntemleri: Anlatım, Gösterip Yaptırma |
| 7 | Teknik Dokümantasyon (Markdown) | README dosyasının amacı ve Markdown sözdizimini inceleyiniz. | Öğretim Yöntemleri: Anlatım, Alıştırma ve Uygulama |
| 8 | Ara Sınavlar | İlk yedi haftanın konularını tekrar ediniz. | Ölçme Yöntemleri: Yazılı Sınav |
| 9 | Uzak Depo (Remote) Mantığı - Offline Başlangıç | clone, push, fetch ve pull komutlarının temel farklarını inceleyiniz. | Öğretim Yöntemleri: Gösterip Yaptırma |
| 10 | Yerel Ortamda Takım Çalışması | Paylaşımlı depo ve ortak çalışma senaryolarını araştırınız. | Öğretim Yöntemleri: Grup Çalışması, Anlatım |
| 11 | GitHub, Fork ve Pull Request Vizyonu | GitHub, fork ve pull request kavramlarının temel mantığını inceleyiniz. | Öğretim Yöntemleri: Anlatım |
| 12 | Çevik (Agile) Proje Yönetimi ve Scrum | Agile, Scrum, sprint ve backlog kavramlarını araştırınız. | Öğretim Yöntemleri: Anlatım |
| 13 | Görev Yönetimi (Issue Tracking) | Görev kaydı, hata kaydı ve commit ilişkisini inceleyiniz. | Öğretim Yöntemleri: Alıştırma ve Uygulama |
| 14 | Sürekli Entegrasyon (CI/CD) Vizyonu | CI/CD kavramlarının temel mantığını araştırınız. | Öğretim Yöntemleri: Anlatım |
| 15 | Final Projesi Sunumu ve Değerlendirme | Repo geçmişinizi, README dosyanızı ve proje çıktılarınızı gözden geçiriniz. | Öğretim Yöntemleri: Gösteri |
| 16 | Yarıyıl Sonu Sınavları | Tüm dönem konularını tekrar ediniz. | Ölçme Yöntemleri: Yazılı Sınav |
| 17 | Yarıyıl Sonu Sınavları | Tüm dönem konularını tekrar ediniz. | Ölçme Yöntemleri: Yazılı Sınav |
Öğrenci İş Yükü - AKTS
| Çalışmalar | Sayısı | Süresi (Saat) | İş Yükü (Saat) |
|---|---|---|---|
| Ders ile İlgili Çalışmalar | |||
| Ders (Sınav haftaları dahil değildir) | 14 | 3 | 42 |
| Sınıf Dışı Ders Çalışma (Ön çalışma, pekiştirme) | 14 | 2 | 28 |
| Değerlendirmeler ile İlgili Çalışmalar | |||
| Ödev, Proje, Diğer | 1 | 20 | 20 |
| Ara Sınavlar (Yazılı, Sözlü, vs.) | 1 | 5 | 5 |
| Yarıyıl/Yıl Sonu/Final Sınavı | 1 | 5 | 5 |
| Toplam İş Yükü (Saat) | 100 | ||
| Toplam İş Yükü / 25 (s) | 4,00 | ||
| AKTS | 4 AKTS | ||