Detect cheating in Microsoft Excel submissions











up vote
2
down vote

favorite
1












I have a homework assignment where I require students to create a set of pivot charts in Microsoft Excel. I know that I can reduce cheating by changing datasets or chart specifications around, but because of the complexity of the assignments and my practical constraints in not being able to mark more than five or so different versions, this does not prevent students from finding those who have the same specifications as themselves and copying among themselves. (I am coordinating a course with over 700 students, so I can only do so much as far as alternate versions go. The students are well connected to each other by Facebook, so communicating among each is quite feasible for those who want to cheat.)



On one hand, in my situation, creating alternate versions is difficult because of the complexity of the assignment, and its effectiveness is limited because hard-working cheaters can cheat anyways. On the other hand, I believe that if I can effectively detect cheating after the fact, then giving a strong warning to students about this could serve as an effective deterrent that should greatly reduce the incidence of cheating.



Are there features in Microsoft Excel that make it easy to detect cheating by copying between students? I don't expect to easily detect if a student copies elements like pivot tables from one file to another, but perhaps at least I might be able to detect if a student copied someone else's file altogether. I'm not necessarily looking for anything foolproof--I expect that the cheaters in this assignment would be those who don't even know basic things like how to manually change author information in an Excel file.



Speaking of which, unfortunately, as far as I can tell, Excel overwrites author information with the last person to save the file, so I couldn't even use that to tell if someone has copied a file created by someone else.



I would appreciate any suggestions.



EDIT:



Some answers have suggested asking students to submit a written explanation of their reasoning. Although I mentioned that there are over 700 students, let me be more explicit: I do not consider solutions that require reading and marking additional textual submissions to be feasible for my context. On one hand, there are multiple instructors, so any instructor would only have to mark a few dozen assignments. On the other hand, if there is cheating across sections, then reading text submissions is not a feasible verification technique. Thus, I was looking for a solution that could easily indicate that a student's submission contained undeniable traces of some other student's work.










share|improve this question




















  • 2




    I used to open the files in something like programmers file editor and search for the string with name etc - amazing what is there... Found 1 student who had "created" the file under a different name 2 years prior... And that student was also one of my students...
    – Solar Mike
    Dec 7 at 13:07












  • For what it's worth: the traditional way to make sure students understand what they did is to ask them to produce a report where they explain their work in their own words. Alternatively there can be a quick evaluation in lab where they would be asked a few questions to test their understanding.
    – Erwan
    Dec 7 at 14:02










  • I seem to be assessing students for similar things in excel, charts etc frequency() etc and I use a quiz with 10 questions, each question having a category of 10 questions... So, questions ask things like ctrl+shift then enter is used for what type of function... Grades seem to be going as i would expect...
    – Solar Mike
    Dec 7 at 14:58










  • @Erwan, please see my edit to understand why I don't consider this feasible in my situation.
    – Tripartio
    Dec 7 at 16:10










  • Are you giving the students Excel files to work with, or handing them data sets and letting them build their own Excel files?
    – asgallant
    Dec 7 at 17:22















up vote
2
down vote

favorite
1












I have a homework assignment where I require students to create a set of pivot charts in Microsoft Excel. I know that I can reduce cheating by changing datasets or chart specifications around, but because of the complexity of the assignments and my practical constraints in not being able to mark more than five or so different versions, this does not prevent students from finding those who have the same specifications as themselves and copying among themselves. (I am coordinating a course with over 700 students, so I can only do so much as far as alternate versions go. The students are well connected to each other by Facebook, so communicating among each is quite feasible for those who want to cheat.)



On one hand, in my situation, creating alternate versions is difficult because of the complexity of the assignment, and its effectiveness is limited because hard-working cheaters can cheat anyways. On the other hand, I believe that if I can effectively detect cheating after the fact, then giving a strong warning to students about this could serve as an effective deterrent that should greatly reduce the incidence of cheating.



Are there features in Microsoft Excel that make it easy to detect cheating by copying between students? I don't expect to easily detect if a student copies elements like pivot tables from one file to another, but perhaps at least I might be able to detect if a student copied someone else's file altogether. I'm not necessarily looking for anything foolproof--I expect that the cheaters in this assignment would be those who don't even know basic things like how to manually change author information in an Excel file.



Speaking of which, unfortunately, as far as I can tell, Excel overwrites author information with the last person to save the file, so I couldn't even use that to tell if someone has copied a file created by someone else.



I would appreciate any suggestions.



EDIT:



Some answers have suggested asking students to submit a written explanation of their reasoning. Although I mentioned that there are over 700 students, let me be more explicit: I do not consider solutions that require reading and marking additional textual submissions to be feasible for my context. On one hand, there are multiple instructors, so any instructor would only have to mark a few dozen assignments. On the other hand, if there is cheating across sections, then reading text submissions is not a feasible verification technique. Thus, I was looking for a solution that could easily indicate that a student's submission contained undeniable traces of some other student's work.










