BPP261 Version Control and Software Processes

4 ECTS - 2-1 Duration (T+A)- 3. Semester- 2.5 National Credit

Information

Unit ADANA VOCATIONAL SCHOOL
Code BPP261
Name Version Control and Software Processes
Term 2026-2027 Academic Year
Semester 3. Semester
Duration (T+A) 2-1 (T-A) (17 Week)
ECTS 4 ECTS
National Credit 2.5 National Credit
Teaching Language Türkçe
Level Belirsiz
Type Normal
Label C Compulsory
Mode of study Yüz Yüze Öğretim
Catalog Information Coordinator Öğr. Gör. Dr. MEHMET İSMAİL SOLMAZ
Course Instructor
The current term course schedule has not been prepared yet.


Course Goal / Objective

The aim of this course is to enable students not only to write code, but also to plan, monitor, organize, and share the software development process. By the end of the course, students are expected to use command-line tools, perform basic version control operations with Git, prepare technical documentation, and recognize and apply fundamental workflows for teamwork.

Course Content

This course covers command-line usage, version control with Git, basic workflows in local and remote repositories, branching and merging operations, conflict resolution, technical documentation with Markdown, issue tracking, and the fundamental concepts of agile software development. Practical activities are carried out primarily in offline and local environments; collaboration scenarios are supported through shared folders, bare repositories, and, when available, local network/Gitea infrastructure. Online processes such as GitHub, Fork, Pull Request, and CI/CD are addressed at the level of demonstration and basic awareness.

Course Precondition

Having completed the Fundamentals of Programming course.

Resources

Course notes will be provided by the instructor. Up-to-date documents and practical examples related to Git fundamentals, Markdown usage, and basic agile software development concepts will be used as supporting materials. Recommended resources include Pro Git, Git for Windows usage notes, introductory Markdown guides, and practice handouts prepared by the instructor.

Notes

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, and Remote Repositories, docs.github.com. The Scrum Guide, scrumguides.org.


Course Learning Outcomes

Order Course Learning Outcomes
LO01 Applies basic file, folder, and repository operations using command-line tools.
LO02 Creates a local repository using Git, tracks changes, and performs basic commit operations.
LO03 Applies branching and merging operations and resolves basic conflict situations.
LO04 Prepares README files and basic technical documentation using Markdown.
LO05 Explains the logic of local and remote repositories and applies basic sharing, synchronization, and collaboration workflows.
LO06 Relates the concepts of issue tracking, agile workflow, and continuous integration at a basic level and evaluates their role in the software development process.


Relation with Program Learning Outcome

Order Type Program Learning Outcomes Level
PLO01 Yetkinlikler - İletişim ve Sosyal Yetkinlik Communicates effectively with all partners on a sectoral basis. 3
PLO02 Bilgi - Kuramsal, Olgusal has the basic knowledge necessary to develop computer software, to establish algorithm, sequential and simultaneous flow logic 1
PLO03 Yetkinlikler - Alana Özgü Yetkinlik Designs systems for fundamental problems in microcontrollers, embedded systems and analog/digital electronics.
PLO04 Yetkinlikler - Alana Özgü Yetkinlik Uses basic software related to information and communication technologies, specific to his profession. 5
PLO05 Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği Applies the software and hardware developments in the field of Computer Programming independently. 4
PLO06 Bilgi - Kuramsal, Olgusal Explains the necessary methods for solving well-defined problems in the field of Computer Technologies and Programming. 3
PLO07 Bilgi - Kuramsal, Olgusal Has the basic knowledge level required to develop software specific to web, mobile and other electronic platforms. 1
PLO08 Beceriler - Bilişsel, Uygulamalı Develops software for desktop and other environments. 2
PLO09 Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği Takes an active role in project development processes, independently or as part of a group, within a planned project. 5
PLO10 Bilgi - Kuramsal, Olgusal Knows project planning, development and implementation processes. 5
PLO11 Yetkinlikler - Alana Özgü Yetkinlik Performs data storage, editing, querying, etc. operations in computer and network environment. 3
PLO12 Yetkinlikler - Alana Özgü Yetkinlik It has the ability to solve unpredictable hardware and software problems. 2
PLO13 Beceriler - Bilişsel, Uygulamalı Codes software components that have been analyzed and the algorithm has been prepared. 1
PLO14 Bilgi - Kuramsal, Olgusal Knows the methods to be used in software development. 5
PLO15 Yetkinlikler - Öğrenme Yetkinliği Constantly follows current innovations and developments in the field of information technologies. 4
PLO16 Yetkinlikler - İletişim ve Sosyal Yetkinlik Communicates verbally and in writing in a foreign language.
PLO17 Yetkinlikler - İletişim ve Sosyal Yetkinlik It has the phenomenon of the necessity of moral and ethical behaviors related to the information technology profession.
PLO18 Yetkinlikler - Alana Özgü Yetkinlik Has the necessary awareness of occupational safety in her field.
PLO19 Beceriler - Bilişsel, Uygulamalı It uses operating systems with administrative features. 4
PLO20 Bilgi - Kuramsal, Olgusal Have basic knowledge about entrepreneurship, career management and lifelong learning.
PLO21 Yetkinlikler - Bağımsız Çalışabilme ve Sorumluluk Alabilme Yetkinliği Has environmental awareness, environmental sensitivity, basic knowledge about waste storage and safety.


