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
- HCGT: Human Computer Interaction & Computer Graphics Technology
- HCGT: Human Computer Interaction & Computer Graphics Technology
- OSIS: Operating Systems & Information Systems Technology
- OSIS: Operating Systems & Information Systems Technology
- SAMT: Software Architecture & Modeling Technology
- SAMT: Software Architecture & Modeling Technology
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