Musings on
Misconduct
PAULINE BELFORD
MICHAEL JAMES HERON
Introduction
 Clashes are often observed between software engineering good practice and
institutional conventions regarding plagiarism.
 Plagiarism in programming is often a result of student misunderstanding
regarding how far good practice extends
 And as such, a degree of empathy is required when assessing and confronting
incidences.
 In this talk, I will discuss the nature of this clash with regards to programming in a
college or university setting.
 I will discuss how plagiarism is commonly identified when assessing coursework
submissions, and the ethical issues raised.
 We conclude the talk with some notes on institutional good practice and how to
remove some of the heat from student interactions.
All Programming is Plagiarism?
 Culture of reuse:
 Standardised syntax
 Standard algorithms
 Design patterns
 Architecture is restrictive
 Loops, Selections, Sequential
 Code style is often mandated
 Stylistic elements often inherited
 Reusability and maintainability
 Emphasised as good practice
All Programming is Plagiarism?
 We emphasise good practice in software engineering, which is
often at odds with institutional definitions of academic conduct.
 Students can find themselves at odds with their own discipline.
 Reusing their own code (e.g. cross assessment)
 Reusing the code of their colleagues
 Integrating external code into their own work.
 As a discipline, we emphasise that it is important not to reinvent the
wheel.
 And yet, making use of all resources available will likely lead to a clash
with academic norms and expectations.
What is Academic Plagiarism?
 Plagiarism implies passing work off as your own without attribution.
 Students are generally au fait with the idea of plagiarism.
 Can recite text book definitions
 Problem is not in understanding, it is in interpretation.
 Often plagiarism represents a lack of awareness that it applies in a given
situation.
 All academics have a responsibility to identify plagiarism.
 Students can receive degree awards for work they did not submit.
 Devalues the qualification for all other students.
 Reflects badly on the institution when student inability is discovered.
What is Plagiarism in Programming?
 Almost impossible to define.
 Where does plagiarism live?
 In lines of code?
 In data structures?
 In algorithms?
 In architecture?
 All of these and none of these.
 We exacerbate this problem – we teach plagiarism as good practice.
 Not intentionally, but through a lack of coherent contextualisation.
 Students suffer from our flippancy in teaching these topics without fully covering
the implications for misconduct.
 Often due to time pressure
 Often due to course pressure
Methods for identifying plagiarism
in programming
 Can’t be easily automated.
 There is no real Turnitin equivalent for software code. Problem may be
intractable.
 Requires specialist examination of submissions by subject matter
expert.
 Time consuming, prone to mistakes, can’t offer full coverage.
 Attention most directed at obvious candidates for examination.
 But what does obvious mean here?
 Course organisation can frustrate analysis:
 Marking distribution, pair programming submissions, etc.
Ethics of Identifying Plagiarism in
Programming
 Directed sampling is ethically questionable.
 Subject to subconscious biases
 Selection bias, etc.
 Focuses attention on those least likely to be successfully hoodwinking..
 In the case of weaker students submitting work beyond their assumed
competence.
 Assumed competence?
 Slanted by familiarity with students within lab situations.
 May miss those students who are quietest.
 Assumed competence comes from our own exposure to evolving student
submissions
Ethics of Identifying Plagiarism in
Programming
 Our techniques are ineffective against commissioned work.
 Little success against essay mills
 Class divide?
 Those with the most money are most likely to fly under the radar.
 It is our familiarity with student work that directly informs sampling.
 And this is troublesome.
Good practice
 Should inform all students at the beginning of a course that semi-
random subset will be selected for mini-viva.
 Non stigmatising – not only those under suspicion
 Non comprehensive – not all students will be selected.
 Selection criteria for mini-viva is all students under suspicion and a
random sampling of all others.
 Students that are under suspicion are selected for forensic dissection.
 So too is a completely random sampling of all students.
 Each selected student undergoes the same forensic examination of
coursework.
 Same process applied regardless of inclusion criteria.
Fair Dealings in Academic
Misconduct
 Many institutions bias academic misconduct hearings against the
student.
 Often unintentionally, and usually without malice.
 Students are often unaware of the charge or evidence until they are
confronted in the meeting.
 This creates unnecessary tensions, stresses on the students, and skews
the outcome.
 It’s unfair to judge a student based on their perceived inability to explain
irregularities under stress in a high-stakes environment.
 We recommend that students see fully annotated transcripts of their
work beforehand, so they can effectively marshal a defence or
explanation.
 Or are aware of the strength of evidence prior to the hearing.
Conclusion
 Students often plagiarise not as a result of malice, but instead an
outcome of their lack of specialist knowledge.
 Students often lack the skills to properly evaluate the degree of contribution
they made to a submission.
 To a certain extent, all programming is plagiarism, and we are often
flippant in our treatment of good practice.
 Academics need to be mindful of the fact they play an important role
in helping students interpret plagiarism guidelines within complex
environments.
 In no way are we attempting to minimise the responsibility of the
