CSC412 Syllabus

This course monitors students doing an internship. The exact nature of the course will be dependent on the nature of the internship and the requirements of the host company. It is expected that every internship will include some of the following:

  • interaction with clients
    Meeting clients to determine their needs, establish resources they have and can expend on a solution, decide on a time line for solution, determine their in-house capabilities, profile the system users.
  • problem analysis
    Understand and precisely document the problem to be solved, and obtain agreement from the client. Determine inputs, outputs, and assumptions. Establish the expected nature of the solution in terms of software and hardware.
  • software and hardware design
    Use formal practices to design and document a solution in terms of software and hardware. Note what solution components can be purchased "off the shelf", and what components will require development. Produce design documentation.
  • software implementation
    Use programming and other software development skills to translate a software design into a working system. Do testing and quality control.
  • hardware installation
    Purchase and install hardware. Test installation to ensure it meets the requirements of the proposed software solution.
  • software management
    Install and management software components, including purchased components and developed components. Install mechanisms for software upgrades and maintenance.
  • documentation
    Write system and user documentation for hardware and software. Produce online documentation and man pages.
  • user support
    Prepare and provide user support for hardware and software. Install and use help desk systems. Provide training sessions for users.

Organization

The internship must have faculty member who has agreed to be the internship supervisor. The internship will normally be arranged by the student, who must establish the contact with the host company, determine the nature and extent of the internship, and arrange a contact person from the host company. The student, internship supervisor, and contact person at the host company must agree upon:

  • The nature of the task(s) to be performed. This should be reasonable detailed, to ensure that both the host company and the student understand their working relationship.
  • The number of hours the student will work, and a schedule for those hours. Normally one credit will correspond to 50 hours of internship.
  • The deliverables of the internship, beyond the required academic output described below, that will contribute to the activities of the host company.

The student must write an "internship proposal" of approximately 400 words to document these points. The internship supervisor and course instructor must approve the proposal, to ensure that the internship has appropriate Computer Science content, and that the student will gain sufficient experience and knowledge from the time spent. The internship must be substantially different from any previous internship completed. The internship supervisor, contact person, and the course instructor will review the proposal, and return it with feedback for improvement. The final proposal (for grade) must be submitted after that, taking the feedback into account.

At the end of the internship a report must be submitted. The report is expected to be approximately 1200 words. The internship supervisor, contact person, and the course instructor will review the report, and return it with feedback for improvement. The improved final report (for grade) must be submitted after that, taking the feedback into account.

At the end of the internship the student must give a 20 minute presentation on the design.

All documents and presentation slides must be emailed to the project supervisor and the course instructor in PDF form. At the end of the internship, a copy of all deliverables must be emailed to the project supervisor and the course instructor. All documents and deliverables will be added to the department's project archive. The internship supervisor and contact person will evaluate the student's performance. No grade will be approved without the documentation, slides, and deliverables.