Vergleich von Programmen

Ähnlichkeits-Analyse für Programme und Texte

Vergleich
von Programmen, Quellen und Texten auf Ähnlichkeit.

Mit unterschieldlichen Filtern, die frei kombiniert und konfiguriert werden können, sollen Texte auf Ähnlichkeiten untersucht werden.

Damit soll es möglich sein das Kopieren von Software-Teilen zu erkennen, zum Beispiel für C und Java, auch wenn in den Quellen Umbenennungen, Umformatierungen und Änderungen in der Reigenfolge vorgenommen wurden.

Diese ist aber nicht das einzig denkbare Anwendungsfeld: Spam-Filter können mit dieser Technik ebenfalls realisiert werden, ebenso Filter, die Codeverdopplung in Programmen erkennen.

Programmiersprachen und Werkzeuge
1.Ansatz
in reinem Java mit Filtern, die über Konfigurationsdateien in XML zusammengesetzt werden können.
2.Ansatz
mit einem in Python realisierten Filter-Werzeugkasten. In diesem Werkzeugkasten können fertige Unix-Filter und kleine C- oder lex-Programme genutzt werden.
Umgebung
Linux (RZ-PC)
Aufruf-Konventionen und Konfiguration
  • Kommando-Schnittstelle nach GNU-Konvention
  • Vergleich einer Quelle mit mehreren Referenz-Quellen
  • Vergleich mit mehreren Filtern gleichzeitig

Hauptnavigation