Computer Engineering | |||||
Bachelor | Length of the Programme: 4 | Number of Credits: 240 | TR-NQF-HE: Level 6 | QF-EHEA: First Cycle | EQF: Level 6 |
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,Ters-yüz öğrenme,Lecture | ||||
Level of Course | Başlangıç | ||||
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) comprehend basic systems programming concepts; 2) use UNIX-based environment; 3) use C programming language to design algorithms; 4) design basic systems software to solve simple engineering problems. |
Program Learning Outcomes/Course Learning Outcomes | 1 | 2 | 3 | 4 |
---|---|---|---|---|
1) An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics | ||||
2) An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors | ||||
3) An ability to communicate effectively with a range of audiences | ||||
4) An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts | ||||
5) An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives | ||||
6) An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions | ||||
7) An ability to acquire and apply new knowledge as needed, using appropriate learning strategies |
N None | S Supportive | H Highly Related |
Program Outcomes and Competences | Level | Assessed by | |
1) | An ability to identify, formulate, and solve complex engineering problems by applying principles of engineering, science, and mathematics | S | Exam,Lab |
2) | An ability to apply engineering design to produce solutions that meet specified needs with consideration of public health, safety, and welfare, as well as global, cultural, social, environmental, and economic factors | H | Exam,Lab,Proje |
3) | An ability to communicate effectively with a range of audiences | N | |
4) | An ability to recognize ethical and professional responsibilities in engineering situations and make informed judgments, which must consider the impact of engineering solutions in global, economic, environmental, and societal contexts | N | |
5) | An ability to function effectively on a team whose members together provide leadership, create a collaborative and inclusive environment, establish goals, plan tasks, and meet objectives | N | |
6) | An ability to develop and conduct appropriate experimentation, analyze and interpret data, and use engineering judgment to draw conclusions | N | |
7) | An ability to acquire and apply new knowledge as needed, using appropriate learning strategies | N |
Prepared by and Date | BUSE YILMAZ , February 2024 |
Course Coordinator | BUSE YILMAZ |
Semester | Fall |
Name of Instructor | Asst. Prof. Dr. BUSE YILMAZ |
Week | Subject |
1) | Introduction to Systems Programming & UNIX-based systems |
2) | More on UNIX-based systems and Linux Distros |
3) | Basic UNIX commands & system navigation |
4) | Shell Programming |
5) | Shell Programming |
6) | C Programming: Fundamentals of C Programming & Midterm #1 |
7) | C Programming: functions |
8) | C Programming: pointers & arrays |
9) | C Programming: characters and strings |
10) | C Programming: composite Data Type |
11) | C Programming: dynamic Memory Allocation & Midterm #2 |
12) | C Programming: file Processing (System-Level I/O) |
13) | C Programming: C preprocessor |
14) | C Programming: program organization & miscellaneous topics |
15) | Final Exam/Project/Presentation Period |
16) | Final Exam/Project/Presentation Period |
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 | ||||
Course Hours | 14 | 2 | 3 | 70 | |||
Laboratory | 5 | 2 | 2 | 20 | |||
Presentations / Seminar | 1 | 1 | 3 | 4 | |||
Project | 5 | 1 | 3 | 20 | |||
Midterm(s) | 2 | 16 | 3 | 38 | |||
Paper Submission | 1 | 3 | 1 | 4 | |||
Total Workload | 156 | ||||||
Total Workload/25 | 6.2 | ||||||
ECTS | 6 |