Hauptinhalt

Maschinelles Lernen in Softwareentwicklungswerkzeugen

Zur Unterstützung bei der Softwareentwicklung gibt es eine Vielzahl an Werkzeugen für jede Phase der Entwicklung. Dabei basieren klassische Werkzeuge in der Regel auf formalen Prinzipien wie Syntax-Analyse oder Typ-Analysen. Mittlerweile stehen aber zunehmend auch maschinelle Lernverfahren zur Verfügung, um in Entwicklungswerkzeugen eingesetzt zu werden. Ein bekanntes Beispiel sind sogenannte Code-Recommender, die aus Codebeispielen die Verwendung einer bestimmten API lernen und dadurch bei der Entwicklung von neuen Programmen zutreffende Code-Vervollständigungen vorschlagen können. Andere Beispiele sind automatisches Debugging, Erzeugung von Dokumentation und das Erkennen von Refactorings oder Design Patterns, die angewendet wurden.

In diesem Seminar sollen maschinelle Lernverfahren vorgestellt werden, die für den Einsatz in Softwareentwicklungswerkzeugen geeignet sind. Ebenfalls sollen Beispiele solcher Werkzeuge vorgestellt und gegenübergestellt werden.

Qualifikationsziele

  • Überblick über aktuelle Forschungsthemen zum Thema Softwareentwicklungswerkzeuge und Maschinelles Lernen.
  • Verständnis und Aufbereitung von neueren Fachpublikationen in englischer Sprache.
  • Vorbereiten und Halten eines wissenschaftlichen Vortrags, einschl. Diskussion.
  • Verfassen einer Seminararbeit.

Organisatorisches

Lehrveranstaltende: Prof. Bockisch, Prof. Taentzer
Besprechungstermine unter Modulnummer: LV 12-079-337 (weitere Termine nach individueller Absprache)
SWS: 2, Leistungspunkte: 3

Voraussetzungen: Keine.

Leistungen: Vortrag (Gewichtung: 1 Credit) mit schriftlicher Ausarbeitung eines Themas (Gewichtung: 2 Credits).

Weitere Hinweise: Aktuelle Informationen und Ankündigungen zur Vorlesung werden grundsätzlich in der zugehörigen Ilias-Gruppe veröffentlicht.