Testabdeckungsanalyse in Prolog

Das Thema ist bereits vergeben!



Ziel der Arbeit wäre, ein Werkzeug zu entwickeln, dass mittels Code-Instrumentierung Abdeckungsanalysen für Prolog-Programme ermöglicht. Instrumentierung von Programmcode bedeutet, dass ein Programm eingelesen wird und darauf basierend ein neues erstellt wird, in dem zusätzliche Kommandos eingefügt werden, die Statistiken während der Laufzeit erstellen. Aufgabe des Werkzeuges wäre, Statistiken darüber zu erstellen, welche Teile des Source-Codes wie ausgeführt werden. Es würde auch dazu dienen, toten Code zu identifizieren. Im Rahmen der Arbeit sollte evtl. auch ausgelotet werden, welche Art von Informationen interessant sein könnte. Denkbar wäre auch eine farbliche Kennzeichnung des Sourcecodes innnerhalb eines Editors.

Mockup-prolog-test.png

Ein Parser (in Java), um Prolog-Programme einzulesen, wurde bereits im Rahmen einer anderen Bachelor-Arbeit erstellt.

Ein Kandidat sollte sich etwas mit Prolog und Java auskennen bzw. bereit sein, sich darin einzuarbeiten. Auch "Syntaxbaum" sollte kein Fremdwort sein. Hilfreich wäre deshalb bestimmt die Vorlesung "Softwaretechnik und Programmiersprachen I".

Bachelor-, Master- oder Projektarbeiten je nach Absprache.