Manuscript with arrow icon Book and magnifying glass icon Cross-check icon Process checklist icon Reputation ribbon icon Graduation cap icon Question speech bubble icon Headset call icon Mobile phone call icon Login arrow icon B+ Paper Icon Becoming B+ Paper Icon Checkmark Paper Icon Feedback Speech Bubble Icon Feedback Double Speech Bubble Icon Similarity Check Icon Professional Development Icon Admin Training Icon Instructor Training Icon Student Training Icon Integrations Icon System Status Icon System Requirements Icon Menu Icon Checkmark Icon Download Icon Rubric Icon Prompt Icon QuickMark Set Icon Lesson Plan Icon Success Story Icon Infographic Icon White Paper Icon White Paper Icon Press Release Icon News Story Icon Event Icon Webcast Icon Video Icon Envelope Icon Plaque Icon Lightbulb Icon Insights Lightbulb Icon Training Icon Search Icon User Icon Privacy Icon Instructor Icon Instructor-1 Icon Investigator Icon Admin Icon Student Icon Voice Grammar Icon Turnitin Logo (Text and Icon) Icon Facebook Icon Twitter Icon LinkedIn Icon Google Plus Icon Lightbulb Icon Binoculars Icon Drama Masks Icon Magnifying Glass Icon Signal Check Indicator Bars Red Flag Icon Analysis and Organization Icon
Vertrieb kontaktieren

Was ist ein Code Plagiat? Einfach ausgedrĂŒckt kommt es zu einem Code Plagiat, wenn der Quellcode einer anderen Person als der Eigene ausgegeben wird. Code Plagiate gibt es seit mindestens den 1990ern, als MOSS (Measure of Software Similarity) entwickelt wurde, um Programmieraufgaben auf Plagiate zu prĂŒfen. In diesem Beitrag beschĂ€ftigen wir uns nicht nur mit der Zunahme von Plagiaten bei akademischen Programmierarbeiten, sondern auch mit den GrĂŒnden dahinter und zeigen auf, was PĂ€dagogen dagegen tun können.

1998 war im Wired-Artikel „Catching Computer Science Cheaters“ zu lesen: „Dozenten von Computer Science schĂ€tzen, dass bei jeder Aufgabe zwischen 5 und 20 Prozent der Studierenden ĂŒber das akzeptable Maß hinaus zusammengearbeitet haben“.

Ein New York Times Artikel von 2017 mit dem Titel „As Computer Coding Classes Swell, So Does Cheating“ bestĂ€tigt, dass Code Plagiate auf dem Campus weiterhin ein Problem darstellen. Bidgood und Merill erklĂ€ren: „An der Brown University war fast die HĂ€lfte der 49 mutmaßlichen VerstĂ¶ĂŸe gegen den akademischen Verhaltenskodex auf Plagiate in Computer Science zurĂŒckzufĂŒhren. In Stanford, der Alma Mater der GrĂŒnder von Google, Snapchat und zahllosen anderen Internet-Wundern, wurden bei einem Computer-Science-Studiengang 2015 bis zu 20 Prozent der Studierenden wegen möglichem Fehlverhalten auffĂ€llig.“ 

Die Doppeldeutigkeit der Zusammenarbeit

Jede Software, die gekauft oder heruntergeladen werden kann, wurde wahrscheinlich von mehr als einer Person entwickelt. Außerdem kann der Code sogenannte „Open-Source“-Elemente enthalten, also kostenlosen Quellcode, der je nach Lizenz mit oder ohne Quellenangabe von jedem benutzt werden kann. In der Welt der Software-Entwicklung ist die Zusammenarbeit auf eine Art und Weise gelĂ€ufig und erwĂŒnscht, die bei einer typischen akademischen Aufgabe inakzeptabel wĂ€re. 

Hier mĂŒssen Programmierprojekte oft von einer einzelnen Person ausgefĂŒhrt werden, um diese beurteilen zu können. Dem Code muss eine korrekte Quelle zugewiesen oder sogar voll und ganz die eigene Arbeit des Studierenden sein. Die GrĂŒnde fĂŒr diesen Unterschied liegen auf der Hand: Um die Studierenden bewerten zu können, mĂŒssen sie ihr VerstĂ€ndnis der Konzepte und eine originelle Denkweise unter Beweis stellen, und nicht etwas bauen, was verkauft werden soll.