share|improve this question




















  • 2




    I used to open the files in something like programmers file editor and search for the string with name etc - amazing what is there... Found 1 student who had "created" the file under a different name 2 years prior... And that student was also one of my students...
    – Solar Mike
    Dec 7 at 13:07












  • For what it's worth: the traditional way to make sure students understand what they did is to ask them to produce a report where they explain their work in their own words. Alternatively there can be a quick evaluation in lab where they would be asked a few questions to test their understanding.
    – Erwan
    Dec 7 at 14:02










  • I seem to be assessing students for similar things in excel, charts etc frequency() etc and I use a quiz with 10 questions, each question having a category of 10 questions... So, questions ask things like ctrl+shift then enter is used for what type of function... Grades seem to be going as i would expect...
    – Solar Mike
    Dec 7 at 14:58










  • @Erwan, please see my edit to understand why I don't consider this feasible in my situation.
    – Tripartio
    Dec 7 at 16:10










  • Are you giving the students Excel files to work with, or handing them data sets and letting them build their own Excel files?
    – asgallant
    Dec 7 at 17:22













up vote
2
down vote

favorite
1









up vote
2
down vote

favorite
1






1





I have a homework assignment where I require students to create a set of pivot charts in Microsoft Excel. I know that I can reduce cheating by changing datasets or chart specifications around, but because of the complexity of the assignments and my practical constraints in not being able to mark more than five or so different versions, this does not prevent students from finding those who have the same specifications as themselves and copying among themselves. (I am coordinating a course with over 700 students, so I can only do so much as far as alternate versions go. The students are well connected to each other by Facebook, so communicating among each is quite feasible for those who want to cheat.)



On one hand, in my situation, creating alternate versions is difficult because of the complexity of the assignment, and its effectiveness is limited because hard-working cheaters can cheat anyways. On the other hand, I believe that if I can effectively detect cheating after the fact, then giving a strong warning to students about this could serve as an effective deterrent that should greatly reduce the incidence of cheating.



Are there features in Microsoft Excel that make it easy to detect cheating by copying between students? I don't expect to easily detect if a student copies elements like pivot tables from one file to another, but perhaps at least I might be able to detect if a student copied someone else's file altogether. I'm not necessarily looking for anything foolproof--I expect that the cheaters in this assignment would be those who don't even know basic things like how to manually change author information in an Excel file.



Speaking of which, unfortunately, as far as I can tell, Excel overwrites author information with the last person to save the file, so I couldn't even use that to tell if someone has copied a file created by someone else.



I would appreciate any suggestions.



EDIT:



Some answers have suggested asking students to submit a written explanation of their reasoning. Although I mentioned that there are over 700 students, let me be more explicit: I do not consider solutions that require reading and marking additional textual submissions to be feasible for my context. On one hand, there are multiple instructors, so any instructor would only have to mark a few dozen assignments. On the other hand, if there is cheating across sections, then reading text submissions is not a feasible verification technique. Thus, I was looking for a solution that could easily indicate that a student's submission contained undeniable traces of some other student's work.










share|improve this question















I have a homework assignment where I require students to create a set of pivot charts in Microsoft Excel. I know that I can reduce cheating by changing datasets or chart specifications around, but because of the complexity of the assignments and my practical constraints in not being able to mark more than five or so different versions, this does not prevent students from finding those who have the same specifications as themselves and copying among themselves. (I am coordinating a course with over 700 students, so I can only do so much as far as alternate versions go. The students are well connected to each other by Facebook, so communicating among each is quite feasible for those who want to cheat.)



On one hand, in my situation, creating alternate versions is difficult because of the complexity of the assignment, and its effectiveness is limited because hard-working cheaters can cheat anyways. On the other hand, I believe that if I can effectively detect cheating after the fact, then giving a strong warning to students about this could serve as an effective deterrent that should greatly reduce the incidence of cheating.



Are there features in Microsoft Excel that make it easy to detect cheating by copying between students? I don't expect to easily detect if a student copies elements like pivot tables from one file to another, but perhaps at least I might be able to detect if a student copied someone else's file altogether. I'm not necessarily looking for anything foolproof--I expect that the cheaters in this assignment would be those who don't even know basic things like how to manually change author information in an Excel file.



Speaking of which, unfortunately, as far as I can tell, Excel overwrites author information with the last person to save the file, so I couldn't even use that to tell if someone has copied a file created by someone else.



I would appreciate any suggestions.



EDIT:



Some answers have suggested asking students to submit a written explanation of their reasoning. Although I mentioned that there are over 700 students, let me be more explicit: I do not consider solutions that require reading and marking additional textual submissions to be feasible for my context. On one hand, there are multiple instructors, so any instructor would only have to mark a few dozen assignments. On the other hand, if there is cheating across sections, then reading text submissions is not a feasible verification technique. Thus, I was looking for a solution that could easily indicate that a student's submission contained undeniable traces of some other student's work.







cheating homework






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Dec 7 at 16:09

























asked Dec 7 at 11:40









Tripartio

2,943622




