CSci 275 TDA Part 5: Application Development
Optional (Due: Tuesday, 2 April 2013.)
In this part of the team project, you will build a user-friendly, interactive front-end to your TDA
using JAVA, C/C++, VB, or Microsoft Access.
The main goal of this assignment is to create a client program that will access tables, retrieve data into your application, and make updates to the database. An important part of this exercise will be deciding which validation rules to enforce (so that the database will not become corrupted when users manipulate the contents) and where: either at the client side in your application using code, or on the server inside the DBMS using database constraints. Hint, you will probably use a combination of both.
Write an application that provides a user-friendly interface to the database created in parts 1 through 4.
Your application should support the functionality that you have outlined in the project plan in part 1.
However, it is ok to deviate from your original plan as long as you tell us what you have implemented.
At a minimum, your application should offer the user options for looking-up values,
adding new records into the database, modifying existing values, deleting values and running a few reports.
For example, if your TDA were about buying groceries online, you might offer options such as:
- Look up the price of a given item at a given store
- Find the location of a supermarket with the lowest price for a given item
- For supermarket managers, the ability to:
- add a new item,
- change the prices for existing items, or
- deleting items no longer sold
Your application grade will be based on the following criteria:
- Correctness and functionality: Are the minimum types of interactions supported? As outlined above,
your application must provide support for looking-up values, adding new records into the database,
modifying existing values, deleting values and running reports.
- Error checking, i.e., does the application together with the database guard against "most" of the
erroneous inputs a user could generate? As part of this, we also expect a brief discussion (part of
project documentation) on the trade-offs you took when implementing your validation code: how much
is done by the application vs. how much is handled in the database and why (see item 3 below). While
we donít expect your TDA to be absolutely fool-proof, a certain robustness with bad input is necessary.
- Project documentation (no more than 2 pages): Write a brief summary of your application, a
discussion on your error checking from item 2, as well as any limitations, problems, or issues you feel
are important for us to know so that we can appreciate your work.