Network Programming, Applications, and Research Issues

Course
Identifier: 
COM S 487
  1. Credits and contact hours: 3 credits, 3 contact hours
  2. Instructor’s or course coordinator’s name: Wensheng Zhang/Ying Cai
  3. Text book, title, author, and year: None required
  4. Other supplemental materials: None

Specific course information

  1. Brief description of the content of the course: Programming paradigms for building distributed and networking applications, including multithreaded client-server programming, socket programming, distributed object frameworks and programming suites, and web computing and security. Introduction to some on-going research issues in distributed and networking applications, including peer-to-peer computing, multimedia communications, and mobile computing and networking. 
  2. Prerequisites or co-requisites: COM S 352 or CPR E 489 or equivalent
  3. Required, elective, or selected elective? Selected Elective

Specific goals for the course

  1. Specific outcomes of instruction:
  • An ability to design, implement, and evaluate a computer-based system, process, component, or program to meet desired needs. (2)
  • An ability to function effectively on teams to accomplish a common goal. (5)
  • An ability to engage in continuing professional development.
  • An ability to apply design and development principles in construction of software systems of varying complexity. (6)
  • An ability to use current techniques, skills, and tools necessary for computing practices.

Brief list of topics to be covered

  • Principle of Programming for Internet
    • Fundamentals of computer networks
    • Overview of Physical, Link, and IP layers
    • Principles of transport layer protocols
    • Socket programming
    • Introduction and programming of Application layer protocols
  • Principle of Programming for Distributed Systems
    • Fundamentals and design issues of distributed systems
    • Principles of programming with RPC, RMI, and CORBA
  • Distributed and Network programming for web computing
  • Distributed and Network programming for P2P systems
  • Protocol design and programming for mobile networks
  • Protocol design and programming for wireless sensor network systems