Presentation is loading. Please wait.

Presentation is loading. Please wait.

Grading Computer Programs

Similar presentations

Presentation on theme: "Grading Computer Programs"— Presentation transcript:

1 Grading Computer Programs
Rick Ord CSE

2 Overview Proactive Cheating Countermeasures
Turning in Programming Assignments Grading Programming Assignments Recording/Accessing Grades

3 Proactive Cheating Countermeasures
Why do this? Ounce of prevention … MOSS (Measure of Software Similarity) RentACoder Discuss what level of collaboration is acceptable Examples of disciplinary action

4 Turning in Programming Assignments
Various turnin programs/scripts Academic Computing Services (ACS) ~/../public/turnin.dest (good for OCE accts) Gary Gillespie’s AutoGrader turnin script ~/ (good for course accts) Homegrown Collect scripts ~/PA#/ (good for course accts) WebCT WebDrive (WebDAV) or ssh / possibly chmod (good if on Windows and want to collect/grade on Unix)

5 Grading Programming Assignments
Gary Gillespie’s students' AutoGrader Program Collects, compiles, runs, diffs in autograder acct. Graders examine diffs, output, source code Graders edit guidelines file, auto-generate html reports, links sent to students via mailer script, record scores that get collected by Autograder Set of ksh scripts developed over # years (199s) Some being rewritten in Python/Ruby (my students)

6 Grading Programming Assignments
Homegrown grading scripts Manual grading Programs with graphical output Real-time graphics vs. bitmap files that can be diff’ed Student’s code bombs Autograder Non-standard file names / Makefile Leave debugging output in code Takes too long to compile / execute

7 Grading Programming Assignments (Tips)
Think of how to grade while developing the programming assignment Allow redirect from/to files stdin / stdout Watch out mixing stdout and stderr setvbuf() to set stdout to unbuffered Watch out using /dev/tty Command line options to read/output files Only tests with this option? GUI input / output components (manual grading?)

8 Grading Programming Assignments (Tips)
Have a solution implementation Stripped optimized executable (C, C++, Assembly) Obfuscated encrypted JAR (Java) Sandmark (Univ. of Arizona) Irreducibility/Buggy Code/Class Encrypter/Buggy Code

9 Recording/Accessing Grades
GradeSource Gary Gillespie's former students - ad-free version for UCSD courses - student roster imports & updates WebCT / Blackboard (ACS)

Download ppt "Grading Computer Programs"

Similar presentations

Ads by Google