[Problem Description]
In this exam you are going to develop an online course management application for the CS department. Your application must use the MVC architecture as discussed in class, and the application must meet the following requirements:
1. Display Courses
The application should have a course listing page that lists all the courses that are currently managed by the application. For example:
Code | Name | Prerequisites | Operation |
CS120 | Introduction to Web Site Development | Edit | |
CS202 | Introduction to Object Oriented Programming | Edit | |
CS203 | Programming with Data Structures | CS202 | Edit |
CS320 | Web and Internet Programming | CS120 CS203 | Edit |
Note that a course consists of a code (e.g. CS120), a name, and zero or more prerequisites. The course listing should be sorted by course code in ascending order.
2. Add Courses
A user should be able to add courses. For example:
Code: | |
Name: | |
Prerequisite(s): |
|
Note that the prerequisites of the course are selected from the list of existing courses, and after the new course is added, the user should be redirected to the course listing page.
3. Edit Courses
Code: | |
Name: | |
Prerequisite(s): |
|
The Edit Course function should allow a user to change the code, the name, as well as the prerequisites of a course. Note that the edit course form should be pre-filled with the current information of the course, and the list of courses for prerequisites should not include the course itself. After the changes to the course are saved, the user should be redirected to the course listing page.
[Grading Criteria]