Graduate Studies Reports Access

Graduate Course Proposal Form Submission Detail - CNT6716
Tracking Number - 2933

Edit function not enabled for this course.


Current Status: Approved by SCNS - 2014-12-02
Campus: Tampa
Submission Type: New
Course Change Information (for course changes only):
Comments: Elective for MSIT, to GC; Need text or readings. Emailed 12/10/13. Repeatable up to 4 times. Approved; to Sys 4/23/14; to SCNS 5/1/14. Nmbr 6008 apprd as 6716, eff 1/1/14


Detail Information

  1. Date & Time Submitted: 2012-09-11
  2. Department: Deans Office
  3. College: EN
  4. Budget Account Number: 8-3807-000
  5. Contact Person: Alessio Gaspar
  6. Phone: 863667088
  7. Email: alessio@usf.edu
  8. Prefix: CNT
  9. Number: 6716
  10. Full Title: Network Programming for IT
  11. Credit Hours: 3
  12. Section Type: C - Class Lecture (Primarily)
  13. Is the course title variable?: N
  14. Is a permit required for registration?: N
  15. Are the credit hours variable?: N
  16. Is this course repeatable?:
  17. If repeatable, how many times?: 0
  18. Abbreviated Title (30 characters maximum): Network Programming
  19. Course Online?: B - Face-to-face and online (separate sections)
  20. Percentage Online: 0
  21. Grading Option: R - Regular
  22. Prerequisites: None
  23. Corequisites: None
  24. Course Description: Network programming using high level languages. Topics covered will include distributed computing using remote method invocation technologies, peer-to-peer protocols, w-level socket-based programming and mobile code.

  25. Please briefly explain why it is necessary and/or desirable to add this course: Needed for new program/concentration/certificate
  26. What is the need or demand for this course? (Indicate if this course is part of a required sequence in the major.) What other programs would this course service? Increased education access, education attainment and economic development are key priorities for the Florida region served by USF. The U. S. Labor Department, Florida Works, and regional development councils have identified key occupational growth areas anticipated in education; management and administration; nursing and health sciences; criminal justice; industrial, manufacturing, warehousing and distribution engineering; information technology and industrial applications of technology.
  27. Has this course been offered as Selected Topics/Experimental Topics course? If yes, how many times?
  28. What qualifications for training and/or experience are necessary to teach this course? (List minimum qualifications for the instructor.) PhD
  29. Objectives: By taking this course, students will acquire the following skills and knowledge;

    - Concurrent programming problems and classical solutions, application to multithreaded java programming

    - Low level Java network programming, notion of ports and sockets

    - Overview of remoting protocols (e.g. RPC, XML RPC) with focus on Java RMI

    - Peer to peer protocols and implementations

    - Mobile code

  30. Learning Outcomes: Upon the completion of this course, students are expected to demonstrate mastery of the following skills and knowledge through implementation in applications code:

    - Concurrent programming problems and classical solutions, application to multithreaded java programming

    - Low level Java network programming, ports and sockets

    - Remoting protocols (e.g. RPC, XML RPC) with focus on Java RMI

    - Peer to peer protocols and implementations

    - Mobile code

  31. Major Topics: This course will be articulated in 3 parts;

    Part #1 Java Concurrent Programming

    - Multithreading in Java

    - Concurrency classical problems

    - Concurrent design patterns

    Part #2 Java Networking

    - Networking protocols and Java Streams

    - Elementary services (e.g. DNS lookups) and sockets programming

    - Remote method invocation

    Part #3 Advanced Topics

    - Peer to peer protocols in Java (e.g. JMS, JXTA)

    - Mobile code

    - Quality of service considerations applied to multimedia contents streaming

    Each part will be concluded by an in-class examination, the last part will be covered by the final.

    One to two projects will be assigned in the course of the semester (e.g. developing a multithreaded web server in java, extending it to serve streaming multimedia contents)

  32. Textbooks: Java Network Programming, 3rd Edition, Elliotte Rusty Harold, 2004 O’Reilly
  33. Course Readings, Online Resources, and Other Purchases: Java RMI, William Grosso, 2001, O’Reilly

    Concurrent Programming in Java: Design Principles and Patterns 2nd Edition, Prentice Hall, D. Lea

  34. Student Expectations/Requirements and Grading Policy: Students will be evaluated using in-class exams (paper-based or on computer), projects and research papers assignments. They will also be evaluated on their attendance as well as

    participation to in-class and online learning activities. Each student will be allowed one unexcused absence. If a student is absent more than once, each absence will reduce the student’s final grade by three points.

    In-class exams 45%

    Projects 30%

    Case Study 15%

    Participation 10%

    The course final is schedule to be given during the approved University final examination period. Please see the USF Policies and Procedures Manual for more information (http://isis.fastmail.usf.edu/usfgc/gc_pp/pp.htm).

  35. Assignments, Exams and Tests: See V. above.
  36. Attendance Policy: Course Attendance at First Class Meeting – Policy for Graduate Students: For structured courses, 6000 and above, the College/Campus Dean will set the first-day class attendance requirement. Check with the College for specific information. This policy is not applicable to courses in the following categories: Educational Outreach, Open University (TV), FEEDS Program, Community Experiential Learning (CEL), Cooperative Education Training, and courses that do not have regularly scheduled meeting days/times (such as, directed reading/research or study, individual research, thesis, dissertation, internship, practica, etc.). Students are responsible for dropping undesired courses in these categories by the 5th day of classes to avoid fee liability and academic penalty. (See USF Regulation – Registration - 4.0101,

    http://usfweb2.usf.edu/usfgc/ogc%20web/currentreg.htm)

    Attendance Policy for the Observance of Religious Days by Students: In accordance with Sections 1006.53 and 1001.74(10)(g) Florida Statutes and Board of Governors Regulation 6C-6.0115, the University of South Florida (University/USF) has established the following policy regarding religious observances: (http://usfweb2.usf.edu/usfgc/gc_pp/acadaf/gc10-045.htm)

    In the event of an emergency, it may be necessary for USF to suspend normal operations. During this time, USF may opt to continue delivery of instruction through methods that include but are not limited to: Blackboard, Elluminate, Skype, and email messaging and/or an alternate schedule. It’s the responsibility of the student to monitor Blackboard site for each class for course specific communication, and the main USF, College, and department websites, emails, and MoBull messages for important general information.

  37. Policy on Make-up Work: No credit will be given for missed/late work unless the student has a documented medical or family emergency.
  38. Program This Course Supports: No credit will be given for missed/late work unless the student has a documented medical or family emergency.
  39. Course Concurrence Information: None


- if you have questions about any of these fields, please contact chinescobb@grad.usf.edu or joe@grad.usf.edu.