HOME INSTITUTIONAL INFORMATIONINFORMATION ON DEGREE PROGRAMMES Computer Engineering (in English)CERTIFICATE PROGRAMMESUSEFUL INFORMATION, RESOURCES & SERVICES FOR STUDENTSUSEFUL LINKS AND DOCUMENTSADITIONAL & SUPPORTING INFORMATION

SECTION I: GENERAL INFORMATION ABOUT THE COURSE

Course Code Course Name Year Semester Theoretical Practical Credit ECTS
60613MEEOZ-CME0225 Systems Programming 3 Fall 2 2 3 5
Course Type : Compulsory
Cycle: Bachelor      TQF-HE:6. Master`s Degree      QF-EHEA:First Cycle      EQF-LLL:6. Master`s Degree
Language of Instruction: English
Prerequisities and Co-requisities: N/A
Mode of Delivery: Face to face
Name of Coordinator: Dr. Öğr. Üyesi ÖZLEM FEYZA ERKAN
Dersin Öğretim Eleman(lar)ı:




Dersin Kategorisi:

SECTION II: INTRODUCTION TO THE COURSE

Course Objectives & Content

Course Objectives: The objective of this course to give students a theoretical and practical understanding of the internal operation and programming interface of Unix and windows systems, assembly language programming, the practical use and application of C standard I/O library functions.
Course Content: Windows environment and tools; Unix environment and tools; C programming; assembly language programming; Unix system calls. This course employs the project-based learning approach. In this respect aside from the conventional content the course has a project-based learning component. The project based-learning component aims realising one or more projects designed for learning purposes involving the development of certain intermediary and final deliverables in a step-by-step mannerby the students individually or in project teams. The evaluation of the project-based learning component involves grading the project deliverables and the project works by the instructor and/or a jury.

Course Learning Outcomes (CLOs)

Course Learning Outcomes (CLOs) are those describing the knowledge, skills and competencies that students are expected to achieve upon successful completion of the course. In this context, Course Learning Outcomes defined for this course unit are as follows:
Knowledge (Described as Theoritical and/or Factual Knowledge.)
  1) Know internal operation of a Windows system, windows environment and windows tools.
  2) Know the internal operation of a Unix system and command line interpreters.
Skills (Describe as Cognitive and/or Practical Skills.)
  1) Use programming interface to Unix system using system calls.
  2) Write assembly language programs.
  3) Design and write programs for simple system utilities
  4) Understand the role of concurrency in systems programming and write programs which generate, link and control multiple processes.
Competences (Described as "Ability of the learner to apply knowledge and skills autonomously with responsibility", "Learning to learn"," Communication and social" and "Field specific" competences.)

Weekly Course Schedule

Week Subject
Materials Sharing *
Related Preparation Further Study
1) Technology's Impact on Programs, Programs, Processes and Threads
2) Assignment of projects
3) Processes in UNIX
4) UNIX I/O
5) Files and Directories
6) UNIX Special Files
7) Submission of the first delivery of the project
8) Midterm
9) Signals
10) Times and Timers
11) POSIX Threads, Thread Synchronization
12) Submission of the first delivery of the project
13) Critical Sections and Semaphores
14) Connection-Oriented Communication, Connectionless Communication and Multicast
15) Submission of the final delivery of the project and presentation
*These fields provides students with course materials for their pre- and further study before and after the course delivered.

Recommended or Required Reading & Other Learning Resources/Tools

Course Notes / Textbooks: UNIX Systems Programming: Communication, Concurrency and Threads
Kay A. Robbins and Steve Robbins (Jun 27, 2003)
References: Advanced Programming in the UNIX Environment, Second Edition (Addison-Wesley Professional Computing Series) by W. Richard Stevens and Stephen A. Rago (Jun 27, 2005)

Level of Contribution of the Course to PLOs

No Effect 1 Lowest 2 Low 3 Average 4 High 5 Highest
           
