The basic requirement is to implement a three-tier application, with proper client-server interaction between its layers. The contents of the project needs to have sufficient complexity to allow demonstration of the mastering of techniques of user interface, functional and database design.
The contents are chosen by each group, but need approval from the instructor. Implementation technology is allowed to be MS Visual Studio.NET C++ or C# or Eclipse C++ with Qt for the GUI and functional layers, and MS Access, MS SQL Server or MySQL for the database layer.
The following two examples serve to illustrate possible project concepts, but groups are encouraged to come up with their own idea.
Your group is in charge of implementing an on-line circulation system for a large library. The management envisions a program that can be used by librarians to select an item (book, periodical, video tape, CD, DVD, software etc.) from the catalog by Id (call) number and a number of other parameters, such as author, title, ISBN number, publication date and so on. In case of name, title etc. matching, a list of possible choices should appear on the screen. In any case the number of available copies in would be displayed (for now assume only one operator). Customers should be able to check out and return items, place items on hold and check for availability (when an item will be returned), renew (extend) borrowing and recall an item (this prevents renewal). The inventory should be updated after every transaction. The library should be able to get a list of loaned items (with customer information) and list all items which are overdue. It should be able to recall overdue items (by sending recall/overdue notices) and fine charges. Customer (borrower) records must be maintained. Each customer should have at least an id number, name, address, list of borrowed items and charges due (if any). We want the business office to be able to send out bills and record payments. Access for each part of the program should be controlled through one menu. Various access levels (privileges) should be maintained (system administrator, manager, librarian etc).
A new mail order company is forming. The owners want to create a program that can be used by operators to select an item from the catalog by Id number or name. In the case of name a list of possible choices should appear on the screen. In any case the number of items in stock should appear (for now assume only one operator). The inventory should be updated after every transaction. The warehouse should be able to get a list of orders (with customer information) and list all items whose stock is low. Customer records must be maintained. Each customer should have at least an id number, name, address and balance due. We want the business office to be able to send out bills and record payments. Access for each part of the program should be controlled through one menu.
Final Project Documentation Requirements