LösungsverfĂŒgbarkeit

In der Welt von Open-Source-Software kann der Code unter unterschiedlichen Lizenzbedingungen weiterverwendet werden. Eventuell tun sich Studierende mit der Hausarbeit schwer und/oder geraten zu sehr in Versuchung, zur Open-Source-Variante zu greifen. Open-Source-Software ist in Online-Code-Repositorys wie Github verfĂŒgbar, wo es eventuell auch Antworten zu Konzepten und Aufgabenstellungen gibt, die von ehemaligen Studierenden desselben Studienganges gepostet wurden, so die New York Times. Eine weitere Ressource, die manchmal von Studierenden zweckentfremdet wird, ist Stack Overflow, eine Frage-/-Antwortseite, die von sowohl neuen als auch erfahrenen Programmierern genutzt wird.

Aus unter anderem den oben genannten GrĂŒnden trifft der kollaborative Ansatz, den Programmierer in der Praxis verfolgen, nicht auf Programmieraufgaben in einer Bildungsumgebung zu. Die Grenze bei Absprachen unter Studierenden und Code Plagiaten wirkt daher oft schwammig, nicht zuletzt, weil die Studierenden Zugang zu einer großen Anzahl an Ressourcen haben, die fĂŒr die Entwicklung von Software in der Praxis gedacht ist. Laut des Forschungsartikels „Eliminating Plagiarism in Programming Courses through Assessment Design“ „neigen Studierende zu Plagiaten, wenn Lösungen zur Aufgabenstellung [sic] leicht im Internet oder anderen Quellen gefunden werden kann“ (Ngo, 2016, p. 873).

