Programming Exercise Guidelines
According to a study, students in computer-science 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 language.
However, not to overwhelm students by the large size, the exercise is divided into several sub-exercises.
Together, they give students an understanding of a large-size exercise development experience.
Though these exercises are related, you are NOT allowed to submit one exercise to cover two or more exercises.
The guidelines of exercise requirements and evaluations are as follows:
- They are individual exercises instead of team exercises.
- All software requires to include user interfaces, whose construction includes the following three approaches:
- Internet-enabled interface:
It is the most popular one and a trend for current IT systems.
The system entry page must be located at
http://undcemcs02.und.edu/~user.id/280/
and all pages must be hosted by http://undcemcs02.und.edu/~user.id/
.
- Graphical user interface:
It is the most difficult one (e.g., using AWT, Abstract Windowing Toolkit).
- Text user interface:
It is the least favorite one and an obsolete method.
An example is a 1-2-3 system like
Start Using the System.
1. Enter routes
2. List all routes
3. Show a specific route
4. Reset the system
5. Exit
Select (1/2/3/4/5): 3¶
⇓
Show a specific route.
Enter the route: 2¶
⇓
Route 2: South Middle School, Choice Fitness, Hugo, Columbia Mall, Altru, UND, Ralph, BK, Aerospace
1. Enter routes
2. List all routes
3. Show a specific route
4. Reset the system
5. Exit
Select (1/2/3/4/5): 2¶
⇓
...
|
- Internet-enabled interfaces are used because of the following reasons:
- Web user interface is a trend for information systems compared to native user interface.
- The instructor can easily grade and check the exercises.
- In addition, remote work is a trend for IT workers.
This approach 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.
- CGI (Common Gateway Interface) could be used to connect the Web to Java.
Though CGI is an old technology, it is simple, so students can jumpstart the exercise implementation as soon as possible.
If students are interested in web programming, check the CSCI 260 .NET and Web Programming and CSCI 457 Electronic and Mobile Commerce Systems.
- There is a trade-off of using web interfaces.
Web programs are modular; for example, each button is usually associated with a program.
The modularization makes the web programming easy because each program focuses on a specific task, but at the same time, the data will be lost when the program ends.
In order to save the data for later use, the data needs to be saved in a permanent storage like files or databases.
- For exercise submission, send the password for displaying the source code online to the instructor at wenchen@cs.und.edu (only one password for all interfaces and all exercises).
- The total weight of all four exercises (10% each) is 40% of the final grade.
- The instructor will prepare a set of test data to be used by all students.
- 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.
- Absolutely no extra points will be given after grading.