2,943622








  • 2




    I used to open the files in something like programmers file editor and search for the string with name etc - amazing what is there... Found 1 student who had "created" the file under a different name 2 years prior... And that student was also one of my students...
    – Solar Mike
    Dec 7 at 13:07












  • For what it's worth: the traditional way to make sure students understand what they did is to ask them to produce a report where they explain their work in their own words. Alternatively there can be a quick evaluation in lab where they would be asked a few questions to test their understanding.
    – Erwan
    Dec 7 at 14:02










  • I seem to be assessing students for similar things in excel, charts etc frequency() etc and I use a quiz with 10 questions, each question having a category of 10 questions... So, questions ask things like ctrl+shift then enter is used for what type of function... Grades seem to be going as i would expect...
    – Solar Mike
    Dec 7 at 14:58










  • @Erwan, please see my edit to understand why I don't consider this feasible in my situation.
    – Tripartio
    Dec 7 at 16:10










  • Are you giving the students Excel files to work with, or handing them data sets and letting them build their own Excel files?
    – asgallant
    Dec 7 at 17:22














  • 2




    I used to open the files in something like programmers file editor and search for the string with name etc - amazing what is there... Found 1 student who had "created" the file under a different name 2 years prior... And that student was also one of my students...
    – Solar Mike
    Dec 7 at 13:07












  • For what it's worth: the traditional way to make sure students understand what they did is to ask them to produce a report where they explain their work in their own words. Alternatively there can be a quick evaluation in lab where they would be asked a few questions to test their understanding.
    – Erwan
    Dec 7 at 14:02










  • I seem to be assessing students for similar things in excel, charts etc frequency() etc and I use a quiz with 10 questions, each question having a category of 10 questions... So, questions ask things like ctrl+shift then enter is used for what type of function... Grades seem to be going as i would expect...
    – Solar Mike
    Dec 7 at 14:58










  • @Erwan, please see my edit to understand why I don't consider this feasible in my situation.
    – Tripartio
    Dec 7 at 16:10










  • Are you giving the students Excel files to work with, or handing them data sets and letting them build their own Excel files?
    – asgallant
    Dec 7 at 17:22








2




2




I used to open the files in something like programmers file editor and search for the string with name etc - amazing what is there... Found 1 student who had "created" the file under a different name 2 years prior... And that student was also one of my students...
– Solar Mike
Dec 7 at 13:07






I used to open the files in something like programmers file editor and search for the string with name etc - amazing what is there... Found 1 student who had "created" the file under a different name 2 years prior... And that student was also one of my students...
– Solar Mike
Dec 7 at 13:07














For what it's worth: the traditional way to make sure students understand what they did is to ask them to produce a report where they explain their work in their own words. Alternatively there can be a quick evaluation in lab where they would be asked a few questions to test their understanding.
– Erwan
Dec 7 at 14:02




For what it's worth: the traditional way to make sure students understand what they did is to ask them to produce a report where they explain their work in their own words. Alternatively there can be a quick evaluation in lab where they would be asked a few questions to test their understanding.
– Erwan
Dec 7 at 14:02












I seem to be assessing students for similar things in excel, charts etc frequency() etc and I use a quiz with 10 questions, each question having a category of 10 questions... So, questions ask things like ctrl+shift then enter is used for what type of function... Grades seem to be going as i would expect...
– Solar Mike
Dec 7 at 14:58




I seem to be assessing students for similar things in excel, charts etc frequency() etc and I use a quiz with 10 questions, each question having a category of 10 questions... So, questions ask things like ctrl+shift then enter is used for what type of function... Grades seem to be going as i would expect...
– Solar Mike
Dec 7 at 14:58












@Erwan, please see my edit to understand why I don't consider this feasible in my situation.
– Tripartio
Dec 7 at 16:10




@Erwan, please see my edit to understand why I don't consider this feasible in my situation.
– Tripartio
Dec 7 at 16:10












Are you giving the students Excel files to work with, or handing them data sets and letting them build their own Excel files?
– asgallant
Dec 7 at 17:22




Are you giving the students Excel files to work with, or handing them data sets and letting them build their own Excel files?
– asgallant
Dec 7 at 17:22










3 Answers
3






active

oldest

votes

















up vote
6
down vote














  • Figure out a way to generate data sets and results programatically so you can uniquely verify each student's assignment separately. This would imply lots of effort initially but may payoff for later courses.


  • Use a single dataset and a single result set. Ask them for their reasoning behind for achieving the most complex tasks of the assignment. Use this to check for cheating. No one person thinks exactly the same or describes something complex in the same manner.



My recommendation is for the latter. Most jobs that can be done with tools like Excel will be automated in the near future. The best that your students can learn is to reason (and articulate this effectively) and choose the appropriate tool/technique for the job.






share|improve this answer





















  • Your first suggestion is a lot of work, but might fit my situation better. I've edited my question to clarify why the latter recommended solution is not feasible in my situation.
    – Tripartio
    Dec 7 at 16:13










  • @Tripartio if you choose the automation path, start building your prototype and post more detailed questions in stackoverflow. On a side note for inspiration you may want to read this paper link.springer.com/chapter/10.1007%2F978-3-030-00761-4_12 of a solution done to automate assessment of software engineering assignments.
    – Koenig Lear
    Dec 9 at 12:06










  • Thanks for the tip and reference.
    – Tripartio
    Dec 9 at 17:00










  • I like your second recommendation. OP says it doesn't fit OP's profile, but the instructors can grade the explanations from their group for value, while an automated script can sieve out the textual similarities in the explanantion over the whole class.
    – bukwyrm
    Dec 12 at 7:11




















