Praktikum
Visual Page Segmentation
Completion
2018/09
Research Area
Web Engineering
Students
Advisers
Description (German)
Sich verändernde
Nutzererwartungen stellen neue Anforderungen an bestehende Softwaresysteme. Auch die
ständige Weiterentwicklung von Technologien und das Wegfallen der
Unterstützung für veraltete Technologien erhöhen den Druck,
bestehende Softwaresysteme zu erneuern. Da über lange Zeiträume hinweg
entwickelte Systeme viel Wissen über Modelle, Regeln und Lösungen der
Anwendungsdomäne im Quelltext beinhalten, ist es oft nicht sinnvoll diese durch
eine komplette Neuentwicklung abzulösen. Vielmehr ist es nötig,
bestehende Softwaresysteme in neue Systeme zu überführen und dabei
bereits vorhandenes Wissen zu erhalten. Mit dieser Zielstellung beschäftigt sich
die Softwaremigration.
Beim Übergang von Desktop zu Web
Anwendungen ändert sich zwingend die Benutzerschnittstelle (UI). Diese
Änderung beeinflusst die Nutzerakzeptanz mehr, als beispielsweise
Änderungen im Backend und stellt folglich einen Risikofaktor dar. Wenn die
Änderungen zu drastisch ausfallen, riskiert der Software Provider den Verlust von
Kunden. Ziel ist es also, den Grad an von Nutzern wahrgenommenen Änderungen
kontrolieren zu können. Hierfür ist es nötig, diesen
möglichst automatisch bestimmen zu können, indem UI Elemente automatisch
erkannt werden.
Ziel dieses Praktikums ist die Verbesserung der automatischen Erkennung von UI
Elementen (z.b. Buttons, Textboxen, Checkboxen, Labels, Textparagraphen, Links,
Radiobuttons, Selects/Listen, Bilder, Symbole etc.) in Screenshots von
Nutzerschnittstellen, sowohl von Desktopanwendungen als auch Webanwendungen, basierend auf
visuellen Merkmalen. Das Ergebnis einer solchen visuellen Analyse sind Position und
Größe des UI Elements (im allgemeinen durch die bounding box
beschrieben), sowie Informationen zur Art des Elements (unterschiedliche Typen wie oben
aufgelistet) und ggf. weiterführende Informationen (z.B. Zustand, Ausrichtung,
Font, Farbe)
Diese Verbesserung umfasst zwei Dimensionen:
a) Verbesserung der Vollständigkeit (vgl. Recall) der Erkennung aller
Elemente eines UI Screenshots und
b) Verbesserung der Korrektheit (vgl. Precision) der Erkennung aller Elemente
eines UI Screenshots.
Um diese Verbesserung zu erreichen, sollen übliche Algorithmen aus
populären Frameworks der Themenfelder Maschinelles Lernen, Deep Learning und
Bildanalyse/Bildverstehen verwendet werden. Hierfür nötige
Trainingsdatensätze werden im Rahmen des Forschungspraktikums entweder
eigenständig mit Hilfe von entsprechenden Skripten erstellt, oder es wird auf
bestehende Datensätze zurückgegriffen.
Die umgesetzte Lösung wird in die bestehende Web-Service Infrastruktur
der Professur integriert, als Datenformat kommt JSON zum Einsatz.
Der Nachweis der Verbesserung durch die eigene Lösung wird mit einer
geeigneten Evaluation erbracht, für die die bestehende Umsetzung der Professur
sowie die eigene Lösung auf einem geeigneten Testdatensatz von verschiedenen
Nutzerschnittstellen angewendet werden, und die Ergebnisse vergleichend dargestellt und
analysiert werden.