Hasso-Plattner-Institut25 Jahre HPI
Hasso-Plattner-Institut25 Jahre HPI
Login
 

Einführung in Software Analytics (Wintersemester 2018/2019)

Dozent: Prof. Dr. Jürgen Döllner (Computergrafische Systeme)
Tutoren: Willy Scheibel Daniel Limberger

Allgemeine Information

  • Semesterwochenstunden: 2
  • ECTS: 3
  • Benotet: Ja
  • Einschreibefrist: 26.10.2018
  • Lehrform: Vorlesung / Übung
  • Belegungsart: Wahlpflichtmodul
  • Lehrsprache: Deutsch
  • Maximale Teilnehmerzahl: 40

Studiengänge, Modulgruppen & Module

IT-Systems Engineering BA

Beschreibung

"Software analytics is an excellent choice for discovering, verifying, and monitoring the factors that affect software development"

(T. Menzies: Software Analytics: What's Next, IEEE Software, 2018)

 

Die Vorlesung "Einführung in Software Analytics" vermittelt einen Überblick über Methoden, Konzepte und Techniken zur automatisierten Ableitung, Analyse und Interpretation von Daten über Softwaresysteme und der mit ihnen verbundenen Softwareentwicklungsprozesse. Insbesondere wird untersucht, wie durch das Mining von Software Repositories Kennzahlen und Charakteristiken über Software-Module gewonnen werden können. Neben Source-Code-Metriken werden Analyse- und Bewertungsverfahren aus dem Maschinellen Lernen vorgestellt. Darüber hinaus  werden Verfahren der Informationsvisualisierung, insbesondere Software Maps und Bundle Views, vorgestellt. Für die Vorlesung wird ein SaaS-basiertes State-of-the-Art-Tool für Software Analytics eingesetzt, mit dem eine Reihe ausgewählter Softwaresysteme erkundet werden. Software Analytics gilt in der Industrie als aufkommende Schlüsseltechnologie für die effektive Beherrschung immer größer werdender komplexer Softwaresysteme und der mit ihnen verbundenen Entwicklungsprozesse.

 

In der Abbildung wird die Software-Komplexität eines Systems mit Hilfe einer Software Map visualisiert.

Inhalte: 

  • Complex Software-Based Systems
  • Fundamentals of Analytics
  • Analytics on Software Data
  • Data on Software
  • Static Source Code Analysis and Metrics
  • Dynamic System Analysis and Metrics
  • Development Process Metrics
  • Machine Learning on Software Data
  • Visualization Techniques for Software Analytics
  • Software Analytics Tools in Practice

Voraussetzungen

Vorausgesetzt wird mindestens das 3. Fachsemester im ITSE-Bachelor, insbesondere Programmiertechnik I und II sowie Modellierung. Ein Grundverständnis über den Softwareentwicklungsvorgang wird vorausgesetzt.

Literatur

Fachliteratur wird im Verlauf der Vorlesung jeweils themenbezogen bereitgestellt. 

Lern- und Lehrformen

Die Veranstaltung besteht aus einem Vorlesungsteil mit voraussichtlich 12 Kapiteln. Parallel dazu werden Übungsaufgaben gestellt. 

Leistungserfassung

Die Leistungserfassung erfolgt über eine schriftliche Klausur am Ende der Vorlesung und durch die Bearbeitung von Übungsaufgaben. 

Optional kann die Lehrveranstaltung auf 4 SWS (6 LP) "aufgewertet" werden, wenn ein entsprechendes Übungsprojekt durchgeführt wird. Übungsprojekte sind komplexere Teilaufgaben beim Mining von Software Repositorien. Beispiele:

  • Entwurf und Implementierung einer Metrik zur heuristischen Bewertung von Kommentaren (regelbasierte Interpretation der Kommentartexte im Source Code)
  • Entwurf und Implementierung einer Metrik zum Thema "Maintainability Index" durch Gewichtung von Elementarmetriken
  • Analyse und Implementierung einer Code-Clone-Detektionsmetrik auf Basis eines Code-Clone-Tools
  • etc. 

Theoretisch -im Einzelfall überlegbar- kann die LV auch im ITSE-Master eingebracht werden. Bitte hier dann Rücksprache mit Prof. Döllner nehmen. 

Termine

Die erste Vorlesung ist am Mittwoch, 17.10.2018, 11:00, HS 2. 

Zurück