This page contains information about electronic submission for programming assignments.
For this class, we will be using a submission software called bsubmit.
It behaves differently from the old submit program that you may be used to.
The bsubmit program is a commandline program and it's only available on an ITS Unix machines (such as nunki.usc.edu or aludra.usc.edu). Everyone has a shell account (i.e., an account that you can run a Unix "shell", meaning that it has a commandline user interface) on nunki.usc.edu. In order to run the bsubmit program, you must ssh into your account on nunki.usc.edu and run the program there. nunki.usc.edu runs the Solaris operating system which is a type of Unix system, so you need to be familiar with some basic Unix commands. The current time at the submission server at merlot.usc.edu is 22Dec2024-10:25:09 (refresh this page to see the current time). Platform for Programming Assignments
Since grading of all programming assignments must be done on either nunki.usc.edu
in the grading account (which you do not have access to)
or on a 32-bit Ubuntu 16.04 machine running inside VirtualBox/VagrantBox,
you should first decide which system you want your program to run on and do all your development
on that platform. I would strongly discourage you to do development work in a Windows environment
(such as using CMake or Microsoft Development Studio) or in a Mac OS X environment
(such as using Xcode).
You should use your USC accounts and preferably work on the Solaris machines via ssh for testing. The final (submitted) program must run on nunki.usc.edu because we are going to test it in that environment. (Please note that since Lecture 1, I have announced that there are other options.) But you should not do there the whole program development, as nunki.usc.edu is a general purpose server - under heavy use from many students.
Languages for Programming Assignments
You must use C or C++ for your programming assignments. Files should be named as follows ...
Compilation for Programming Assignments
You must have a Makefile
for your program even in the case of single file submission.
(If you don't, we will write one for you and deduct 10 points from the assignment.)
Please read the information on Makefile
very carefully because it may have great affect your programming assignment scores.
So, make sure you
verify your submission before you submit!
README File for Programming Assignments
You must include a README file to comment on anything pertinent
to someone trying to run/grade your programming assignment.
Please read the requirements about the
README file.
On Time Submission
Due to clock skews,
electronic submissions of programming and homeworks assignments will
be accepted within 15 minutes after the specified deadlines without
penalties. If you submit with the next 24 hours,
you will receive 90% of your grade.
Although in the first 50 minutes of this period,
you will only lose 1% of your grade every 5 minutes.
24 hours after the submission deadline, you will starting
losing 1% of your grade every 5 minutes. By 7:30am the next
morning, there's no need to make a submission because you
would have lost 100% of your grade.
When you are ready to submit it for grading, you must:
The bsubmit program can be used multiple times for a given assignment. By default, we will grade your last submission. Therefore, a later submission is considered to supersede previous submissions. If you would like us to grade an earlier submission instead of the last on time submission, you need to send e-mail to the instructor within 12 hours after deadline.
After you submitted, for example, pa1.tar.gz, you should verify
what you've submitted can be compiled as is. Let's say your pa1.tar.gz
is in your ~/pa1 directory. Do the following on
nunki.usc.edu:
% cd ~/pa1 % mkdir xyzzy % cd xyzzy % gunzip -c ../pa1.tar.gz > pa1.tar % tar xvf pa1.tar % [ follow the steps in the grading guidelines to build the executable ] % [ follow the grading guidelines and re-run all your tests to make sure that they all work ] % [ make sure your README file is perfect and contains no "?" in required sections ] % [ check against the "minus points" section of the grading guidelines to make sure that you won't get any deduction ] % cd .. % rm -rf xyzzyAlso, before you run the mkdir command, make sure you don't have the xyzzy directory. If you do, delete it. A few things to note:
|
|||||||||||||||