Universität Stuttgart
Permanent URI for this communityhttps://elib.uni-stuttgart.de/handle/11682/1
Browse
37 results
Search Results
Item Open Access A methodology and initial exploration of personality traits of GitHub Developers as expressed in GitHub issues(2019) Greinert, FlorianSoftware engineering as a collaborative task relies on the fact that people work together. This work can be influenced by personalities of the participating developers and because projects can fail because of individual differences it becomes more important to understand the human side of software engineering. This work will look at the question of GitHub issues can be used to study the personality of its authors and which, if any, constraints may apply. Using LIWC a methodology will be developed to facilitate that research with a firm grounding in personality theory and it’s practical usage within the domain of software engineering using the Five Factor Model to construct a personality profile of the type of users on GitHub who open up and comment in issues.Item Open Access Evaluating the Effectiveness of Proposed Service-based Maintainability Metrics for Microservices(2019) Szidlovszky, MarcelDie Wartung von Softwaresystemen ist ein kritischer Prozess in der Entwicklung. Obwohl die Kosten der Wartung auf 60-80% des Softwareentwicklungslebenszyklus geschätzt wird, kommt es trotzdem häufig vor, dass in der Entwicklung die Wartbarkeit an letzter Stelle gesetzt und man den Fokus mehr auf andere Komponenten legt. Dies bekommen, dann die Entwickler, die aus präventiven, korrektiven, adaptiven oder perfektiven Gründen die Software warten müssen, zu spüren. Um eine aufwändige Wartung richtig planen zu können, das heißt den Kosten- und Zeitaufwand zu schätzen, muss man als erstes bestimmen wie wartbar eine Software ist. Dafür werden vor allem Statische-Code und Runtime-Daten Analysen verwendet, welche sich unter anderem auch auf Software Metriken beziehen. Für die herkömmlichen Monolithische Architekturen gibt es bereits eine Menge Literatur, die die Wirksamkeit von Wartbarkeitsmetriken bewertet und nachweist. Da es aber in den letzten Jahren, vor allem bei großen Enterprise Systemen und Software As A Service (SAAS) einen Wechsel von Monolithischen Architekturen zu Microservice Architekturen gab, müssen wir uns anpassen. Weltbekannte Webservices wie Netflix und Amazon zeigen uns dabei wie erfolgreich dieser relativ neuer Architekturtyp sein kann. Diese Systeme folgen dem SAAS Modell und haben somit einen konstanten Wartungsprozess, wobei eine effektive Wartbarkeitsmessung, sehr von Vorteil wäre. Mit diesem Paper wollen wir die Lücke in der Literatur füllen und evaluieren ob Service-basierte Wartbarkeitsmetriken effektiv für Microservices benutzt werden können. Spezifisch sollen bisher noch nicht evaluierte Service-basierten Metriken untersucht werden. Um dieses Ziel zu erreichen wurde als erstes eine aktuelle Liste von vorgestellten Service-basierten Wartbarkeitsmetriken erstellt und eine Menge von Beispielsystemen zusammengestellt, anhand deren wir die Messbarkeit und Effektivität evaluieren können. Die Effektivität wurde dabei über die Messbarkeit und der Aussagekraft der untersuchten Metriken bestimmt. Die Aussagekraft wurde mithilfe folgender Evaluationsmethoden evaluiert: Zum einen wurde eine Korrelation zwischen Metriken und Expertenbewertungen, basierend auf den Wartbarkeitseigenschaften: Größe, Kopplung und Kohäsion, für Beispielsysteme aufgestellt und nach signifikanten Übereinstimmungen untersucht. Der zweite Teil der Evaluation beinhaltet eine Szenario-basierte Analyse, in der qualitativ Evaluiert wurde, wie Metriken im Verhältnis zu theoretischen Reaktionen von Architekturen stehen. Dabei wurde analysiert ob sie den geschätzten Aufwand und die Verschiedenheiten, der Reaktionen von den verschiedenen Architekturen, vorhersagen konnten. Das Ergebnis der Evaluationen zeigt, dass sowohl die untersuchten Kopplungsmetriken, als auch Größenmetriken, sehr effektiv sein können um die Wartbarkeit zu bestimmen. Allerdings konnte keine Aussage über die untersuchte Kohäsionsmetrik getroffen werden, da sich herausgestellt hat, dass die, für die Evaluation benutzten Beispielsysteme, möglicherweise ungeeignet waren.Item Open Access Adaption des Systems XSTAMPP 4 an die Analysemethode STAMP/CAST in der Einzelplatzanwendung(2020) Zimmermann, EvaTäglich geschehen Unfälle, die analysiert werden müssen und für die Erklärungen gefunden warden sollten. Dazu gibt es einen Analyseprozess CAST, der auf STAMPP aufbauend, existierende Unfälle betrachtet und durch dessen Erkenntnisse weitere Unfälle verhindert werden sollen. Um diesen Prozess zu unterstützen, wird in dieser Bachelorarbeit eine Einzelplatzanwendung umgesetzt, die den Anwender bei der Analyse von Unfällen unterstützt. Dafür wurde aufbauend auf der Theorie und den existierenden Arbeiten, eine Anforderungsanalyse durchgeführt, auf dessen Grundlage dann die Einzelplatzanwendung implementiert wurde. Als Ergebnis der Arbeit wurde eine Software fertiggestellt, die es dem Analyst ermöglicht, alle Schritte von CAST durchzuführen.Item Open Access Automatische Extraktion von Funktionen aus klassifizierten E-Mails(2019) Tiessen, AlexanderIn vielen kleinen und großen Unternehmen hat die Zahl der eintreffenden E-Mails ein hohes Niveau erreicht. Die Bearbeitung dieser E-Mails ist mit einem hohen Zeit- und Kostenaufwand verbunden. Um diesen Aufwand zu reduzieren, wurde ein System entwickelt, das in zwei Teilschritten arbeitet. Zunächst findet eine Klassifikation statt, in der die E-Mails nach der Absicht des Senders klassifiziert werden. Hierfür wurden mehrere Klassifikatoren des maschinellen Lernens miteinander verglichen, um ein bestmögliches Ergebnis zu erreichen. Im zweiten Schritt wurden für geeignete Klassen Parameter definiert, die die Absicht des Senders genauer beschreiben. Die Werte der Parameter werden dann aus den E-Mails extrahiert. Dies wurde mit Hilfe von Natural-Language-Processing- Methoden in Verbindung mit regelbasierten Ansätzen gelöst. In dieser Arbeit wurde ein selbst erstellter E-Mail-Korpus aus ca. 1.500 E-Mails verwendet.Item Open Access Weiterentwicklung und Verbesserung der Usability einer auf dem (E)DCC-Ansatz basierenden Grafendatenbank und Implementierung von zugehörigen Verwaltungs- und Analysetools(2020) Belz, FelixDiese Arbeit beschreibt die Entwicklung von Datenbanktools, für die am Institut für Eisen-bahn und Verkehrswesen der Universität Stuttgart entwickelte, Datenbankverwaltungs- und Analysesoftware PULTrack. Diese Funktionen sind zum einen Weiterentwicklungen und Verbesserungen bestehender Funktionen und zum anderen neue Datenbanktools. Die Wei-terentwicklungen beziehen sich auf Tools zur Verwaltung der, mit PULTrack verknüpften Datenbank sowie zur Dursuchung und Visualisierung des Inhaltes dieser Datenbank. Die Evaluation einiger Weiterentwicklungen erfolgt im Rahmen einer Usability Fallstudie. Neue Tools wurden für die Übersetzungs- Protokoll- und Projektverwaltung sowie für die Erstellung von Planungsinformationen entwickelt. Methodisch wird ein agiler, nutzerorientierter Prozess zugrunde gelegt. Für jedes Tool werden zunächst die Anforderungen erhoben, in die, falls vorhanden auch eine Ist-Zustandsanalyse mit einfließt, gefolgt von einer Skizzierung der geplanten Funktionen und anschließenden iterativen Implementierung dieser Funktionen. Abschließend werden einige Optimierungsvorschläge und mögliche Weiterentwicklungen für PULTrack erläutert.Item Open Access Quality attributes in AI-ML-based systems : differences and challenges(2020) Damyanova, BeloslavaContext: There is an increasing need for ubiquitous distribution and deployment of AI-ML-based systems in industry and public sectors. This is driven by advances in machine learning techniques, including deep learning and neural networks. However, there are specifc problems with machine learning applications in terms of their quality, which reduce trust in these systems. This is especially problematic for systems which fnd application in safety-critical domains like self-driving cars and disease diagnosis. Machine learning-enabled systems learn from data for decision-making and are not designed to meet conventional requirements specifcations. Whether existing standards and principles of quality attributes demand adaptation to the new context is an open research question. Objectives: In this bachelor thesis, we have four objectives. First, we aim to identify if any non-functional requirements from ISO 25010 undergo a shift in ML-enabled systems. Then, we examine whether any new quality characteristics, e.g., trainability, generalizability, fairness, have emerged and need to be added to the standard. Lastly, we intend to determine the most critical and most challenging attributes in AI-ML-based systems. Concerning the objectives mentioned above, it is especially diffcult to receive an overview of the perspective of software practitioners. Some knowledge does exist on the topic, however, it is insuffcient. Our primary goal is, therefore, to fnd and understand the state-of-practice on quality attributes in AI-ML-enabled systems based on experts’ opinions and needs. Method: We conducted a grey literature review to accomplish the goals of our study. We use two different search engines and a QA website to identify literature on quality attributes coming from software practitioners. In total, 91 grey literature sources were selected from which we extracted the detailed knowledge necessary for our research. Results: The results of our research show that for software systems with machine learning components, some modifcations and adjustments of the conventional quality attributes have to be undertaken. We also encountered several unique non–functional requirements for machine learning-enabled systems such as explainability, fairness, trainability, and generalizability. Moreover, we identifed 13 quality attributes as important and challenging to assure, based on the perspective of authoritative software practitioners. We propose that the quality of systems with machine learning components should be monitored and improved based on the quality attributes resulted from our study. Conclusion: To support machine learning practitioners with resolving the challenges associated with AI-ML-based systems, we present an analysis on which quality characteristics should be accommodated for the unique nature of these applications. The limited 3research on quality attributes for machine learning makes our study more needed in the industry at the moment. We believe it provides major opportunities for future research, which results would foster the improvement of AI-ML-based systems.Item Open Access Integration Model for Automated Model Generation from Source Code Based on AUTOSAR(2019) Kaiser, ShomaNowadays software development in automotive industry plays an important role. In- creasing networking between vehicle systems and large number of software components lead to high complex systems. A modern high-end car has up to 100 Million lines of code [GTD15]. To master this complexity in the automotive industry, model-driven software development has been introduced. A model is an abstraction of the software. It can be applied on different abstraction levels from different viewpoints. Models are necessary to simplify and develop software. Besides that, in the automotive industry AUTOSAR has been introduced too. The main goal of AUTOSAR is to improve the complexity management of vehicles integrated E/E architectures through increased reuse and exchangeability of software modules. In reality the model-driven software development is not continuously introduced yet. The software development process is just used partly so that components of the development process are incomplete and inconsistent. This leads to the risk of information loss, errors, missing transparency and overall to lose against the complexity. That is because software changes are implemented in source code but not into the corresponding models. Thus, a part of software diagrams in the model-driven software development process are not consistent and model-driven software development not realized continuously. This thesis aims to develop an integration model which applies reverse engineering with modifications to generate software models based on source code. In this integration model AUTOSAR should be considered too. Main goal of the integration model is to automatically generate software architecture models. Goal of these models is to increase source code readability, improve software quality and yield advantages for software engineers. The models should guarantee no information loss, correctness and a good transparency for further software development. Therefore, the practical aspects of the generated models will be considered and evaluated. This integration model will be applied with an example from the software development at Daimler AG. Finally the integration model will be applied as prototype on internal source code.Item Open Access Konzeption und Umsetzung der Identifikation abhängiger Elemente in XSTAMPP 4 sowie deren Anwendung bei strukturellen Änderungen des Systems(2020) Dietrich, Yannik FlorianUm den Sicherheitsanforderungen immer komplexer werdender Systeme aus den unterschiedlichsten Bereichen gerecht zu werden, wurde ergänzend zu herkömmlichen Verfahren die Gefährdungsanalyse STPA (System-Theoretic Process Analysis) zur Untersuchung potentieller Unfallursachen vorgestellt. Die STPA ermöglicht umfangreiche Sicherheitsanalysen durch zusammenhängende Kontrollfragen mit vorgegebenen, semantisch abhängigen Elementen, die sich während des iterativen Analyseprozesses bei strukturellen Änderungen des Systems ständig verändern können. Die am Institut für Softwaretechnologie der Universität Stuttgart bereitgestellte Webanwendund XSTAMPP 4.1 zur vereinfsachten Bearbeitung komplexer Systeme mit STPA implementiert die vollständige Erkennung dieser semantischen Elementabhängigkeiten nicht, wodurch einerseits die Benutzerfreundlichkeit der Webanwendung beeinträchtigt wird und andererseits ein internes Datenbankproblem entsteht. Infolgedessen wird eine Konzeption und Implementierung vorgestellt, mit welcher XSTAMPP 4.1 um die Erkennung semantisch abhängiger Elemente und deren Anwendung bei strukturellen Änderungen des Systems während des Analyseprozesses erweitert wurde.Item Open Access Entwicklung und Implementierung von Analysetools zur Dimensionierung von Entwässerungsanlagen am Bahnkörper und zur Aufstellung der Investitionsschätzung von vorgeplanten Eisenbahninfrastrukturen in das vorhandene DCC-Modell(2020) Koch, DanielDiese Arbeit beschreibt die Entwicklung und Implementierung von zwei Analysetools in das vorhandene DCC-Modell. Dabei wird der DCC-Ansatz erläutert und die Umsetzung in Bezug auf die zu implementierenden Tools aufgeführt. Eine der Softwarelösungen dient zur Aufstellung der Investitionsschätzung von vorgeplanten Eisenbahninfrastrukturen. Hierbei wird die Kostenermittlung in Form einer Kostenschätzung für den Verkehrsträger Schiene im Detail betrachtet. Das zweite Analysetool unter-sucht die Dimensionierung von Entwässerungsanlagen am Bahnkörper. Dafür wird auf die hydraulische Bemessung von offenen Entwässerungsanlagen umfänglich eingegangen. Für beide Softwarelösungen wird die Vorgehensweise der Implementierung schrittweise erklärt und die enthaltenen Funktionen dargelegt. Zudem wird die Integration der Analysetools in die vom Studienprojekt „ModellBahn“ entwickelte Software namens „PULTrack“ ausführlich beschrieben, und mögliche Anpassungen und Optimierungen dieser erwähnt.Item Open Access Tool support for systematic literature reviews : analyzing existing solutions and the potential for automation(2021) Karakan, BurakDie steigende Popularität des evidenz-basierten und empirischen Software-Engineerings hat dazu geführt, dass systematische Reviews sich in diesem Bereich als eine wichtige Forschungsmethode etabliert haben. Der systematische Charakter dieses Forschungsansatzes ermöglicht es, alle relevanten Beweise in Bezug auf ein bestimmtes Forschungsthema zu identifizieren, zu sammeln und zu interpretieren, wobei auch neue Forschungsaktivitäten zur weiteren Untersuchung durchgeführt werden können. Die Entwicklung eines umfassenden und detaillierten Review-Protokolls, das alle relevanten Methoden, Verfahren und Strategien für den Review dokumentiert, muss daher befolgt werden, um eine mögliche Verzerrung in der Bewertung durch den Forscher zu vermeiden und den wissenschaftlichen Wert der Ergebnisse zu erhöhen. Folglich sind die manuellen Tätigkeiten von systematischen Reviews sehr zeitaufwendig und erfordern einen hohen Arbeitsaufwand. Angesichts dieser Herausforderungen gibt es ein großes Potenzial für die Automatisierung mit Tool-Unterstützung, um die Effizienz und Zuverlässigkeit bestimmter Schritte zu erhöhen. Bislang gibt es viele Tools, die zur Unterstützung des systematischen Review-Prozesses entwickelt wurden. Allerdings bieten diese Tools in der Regel nur eine begrenzte Unterstützung für den gesamten Prozess an. Da die Menge der existierenden Tools groß ist, ist es für Forscher schwierig, den Überblick über die existierenden Tools zu behalten um einen passenden Kandidaten auszuwählen. Das Ziel dieser Arbeit ist es, existierende Tools zur Unterstützung des systematischen Review-Prozesses zu identifizieren, zu sammeln und zu analysieren, um einen effizienten Überblick über evaluierte Tools zu erhalten, die bestimmte Features abdecken. Da eine ganzheitliche Tool-Unterstützung für den gesamten Prozess zu fehlen scheint, werden typische Praktiken für systematische Reviews im weiteren Kontext der Softwareentwicklung und Herausforderungen, denen Forscher bei der Durchführung eines systematischen Reviews gegenüberstehen, untersucht, um die wichtigsten Bereiche für die Automatisierung zu identifizieren und einen Vorschlag für ein ganzheitliches Tool-Design aus der Kombination bestehender Werkzeuge zu präsentieren. Um die Ziele zu erreichen, wurden eine Reihe von sinnvollen Forschungsfragen und ein striktes Forschungsprotokoll entwickelt. Um bestehende Tools zu identifizieren und zu sammeln, wurde ein Rapid Review durchgeführt. Die Erfahrungen und Herausforderungen von Software-Engineering- Forschern, die bei der Durchführung von systematischen Übersichtsarbeiten auftreten, wurden durch halbstrukturierte Interviews untersucht. Um eine Reihe von identifizierten Tools zu analysieren, zu vergleichen und zu bewerten, wurde eine Feature Analysis durchgeführt. Die Ergebnisse des Rapid Reviews zeigen eine zunehmende Verbreitung von Tools zur Unterstützung von systematischen Reviews in der Softwareentwicklung und eine begrenzte Evaluierung dieser Tools. Die Beobachtungen, die von den Teilnehmern durch halbstrukturierte Interviews gemacht wurden, zeigen eine Reihe von herausfordernden und problembezogenen Aktivitäten, die während des systematischen Review-Prozesses auftreten. In Bezug auf diese Aktivitäten wurden von den Teilnehmern verschiedene Anforderungen an Werkzeuge identifiziert, die für die Unterstützung von systematischen Literaturreviews wichtig sind. Die Ergebnisse der Feature-Analyse zeigen, dass die Unterstützung durch bestehende Tools noch begrenzt ist. Auch wenn die Unterstützung durch bestehende Tools begrenzt ist, gibt es ein großes Potenzial für die Automatisierung bestimmter Aufgaben. Ein besseres Tool zur Unterstützung der systematischen Literaturrecherche wird immer noch benötigt.