Please deploy your application on CS3, and upload all source files to CSNS. The source files should include all the source code, documentation (optional), and an HTML file final.html which contains a hyperlink to your application on the CS3 server. Note that file uploading will be disabled automatically after the due time, and late submission will not be accepted.
In this exam you are going to develop a web application that helps the CS department to map quarter courses to semester courses.
Your application must use a database to store the data, and you must submit an SQL script file final.sql which contains the statements to create and populate all the tables for the application. Your implementation must follow the MVC architecture and use JDBC for database access.
The main page of the application displays the courses and the course mappings managed by the application as shown below.
Add Course | Create Course Mapping
Quarter Courses | Semester Courses | Course Mappings |
---|---|---|
|
|
|
Note that all courses and course mappings should be listed in alphabetic order.
A user may click on Add Course to add a new course as follows:
Course:
Course codes like CS122 are unique, and for simplicity, we assume that all user input are correct so you do not need to do input validation. After a course is added, the user should be redirected back to the main page.
A user may click on Create Course Mapping to create a mapping between a quarter course and a semester quarter as follows:
Quarter Course | Semester Course |
---|---|
|
|
Note that a) the courses should be listed in alphabetic order, b) only courses that have not been mapped should be shown in the form, and c) the user can only select one quarter course and one semester course. After a course mapping is created, the user should be redirected back to the main page.
Grading
- Database and SQL (15pt)
- Main page display (30pt)
- Add course (20pt)
- Create mapping (35pt)
- final.html is missing or does not have the correct link to your application on the CS3 server (-10pt)
- Only features working correctly on the CS3 server will receive full credit. Partial credit will be given at my discretion.
- Please do not modify your files on the CS3 server after the due time. Doing so will be considered cheating.