CSCI 250 - Scalable Software
Spring 2017
Programming Project 3: Databases
Overview
In this project, each team will develop a desktop application using
SQLite. A convenient Java interface for
SQLite is SQLite JDBC.
Go to their
download page and select sqlite-jdbc-3.16.1.jar
.
SQLite is an application database system. You can think of it as an
alternative to using the regular filesystem for the storage of persistent
data. Here is an overview and examples of using
a database.
Ideas
The only domain requirement for your team's application is that there is a
natural need for persistent data storage. It should also have a GUI, built
using JavaFX.
Developing the Features and User Interface
For your application, develop a written scenario to contextualize the
application, its features, and its user interface. Justify each feature
and user interface element in terms of the scenario that describes the target
domain.
Teams
This assignment will be completed in teams of three or four. Teams will be assigned in class on Wednesday, March 15.
Deadlines
- Monday, March 13:
- Use cases, first draft
- Bring hard copy to class
- Wednesday, March 15:
- Use cases, final draft
- Bring hard copy to class
- Submission of preferences
- Assignment of teams
- Friday, March 17:
- Oral Presentation
- Demonstration of user interface
- Proposed division of labor
- Targeted features for first iteration
- Revised use-case document
- Monday, April 3
- Tuesday, April 4 (5 pm)
- First code review due
- Each team member will write an individual review!
- Monday, April 10
- Final system demo, during class
- Tuesday, April 11 (5 pm)