INTERNATIONAL BURCH UNIVERSITY
Graduate Study - Faculty of Engineering and Natural Sciences
3+2 Information Technology Master
2011-2012

SYLLABUS
Code Name Level Year Semester
CEN 563 Network Programming Graduate 1 Spring
Status Number of ECTS Credits Class Hours Per Week Total Hours Per Semester Language
Area Elective 7.5 3 0 English

Instructor Assistant Coordinator
Akif Kutlu, Assist. Prof. Dr. ZORAN CVIJANOVIC, Assoc. Prof. Dr.
no email no email

COURSE OBJECTIVE
The main goal of this course is to enable the students to develop the necessary skills for developing robust & scalable network applications and to build necessary basic knowledge for managing computer communication networks.

Objectives of this course are:

 To learn the basics of socket programming using TCP Sockets.
 To learn basics of UDP sockets.
 To develop knowledge of threads for developing high performance scalable applications.
To learn about raw sockets.
To understand simple network management protocols & practical issues.

COURSE CONTENT
Week
Topic
  1. Introduction to Network Programming
  2. Computer Communications and Networks
  3. Basic Web Concepts
  4. Streams
  5. Threads
  6. Looking Up Internet Addresses
  7. URLs and URIs
  8. Sockets for Clients and Servers
  9. Secure Sockets
  10. Non-Blocking I/O
  11. UDP Datagrams and Sockets
  12. Multicast Sockets
  13. URL Connections
  14. Protocol and Content Handlers, Servlets

LABORATORY/PRACTICE PLAN
Week
Topic

    TEACHING/ASSESSMENT
    Description
    • Lectures
    • Presentation
    • Project
    Description (%)
    Method Quantity Percentage (%)
    Project120
    Midterm Exam(s)120
    Presentation120
    Final Exam140
    Total: 100
    Learning outcomes
    • Creatively apply contemporary theories, processes and tools in the development and evaluation of solutions to problems in network programming;
    • Evaluate basic theories, processes and outcomes of network programming;
    • Apply theory, techniques and relevant tools to the specification, analysis, design, implementation and testing of a simple network programs;
    • Knowledge and critical understanding of the well-established principles of network programming, and of the way in which those principles have developed as technology has progressed
    • Knowledge of all of the main methods relevant to the field of network programming, and ability to evaluatecritically the appropriateness of different approaches to solving problems in the field of study
    TEXTBOOK(S)
    • Elliotte Rusty Harold, Java Network Programming, 3rd Edition, O'Reilly, 2004

    ECTS (Allocated based on student) WORKLOAD
    Activities Quantity Duration (Hour) Total Work Load
    Lecture (14 weeks x Lecture hours per week) 0
    Laboratory / Practice (14 weeks x Laboratory/Practice hours per week) 0
    Midterm Examination (1 week)1 0
    Final Examination(1 week)1 0
    Preparation for Midterm Examination 0
    Preparation for Final Examination60
    Total Workload: 0
    ECTS Credit (Total workload/25): 0