Class Project
CS520, Fall 2006
The project is a group project, and each group should consist
of
three to five students. You may choose one of the following projects,
and note that each project has its own requirements.
[Projects]
1. CSNS
- Admin Interface
This project will implement some administration
functionalities for CSNS. The basic
features include
- Add, edit, search, enable/disable users
- Send email to users
- Add and edit courses and sections
The advanced features
include
- Ajax UI controls
- Compose and store course journals
- Proper access control for various roles
2. CSNS -
Survey Module
This project will implement a survey module for CSNS. For basic
features, implement a survey builder that allows an
administrator user
to create a survey that consists of the following types of questions:
- Single-Choice
Questions.
A single-choice question consists of a question statement and a number
of choices, and a user may choose only one of the choices as the answer.
- Multiple-Choice
Questions.
A multiple-choice question is similar to a single-choice question,
except that a user may choose more than one choice.
- Single-Answer
Questions.
A single-answer question requires a user to write a short answer, which
may be a sentence or a short paragraph. Note that unlike for
single-choice questions, the user must write up the answer instead of
choosing it from a set of given choices.
- Multiple-Answer
Questions.
A multiple-answer question is similar to a single-answer question,
except that a user may give multiple answers.
- Rating
Questions. A
rating question lets a user to choose an integer number between a
minimal rating and a maximal rating, both of which are also integers.
Note that although rating questions seem to be similar to
single-choice questions, you may have to handle them differently,
because the answers to rating questions need to be treated as numerical
values in order to allow operations such as calculating average ratings.
For advanced
features, let the users take the created surveys and
collect the results.
3. CSNS
- Forum Module
This project will implement a forum module for CSNS. The forum
module should have most of the functionalities provided by a
standalone
forum application like phpBB,
as
well as some CSNS-specific features. In particular, the basic features
include:
- One forum for each course, and whenever a new course is
added, a new forum is automatically created.
- Create forums that are not associated with a course, e.g.
"Announcements" or "General Discussion" forum.
- Basic forum functionalities such as creating topics and
replying to topics.
- Use a rich
text editor
- A user may subscribe to a forum, in which case whenever a
post is made in that forum, the user receives an email notification.
- The instructor and the students in a class are
automatically subscribed to the class forum. Of course, they may
unsubscribe from the forum, or subscribe to other class forums.
- Full text search
and for advanced features include one or two of the following::
- Allow file attachments in posts
- Ajax UI controls
- RSS feeds
- Web services
4. Choose
Your Own Project
You may choose your own project, using any programming
language and
software/hardware platform you are familiar with, as long as the
project implements all the basic
features listed below:
- Database access
- Authentication and
authorization of different types of users
- File uploading
- Email
- Full-text search
- RSS feeds
as well as two to three advanced features such as:
- SOAP web services
- AJAX UI
enhancements
- Location-based service using
Google or Yahoo! Maps API
- Recommendation system based
on user preference and profiling
- Pluggable
authentication modules (both database and LDAP)
- Comprehensive performance
study
[Requirements]
- All projects must use a source version control system.
- All CSNS projects must follow existing directory structures
and coding conventions.
- All basic features must be completed by the end of Week 7
(November 11)
- All advanced features must be completed by the end of Week
10 (December 3)
[Grading]
Project Milestones
|
Date |
Grade |
Project description |
Oct 3, 2005 |
10% |
Basic features completed |
November 14 |
50% |
Advanced features
completed |
December 3 |
30% |
Project presentation |
|
10% |
Individual Performance Factor |
|
x0.5 to x1.0 |