up vote
3
down vote













I assume you need clues which can be obtained automatically.



It might be an idea to check all the positions and sizes of graphs / diagrams / drawings etc. Those are usually placed by mouse movement and so the positions should differ.



If you are very subtile, you might want to give them individual sheets to start from (maybe containing the initital data set). Those files can be secretly marked in the underlying xml files, e.g. by adding an extra tag per student (I did not test this, but I'm sure no one will detect it) or by adding a personalized "document creator" (but this is visible to the students). You just have zu unzip the .xlsx-file and modify docProscore.xml



A pure file copy can easily be detected by e.g. calculating a PGP checksum for the files. If two checksums are the same, they are exact copies.






share|improve this answer























  • I like the idea of programmatically verifying positions and sizes of graphs in Excel. Could you point me towards any sources that might suggest how to do that?
    – Tripartio
    Dec 7 at 16:12










  • @Tripartio are you capable of using e.g. python for scripting? Then I could try to build a minimal example code which could be adapted for your needs.
    – OBu
    Dec 7 at 16:23










  • I normally use R, but I can read Python and could probably translate it. Example code would be fantastic.
    – Tripartio
    Dec 7 at 16:53










  • I think you should expand a bit on the OpenXML format. At least point out it's a zip file. There's an OpenXML SDK that helps generate code and such. Something more obscure might be to set a custom r:id for the worksheet. A quick test shows you only need to update the reference in _rels.rels and xlworkbook.xml and xl_relsworkbook.xml.rels
    – BurnsBA
    Dec 7 at 17:08


















up vote
1
down vote













If the revision history is not enabled, you will not be able to glean any information pertaining to the history of the document - maybe make enabling it a rule?



Other recommendations:




  • If the project is based on data, programatically produce or alter the data that each student is given (they download it from some server)

  • Rule that if any two students are found to have identical solutions, both will fail the course. The students giving their solution away usually are aware that the ones they are giving it to are inept, so they will be extremely wary.

  • Have the students install a tracker (something like this: https://www.exceltrainingvideos.com/track-changes-automatically-in-worksheet-with-vba/) - The end result may be similar, but the way to the result will vary between persons. A lot.






share|improve this answer





















  • Your second bullet point should not be used. Students who are not cheating will produce identical solutions, given a large enough class size. The 700 students in this class are more than sufficient to produce identical results without cheating.
    – asgallant
    Dec 11 at 16:18










  • That entirely depends on the complexity of the task. You are correct that this might lead to false positives in smaller assignments, but the possibilities grow mighty fast (especially with identifiers that have a lot of wiggle, like positioning of graphs, etc.) which makes the probability of false positives miniscule.
    – bukwyrm
    Dec 12 at 7:07











Your Answer








StackExchange.ready(function() {
var channelOptions = {
tags: "".split(" "),
id: "415"
};
initTagRenderer("".split(" "), "".split(" "), channelOptions);

StackExchange.using("externalEditor", function() {
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled) {
StackExchange.using("snippets", function() {
createEditor();
});
}
else {
createEditor();
}
});

function createEditor() {
StackExchange.prepareEditor({
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader: {
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
},
noCode: true, onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
});


}
});














draft saved

draft discarded


















StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2facademia.stackexchange.com%2fquestions%2f121241%2fdetect-cheating-in-microsoft-excel-submissions%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown

























3 Answers
3






active

oldest

votes








3 Answers
3






active

oldest

votes









active

oldest

votes






active

oldest

votes








up vote
6
down vote














  • Figure out a way to generate data sets and results programatically so you can uniquely verify each student's assignment separately. This would imply lots of effort initially but may payoff for later courses.


  • Use a single dataset and a single result set. Ask them for their reasoning behind for achieving the most complex tasks of the assignment. Use this to check for cheating. No one person thinks exactly the same or describes something complex in the same manner.



My recommendation is for the latter. Most jobs that can be done with tools like Excel will be automated in the near future. The best that your students can learn is to reason (and articulate this effectively) and choose the appropriate tool/technique for the job.






share|improve this answer





















  • Your first suggestion is a lot of work, but might fit my situation better. I've edited my question to clarify why the latter recommended solution is not feasible in my situation.
    – Tripartio
    Dec 7 at 16:13










  • @Tripartio if you choose the automation path, start building your prototype and post more detailed questions in stackoverflow. On a side note for inspiration you may want to read this paper link.springer.com/chapter/10.1007%2F978-3-030-00761-4_12 of a solution done to automate assessment of software engineering assignments.
    – Koenig Lear
    Dec 9 at 12:06










  • Thanks for the tip and reference.
    – Tripartio
    Dec 9 at 17:00










  • I like your second recommendation. OP says it doesn't fit OP's profile, but the instructors can grade the explanations from their group for value, while an automated script can sieve out the textual similarities in the explanantion over the whole class.
    – bukwyrm
    Dec 12 at 7:11

















up vote
6
down vote














  • Figure out a way to generate data sets and results programatically so you can uniquely verify each student's assignment separately. This would imply lots of effort initially but may payoff for later courses.


  • Use a single dataset and a single result set. Ask them for their reasoning behind for achieving the most complex tasks of the assignment. Use this to check for cheating. No one person thinks exactly the same or describes something complex in the same manner.



My recommendation is for the latter. Most jobs that can be done with tools like Excel will be automated in the near future. The best that your students can learn is to reason (and articulate this effectively) and choose the appropriate tool/technique for the job.






share|improve this answer





















  • Your first suggestion is a lot of work, but might fit my situation better. I've edited my question to clarify why the latter recommended solution is not feasible in my situation.
    – Tripartio
    Dec 7 at 16:13










  • @Tripartio if you choose the automation path, start building your prototype and post more detailed questions in stackoverflow. On a side note for inspiration you may want to read this paper link.springer.com/chapter/10.1007%2F978-3-030-00761-4_12 of a solution done to automate assessment of software engineering assignments.
    – Koenig Lear
    Dec 9 at 12:06










  • Thanks for the tip and reference.
    – Tripartio
    Dec 9 at 17:00










  • I like your second recommendation. OP says it doesn't fit OP's profile, but the instructors can grade the explanations from their group for value, while an automated script can sieve out the textual similarities in the explanantion over the whole class.
    – bukwyrm
    Dec 12 at 7:11















up vote
6
down vote










up vote
6
down vote










  • Figure out a way to generate data sets and results programatically so you can uniquely verify each student's assignment separately. This would imply lots of effort initially but may payoff for later courses.


  • Use a single dataset and a single result set. Ask them for their reasoning behind for achieving the most complex tasks of the assignment. Use this to check for cheating. No one person thinks exactly the same or describes something complex in the same manner.



My recommendation is for the latter. Most jobs that can be done with tools like Excel will be automated in the near future. The best that your students can learn is to reason (and articulate this effectively) and choose the appropriate tool/technique for the job.






share|improve this answer













  • Figure out a way to generate data sets and results programatically so you can uniquely verify each student's assignment separately. This would imply lots of effort initially but may payoff for later courses.


  • Use a single dataset and a single result set. Ask them for their reasoning behind for achieving the most complex tasks of the assignment. Use this to check for cheating. No one person thinks exactly the same or describes something complex in the same manner.



My recommendation is for the latter. Most jobs that can be done with tools like Excel will be automated in the near future. The best that your students can learn is to reason (and articulate this effectively) and choose the appropriate tool/technique for the job.







share|improve this answer












share|improve this answer



share|improve this answer










answered Dec 7 at 13:06









Koenig Lear

1927




1927












  • Your first suggestion is a lot of work, but might fit my situation better. I've edited my question to clarify why the latter recommended solution is not feasible in my situation.
    – Tripartio
    Dec 7 at 16:13










  • @Tripartio if you choose the automation path, start building your prototype and post more detailed questions in stackoverflow. On a side note for inspiration you may want to read this paper link.springer.com/chapter/10.1007%2F978-3-030-00761-4_12 of a solution done to automate assessment of software engineering assignments.
    – Koenig Lear
    Dec 9 at 12:06










  • Thanks for the tip and reference.
    – Tripartio
    Dec 9 at 17:00










  • I like your second recommendation. OP says it doesn't fit OP's profile, but the instructors can grade the explanations from their group for value, while an automated script can sieve out the textual similarities in the explanantion over the whole class.
    – bukwyrm
    Dec 12 at 7:11




















  • Your first suggestion is a lot of work, but might fit my situation better. I've edited my question to clarify why the latter recommended solution is not feasible in my situation.
    – Tripartio
    Dec 7 at 16:13










  • @Tripartio if you choose the automation path, start building your prototype and post more detailed questions in stackoverflow. On a side note for inspiration you may want to read this paper link.springer.com/chapter/10.1007%2F978-3-030-00761-4_12 of a solution done to automate assessment of software engineering assignments.
    – Koenig Lear
    Dec 9 at 12:06










  • Thanks for the tip and reference.
    – Tripartio
    Dec 9 at 17:00










  • I like your second recommendation. OP says it doesn't fit OP's profile, but the instructors can grade the explanations from their group for value, while an automated script can sieve out the textual similarities in the explanantion over the whole class.
    – bukwyrm
    Dec 12 at 7:11


















Your first suggestion is a lot of work, but might fit my situation better. I've edited my question to clarify why the latter recommended solution is not feasible in my situation.
– Tripartio
Dec 7 at 16:13




Your first suggestion is a lot of work, but might fit my situation better. I've edited my question to clarify why the latter recommended solution is not feasible in my situation.
– Tripartio
Dec 7 at 16:13












@Tripartio if you choose the automation path, start building your prototype and post more detailed questions in stackoverflow. On a side note for inspiration you may want to read this paper link.springer.com/chapter/10.1007%2F978-3-030-00761-4_12 of a solution done to automate assessment of software engineering assignments.
– Koenig Lear
Dec 9 at 12:06




@Tripartio if you choose the automation path, start building your prototype and post more detailed questions in stackoverflow. On a side note for inspiration you may want to read this paper link.springer.com/chapter/10.1007%2F978-3-030-00761-4_12 of a solution done to automate assessment of software engineering assignments.
– Koenig Lear
Dec 9 at 12:06












Thanks for the tip and reference.
– Tripartio
Dec 9 at 17:00




Thanks for the tip and reference.
– Tripartio
Dec 9 at 17:00












I like your second recommendation. OP says it doesn't fit OP's profile, but the instructors can grade the explanations from their group for value, while an automated script can sieve out the textual similarities in the explanantion over the whole class.
– bukwyrm
Dec 12 at 7:11






I like your second recommendation. OP says it doesn't fit OP's profile, but the instructors can grade the explanations from their group for value, while an automated script can sieve out the textual similarities in the explanantion over the whole class.
– bukwyrm
Dec 12 at 7:11












up vote
3
down vote













I assume you need clues which can be obtained automatically.



It might be an idea to check all the positions and sizes of graphs / diagrams / drawings etc. Those are usually placed by mouse movement and so the positions should differ.



If you are very subtile, you might want to give them individual sheets to start from (maybe containing the initital data set). Those files can be secretly marked in the underlying xml files, e.g. by adding an extra tag per student (I did not test this, but I'm sure no one will detect it) or by adding a personalized "document creator" (but this is visible to the students). You just have zu unzip the .xlsx-file and modify docProscore.xml



A pure file copy can easily be detected by e.g. calculating a PGP checksum for the files. If two checksums are the same, they are exact copies.






share|improve this answer























  • I like the idea of programmatically verifying positions and sizes of graphs in Excel. Could you point me towards any sources that might suggest how to do that?
    – Tripartio
    Dec 7 at 16:12










  • @Tripartio are you capable of using e.g. python for scripting? Then I could try to build a minimal example code which could be adapted for your needs.
    – OBu
    Dec 7 at 16:23










  • I normally use R, but I can read Python and could probably translate it. Example code would be fantastic.
    – Tripartio
    Dec 7 at 16:53










  • I think you should expand a bit on the OpenXML format. At least point out it's a zip file. There's an OpenXML SDK that helps generate code and such. Something more obscure might be to set a custom r:id for the worksheet. A quick test shows you only need to update the reference in _rels.rels and xlworkbook.xml and xl_relsworkbook.xml.rels
    – BurnsBA
    Dec 7 at 17:08















up vote
3
down vote













I assume you need clues which can be obtained automatically.



It might be an idea to check all the positions and sizes of graphs / diagrams / drawings etc. Those are usually placed by mouse movement and so the positions should differ.



If you are very subtile, you might want to give them individual sheets to start from (maybe containing the initital data set). Those files can be secretly marked in the underlying xml files, e.g. by adding an extra tag per student (I did not test this, but I'm sure no one will detect it) or by adding a personalized "document creator" (but this is visible to the students). You just have zu unzip the .xlsx-file and modify docProscore.xml



A pure file copy can easily be detected by e.g. calculating a PGP checksum for the files. If two checksums are the same, they are exact copies.






share|improve this answer























  • I like the idea of programmatically verifying positions and sizes of graphs in Excel. Could you point me towards any sources that might suggest how to do that?
    – Tripartio
    Dec 7 at 16:12










  • @Tripartio are you capable of using e.g. python for scripting? Then I could try to build a minimal example code which could be adapted for your needs.
    – OBu
    Dec 7 at 16:23










  • I normally use R, but I can read Python and could probably translate it. Example code would be fantastic.
    – Tripartio
    Dec 7 at 16:53










  • I think you should expand a bit on the OpenXML format. At least point out it's a zip file. There's an OpenXML SDK that helps generate code and such. Something more obscure might be to set a custom r:id for the worksheet. A quick test shows you only need to update the reference in _rels.rels and xlworkbook.xml and xl_relsworkbook.xml.rels
    – BurnsBA
    Dec 7 at 17:08













up vote
3
down vote










up vote
3
down vote









I assume you need clues which can be obtained automatically.



It might be an idea to check all the positions and sizes of graphs / diagrams / drawings etc. Those are usually placed by mouse movement and so the positions should differ.



If you are very subtile, you might want to give them individual sheets to start from (maybe containing the initital data set). Those files can be secretly marked in the underlying xml files, e.g. by adding an extra tag per student (I did not test this, but I'm sure no one will detect it) or by adding a personalized "document creator" (but this is visible to the students). You just have zu unzip the .xlsx-file and modify docProscore.xml



A pure file copy can easily be detected by e.g. calculating a PGP checksum for the files. If two checksums are the same, they are exact copies.






share|improve this answer














I assume you need clues which can be obtained automatically.



It might be an idea to check all the positions and sizes of graphs / diagrams / drawings etc. Those are usually placed by mouse movement and so the positions should differ.



If you are very subtile, you might want to give them individual sheets to start from (maybe containing the initital data set). Those files can be secretly marked in the underlying xml files, e.g. by adding an extra tag per student (I did not test this, but I'm sure no one will detect it) or by adding a personalized "document creator" (but this is visible to the students). You just have zu unzip the .xlsx-file and modify docProscore.xml



A pure file copy can easily be detected by e.g. calculating a PGP checksum for the files. If two checksums are the same, they are exact copies.







share|improve this answer














share|improve this answer



share|improve this answer








edited Dec 7 at 13:35

























answered Dec 7 at 13:27









OBu

10.7k22548




10.7k22548












  • I like the idea of programmatically verifying positions and sizes of graphs in Excel. Could you point me towards any sources that might suggest how to do that?
    – Tripartio
    Dec 7 at 16:12










  • @Tripartio are you capable of using e.g. python for scripting? Then I could try to build a minimal example code which could be adapted for your needs.
    – OBu
    Dec 7 at 16:23










  • I normally use R, but I can read Python and could probably translate it. Example code would be fantastic.
    – Tripartio
    Dec 7 at 16:53










  • I think you should expand a bit on the OpenXML format. At least point out it's a zip file. There's an OpenXML SDK that helps generate code and such. Something more obscure might be to set a custom r:id for the worksheet. A quick test shows you only need to update the reference in _rels.rels and xlworkbook.xml and xl_relsworkbook.xml.rels
    – BurnsBA
    Dec 7 at 17:08


















  • I like the idea of programmatically verifying positions and sizes of graphs in Excel. Could you point me towards any sources that might suggest how to do that?
    – Tripartio
    Dec 7 at 16:12










  • @Tripartio are you capable of using e.g. python for scripting? Then I could try to build a minimal example code which could be adapted for your needs.
    – OBu
    Dec 7 at 16:23










  • I normally use R, but I can read Python and could probably translate it. Example code would be fantastic.
    – Tripartio
    Dec 7 at 16:53










  • I think you should expand a bit on the OpenXML format. At least point out it's a zip file. There's an OpenXML SDK that helps generate code and such. Something more obscure might be to set a custom r:id for the worksheet. A quick test shows you only need to update the reference in _rels.rels and xlworkbook.xml and xl_relsworkbook.xml.rels
    – BurnsBA
    Dec 7 at 17:08
















I like the idea of programmatically verifying positions and sizes of graphs in Excel. Could you point me towards any sources that might suggest how to do that?
– Tripartio
Dec 7 at 16:12




I like the idea of programmatically verifying positions and sizes of graphs in Excel. Could you point me towards any sources that might suggest how to do that?
– Tripartio
Dec 7 at 16:12












@Tripartio are you capable of using e.g. python for scripting? Then I could try to build a minimal example code which could be adapted for your needs.
– OBu
Dec 7 at 16:23




@Tripartio are you capable of using e.g. python for scripting? Then I could try to build a minimal example code which could be adapted for your needs.
– OBu
Dec 7 at 16:23












I normally use R, but I can read Python and could probably translate it. Example code would be fantastic.
– Tripartio
Dec 7 at 16:53




I normally use R, but I can read Python and could probably translate it. Example code would be fantastic.
– Tripartio
Dec 7 at 16:53












I think you should expand a bit on the OpenXML format. At least point out it's a zip file. There's an OpenXML SDK that helps generate code and such. Something more obscure might be to set a custom r:id for the worksheet. A quick test shows you only need to update the reference in _rels.rels and xlworkbook.xml and xl_relsworkbook.xml.rels
– BurnsBA
Dec 7 at 17:08




I think you should expand a bit on the OpenXML format. At least point out it's a zip file. There's an OpenXML SDK that helps generate code and such. Something more obscure might be to set a custom r:id for the worksheet. A quick test shows you only need to update the reference in _rels.rels and xlworkbook.xml and xl_relsworkbook.xml.rels
– BurnsBA
Dec 7 at 17:08










up vote
1
down vote













If the revision history is not enabled, you will not be able to glean any information pertaining to the history of the document - maybe make enabling it a rule?



Other recommendations:




  • If the project is based on data, programatically produce or alter the data that each student is given (they download it from some server)

  • Rule that if any two students are found to have identical solutions, both will fail the course. The students giving their solution away usually are aware that the ones they are giving it to are inept, so they will be extremely wary.

  • Have the students install a tracker (something like this: https://www.exceltrainingvideos.com/track-changes-automatically-in-worksheet-with-vba/) - The end result may be similar, but the way to the result will vary between persons. A lot.






share|improve this answer





















  • Your second bullet point should not be used. Students who are not cheating will produce identical solutions, given a large enough class size. The 700 students in this class are more than sufficient to produce identical results without cheating.
    – asgallant
    Dec 11 at 16:18










  • That entirely depends on the complexity of the task. You are correct that this might lead to false positives in smaller assignments, but the possibilities grow mighty fast (especially with identifiers that have a lot of wiggle, like positioning of graphs, etc.) which makes the probability of false positives miniscule.
    – bukwyrm
    Dec 12 at 7:07















up vote
1
down vote













If the revision history is not enabled, you will not be able to glean any information pertaining to the history of the document - maybe make enabling it a rule?



Other recommendations:




  • If the project is based on data, programatically produce or alter the data that each student is given (they download it from some server)

  • Rule that if any two students are found to have identical solutions, both will fail the course. The students giving their solution away usually are aware that the ones they are giving it to are inept, so they will be extremely wary.

  • Have the students install a tracker (something like this: https://www.exceltrainingvideos.com/track-changes-automatically-in-worksheet-with-vba/) - The end result may be similar, but the way to the result will vary between persons. A lot.






share|improve this answer





















  • Your second bullet point should not be used. Students who are not cheating will produce identical solutions, given a large enough class size. The 700 students in this class are more than sufficient to produce identical results without cheating.
    – asgallant
    Dec 11 at 16:18










  • That entirely depends on the complexity of the task. You are correct that this might lead to false positives in smaller assignments, but the possibilities grow mighty fast (especially with identifiers that have a lot of wiggle, like positioning of graphs, etc.) which makes the probability of false positives miniscule.
    – bukwyrm
    Dec 12 at 7:07













up vote
1
down vote










up vote
1
down vote









If the revision history is not enabled, you will not be able to glean any information pertaining to the history of the document - maybe make enabling it a rule?



Other recommendations:




  • If the project is based on data, programatically produce or alter the data that each student is given (they download it from some server)

  • Rule that if any two students are found to have identical solutions, both will fail the course. The students giving their solution away usually are aware that the ones they are giving it to are inept, so they will be extremely wary.

  • Have the students install a tracker (something like this: https://www.exceltrainingvideos.com/track-changes-automatically-in-worksheet-with-vba/) - The end result may be similar, but the way to the result will vary between persons. A lot.






share|improve this answer












If the revision history is not enabled, you will not be able to glean any information pertaining to the history of the document - maybe make enabling it a rule?



Other recommendations:




  • If the project is based on data, programatically produce or alter the data that each student is given (they download it from some server)

  • Rule that if any two students are found to have identical solutions, both will fail the course. The students giving their solution away usually are aware that the ones they are giving it to are inept, so they will be extremely wary.

  • Have the students install a tracker (something like this: https://www.exceltrainingvideos.com/track-changes-automatically-in-worksheet-with-vba/) - The end result may be similar, but the way to the result will vary between persons. A lot.







share|improve this answer












share|improve this answer



share|improve this answer










answered Dec 7 at 11:59









bukwyrm

1112




1112












  • Your second bullet point should not be used. Students who are not cheating will produce identical solutions, given a large enough class size. The 700 students in this class are more than sufficient to produce identical results without cheating.
    – asgallant
    Dec 11 at 16:18










  • That entirely depends on the complexity of the task. You are correct that this might lead to false positives in smaller assignments, but the possibilities grow mighty fast (especially with identifiers that have a lot of wiggle, like positioning of graphs, etc.) which makes the probability of false positives miniscule.
    – bukwyrm
    Dec 12 at 7:07


















  • Your second bullet point should not be used. Students who are not cheating will produce identical solutions, given a large enough class size. The 700 students in this class are more than sufficient to produce identical results without cheating.
    – asgallant
    Dec 11 at 16:18










  • That entirely depends on the complexity of the task. You are correct that this might lead to false positives in smaller assignments, but the possibilities grow mighty fast (especially with identifiers that have a lot of wiggle, like positioning of graphs, etc.) which makes the probability of false positives miniscule.
    – bukwyrm
    Dec 12 at 7:07
















Your second bullet point should not be used. Students who are not cheating will produce identical solutions, given a large enough class size. The 700 students in this class are more than sufficient to produce identical results without cheating.
– asgallant
Dec 11 at 16:18




Your second bullet point should not be used. Students who are not cheating will produce identical solutions, given a large enough class size. The 700 students in this class are more than sufficient to produce identical results without cheating.
– asgallant
Dec 11 at 16:18












That entirely depends on the complexity of the task. You are correct that this might lead to false positives in smaller assignments, but the possibilities grow mighty fast (especially with identifiers that have a lot of wiggle, like positioning of graphs, etc.) which makes the probability of false positives miniscule.
– bukwyrm
Dec 12 at 7:07




That entirely depends on the complexity of the task. You are correct that this might lead to false positives in smaller assignments, but the possibilities grow mighty fast (especially with identifiers that have a lot of wiggle, like positioning of graphs, etc.) which makes the probability of false positives miniscule.
– bukwyrm
Dec 12 at 7:07


















draft saved

draft discarded




















































Thanks for contributing an answer to Academia Stack Exchange!


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.





Some of your past answers have not been well-received, and you're in danger of being blocked from answering.


Please pay close attention to the following guidance:


  • Please be sure to answer the question. Provide details and share your research!

But avoid



  • Asking for help, clarification, or responding to other answers.

  • Making statements based on opinion; back them up with references or personal experience.


To learn more, see our tips on writing great answers.




draft saved


draft discarded














StackExchange.ready(
function () {
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2facademia.stackexchange.com%2fquestions%2f121241%2fdetect-cheating-in-microsoft-excel-submissions%23new-answer', 'question_page');
}
);

Post as a guest















Required, but never shown





















































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown

































Required, but never shown














Required, but never shown












Required, but never shown







Required, but never shown







Popular posts from this blog

flock() on closed filehandle LOCK_FILE at /usr/bin/apt-mirror

Mangá

Eduardo VII do Reino Unido