Second Annual Computer Programming Contest 2003
Sponsored by
The Association of SriLankan Graduates of Canada

Entrance Requirements

1. This contest is open to all high-school students from grades 10 to 12.
2. Only one submission from the given categories below is allowed for each group.
3. No greater than 3 students per each group.
4. All work has to be original, and unique. No prior work from other projects can be submitted as an entry into this competition. If any submitted material is found to be plagiarized, the team will be automatically disqualified from the competition.

If you want to participate in this competition, please fill out this application form and email it to manni_vannan@yahoo.com or
theivendirarajahk@hotmail.com

Deliverables

All source code, executables, documentation and the project entrance form need to be submitted by the project deadline - October 31st 2003.

Categories

1) DVD/Video Store Rental Management Software

Create an application that will allow a DVD/video rental store to manage their movies. The system should:
- keep a list of all movies (in DVD and video format)
- have functionality to support multiple copies of same movie
- search the store inventory of movies by title, director, actors, etc.
- add new movies, or delete and edit existing movies in the database
- keep track of whether a given movie is out for rent or in the store. If it is out for rent, when it's supposed to be returned.
- keep track of all the members of the rental store
- search system for a given member by the name, telephone number, etc.
- add new members, or delete and edit existing members in the database
- describe what movies a certain member has out, and disallowing them from renting more than a fixed maximum amount of rentals

Optional Features

- Automatically calculate late fees for each member.
- Link related movies. For example, searching for the movie Terminator will bring up information about that movie, and will point to Terminator 2.

The application front-end must be developed in a graphical environment preferably using Visual Basic, Visual C++, or Java Swing for the Win32 platform.

2) Board Game

Develop a program that will allow one or more persons to play a popular board game or card game of your choice on a computer. The application must be created in a graphical environment (2D or 3D); it cannot be a text-based game. Extra credit is given to those who can create one or more computer opponent (with average skill) for the game they choose to implement.

You can implement your game in any programming language of your choice. We recommend using a visual programming environment such as Visual C++, Visual Basic, or Java Swing to create your software.

3) Online Calendar application

Create a web based application that allows one or more users to keep track of appointments and events of their daily life. It should allow a user to make appointments for any given hour, of any given day in the next 2 years (2004 and 2005). The following are the required features of the system:
a) Each user needs to be authenticated using an username and password combination, before letting them manage their own appointments.
b) A user should be able to get a graphical view of their appointments for a specified month, week and day.
c) A user should be able to add a certain appointment by giving the date, time and description of the task
d) A user should be able to edit an existing appointment
e) An user should be able to delete an existing appointment

Optional features

f) When adding new appointments, notify user if the new appointment might conflict with an existing one.
g) Have the option to automatically send email notification to the user, right before the time of a given appointment.

We require that the following functionality be implemented using CGI with Perl or C, Microsoft ASP, PHP, or Java Servlets. If you chose to obtain persistence of user data using a database, it is recommended to use a basic database such as MySQL or Microsoft Access. You can also implement the storage of appointment data using files, but it should be noted that this solution will be slower, less efficient and not very scalable.

Awards


The entries will be judged by a panel appointed by the ASGC, and their decisions are final. The top three contestants in each category will be recognized through awards and/or prizes. The prizes and awards will give out at the Annual Dinner to be held on the 29th of November,2003 at Eastown Banquethall, 2648, Eglington avenue.East, Scarborough.