Was können PÀdagogen tun, um zu verdeutlichen, was ein Plagiat beim Programmieren darstellt und wie sich das verhindern lÀsst?

  • Geben Sie klare Regeln zur akademischen IntegritĂ€t vor, zu der auch eine Definition von Zusammenarbeit im Vergleich zu Absprache gehören sollte. Legen Sie von vornherein fest, welche Grenzen die Studierenden nicht ĂŒberschreiten dĂŒrfen. In „Collaboration Versus Cheating“ veröffentlichte Forschungsergebnisse haben gezeigt, dass „ErklĂ€rungen und Betonung der Wichtigkeit von akademischer Ehrlichkeit zu einer statistisch signifikanten (p < 0,05) Abnahme von Plagiaten bei allen Programmierarbeiten eines großen Online-Studiengangs fĂŒr Computer Science fĂŒhrte“ (Mason, Gavrilovska, & Joyner, 2019).
  • Betonen Sie die Richtlinien zur Nutzung von externem Code. Wenn Sie die Verwendung von externem Code erlauben und/oder eine eingeschrĂ€nkte Quellenliste fĂŒhren, sollten Sie die Studierenden darum bitten, ihren Code zu kommentieren und zu verdeutlichen, wann der Code aus externen Quellen entlehnt wurde – das heißt, sie sollen ihre Quellen nennen und ordnungsgemĂ€ĂŸ zitieren.
  • Denken Sie sich beim Brainstorming neuen und einzigartigen Code aus. Seien Sie ein Vorbild eigenstĂ€ndiger Denkweisen und erstellen Sie Ihre Aufgaben so, dass sie die Entwicklung von eigenem Code unterstĂŒtzen. 
  • Bauen Sie ein GerĂŒst fĂŒr originellen Code, indem Sie Zwischentermine festlegen, an denen es Feedback gibt, um den Lernfortschritt der Studierenden zu fördern und denjenigen zu helfen, die Schwierigkeiten haben. Manche PĂ€dagogen verwenden Git bzw. ein anderes Tool zur Versionskontrolle, das Studierenden erlaubt, ihre Arbeit in Segmenten ĂŒber einen lĂ€ngeren Zeitraum hinweg zu speichern.
  • Nutzen Sie Software, die die Arbeit auf Ähnlichkeit prĂŒft, um Studierende von akademischem Fehlverhalten abzuschrecken. Vor allem in Verbindung mit expliziten Anweisungen und Feedback kann dies die akademische IntegritĂ€t bei der Programmierung stĂ€rken.
  • Investieren Sie in die Gestaltung der Aufgabenstellung mit Hilfe von Item-Analyse und Benotung mit IntegritĂ€t, damit die Aufgaben zum Lernerlebnis der Studierenden beitragen und die Studierende den Wert der Benotung und des formativen Feedbacks verstehen. „Eliminating Plagiarism in Programming Courses through Assessment Design“ zufolge „ist im Programmierbereich das Lernen von Beispielen aus der Praxis besonders nĂŒtzlich, indem Studierende lernen, bestehenden Quellcode zu interpretieren und auf ihre BedĂŒrfnisse auszulegen. Beim Lernen an Beispielen ist es ausschlaggebend, dass die Studierenden die Beispiele verstehen und den Quellcode nicht nur kopieren, um die Aufgaben zu erledigen. Bei unserer Strategie zur Aufgabenstellung werden daher fĂŒr jede Aufgabe Codeskelette entwickelt, die verhindern, dass die Studierenden Code blind kopieren. Die PrĂ€senzprĂŒfungen werden dann auf der Grundlage des Aufgabeninhalts entworfen, um das VerstĂ€ndnis und die FĂ€higkeit der Studierenden zu testen, ihren Quellcode an neue Programmanforderungen auszulegen. Erste Ergebnisse und das Feedback der Studierenden zeigen den potenziellen Nutzen unserer Methode zur Verbesserung des VerstĂ€ndnisses und der Leistung der Studierenden. DarĂŒber hinaus verhindert sie, dass Dozenten Arbeit und Zeit in das Aufdecken von Plagiaten stecken mĂŒssen“ (Ngo 2016, p. 878).
  • Pflegen und respektieren Sie Feedback-Schleifen zwischen Studierenden und Dozenten. Die Forschung hat gezeigt, dass starke Beziehungen zwischen PĂ€dagogen und Studierenden FĂ€lle von Plagiaten reduzieren. Computer Science ist da keine Ausnahme. In „Plagiarism and Programming: A Survey of Student Attitudes“ wird die Forschung zur Wahrnehmung von Code Plagiaten durch Studierende sowie deren PrĂ€vention zusammengefasst. Die Studie kommt zu dem Schluss: „Diese Studie hat gezeigt, dass die AufklĂ€rung darĂŒber, was akademisches Fehlverhalten bei benoteten Programmieraufgaben darstellt, einen Unterschied in der Wahrnehmung der Studierenden ausmacht. Die PĂ€dagogen mĂŒssen deutlich machen, was akzeptabel ist und was nicht, und die Studierenden stĂ€ndig an die Kursrichtlinien in Bezug auf akademische Unehrlichkeit erinnern.“ Dies deckt sich mit den Ergebnissen von Simkin und McLeod (2010), die das Vorhandensein eines ethischen FakultĂ€tsmitglieds mit Meinungen, die von den Studierenden respektiert wurden, als Grund dafĂŒr sehen, dass die Studierenden sich ordnungsgemĂ€ĂŸ verhalten haben“ (Aashiem, Rutner, Li, & Williams 2012, S. 307). Explizite Anweisungen zur akademischen IntegritĂ€t in der Programmierung sind ein notwendiger Schritt.

Der ungehinderte digitale Zugang zu Online-Quellcode steigert das Risiko von Code Plagiaten enorm. Quellen sind reichlich vorhanden und fĂŒr ĂŒberforderte und gestresste Studierende zugĂ€nglich. Und die kollaborative Natur in der Praxis – ideal fĂŒr die Erstellung von Software – kann fĂŒr Studierende, die fĂŒr ihre individuelle Leistung bewertet werden, irrefĂŒhrend sein.

Wir als PĂ€dagogen können den Studierenden helfen, den Zweck des Lernens und die Leitprinzipien der akademischen IntegritĂ€t zu verstehen, damit sie lernen, originelle Ideen und originellen Code zu erstellen und verstehen, was Zusammenarbeit wirklich bedeutet – auch als Berufsvorbereitung.

Sie wollen mehr ĂŒber Software-Ähnlichkeit und die Benotung mit IntegritĂ€t erfahren? Dann werfen Sie doch einen Blick auf Gradescope.