| School/Faculty/Institute | Faculty of Engineering | ||||
| Course Code | COMP 205 | ||||
| Course Title in English | Systems Programming | ||||
| Course Title in Turkish | Sistem Programlama | ||||
| Language of Instruction | EN | ||||
| Type of Course | Exercise,Flipped Classroom,Lecture | ||||
| Level of Course | Introductory | ||||
| Semester | Fall | ||||
| Contact Hours per Week |
|
||||
| Estimated Student Workload | 156 hours per semester | ||||
| Number of Credits | 6 ECTS | ||||
| Grading Mode | Standard Letter Grade | ||||
| Pre-requisites |
COMP 105 - Computer Programming (C) | COMP 109 - Computer Programming (JAVA) |
||||
| Co-requisites | None | ||||
| Expected Prior Knowledge | Basic programming knowledge | ||||
| Registration Restrictions | Only Undergraduate Students | ||||
| Overall Educational Objective | To learn fundamentals of systems programming concepts and construct basic system software using C programming language on UNIX-based environment. | ||||
| Course Description | This course covers the fundamentals of systems programming concepts such as machine-level representation of programs, processor architecture, memory hierarchy, linking, exceptional control flow, virtual memory, and system-level I/O. Application of these concepts are realized in C programming language on UNIX-based environment. |
Course Learning Outcomes and CompetencesUpon successful completion of the course, the learner is expected to be able to:1) temel sistem programlama kavramlarını kavrar; 2) UNIX tabanlı ortamı kullanır; 3) algoritma tasarlamak için C programlama dilini kullanır; 4) Basit mühendislik problemlerini çözmek için temel sistem yazılımları tasarlar. |
| Program Learning Outcomes/Course Learning Outcomes | 1 | 2 | 3 | 4 |
|---|---|---|---|---|
| 1) Matematik, tarih, ekonomi ve sosyal bilimlere maruz kalarak geniş bir temele ve entelektüel farkındalığa sahip olmak | ||||
| 2) İşletmenin farklı işlevsel alanlarında (muhasebe, finans, operasyon, pazarlama, strateji ve organizasyon) bilgi ve becerilere sahip olduğunu ve bunların çeşitli endüstri sektörlerindeki etkileşimlerine ilişkin bir anlayışa sahip olduğunu gösterir | ||||
| 3) Karmaşık teknik veya profesyonel faaliyetleri veya projeleri yönetmek için teorik bilginin yanı sıra yaratıcı, analitik ve eleştirel düşünmeyi uygular | ||||
| 4) İşletme sürdürülebilirliği için küresel, çevresel, ekonomik, yasal ve düzenleyici bağlamlara ilişkin bir anlayış sergiler | ||||
| 5) Bireysel ve mesleki etik davranış ve sosyal sorumluluk gösterir | ||||
| 6) Etnik, kültürel ve cinsiyet çeşitliliği değerlerine ve konularına duyarlılık gösterir | ||||
| 7) Bilgi, fikir, sorun ve çözümleri iletmek için yazılı ve sözlü İngilizceyi etkili bir şekilde kullanır (en azından CEFR B2 seviyesi) | ||||
| 8) Veri ve bilgi edinme, analiz etme, yorumlama ve raporlama konusunda beceriler gösterir | ||||
| 9) Problem çözme ve karar vermeyi desteklemek için bilgisayar yeterliliğini gösterir | ||||
| 10) Takım çalışması, liderlik ve girişimcilik becerilerini gösterir | ||||
| 11) Yüksek derecede özerklikle ileri çalışmalar için gerekli öğrenme becerilerini sergiler |
| N None | S Supportive | H Highly Related |
| Program Outcomes and Competences | Level | Assessed by | |
| 1) | Matematik, tarih, ekonomi ve sosyal bilimlere maruz kalarak geniş bir temele ve entelektüel farkındalığa sahip olmak | N | |
| 2) | İşletmenin farklı işlevsel alanlarında (muhasebe, finans, operasyon, pazarlama, strateji ve organizasyon) bilgi ve becerilere sahip olduğunu ve bunların çeşitli endüstri sektörlerindeki etkileşimlerine ilişkin bir anlayışa sahip olduğunu gösterir | N | |
| 3) | Karmaşık teknik veya profesyonel faaliyetleri veya projeleri yönetmek için teorik bilginin yanı sıra yaratıcı, analitik ve eleştirel düşünmeyi uygular | N | |
| 4) | İşletme sürdürülebilirliği için küresel, çevresel, ekonomik, yasal ve düzenleyici bağlamlara ilişkin bir anlayış sergiler | N | |
| 5) | Bireysel ve mesleki etik davranış ve sosyal sorumluluk gösterir | N | |
| 6) | Etnik, kültürel ve cinsiyet çeşitliliği değerlerine ve konularına duyarlılık gösterir | N | |
| 7) | Bilgi, fikir, sorun ve çözümleri iletmek için yazılı ve sözlü İngilizceyi etkili bir şekilde kullanır (en azından CEFR B2 seviyesi) | S | Sunum |
| 8) | Veri ve bilgi edinme, analiz etme, yorumlama ve raporlama konusunda beceriler gösterir | S | Derse Katılım |
| 9) | Problem çözme ve karar vermeyi desteklemek için bilgisayar yeterliliğini gösterir | N | |
| 10) | Takım çalışması, liderlik ve girişimcilik becerilerini gösterir | S | Derse Katılım |
| 11) | Yüksek derecede özerklikle ileri çalışmalar için gerekli öğrenme becerilerini sergiler | S | Derse Katılım |
| Prepared by and Date | BUSE YILMAZ , February 2024 |
| Course Coordinator | BUSE YILMAZ |
| Semester | Fall |
| Name of Instructor |
| Hafta | Konu |
| 1) | Sistem Programlamasına ve UNIX tabanlı sistemlere giriş |
| 2) | UNIX tabanlı sistemler ve Linux Dağıtımları hakkında daha fazla bilgi |
| 3) | Temel UNIX komutları ve sistemde gezinme |
| 4) | Kabuk Programlama |
| 5) | Kabuk Programlama |
| 6) | C Programlama: C Programlamanın Temelleri ve Ara Sınav #1 |
| 7) | C Programlama: fonksiyonlar |
| 8) | C Programlama: işaretçiler ve diziler |
| 9) | C Programlama: karakterler ve dizeler |
| 10) | C Programlama: Bileşik Veri Türleri |
| 11) | C Programlama: Dinamik Bellek Tahsisi ve Ara Sınav #2 |
| 12) | C Programlama: Dosya İşleme (Sistem Düzeyinde I/O) |
| 13) | C Programlama: C ön işlemcisi |
| 14) | C Programlama: program organizasyonu ve ileri konular |
| 15) | Final Sınavı/Proje/Sunum Dönemi |
| 16) | Final Sınavı/Proje/Sunum Dönemi |
| Required/Recommended Readings | Computer Systems: A Programmer's Perspective by Randal E. Bryant, David R. O'Hallaron (3rd Edition) Your UNIX/Linux: The Ultimate Guide by Sumitabha Das (3rd Edition) C How to Program by Paul Deitel and Harvey Deitel (8th Edition) Problem Solving and Program Design in C by Hanly & Koffman (7thed.) | ||||||||||||||||||
| Teaching Methods | Flipped classroom. Students work individually for assignments and in groups for the project | ||||||||||||||||||
| Homework and Projects | Lab practices and Homeworks, Project | ||||||||||||||||||
| Laboratory Work | yes | ||||||||||||||||||
| Computer Use | Required | ||||||||||||||||||
| Other Activities | none | ||||||||||||||||||
| Assessment Methods |
|
||||||||||||||||||
| Course Administration |
yilmazbuse@mef.edu.tr +90 212 395 3719 Rules for attendance: 70% lecture and lab attendance is mandatory. Missing a lab practice: Lab practices will start at the beginning of each lab session and end at the end of 2-hours period. Any submission not completed by the end of the session will receive partial credit. No grade will be given to a lab practice if the student does not attend that lab session. Provided that proper documents of excuse (e.g., health issues) are presented, each missed lab practice by the student will be given a grade which is equal to the average of all of the other lab practices the student attended. No make-up will be given. Missing the inclass quizzes: No make-up will be given. The student must physically attend the quiz in the class to get any points. No late submissions are allowed. Missing an exam: No make-up for the missed exam will be given. The exam grade will be calculated based on other assessments that are related to the exam topics. A reminder of proper classroom behavior, code of student conduct: YÖK Regulations Statement on plagiarism: YÖK Regulations |
||||||||||||||||||
| Activity | No/Weeks | Hours | Calculation | ||||
| No/Weeks per Semester | Preparing for the Activity | Spent in the Activity Itself | Completing the Activity Requirements | ||||
| Ders Saati | 14 | 2 | 3 | 70 | |||
| Laboratuvar | 5 | 2 | 2 | 20 | |||
| Sunum / Seminer | 1 | 1 | 3 | 4 | |||
| Proje | 5 | 1 | 3 | 20 | |||
| Ara Sınavlar | 2 | 16 | 3 | 38 | |||
| Rapor Teslimi | 1 | 3 | 1 | 4 | |||
| Total Workload | 156 | ||||||
| Total Workload/25 | 6.2 | ||||||
| ECTS | 6 | ||||||