Plagiat Scanner.de Redaktion | Zuletzt geprüft: 26.08.2026 | 7 Min. Lesezeit
Was ein Codeplagiat ist
Ein Codeplagiat ist fremder Quellcode in deiner Abgabe, ohne dass erkennbar wird, woher er stammt. Gemeint sind ganze Klassen genauso wie einzelne Funktionen, Konfigurationsdateien, Datenbankabfragen oder ein regulärer Ausdruck aus einem Forenbeitrag.
Der Maßstab entspricht dem für Fließtext: Wer deine Arbeit bewertet, muss an jeder Stelle unterscheiden können, welche Zeilen von dir stammen, welche du angepasst hast und welche unverändert aus einer fremden Quelle in dein Projekt gewandert sind. Fehlt diese Trennung, behauptet dein Programm eine Leistung, die es nicht gibt.
Code hat dabei eine Eigenheit, die Text nicht hat. Er lässt sich mechanisch umformen, ohne dass sich seine Funktion ändert. Bezeichner umbenennen, eine Schleife umbauen, Kommentare löschen: Das Ergebnis sieht neu aus. Es ist es nicht.
Wie ein Codeplagiat entsteht
Der häufigste Weg beginnt mit einer Fehlermeldung. Du kopierst sie in eine Suchmaschine, landest nach zwei Klicks in einem Programmierforum und findest dort eine Antwort, die genau dein Problem löst, samt kurzer Erklärung, warum der naheliegende Weg scheitert. Der Block wandert ins Projekt. Er läuft, die Sache ist erledigt, und an eine Quellenangabe denkt in diesem Moment niemand.
Öffentliche Repositorien sind der zweite Weg. Für die Anbindung einer Schnittstelle oder das Einlesen eines krummen Dateiformats gibt es fertige Implementierungen. Wer sie klont und anpasst, spart Tage Arbeit. Übrig bleibt am Ende ein gewachsener Projektordner, in dem niemand mehr auseinanderhalten kann, welches Modul selbst geschrieben, welches angepasst und welches unverändert übernommen wurde.
Material aus der Lehre bildet den dritten Weg. Das Gerüst aus dem Praktikum, die Musterlösung des Tutoriums, das Skelett aus dem Kursrepositorium: So etwas fühlt sich nach Arbeitsmaterial an. Für eine benotete Abgabe bleibt es fremder Code.
Seit einiger Zeit kommt generierter Code dazu. Ein Assistent liefert eine Funktion, du überfliegst sie und übernimmst sie. Ob das erlaubt ist und wie du es angibst, ist eine eigene Frage; sie steht unter KI-generierten Code erkennen.
Ein Beispiel
Die umbenannte Sortierfunktion
Original: In einem Forenbeitrag steht eine Funktion, die Messwerte nach Zeitstempel sortiert und fehlende Werte ans Ende schiebt. Drei Kommentarzeilen erklären, warum die Sonderbehandlung nötig ist. Plagiatsversion: Dieselbe Funktion steht in der Abgabe. Die Variablen heißen jetzt „werte" statt „data", die Kommentare sind gelöscht, aus der Schleife ist eine kompakte Listenoperation geworden. Kein Hinweis auf die Herkunft, weder im Code noch im Text. Saubere Lösung: Über der Funktion steht ein Kommentar mit Fundstelle, Abrufdatum und Lizenz, dazu ein Satz zu deiner Änderung. Im Methodenkapitel taucht dieselbe Quelle auf. Deine Leistung wird dadurch nicht kleiner. Sie wird richtig zugeordnet.
Lizenz und Nachweis sind zwei getrennte Fragen
Die erste Frage lautet: Ist erkennbar, wer den Code geschrieben hat? Fehlt der Hinweis, liegt ein Plagiat vor. Das ist eine Frage der wissenschaftlichen Redlichkeit, und darüber entscheidet dein Prüfungsamt.
Die zweite Frage lautet: Darfst du diesen Code überhaupt verwenden und weitergeben? Darüber bestimmt die Lizenz des Projekts. Manche verlangen nur, dass du Urheber und Lizenztext mitführst, andere binden dich daran, dein eigenes Ergebnis unter denselben Bedingungen weiterzugeben, und wieder andere schließen die kommerzielle Nutzung von vornherein aus. Ein Repositorium ohne Lizenzdatei ist übrigens nicht frei, sondern ungeklärt.
Beide Fragen können auseinanderfallen. Sauber belegter Code kann trotzdem eine Lizenzbedingung verletzen. Gemeinfreier Code ohne Nachweis verletzt keine Lizenz und bleibt ein Plagiat. Der größere Zusammenhang steht unter Urheberrecht in der Arbeit.
Was kein Codeplagiat ist
Standardkonstruktionen sind keins. Eine Zählschleife über ein Feld, ein Block zur Fehlerbehandlung, der übliche Aufbau einer Klasse: Dafür existieren nur wenige sinnvolle Formen. Wer eine Bibliothek nach ihrer Dokumentation aufruft, schreibt zwangsläufig fast dieselbe Zeile wie alle anderen.
Auch das Einbinden einer Bibliothek ist kein Plagiat, solange sie als Abhängigkeit sichtbar bleibt. Genau dafür gibt es Paketverwaltungen. Kritisch wird es erst, wenn du Quelltext daraus herauskopierst und als eigenen Projektteil ausgibst.
Ähnlichkeit allein reicht ebenfalls nicht. Zwei Studierende, die denselben Algorithmus aus derselben Vorlesung nach derselben Vorgabe umsetzen, landen zwangsläufig bei sehr ähnlichen Lösungen, ohne dass eine davon abgeschrieben wäre. Auffällig ist das geteilte Zufällige.
Merkmale im Vergleich
| Merkmal | Codeplagiat | Textplagiat im Fließtext |
|---|---|---|
| Übernommene Einheit | Funktion, Klasse, Konfiguration | Satz, Absatz, Kapitel |
| Typische Umformung | umbenennen, umbauen, Kommentare löschen | Synonyme, geänderter Satzbau |
| Verräterisches Detail | identische Zufälligkeiten | identische Zitierfehler |
| Passendes Werkzeug | Code-Ähnlichkeitsprüfung | Abgleich gegen Webquellen |
| Zweite Rechtsebene | Lizenzbedingungen | Zitatrecht |
| Ort des Nachweises | Kommentar im Code und Arbeit | Beleg direkt im Satz |
Wie gut Software ein Codeplagiat findet
Die Antwort fällt zweigeteilt aus. Unser Plagiat Scan vergleicht Fließtext gegen Webquellen und Publikationen; 0,29 € kostet dabei eine Normseite, also 1.800 Zeichen inklusive Leerzeichen. Er findet übernommene Beschreibungen, Dokumentation und längere Kommentarpassagen. Programmsemantik erfasst er nicht.
Spezialisierte Werkzeuge zur Code-Ähnlichkeitsprüfung gehen anders vor. Sie zerlegen den Quelltext in Tokens oder in einen Syntaxbaum und vergleichen anschließend Strukturen statt Buchstaben, weshalb umbenannte Variablen, umsortierte Methoden und gelöschte Kommentare an ihnen weitgehend wirkungslos abprallen. An vielen Lehrstühlen laufen Programmierabgaben routinemäßig durch so ein Werkzeug.
Für dich folgt daraus eine praktische Aufteilung. Den schriftlichen Teil prüfst du per Textscan; lange Code-Listings im Anhang kannst du vorher herausnehmen, damit der Bericht lesbar bleibt. Wie das geht, steht unter Anhang ausschließen. Den Code selbst kontrollierst du über eine ehrliche Herkunftsliste, Datei für Datei.
Typische Bewertung
Prüfungsämter ordnen fremden Code ohne Nachweis der Täuschung zu, nicht der Formalie. Auf der Skala steht unten die nicht bestandene Abgabe, darüber die Wiederholung des Moduls, oben der Aktenvermerk, der dich bei einem zweiten Vorfall einholt. Welche Stufe bei dir vorgesehen ist, regelt deine Prüfungsordnung.
Wie schwer der Fall wiegt, hängt am Anteil. Eine belegte Hilfsfunktion in einem sonst eigenständigen Projekt ist etwas anderes als ein Prototyp, der zu weiten Teilen aus geklonten Modulen besteht. Erschwerend wirkt jede Spur bewusster Verschleierung: systematisch umbenannte Bezeichner, entfernte Lizenzköpfe, gelöschte Urheberzeilen. Wie der Begriff prüfungsrechtlich gefasst ist, erklärt die Seite zum Täuschungsversuch.
Die Regel: jeder fremde Block bekommt einen Kopf
Schreib den Herkunftskommentar in dem Moment, in dem du den Block einfügst. Nicht später, nicht vor der Abgabe. Später weißt du nicht mehr, welche der acht Funktionen aus dem Forum stammte.
- Über jedem übernommenen Block stehen Quelle, Abrufdatum und Lizenz.
- Deine eigenen Änderungen sind in einem Satz beschrieben.
- Der schriftliche Teil nennt jede fremde Komponente noch einmal.
- Die Lizenzdateien der genutzten Projekte liegen im Repositorium bei.
- Deine Eigenständigkeitserklärung deckt sich mit dem, was im Code steht.
Wo Code im Verhältnis zu den anderen Formen steht, zeigt der Überblick über alle Plagiatsarten.