Course Title: Network Programming

Part A: Course Overview

Course Title: Network Programming

Credit Points: 12.00

Terms

Course Code

Campus

Career

School

Learning Mode

Teaching Period(s)

COSC1176

City Campus

Postgraduate

140H Computer Science & Information Technology

Face-to-Face

Sem 2 2006,
Sem 2 2007,
Sem 2 2008,
Sem 2 2009,
Sem 2 2010,
Sem 2 2011,
Sem 1 2012,
Sem 1 2013,
Sem 1 2015,
Sem 1 2016

COSC1176

City Campus

Postgraduate

171H School of Science

Face-to-Face

Sem 1 2017,
Sem 1 2018,
Sem 1 2019,
Sem 1 2020

COSC1179

City Campus

Undergraduate

140H Computer Science & Information Technology

Face-to-Face

Sem 2 2006,
Sem 2 2007,
Sem 2 2008,
Sem 2 2009,
Sem 2 2010,
Sem 2 2011,
Sem 1 2012,
Sem 1 2013,
Sem 1 2015,
Sem 1 2016

COSC1179

City Campus

Undergraduate

171H School of Science

Face-to-Face

Sem 1 2017,
Sem 1 2018,
Sem 1 2019,
Sem 1 2020

Course Coordinator: Dr Fengling Han

Course Coordinator Phone: +61 3 9925 3402

Course Coordinator Email: fengling.han@rmit.edu.au

Course Coordinator Location: 14.11.27

Course Coordinator Availability: Thursdays 3:00-5:00pm


Pre-requisite Courses and Assumed Knowledge and Capabilities

Enforced Pre-requisite Courses 

Successful completion of:

COSC1295 Advanced Programming (Course ID 004316)

OR

COSC1073 / COSC2081 / COSC2135 / COSC2681 Programming 1 (Course ID 004065)

OR

COSC1284 Programming Techniques (Course ID 004301)

OR

COSC2801 Programming Bootcamp 1 (Course ID 054079)

OR

COSC2799 IT Studio 1  (Course ID 054074)

Note: it is a condition of enrolment at RMIT that you accept responsibility for ensuring that you have completed the prerequisite/s and agree to concurrently enrol in co-requisite courses before enrolling in a course.

For your information go to RMIT Course Requisites webpage.

 

Assumed Knowledge

C programming, as taught in Advanced Programming Techniques (COSC1076 or COSC2207)

Computer Networking, as taught in Data Communications and Net-Centric Computing (COSC1111 or COSC2061)


Course Description

The course is an introduction to programming applications that use computer networks. The focus is on problem solving with emphasis on network programming. The operation and characteristics of major computer networks are studied because of their strong influence on programming interfaces (APIs) and application design.


Objectives/Learning Outcomes/Capability Development

Program Learning Outcomes

This course contributes to the following program learning outcomes:

  • PLO2: Problem Solving - Apply systematic problem solving and decision-making methodologies to identify, design and implement computing solutions to real world problems, demonstrating the ability to work independently to self-manage processes and projects.
  • PLO4: Communication - Communicate effectively with diverse audiences, employing a range of communication methods in interactions to both computing and non-computing personnel.


Upon successful completion of this course you should be able to

  1. analyse the requirements of a networked programming environment and identify the issues to be solved;
  2. create conceptual solutions to those issues and implement a programming solution;
  3. understand the key protocols that support the Internet;
  4. apply several common programming interfaces to network communication;
  5. understand the use of TCP/UDP Sockets 
  6. apply advanced programming techniques such as Broadcasting, Multicasting


Overview of Learning Activities

This course consists of lectures, workshops, and laboratory classes. The lectures will be devoted to the presentation of new material. The workshops reinforce the concepts via exercises, and show the material from a different perspective. The laboratory sessions will be used for practical exercises illustrating the material and providing hands-on experience.


Overview of Learning Resources

You will make extensive use of computer laboratories and relevant software provided by the School. You will be able to access course information and learning materials through myRMIT and may be provided with copies of additional materials in class or via email. Lists of relevant reference texts, resources in the library and freely accessible Internet sites will be provided.

 

Total Study Hours

Teacher Guided Hours: 48 per semester

Learner Directed Hours: 96 per semester


Overview of Assessment

This course has no hurdle requirements.

Assessment tasks

Assessment Task 1:  Assessed practice (in lab)

Weighting 25%

This assessment task supports CLOs 1,3,4,5,6

Assessment Task 2: Assignment

Weighting 25%

This assessment task supports CLO 1,2,3,5,6

Assessment 3: Final examination

Weighting 50% 

This assessment supports CLOs 1-6

Please note that postgraduate students are expected to demonstrate knowledge and skills at postgraduate level.