Universität Stuttgart
Permanent URI for this communityhttps://elib.uni-stuttgart.de/handle/11682/1
Browse
31 results
Search Results
Item Open Access Enhancing automotive safety through an ADAS violation dashboard(2024) Senger, TobiasAutonomous Driving (AD) is an active area of research in which Advanved Driver Assistance Systems (ADAS) play an important role. Ensuring the safety of ADAS systems is critical. However, most ADAS systems nowadays make use of Deep Learning or other types of Machine Learning. Formally verifying these systems to ensure their safety is hardly possible. For this reason, Radic explored the use of Runtime Monitoring (RM) to ensure the safety of ADAS systems by detecting violations of several specified Safety Requirements (SR) at runtime. After performing a test run with the system, she manually analyzed the causes of each series of violations in the extracted Violations Report. As this was laborious and time-consuming, this thesis should explore available approaches and techniques to automatically derive the root causes of violation series. To do this, we first perform an exploratory literature search. This allows us to identify that the most suitable approach to address our problem is Root Cause Analysis (RCA) using Language Models (LMs), Large Language Models (LLMs), Knowledge Graphs (KGs), or a combination of them. We perform a Rapid Review (RR) to find concrete techniques for this approach. We then conduct a narrative data synthesis to explore the techniques retrieved with our RR. This allows us to derive a plan to automatically analyze the causes of SR violations in a Violations Report. Our solution is then incorporated into a web-based safety dashboard application. This application enables our safety engineers to configure ADAS use cases, test tracks, and test runs. Then, the safety engineer can select a test run to display an interactive view of the test run. The safety engineer can then select individual violation series and analyze their root causes using our automated RCA solution based on LLMs. To evaluate the effectiveness of our system, we conduct a simple experiment. This experiment shows that our system already achieves comparable performance to a human baseline provided by Radic. Our system, therefore, represents a valuable tool for safety engineers to identify and repair safety-critical problems in ADAS systems in the context of AD. We also propose modified variants of our system that allow researchers to improve our automated RCA system in the future, e.g., by incorporating a KG.Item Open Access Analyzing student knowledge status(2024) Keller, Tessa MadleineOver time, various learning management systems have been developed. One of these is MEITREX, a gamified intelligent tutoring system, which has been developed specifically for software engineering eduction at higher education institutions. By providing students with individual feedback and learning material adapted based on students’ individual process MEITREX should increase students motivation. To provide students with individual feedback and to adapt learning materials based on students’ current knowledge status, the student’s current knowledge status needs to be automatically and reliably determined. Currently, MEITREX uses a simple score to determine students current knowledge. This approach has several drawbacks. This approach for example doesn’t determine students’ knowledge of a single skill, but of the content of a chapter. Additionally, a student needs to repeat each assessment of a chapter a certain number of times to master the content of a chapter, despite having mastered the content before. Over the past decades, different approaches for the estimation of students’ knowledge status have been introduced. The introduced approaches range from simple machine learning models to complicated neural networks, hidden markov models and approaches, that have their origins in the chess world but have been modified. All approaches have in common, that their estimation of students’ knowledge status is based on the students’ performance on exercises. One of these established and reliable approaches should replace the old score. Not all models are equally well suited for usage in an MEITREX. Therefore the requirements such a model needs to meet are defined and a requirement analysis based on the existing literature is conducted to find promising model groups, as the existing approaches can be grouped into eight groups of models. Based on the results of this requirement analysis the performance of eight promising models from three different model groups is tested. Of all tested models, that fulfill the most important requirements M-Elo showed the best performance and therefore M-Elo was integrated into MEITREX. Junit Tests and a short evaluation showed, that the integration M-Elo into MEITREX was successful.Item Open Access Evaluating the maintainability of variability concepts in cloud deployment technologies(2024) Kenworthy, Samuel DavidContext. Deployment (Automation) Technologies (DTs) allow automating the provisioning and management of cloud deployments. It is often required to use multiple technologies concurrently and define multiple variations of a deployment model to satisfy various user requirements such as cost or elasticity. Therefore, variability must be managed across multiple DTs. Problem. Managing variability across multiple DTs can lead to increased complexity, as DTs support different variability mechanisms of varying expressiveness. The Variable Deployment Metamodel (VDMM) introduces variability management concepts on top of the DT-agnostic Essential Deployment Metamodel (EDMM), which does not support variability. Thus, VDMM proposes improving maintainability by providing a single deployment model supporting variability. However, the effectiveness of VDMM in terms of these improvements has yet to be validated compared to other DTs. Objective. In this thesis, we identify and classify different variability concepts in DTs. This classification serves as a tool for understanding deployment variability’s implications on maintainability, supporting the primary objective of this thesis: to evaluate and compare the maintainability of variability concepts in VDMM and other popular DTs. Method. We derive a classification framework for variability concepts in cloud DTs from literature research and the analysis of the official documentation of DTs. Based on the Goal Question Metric Approach (GQM), we evaluate the maintainability of variability concepts in DTs by conducting a case study and measuring and evaluating the defined metrics. Result. Our classification framework contains three dimensions: (i) Variability Concepts define high-level concepts enabling variability in the deployment model, (ii) Variability Implementations are mechanisms used by DTs to implement these concepts, and (iii) Variability Properties define the properties of the implementations. The case study shows that DTs using General-Purpose Programming Languages (GPLs), such as Pulumi, are the most maintainable technologies supporting variability in the deployment model for our scenario. Furthermore, using the VDMMs internal pruning algorithm requires less maintenance work when implementing architectural changes than technologies such as Ansible, Terraform, and OpenStack Heat, which do not provide such algorithms. Conclusion. The classification framework aids the case study evaluation in understanding why variability in some DTs may be more maintainable than in others. The evaluation provides a set of key findings concerning the maintainability of variability concepts, such as the most efficient DTs and variability implementations for implementing architectural changes in our scenario. However, the evaluation also shows that the maintainability of variability depends on the use case and complexity of the implemented changes; for example, using expressions to implement configuration changes requires less work in our scenario.Item Open Access Wasm-R3 : creating executable benchmarks of WebAssembly binaries via record-reduce-replay(2024) Getz, JakobWebAssembly is the newest language to arrive on the web and has now been implemented in all major browsers for several years. It features a compact binary format, making it fast to be loaded, decoded and run. To evaluate and improve the performance of WebAssembly engines, relevant executable benchmarks are required. Existing benchmarks such as PolyBenchC and Spec CPU have shortcomings in their relevancy, since they do not necessarily represent real-world WebAssembly applications well. To make the creation of such benchmarks faster and simpler, we develop Wasm-R3 an approach that has the capability of recording existing web applications and generate an executable benchmark from it. Wasm-R3’s workflow can be described in three phases: record, reduce and replay. In the record phase the instrumenter instruments the website’s WebAssembly code, a user then interacts with the website, which causes traces of the execution to be recorded. Since these traces are typically large, unnecessary information gets filtered out in the reduce phase. In the replay phase a replay generator takes these traces along with the original web application’s WebAssembly binary and generates a standalone executable benchmark from it. We evaluate Wasm-R3 by implementing it in Typescript and Rust to show that the generated benchmarks correctly mimic the behavior of the recorded application. We further demonstrate that replays can be generated in reasonable time by measuring a mean wall time of 8.651 seconds and that our benchmarks are portable across a variety of di↵erent WebAssembly engines.Item Open Access Toolunterstütztes Refactoring von Microservices-Architekturen : eine industrielle Fallstudie(2024) Herrmann, AxelAufgrund zahlreicher Vorteile gegenüber monolithischen Anwendungen hat sich das Architekturprinzip von Microservices im letzten Jahrzehnt immer weiter verbreitet. Faktoren wie die bessere Skalierbarkeit oder größere Flexibilität bei der Kombination von Technologien können es für viele Produkte sinnvoll machen, von einer monolithischen zu einer Microservices-basierten Architektur zu migrieren. Es ist jedoch ein sehr zeit-, kostenintensiver und risikobehafteter Prozess, die grundlegende Architektur eines Produkts zu ändern. Eine klare Vorgehensweise für den Migrationsprozess zu finden, ist eine schwierige Aufgabe. Da viele Entwickler dabei nicht auf wissenschaftliche Literatur zurückgreifen, wurde in früheren Arbeiten das Tool Architecture Refactoring Helper (ARH) auf Basis des Frameworks Microservices Migration Framework (MMF) entwickelt, das den Migrationsprozess mit wissenschaftlichen Erkenntnissen unterstützen soll. Im Rahmen dieser Thesis wurde das Tool erstmals für das Refactoring eines industriellen Produkts mit Microservices-Architektur eingesetzt. Zunächst wurde mithilfe des Frameworks ein Architekturreview durchgeführt, um die gewünschten Qualitätsattribute für das Produkt jadice flow szenarienbasiert zu erfassen. Diese und weitere Filtereinstellungen dienten als Basis für die Suche mit dem ARH nach Migrationsverfahren. Die resultierenden Suchergebnisse wurden manuell evaluiert. Eine Anwendung der beiden bevorzugten Migrationsverfahren wurde versucht, konnte jedoch nicht fertiggestellt werden. Zur Evaluation der Studie wurden deshalb die beiden Verfahren sowie die Suchergebnisse der dritten Phase in Form von Best Practices und Patterns in Experteninterviews bewertet. Aus der Auswertung dieser und der während des Refactoring-Prozesses gesammelten Feldnotizen ergibt sich eine positive Evaluation des MMF. Die Experten hoben dabei die einzelnen Funktionen sowie das Vorgehen in Phasen positiv hervor. Außerdem wurde vermutet, dass die ausgewählten Migrationsverfahren bei zukünftiger, vollständiger Anwendung potentiell nützlich für jadice flow sein könnten. Daraus wird geschlussfolgert, dass die Anwendung des Frameworks in dieser Fallstudie erfolgreich war und das MMF auch für Refactorings von Produkten mit vorhandenen Microservices-Architekturen nützlich sein kann. Es gilt, diese in der Zukunft einzusetzen, sowie weitere Untersuchungen zum und Verbesserungen am ARH durchzuführen.Item Open Access Architectural refactoring to microservices : a quality-driven methodology for modernizing monolithic applications(2024) Fritzsch, Jonas; Wagner, Stefan (Prof. Dr.)Context and Problem: The microservices architectural style has revolutionized the way modern software systems are developed and operated, and has become the de facto standard for cloud-based applications. However, existing systems are often designed as monoliths, which are associated with inflexible processes, long release cycles, and an architecture incapable of leveraging the advantages of cloud environments. The adoption of microservices would require an architectural refactoring, entailing redevelopments of parts or even the entire application. Often associated with extensive manual effort, the targeted, quality-oriented, and semi-automated decomposition into a set of self-contained services remains problematic. Software architects look for resource-efficient ways to provide predictable results and guidance in this highly individual process. Objective: To systematically guide software architects and developers in modernizing their software systems, we seek to provide a holistic methodology for systematic and quality-driven migrations towards microservices. As part of it, we search solutions for the targeted and automated decomposition into services, and ways to support a quality-oriented design based on established patterns and best practices. Our work aims to provide industry-relevant methods that address the gap between academia and practice by facilitating the transfer of knowledge. Methods: In an overarching design science research process, we create a migration methodology that we implement as a web-based application. For analysis and evaluation, we apply established methods in empirical software engineering, such as case study research, surveys, and semi-structured interviews with experts. Our secondary research to summarize the current state of scientific advances relies on consecutive literature searches and rapid reviews, a lightweight method derived from systematic reviews. Contributions: Based on two primary empirical interview studies with 25 software professionals, we collected evidence on the intentions, strategies, and challenges of migrating monolithic applications to microservices, complemented by requirements for tool support and automation. Over four iterations, we reviewed 110 scientific publications on approaches for architectural refactoring and migration to microservices. To guide architects and developers in a migration process, we conceptualized a framework, along with a dedicated quality model that reflects a quality-driven migration process. Based on latest technologies and a modern user interface design, we realized our concept as a web-based application in an agile development process with early involvement of potential users. In a multi-faceted evaluation, we examined its ability to provide actionable guidance for practitioners. To this end, we conducted three surveys and one interview study with a total of 26 participants, complemented by two longitudinal case studies in an industrial context. Conclusion: We propose a holistic methodology for modernizing monolithic applications to microservices that comprises a framework and a dedicated quality model. Our contributions support architects in making informed decisions about microservices adoption, and furthermore guide them through a systematic transformation process. The evaluations showed an overall positive result in terms of effectiveness, usefulness, and usability, while both case studies demonstrated a successful application in an industrial environment. By sharing important study artifacts, we support researchers developing industry-focused methods, who can profit from our insights and experiences. Moreover, we regard our design science approach to leveraging academic research by practice as transferable to other scientific disciplines.Item Open Access Charging in the cloud : implementing a virtualized runtime environment for EVSE and EV interoperability testing(2024) Verma, RubenDas rasante Wachstum der E-Mobilität hat zu einem deutlichen Anstieg der Zulassungen von Elektrofahrzeugen (EV) und dem Einsatz von Stromversorgungsanlagen (EVSE) in Deutschland geführt. Entscheidend für den zukünftigen Erfolg der E-Mobilität ist die standardisierte Kommunikation zwischen EV und EVSE, die durch die 2014 veröffentlichte Norm ISO 15118 festgelegt wurde. Dennoch wird diese Kommunikation von den Herstellern unterschiedlich umgesetzt, was umfangreiche Interoperabilitätstests erforderlich macht. Herkömmliche Methoden, wie z. B. Testivals, ermöglichen zwar genaue Tests, werden aber durch Koordinationsprobleme und nicht agile Entwicklungszyklen behindert. Diese Thesis erarbeitet eine Lösung in Form einer virtualisierten Laufzeitumgebung vor, in die Hersteller von EV und EVSEs ihre virtualisierten elektronischen Steuergeräte (ECUs) und EVSE-Controller für virtuelle ISO 15118-Kommunikationstests hochladen können. Diese Cloudfähige Software-in-the-Loop (SIL) Umgebung ermöglicht frühzeitige und parallele Tests im Entwicklungsprozess und reduziert den Bedarf an physischer Anwesenheit auf Testivals auf reine Hardware-Tests. Der virtualisierte Ansatz beschleunigt die Testzyklen und beseitigt Hardware-Engpässe. Er unterstützt die Integration einer DevOps-Toolchain zur kontinuierlichen Überwachung und Fehlererkennung. Darüber hinaus wird in dieser Arbeit eine Literaturrecherche über die Verwendung von SIL- und Hardware-in-the-Loop (HIL)-Tests durchgeführt, um die Grenzen und Szenarien zu ermitteln, in denen SIL gegenüber HIL ausreichend ist. Die virtualisierte Laufzeitumgebung wurde gegen reale Hardware getestet, und kamen zu dem Schluss, dass SIL-Tests zwar ein realistisches Feedback liefern, HIL-Tests auf der Ebene der Hardwareschnittstellen jedoch nach wie vor unbestritten und notwendig sind.Item Open Access Development of outcome-driven product roadmaps(2024) Trieflinger, Stefan; Münch, Jürgen (Prof. Dr.)Unternehmen sehen sich zunehmend mit einer hohen Marktdynamik, sich schnell entwickelnden Technologien und sich ständig wechselnden Nutzererwartungen konfrontiert. In einer Welt mit hoher Dynamik und Ungewissheit ist es nahezu unmöglich, langfristig vorherzusagen, welche Produkte, Features oder Services die Bedürfnisse der Kunden erfüllen werden. Daher scheitern traditionelle Produkt-Roadmapping-Ansätze in dynamischen und unsicheren Marktumfeldern. Um diesem Problem entgegenzuwirken, wurden in dieser Dissertation sechs Artefakte entwickelt, die Unternehmen dabei unterstützen, ihre Produkt-Roadmapping-Praktiken an die Gegebenheiten von dynamischen und unsicheren Marktumfeldern zu transformieren. Diese sechse Artefakte wurden unter anderem durch zwei Fallstudien in Zusammenarbeit mit zwei software-intensiven Unternehmen validiert.Item Open Access A gamified neural network learning application for PhD students(2024) Freiberger, Tamás DávidNeural networks are powerful machine learning models that could be applied to various problems, like classification or function approximation, in many different fields of science. However, education about neural networks is often either only aimed at students of the computer science field, or is kept very simple, to be applicable to a broader public. For many students, this makes learning about neural networks either a subchallenging or an overwhelming experience. With this thesis we intend to close this gap by introducing an educational application aimed at people who attend or have completed tertiary education in any field. Our application gives an in-depth but comprehensible view on the structure of neural networks, i.e. the different components and their relations that make up a neural network. One core feature of our application is the usage of gamification elements to keep the users motivated while simultaneously increasing the concepts’ comprehensiveness and convey a sense of accomplishment. We conducted an evaluative user research and found that the application moderately increases both the users’ motivation and their sense of accomplishment. However, we also found that the application does not increase the users’ perceived competence. We conclude that the implemented concepts, in particular the gamified learning environment, show beneficial effects on motivation of PhD students when learning about neural networks.Item Open Access ‘Better see a doctor?’ status quo of symptom checker apps in Germany : a cross-sectional survey with a mixed-methods design (CHECK.APP)(2024) Wetzel, Anna-Jasmin; Koch, Roland; Koch, Nadine; Klemmt, Malte; Müller, Regina; Preiser, Christine; Rieger, Monika; Rösel, Inka; Ranisch, Robert; Ehni, Hans-Jörg; Joos, StefanieBackground: Symptom checker apps (SCAs) offer symptom classification and low-threshold self-triage for laypeople. They are already in use despite their poor accuracy and concerns that they may negatively affect primary care. This study assesses the extent to which SCAs are used by medical laypeople in Germany and which software is most popular. We examined associations between satisfaction with the general practitioner (GP) and SCA use as well as the number of GP visits and SCA use. Furthermore, we assessed the reasons for intentional non-use. Methods: We conducted a survey comprising standardised and open-ended questions. Quantitative data were weighted, and open-ended responses were examined using thematic analysis. Results: This study included 850 participants. The SCA usage rate was 8%, and approximately 50% of SCA non-users were uninterested in trying SCAs. The most commonly used SCAs were NetDoktor and Ada. Surprisingly, SCAs were most frequently used in the age group of 51–55 years. No significant associations were found between SCA usage and satisfaction with the GP or the number of GP visits and SCA usage. Thematic analysis revealed skepticism regarding the results and recommendations of SCAs and discrepancies between users’ requirements and the features of apps. Conclusion: SCAs are still widely unknown in the German population and have been sparsely used so far. Many participants were not interested in trying SCAs, and we found no positive or negative associations of SCAs and primary care.