Week Plan

Week Topic Preparation Methods
1 Version Control and Software Discipline Research the purpose of version control and the basic role of Git. Öğretim Yöntemleri:
Anlatım, Tartışma
2 Command Line Interface (CLI) and Terminal Usage Review the concepts of file, folder, and path. Öğretim Yöntemleri:
Anlatım, Alıştırma ve Uygulama
3 Local Repository Management Review the basic logic of the init, add, commit, and status commands. Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma
4 Tracking History and File Filtering Research the concepts of log, diff, and .gitignore. Öğretim Yöntemleri:
Gösterip Yaptırma
5 Branching Logic Review the concept of branches and the feature development approach. Öğretim Yöntemleri:
Anlatım, Alıştırma ve Uygulama
6 Merge and Conflict Management Research the basic logic of merge and conflict concepts. Öğretim Yöntemleri:
Anlatım, Gösterip Yaptırma
7 Technical Documentation (Markdown) Review the purpose of a README file and Markdown syntax. Öğretim Yöntemleri:
Anlatım, Alıştırma ve Uygulama
8 Mid-Term Exam Review the topics covered in the first seven weeks. Ölçme Yöntemleri:
Yazılı Sınav
9 Remote Repository Logic - Offline Introduction Review the basic differences between clone, push, fetch, and pull commands. Öğretim Yöntemleri:
Gösterip Yaptırma
10 Teamwork in a Local Environment Research shared repository usage and collaborative workflow scenarios. Öğretim Yöntemleri:
Grup Çalışması, Anlatım
11 GitHub, Fork, and Pull Request Overview Review the basic logic of GitHub, fork, and pull request concepts. Öğretim Yöntemleri:
Anlatım
12 Agile Project Management and Scrum Research the concepts of Agile, Scrum, sprint, and backlog. Öğretim Yöntemleri:
Anlatım
13 Issue Tracking Review task records, bug reports, and their relationship with commits. Öğretim Yöntemleri:
Alıştırma ve Uygulama
14 Continuous Integration (CI/CD) Overview Research the basic logic of CI/CD concepts. Öğretim Yöntemleri:
Anlatım
15 Final Project Presentation and Evaluation Review your repository history, README file, and project outputs. Öğretim Yöntemleri:
Gösteri
16 Term Exams Review all course topics covered throughout the semester. Ölçme Yöntemleri:
Yazılı Sınav
17 Term Exams Review all course topics covered throughout the semester. Ölçme Yöntemleri:
Yazılı Sınav


Student Workload - ECTS

Works Number Time (Hour) Workload (Hour)
Course Related Works
Class Time (Exam weeks are excluded) 14 3 42
Out of Class Study (Preliminary Work, Practice) 14 2 28
Assesment Related Works
Homeworks, Projects, Others 1 20 20
Mid-term Exams (Written, Oral, etc.) 1 5 5
Final Exam 1 5 5
Total Workload (Hour) 100
Total Workload / 25 (h) 4,00
ECTS 4 ECTS

Update Time: 29.04.2026 10:32