Project Descriptions


Projects will be graded according the following general criteria. Detailed rubrics will be made available for each project.

Criteria Weight Description
Program Build 10% Program compiles; Makefile functions correctly
Basic Tests 10% Program passes basic functional tests
Intermediate Tests 10% Program passes intermediate functional tests
Advanced Tests 15% Program passes advanced functional tests
Program Design 45% Good use of object-oriented design principles
Coding Standards 10% Adherence to coding and documentation standards

Compilation and Submission

The UMBC UNIX systems run several different versions of UNIX. The systems,, and all run a version of UNIX called Linux. The systems and run other versions of UNIX called Solaris and Irix.

The project graders will use one of linux1, linux2, or linux3 to compile and test your program. Therefore, all projects must compile and execute on linux1, linux2, or linux3.

If you develop your code on some other machine (for example, a personal laptop or desktop), you must transfer your files to the campus network file system and ensure that they can be compiled and linked on the GL Linux systems. You may need to install file transfer or terminal software on your computer in order to complete these steps.

Projects must be submitted using the project submission system. The process for creating and submitting your project code will be covered in lectures and labs.

Late Submissions

A project submission is "late" if any of the submitted files are time-stamped after the due date and time. Projects will be accepted up to 48 hours late, with the following penalties:

Hours Late Deduction
Up to 24 15 points
24 to 48 40 points
More than 48 Score of zero

Note: The stated late penalties are in points not percentages. If a project receives a score of 75, but it submitted one day late, the final score will be 75 - 15 = 60.

Network and computer failures are a fact of life and are outside the control of your instructors or the CSEE Department. However, they are not an excuse for a project to be submitted late, nor are they a reason for project deadlines to be extended, even if the outage occurs on the due date. Waiting to submit your project until shortly before it is due is a recipe for disaster. Project extensions will not be given for such problems.

Academic Integrity for Projects

All projects must be completed individually. You should never, under any circumstances, have a copy of someone else's assignment, either on paper or electronically. Also, you should never give a copy of your assignment, either on paper or electronically, to another student. This also means that you cannot work on the assignment together.

If you need help with a project, seek assistance from a CMSC 202 Instructor or TA, or from a tutor provided by the Learning Resource Center. Be sure to document all outside help received in the file header comment.

The following is a non-exhaustive list of Academic Integrity violations:

The following behaviors are not Academic Integrity violations and are, in fact, encouraged:

All project submissions will be checked for similarities. If your project is found to be “substantially similar” to that of another student, or if it is determined that someone else wrote your project for you, then, at a minimum, you and the other student will receive a grade of zero for that project and a 10% deduction (one letter grade) from your semester average. Furthermore, all parties concerned will have their prior projects re-checked. A second incident will result in a grade of ‘F’ for the semester.

Note that checking for cheating may occur at any time during the semester, even after grades have been assigned. See the Acadmeic Integrity portion of the syllabus for additional information.

Useful Links