CSC400/3W: Introduction to Digital Libraries

2005


Course Description

Digital libraries are a specific type of information system that attempts to organise data and provide relevant services (such as search engines and directories) to users seeking information. This course will look at the various policy and technical issues involved in building digital libraries, as well as relevant standards and practices that are broadly applicable to networked system design in general and specifically Web application design.


Instruction

Instructor: Hussein Suleman (hussein@cs.uct.ac.za)
Office hours: by appointment
Office: 310 Computer Science Building

Lectures: 16, as per calendar (approximately 3 will be class discussions)

Credits: 2


Textbook/Notes

There is no prescribed textbook, but the following is recommended:

Digital Libraries
by William Y. Arms
Available online at http://www.cs.cornell.edu/wya/DigLib/

Electronic copies of slides will be made available on the class website on http://moodle.cs.uct.ac.za.


Course Outline


Grade Weighting

1 Essay (discussion and critical analysis), approximately 2 weeks in length (15%)

1 Programming Assignments, approximately 2 weeks in length (30%)

Class participation (15%)

Final Exam (40%), take home

DP Requirement: none


Collaboration

All assignments, tutorials and exams must be done strictly on an individual basis, unless otherwise specified for a particular task. Design and coding of programming assignments must be done strictly on an individual basis. It is acceptable to discuss with classmates the question but not the solution (neither algorithmically nor programmatically). In no way should the individual statements of a program or the steps leading to the solution of the problem be discussed with or shown to anyone except the teaching assistants, the instructor and the tutors. Any discussion of your program source code must be limited to these people.

Always give credit for work that is not entirely your own (e.g., parts of programs or algorithms derived from a book).

As with any other course, the CS departmental plagiarism policy applies to this course.


Assignments and Grading Policies

General

All graded work (whether in paper or email format) must be kept until the end of the semester.

In general, queries about grades MUST be made within a week of graded work being returned. No queries about any grades will be entertained after the final examination.

ALL students will be expected to complete ALL assigned work (assignments and examinations). If you miss ANY assigned work with a legitimate reason, speak to the instructor within a week or as soon as possible thereafter. Note that there are few legitimate reasons that will be accepted - these include condoned absences for recognised religious observances and hospitalisation or serious illness (with certificate).

Examinations

The final examination will be take-home (and also open-book and open-notes). It will be cumulative (i.e., covering all material of the course).

Answers must be typeset using a word processor and printed out on paper. No handwritten work will be accepted.

A submission date will be set when the exam is provided. No late submissions will be accepted.

Programming Assignment

All questions for assignments, along with all related requisites, will be available online on the course website.

Grading of programming assignments will be based on the following criteria :

  1. Correctness of program.
  2. Output from program that adequately demonstrates correctness.
  3. Documentation, internal and external, included as appropriate.
  4. Efficient use of algorithms and appropriate data structures.
  5. Stress - program must function correctly under all and/or extreme and unusual combinations of input.
  6. Creativity - credit for innovation in interface, implementation, style, etc.

All programming assignments are due at the date and time specified. No late submissions will be accepted unless a general extension has been granted. In very rare instances, exceptions may be made at the discretion of the instructor on an individual basis. Requests for extensions must be made at least 24 hours in advance of the due date.

All programming projects will be submitted electronically. The online submission system used to receive your assignments will provide the official timestamp used to determine whether a program is on time.  In some instances you may be required to write reports and/or do demonstrations of your assignment as well - these will be specified.

NOTE: You are not allowed to use the goto statement for any programming done in this course !

What constitutes Output ?

Output refers to screen dumps of the output generated by your assignment, also indicating input where relevant. These are typically cut-and-pasted into word-processor documents. The basic reason for them is so that the person grading your assignment need not have to run the program to see exactly what the output looks like.

Screen dumps are usually acquired on Windows systems by pressing the PrtScrn button on the keyboard and then "pasting" the clipboard's contents into a program such as "Microsoft Word". A similar cut-and-paste operation can be used on *nix systems. The file containing your output must be included with your submission.

A cleaner alternative is to structure programs such that input is obtained from one file and output is sent to another - both files should then be included with your submission. Where this is not possible the above solution should be adopted.

In all cases, all files in your submission must be appropriately named, with a README file provided if necessary, so the purpose of each file is obvious to markers.

What constitutes Creativity ?

Creativity is any substantial improvement beyond the basic solution - it can be applied to any part of the project. For example, the following are relevant to data structures assignments:

  1. User Interaction
  2. Visualization
  3. Testing
  4. Efficiency
Ask yourself these questions ...

Equipment and Programming Language

It is the responsibility of the student to submit programs that will successfully compile and execute on the standard departmental laboratory computers.

Information Dissemination and Communication

This is a lecture course. While attendance at lectures is not mandatory after the first day, all graded work (exams, assignments) will be based on material covered in the lectures.  Obviously, marks for class participation also indirectly depend on attendance.

Information will be added on a regular basis to the class website. All students will be expected to consult the website on a daily (Monday-Friday) basis for updates on assignments, tutorials, grades, hints, deadlines, etc.

All discussion of a general nature will take place on the discussion forum located on the class website. At the discretion of the instructor or TA, responses to individual email messages may be posted on the forum if the responses are relevant to all students.

Please refrain from posting anything of the following nature on the newsgroup, or in other fora set up for the class, as it may form the basis for a violation of university policy and/or a legal transgression:


Last updated : 21 February 2005 6.19pm