Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!rutgers!sri-unix!hplabs!hplabsc!marvit From: marvit@hplabsc.UUCP Newsgroups: comp.edu Subject: Re: Cheating on Programming Assignments Message-ID: <51700001@hplabsc.UUCP> Date: Tue, 31-Mar-87 11:40:00 EST Article-I.D.: hplabsc.51700001 Posted: Tue Mar 31 11:40:00 1987 Date-Received: Sat, 4-Apr-87 04:15:12 EST References: <248@rruxa.UUCP> Organization: Hewlett-Packard Laboratories - Palo Alto, CA Lines: 34 I have never taught a class on a PC, so take my comments with the appropriate filter. Bottom line: I give my assignments with a specified Input, a specified Output, and some *sample* data. I then run each program on a set of test data unknown to the students. The test data I se to verify programs is (usually) designed to test boundary conditions, error handling, etc. The students are welcome to use any test data they wish during development, but the final product has to pass mine. This is simplified (frommy point of view) by, for example, the program looking at the contents of a file with a particular name, or taking preformatted input from a particular device (eg, keyboard), or have specific entry/exit points for their code which then is linked to some extant modules (for particularly hairy routines). On a time-sharing system, I have (on occasion) enforced program names and had a daemon which woke up at the due date/time, collected all programs from the student's accounts, and whisked them away to my directory to be graded. No problem with straggling late comers. No problem with forged or smudged pieces of paper. This system had some drawbacks, tho', including some difficulty with personal flexibilty with due dates, and (especially) the careful construction of the problems so the solutions would be amenable to this method. However, I feel it was also closer to "real" life where a programmer is given specifications for a module which must integrate into an existing body of work and for which the interface may be well-defined. While automated collection is more difficult with PC-based assignments, the rest of the approach for programming tasks shouls be adaptable. I'd be interested in your feedback. -Peter Marvit HP Labs marvit@hplabs.hp.com