Introduction To Java - MFC 158 G
Fall 2000
Final Project – Homework Assignments Tracking Application
using JDBC (worth 25% of the final grade)
Date assigned:
November 14, 2000
Due date: Saturday December 9 – midnight (no extensions can
be given)
Objective of the assignment:
-
to learn how to work
with SQL and data access using Java
-
to become comfortable
developing more complex Java applications
-
to gain experience
with modifying code that you may not be familiar with
-
to continue building
experience in researching answers to questions
-
to reinforce some of
the earlier concepts discussed in the class (cumulative knowledge)
Description
In this assignment,
you will create a Homework Assignments Java application. This application would allow a student to
keep track of their assignments for each class they are taking.
This application must
be developed to run as character based and graphical. It should be simple and intuitive for the user.
We will store all of
the tasks using either an Oracle database or Access database. Your program must facilitate at least one of
these.
(Graphical
application only) The user will have
the ability to enter new data as well as modify it, particularly for marking an
assignment as completed.
The following fields are required for the task file:
-
courseNumber (String
of size 6) - i.e. MFC158
-
description (String of size 30)
-
complete (String of
size 1) value of Y or N
-
dateAssigned (date
data type) value of DD-MMM-YYYY
-
dateDue (date data type) value of DD-MMM-YYYY
-
hoursWorked (number)
The functions needed by the user (by application):
GUI application
-
adding tasks
-
deletion of tasks
-
marking of completed
tasks (complete=’Y’) and hoursWorked
-
Allow the viewing of
tasks, sorted by courseNumber
-
Allow the viewing of
a filtered list - completed tasks or incomplete tasks.
Character based application – using a
menu based system
-
Allow the viewing of
tasks, sorted by courseNumber
-
Allow the viewing of
tasks, sorted by dueDate
-
Allow the viewing of
a filtered list - completed tasks or incomplete tasks.
As you will recall,
one of the first things to consider before beginning development is to ask the
question “does this functionality already exist somewhere?” or “Is there a
program that exists that could function as a suitable template to solve the
problem?”. Luckily, the answer is yes! If this wasn’t the case, we would need more than 2 weeks to
accomplish this assignment.
We will utilize a set
of programs from the textbook CD as well as class examples to accomplish our
goal. Refer to:
-
the examples in
Chapter 18 (fig 18.24, 18.29, 18.30).
-
code located on
UBUNIX at:
~fineberg/mfc158labs/final_project
In order to access
the Oracle libraries for JDBC access in Unix, you will need to execute the
following script to change your CLASSPATH variable. This is done from the Unix prompt as follows:
>
source
~fineberg/mfc158labs/set_oracle_classpath
Recommended steps
1) create the tables for the sample programs
2) compile and test all the sample programs (using the newly
created databases).
3) Create the tables for the project (using the specifications
from above).
4) Modify the programs and create new ones to accomplish the
assignment
5) Change class names and variable names to reflect names that
properly describe your functionality.
6) Submit all the source code for running the
applications. No data is necessary, as
I will test the programs with a database using the same field names and sizes.
7)
Submit a README.TXT explaining how to run the programs.
*** Avoid losing
points on this project ***
Please
follow these instructions…
1.
Document any missing features with your project.
2.
Programs that don't compile will lose as much as 50% of the
score when grading, if not accompanied with a note describing the problems
encountered.
3.
Make sure that attachment file names are the same as the
class name (including case) when submitting.
4.
If code from the book is part of your work, site that fact
in the source code.
5.
Don't wait until 2 days before a project is due to get
help!!!!