Programme Learning Outcomes Contribution Level (from 1 to 5)
1) Has sufficient knowledge in mathematics, science, computer science and computer engineering; use theoretical and applied knowledge in these fields together to solve computer engineering problems 4
2) Uses and applies theoretical and applied sciences in the field of basic science subjects for the solution of computer engineering problems.
3) Analyzes computer engineering applications, designs and develops models to meet specific requirements under realistic constraints and conditions. For this purpose, selects and uses appropriate methods, tools and technologies.
4) Identify, define, formulate and solve complex computer engineering problems; for this purpose select and apply appropriate analytical and modeling methods 4
5) Selects and effectively uses modern techniques and tools and information technologies required for computer science and computer engineering applications. 4
6) Designs a complex computer and software based system, process, device or product to meet certain requirements under realistic constraints and conditions, including economics, environmental issues, sustainability, manufacturability, ethics, health, safety, social and political issues; For this purpose, it applies modern design methods. 4
7) Has information about the standards used in computer engineering applications. 4
8) Owns the competencies required by the constantly developing field of computer engineering and the global competitive environment.
9) Acquires communication in a Foreign Language (English) competence defined on the level of at least B1 in European Language Portfolio. (In programs whose medium of instruction is English, on the level of B2/B2+).

SECTION IV: TEACHING-LEARNING & ASSESMENT-EVALUATION METHODS OF THE COURSE

Teaching & Learning Methods of the Course

(All teaching and learning methods used at the university are managed systematically. Upon proposals of the programme units, they are assessed by the relevant academic boards and, if found appropriate, they are included among the university list. Programmes, then, choose the appropriate methods in line with their programme design from this list. Likewise, appropriate methods to be used for the course units can be chosen among those defined for the programme.)
Teaching and Learning Methods defined at the Programme Level
Teaching and Learning Methods Defined for the Course
Lectures
Laboratory
Project Preparation

Assessment & Evaluation Methods of the Course

(All assessment and evaluation methods used at the university are managed systematically. Upon proposals of the programme units, they are assessed by the relevant academic boards and, if found appropriate, they are included among the university list. Programmes, then, choose the appropriate methods in line with their programme design from this list. Likewise, appropriate methods to be used for the course units can be chosen among those defined for the programme.)
Aassessment and evaluation Methods defined at the Programme Level
Assessment and Evaluation Methods defined for the Course
Midterm
Presentation
Final Exam
Quiz
Jury Evaluation
Practice Exam

Contribution of Assesment & Evalution Activities to Final Grade of the Course

Measurement and Evaluation Methods # of practice per semester Level of Contribution
Homework Assignments 5 % 10.00
Project 1 % 30.00
Midterms 1 % 10.00
Semester Final Exam 1 % 50.00
Total % 100
PERCENTAGE OF SEMESTER WORK % 50
PERCENTAGE OF FINAL WORK % 50
Total % 100

SECTION V: WORKLOAD & ECTS CREDITS ALLOCATED FOR THE COURSE

WORKLOAD OF TEACHING & LEARNING ACTIVITIES
Teaching & Learning Activities # of Activities per semester Duration (hour) Total Workload
Course 14 2 28
Laboratory 0 0 0
Application 14 2 28
Special Course Internship (Work Placement) 0 0 0
Field Work 0 0 0
Study Hours Out of Class 14 1 14
Presentations / Seminar 4 1 4
Project 4 2 8
Homework Assignments 0 0 0
Total Workload of Teaching & Learning Activities - - 82
WORKLOAD OF ASSESMENT & EVALUATION ACTIVITIES
Assesment & Evaluation Activities # of Activities per semester Duration (hour) Total Workload
Quizzes 3 2 6
Midterms 1 6 6
Semester Final Exam 1 12 12
Total Workload of Assesment & Evaluation Activities - - 24
TOTAL WORKLOAD (Teaching & Learning + Assesment & Evaluation Activities) 106
ECTS CREDITS OF THE COURSE (Total Workload/25.5 h) 5