INLS 490-154: Introduction to Information Retrieval System Design and Implementation

Fall 2008. Wednesdays 9:30am-12:15pm, Manning 214

[ Home ] [ Syllabus ] [ Assignments ] [ Project ] [ Resources ]

Instructor: Chirag Shah
Email: [first name][at]unc[dot]edu
Phone: (919) 265-3082
Office: Manning 303
Office hours: Tuesday 10am-12pm, or by appointment
Latest news

Course Description
Tools for organizing and accessing information have become indispensable. It is critical, therefore, to understand their design and operational foundations. In this course students will have an opportunity to learn about search engines, web crawling, and some Web 2.0 technologies based on hands-on experience and with a focus on techniques that can be used to access, retrieve, organize, and present information. Students will work with practical developmental tools and learn relevant concepts through experimentation. For instance, students will employ an open source search engine and learn about indexing, retrieving, and ranking techniques.

The students are expected to have a previous exposure to some programming (C, Java, Perl, or PHP). Basic programming experience acquired in an introductory programming course such as INLS 490-153 or in some professional settings is recommended.

Course Materials
This course has no textbook. Various articles and book chapters will be assigned based on the content being covered. All the students are expected to bring their laptops to the class (don't forget the charger!).

Course Goals
By the end of the course, students should be able to:
  1. Use and/or implement various search engine services such as stemming, indexing, retrieval, and ranking.
  2. Build a set of Web crawlers to collect data from the Web.
  3. Mesh a set of Web 2.0 services to implement unique applications.

Instructional Methods
The structure of the course will be lab-like classes with power point presentations, discussions, and hands-on exercises. The assignments and evaluations will be based on practical projects that the students will do by themselves or in small groups.

Attendance is expected for all scheduled classes. If you are ill or have an emergency situation, please contact the instructor prior to the class meeting.
You are expected to come to class on time, since late arrivals disturb the learning environment.
Cell phones are also a disruption, so you need to put your phone on silent mode or turn it off.

Quizzes, Tests, and Final Examination
  1. Quizzes will be given six times during the course on material covered from the lectures after the previous quiz. They will consist of short answer and identification, and given in the first 15 minutes of class. Since quiz material is immediately discussed following their administration, quizzes cannot be made up if missed. A failing grade will be entered if missed. The lowest grade will be dropped and not calculated into the overall quiz percentage/grade.
  2. Small assignments based on the material covered in the class are scheduled throughout the semester.
  3. Final project will be due at the end of the semester (December 7).

Course Evaluation
Final project25%
[H] High Pass (95% - 100%)
[P+] Pass + (90% - 94%)
[P] Pass (85% - 89%)
[P-] Pass - (80% - 84%)
[L] Low Pass (70% - 79%)
[F] Fail (0% - 69%)

The quizzes will consist of multiple choice and short answer. The assignments will involve a little bit of programming and usually consist of extending something that we did in the class. The final project will require you to use several concepts learned during the course and put them in practice with some real-life problem. To prepare for the exams, you should carefully review the lesson objectives, handouts, and assigned readings.

Academic Integrity
The Honor Code is the heart of integrity at Carolina and we subscribe to all its tenets in this course. If you have any questions about your responsibility or the responsibility of a faculty member under the Honor Code, please call the Office of the Student Attorney General (919) 966-4084 or the Office of the Dean of Students (919) 966-4041. If you want to read more about the Honor Code or Honor System at Carolina, visit: or

How to Succeed in this Course
Successful students will attend class regularly. If you know you must miss a class, please contact the instructor in advance, either by phone or email. You can obtain assignments or notes from a fellow classmate or from the instructor. In the case of a prolonged absence from class, you should schedule an appointment with the instructor so we can discuss the course material and concepts that you missed.
Successful students will pay close attention to the course goals and objectives, because they will help you master the course material. If you have any questions about any of the objectives, please ask the instructor. Questions are encouraged during class for clarification. Remember that you're probably not the only one in the class with the same question. If you have questions about material from previous classes, please email me prior to the next class session, and I'll address your question at the beginning of the class session, prior to any quizzes.
Successful students will talk to their classmates about the course material. You will find that they can help you understand many complex issues.
Successful students will come prepared to the class with assigned readings for that class. This will help you comprehend the material for that class better. Regular assignments will also be given at the end of each class. Doing these assignments and turning them on time (typically before the next class), will help you obtain higher-order learning goals for this course.

Course Objectives
These are stated within the table for the class sessions and at the beginning of each class session. Use these as a study guide and as a checklist for your progress during the semester.

  1. Arrive promptly and on time to class.
  2. Respect yourself, classmates, and the instructor.
  3. Participate in classroom discussion.
  4. Display preparedness for class through completing reading assignments.
  5. Present content knowledgeably with supported reasoning.

| Chirag Shah | Last update: December 19, 2008 |