Options
2023
Master Thesis
Title
Visual Analysis of Source Code Structure and Software Development Activities for Risk Mitigation
Other Title
Visuelle Analyse von Quellcodestruktur und Softwareentwicklungsaktivitäten zur Risikominderung
Abstract
In today's digital world, software systems are fundamental to the operation of countless devices, applications, and services that impact nearly every aspect of modern life. These systems, however, are constantly exposed to operational risks such as vulnerabilities and bugs that can compromise their security and efficiency. Just as important, the development process for these software systems has its own set of risks. These range from project management challenges, including team coordination and communication among developers, to technical oversights that can occur during the programming and testing phases-each with the potential to negatively impact the final product. Data visualization is a proven technique for making complex data understandable. For software projects, visualizations can reveal potential problems and risk factors that may be missed by other methods. While there are many tools for visualizing general aspects of software, there's a notable lack of tools specifically designed around risk and risk mitigation. This thesis addresses this gap by developing a visual analysis system VAS that focuses on static code analysis of software repositories, analyzing source code and project history to identify and visually represent risk factors. In the course of this thesis, an overview of related work is presented, a comprehensive requirements analysis is performed, and a concept for the VAS is developed and illustrated with design mockups. The concept was then implemented in a web application and evaluated in a user study where participants were asked to perform a series of tasks using the system. Although the tool was effective in solving the tasks, the results of the study indicate a slightly below average usability of the tool. Several areas for improvement were observed, thoroughly discussed, and opportunities for future research identified.
;
In der heutigen digitalen Welt sind Softwaresysteme von grundlegender Bedeutung für den Betrieb unzähliger Geräte, Anwendungen und Dienste, die nahezu jeden Aspekt des modernen Lebens beeinflussen. Allerdings sind diese Systeme ständig operativen Risiken wie Schwachstellen und Programmierfehlern ausgesetzt, die ihre Sicherheit und Effizienz beeinträchtigen können. Ebenso wichtig ist die Tatsache, dass der Entwicklungsprozess für diese Softwaresysteme seine eigenen Risiken birgt. Diese reichen von Herausforderungen im Projektmanagement, einschließlich der Teamkoordination und
der Kommunikation zwischen den Entwicklern, bis hin zu technischen Versäumnissen, die während der Programmierungs- und Testphasen auftreten können - alle mit dem Potenzial, das Endprodukt negativ zu beeinflussen. Datenvisualisierung ist eine bewährte Technik, um komplexe Daten verständlich zu machen. Bei Softwareprojekten können Visualisierungen potenzielle Probleme und Risikofaktoren aufdecken, die mit anderen Methoden möglicherweise übersehen werden. Es existieren zwar viele Tools für die Visualisierung allgemeiner Aspekte von Software, aber es gibt einen bemerkenswerten Mangel an Tools, die speziell für Risiken und Risikominderung entwickelt wurden. In dieser Arbeit wird diese Forschungslücke durch die Entwicklung eines visuellen Analysesystems VAS adressiert, das sich auf die statische Code-Analyse von Software-Repositories konzentriert und den Quellcode und die Projekthistorie analysiert, um Risikofaktoren zu identifizieren und visuell darzustellen. Im Rahmen dieser Thesis wird ein Überblick über verwandte Arbeiten gegeben, eine umfassende Anforderungsanalyse durchgeführt und ein Konzept für das VAS entwickelt und mit Design Mockups illustriert. Das Konzept wurde anschließend in eine Webanwendung implementiert und in einer Nutzerstudie evaluiert, in der die Teilnehmer mit dem System eine Reihe von Aufgaben erledigen mussten. Obwohl das Tool bei der Lösung der Aufgaben effektiv war, deuten die Ergebnisse der Studie auf eine leicht unterdurchschnittliche Benutzerfreundlichkeit hin. Es wurden verschiedene verbesserungswürdige Bereiche festgestellt, eingehend diskutiert und Möglichkeiten für künftige Forschung aufgezeigt.
der Kommunikation zwischen den Entwicklern, bis hin zu technischen Versäumnissen, die während der Programmierungs- und Testphasen auftreten können - alle mit dem Potenzial, das Endprodukt negativ zu beeinflussen. Datenvisualisierung ist eine bewährte Technik, um komplexe Daten verständlich zu machen. Bei Softwareprojekten können Visualisierungen potenzielle Probleme und Risikofaktoren aufdecken, die mit anderen Methoden möglicherweise übersehen werden. Es existieren zwar viele Tools für die Visualisierung allgemeiner Aspekte von Software, aber es gibt einen bemerkenswerten Mangel an Tools, die speziell für Risiken und Risikominderung entwickelt wurden. In dieser Arbeit wird diese Forschungslücke durch die Entwicklung eines visuellen Analysesystems VAS adressiert, das sich auf die statische Code-Analyse von Software-Repositories konzentriert und den Quellcode und die Projekthistorie analysiert, um Risikofaktoren zu identifizieren und visuell darzustellen. Im Rahmen dieser Thesis wird ein Überblick über verwandte Arbeiten gegeben, eine umfassende Anforderungsanalyse durchgeführt und ein Konzept für das VAS entwickelt und mit Design Mockups illustriert. Das Konzept wurde anschließend in eine Webanwendung implementiert und in einer Nutzerstudie evaluiert, in der die Teilnehmer mit dem System eine Reihe von Aufgaben erledigen mussten. Obwohl das Tool bei der Lösung der Aufgaben effektiv war, deuten die Ergebnisse der Studie auf eine leicht unterdurchschnittliche Benutzerfreundlichkeit hin. Es wurden verschiedene verbesserungswürdige Bereiche festgestellt, eingehend diskutiert und Möglichkeiten für künftige Forschung aufgezeigt.
Thesis Note
Darmstadt, TU, Master Thesis, 2023
Language
English