student in cases of genuine plagiarism.
 We are only attempting to examine and contemplate our own role in the
process.

Musings on misconduct

  • 1.
  • 2.
    Introduction  Clashes areoften observed between software engineering good practice and institutional conventions regarding plagiarism.  Plagiarism in programming is often a result of student misunderstanding regarding how far good practice extends  And as such, a degree of empathy is required when assessing and confronting incidences.  In this talk, I will discuss the nature of this clash with regards to programming in a college or university setting.  I will discuss how plagiarism is commonly identified when assessing coursework submissions, and the ethical issues raised.  We conclude the talk with some notes on institutional good practice and how to remove some of the heat from student interactions.
  • 3.
    All Programming isPlagiarism?  Culture of reuse:  Standardised syntax  Standard algorithms  Design patterns  Architecture is restrictive  Loops, Selections, Sequential  Code style is often mandated  Stylistic elements often inherited  Reusability and maintainability  Emphasised as good practice
  • 4.
    All Programming isPlagiarism?  We emphasise good practice in software engineering, which is often at odds with institutional definitions of academic conduct.  Students can find themselves at odds with their own discipline.  Reusing their own code (e.g. cross assessment)  Reusing the code of their colleagues  Integrating external code into their own work.  As a discipline, we emphasise that it is important not to reinvent the wheel.  And yet, making use of all resources available will likely lead to a clash with academic norms and expectations.
  • 5.
    What is AcademicPlagiarism?  Plagiarism implies passing work off as your own without attribution.  Students are generally au fait with the idea of plagiarism.  Can recite text book definitions  Problem is not in understanding, it is in interpretation.  Often plagiarism represents a lack of awareness that it applies in a given situation.  All academics have a responsibility to identify plagiarism.  Students can receive degree awards for work they did not submit.  Devalues the qualification for all other students.  Reflects badly on the institution when student inability is discovered.
  • 6.
    What is Plagiarismin Programming?  Almost impossible to define.  Where does plagiarism live?  In lines of code?  In data structures?  In algorithms?  In architecture?  All of these and none of these.  We exacerbate this problem – we teach plagiarism as good practice.  Not intentionally, but through a lack of coherent contextualisation.  Students suffer from our flippancy in teaching these topics without fully covering the implications for misconduct.  Often due to time pressure  Often due to course pressure
  • 7.
    Methods for identifyingplagiarism in programming  Can’t be easily automated.  There is no real Turnitin equivalent for software code. Problem may be intractable.  Requires specialist examination of submissions by subject matter expert.  Time consuming, prone to mistakes, can’t offer full coverage.  Attention most directed at obvious candidates for examination.  But what does obvious mean here?  Course organisation can frustrate analysis:  Marking distribution, pair programming submissions, etc.
  • 8.
    Ethics of IdentifyingPlagiarism in Programming  Directed sampling is ethically questionable.  Subject to subconscious biases  Selection bias, etc.  Focuses attention on those least likely to be successfully hoodwinking..  In the case of weaker students submitting work beyond their assumed competence.  Assumed competence?  Slanted by familiarity with students within lab situations.  May miss those students who are quietest.  Assumed competence comes from our own exposure to evolving student submissions
  • 9.
    Ethics of IdentifyingPlagiarism in Programming  Our techniques are ineffective against commissioned work.  Little success against essay mills  Class divide?  Those with the most money are most likely to fly under the radar.  It is our familiarity with student work that directly informs sampling.  And this is troublesome.
  • 10.
    Good practice  Shouldinform all students at the beginning of a course that semi- random subset will be selected for mini-viva.  Non stigmatising – not only those under suspicion  Non comprehensive – not all students will be selected.  Selection criteria for mini-viva is all students under suspicion and a random sampling of all others.  Students that are under suspicion are selected for forensic dissection.  So too is a completely random sampling of all students.  Each selected student undergoes the same forensic examination of coursework.  Same process applied regardless of inclusion criteria.
  • 11.
    Fair Dealings inAcademic Misconduct  Many institutions bias academic misconduct hearings against the student.  Often unintentionally, and usually without malice.  Students are often unaware of the charge or evidence until they are confronted in the meeting.  This creates unnecessary tensions, stresses on the students, and skews the outcome.  It’s unfair to judge a student based on their perceived inability to explain irregularities under stress in a high-stakes environment.  We recommend that students see fully annotated transcripts of their work beforehand, so they can effectively marshal a defence or explanation.  Or are aware of the strength of evidence prior to the hearing.
  • 12.
    Conclusion  Students oftenplagiarise not as a result of malice, but instead an outcome of their lack of specialist knowledge.  Students often lack the skills to properly evaluate the degree of contribution they made to a submission.  To a certain extent, all programming is plagiarism, and we are often flippant in our treatment of good practice.  Academics need to be mindful of the fact they play an important role in helping students interpret plagiarism guidelines within complex environments.  In no way are we attempting to minimise the responsibility of the student in cases of genuine plagiarism.  We are only attempting to examine and contemplate our own role in the process.