Programming Exercise Guidelines
This course is programming intensive and three programming exercises will be assigned:
- Exercise I: (12%) Web-enabled system using a database (single user),
- Exercise II: (12%) Web-enabled system using an object-relational database (multiple users), and
- Exercise III: (16%) Mobile app using an embedded database.
The guidelines of exercise requirements and evaluations are as follows:
General Specifications
- They are individual exercises instead of team exercises.
- Students have to demonstrate their exercises to the instructor individually so misunderstanding would be minimized.
The instructor will prepare a set of test data to be used by all students.
An appointment is needed in advance.
(Zoom at https://und.zoom.us/j/2489867333 may be used for demonstration.)
- One exercise can not be used to cover two exercises.
- Absolutely no extra points will be given after grading.
Exercise I: A Web-Enabled Relational Database (single user)
Exercise II: A Web-Enabled Object-Relational Database (multiple users)
Notice though the requirements will not be strictly enforced, the exams will only cover the materials given in the class lectures.
- Exercises I and II have to be located at the following URLs, respectively:
http://undcemcs02.und.edu/~user.id/513/1/
and
http://undcemcs02.und.edu/~user.id/513/2/
and redirection (http-equiv="refresh"
) to the pages not hosted by http://undcemcs02.und.edu/~user.id/
is prohibited.
That is, you can only use the facilities provided by the public Unix servers at the College of Engineering to complete your exercises.
- Because of the limited resources provided by the College, fundamental tools such as CGI will be used for exercise construction.
Though basic tools instead of fancy ones are used, it is believed that almost all functions of web-enabled database projects can be completed by using these basic tools.
- Oracle database, an object-relational database, has to be used.
- Students have to post their code online so the instructor can download and execute it on his own computer if any suspicion.
- Exercises need to be put on the Web because of the following reasons:
- If the system is not web-enabled, it still requires graphical user interface, which is usually more difficult to construct compared to web interface.
- The instructor can easily grade and check the exercises.
- In addition, remote work is a trend for IT workers.
This course also allows you to learn how to do it by using the VPN (virtual private networks) to connect to our Linux server
undcemcs02.und.edu
, and having the exercises set up at the server and be accessed from the clients.
Exercise III: An App Using an Embedded Database
Android, which includes an embedded database SQLite, instead of iOS has to be used.
Comments
Few comments are about the programming exercises:
- According to a study, students in computer courses learn much more by building large-scale exercises instead of many small-scale test programs, which give fragmented knowledge contrary to solid understanding of the system.
- Time management is critical for software development.
If you are not able to complete the exercise, display whatever you have accomplished, so the instructor can give partial credit to your exercise.
- Web, mobile, and database programming is a must for IT developers, and the only effective way to learn software development is practicing, instead of studying concepts or writing some testing programs.
No pain, no gain 😂