- Project 1: Activity Scheduling
- Project 2: Poker
- Project 3: Train Station
- Project 4: Crazy Eights + Uno = Cruno
- Project 5: Containers & Iterators
Projects will be graded according the following general criteria. Detailed rubrics will be made available for each project.
|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 linux1.gl.umbc.edu, linux2.gl.umbc.edu, and linux3.gl.umbc.edu all run a version of UNIX called Linux. The systems solaris.gl.umbc.edu and irix.gl.umbc.edu 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.
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:
|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:
- Emailing code in whole or in part
- Instant Messaging code in whole or in part
- Posting or obtaining code in whole or in part on the web, including but not limited to forums and newsgroups
- Not taking the appropriate measures to protect your source code, including:
- Placing your code in a public directory
- Failing to lock your screen when away from your computer
- Allowing someone to copy code from your monitor
- Giving your password to another student
The following behaviors are not Academic Integrity violations and are, in fact, encouraged:
- Asking a fellow student how they approached a problem
- Brainstorming with fellow students
- Helping a fellow student locate a bug in their code
- Getting help with your code from an Instructor, TA, or LRC tutor.
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.
- Coding Standards
- File transfer and terminal access to the GL systems
- Working from Home – a presentation by Dan Hood
- Academic Integrity resources for students