@thesis{Wittmann2020, author = {Wittmann, Christian}, title = {Comparison of the deviations between MiL, SiL and HiL testing}, publisher = {Technische Hochschule Ingolstadt}, address = {Ingolstadt}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:573-8706}, pages = {IV, 90}, school = {Technische Hochschule Ingolstadt}, year = {2020}, abstract = {In-the-loop tests can save time, money and effort by helping to identify errors before they occur in the target environment or at the customer. These tests can be designed in various forms, depending on the current state of development. From an organizational point of view, it is desirable to formulate tests only once and to use them in different environments without further adjustments. This thesis focuses on deviations between in-the-loop test levels and the possible reuse of tests. In addition to the explanation and classification in the field of software testing, previous work in this area is also considered. Computers with x86-64 processors are typically used for the development of embedded system software, which do not correspond to the processors of the target platform. Furthermore, the exchange of data does not necessarily take the form as intended for the target applications, but possibly only in a modelling environment or through simplified channels. With regard to the desired tests to be carried out, this can lead to a number of problems, which are identified in the context of this work. In addition to accuracy and performance aspects, requirements and designs for reusability are presented.}, language = {en} } @thesis{Schieber2021, author = {Schieber, Hannah}, title = {Camera and LiDAR based Deep Feature Fusion for 3D Semantic Segmentation}, publisher = {Technische Hochschule Ingolstadt}, address = {Ingolstadt}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:573-33038}, pages = {IX, 92}, school = {Technische Hochschule Ingolstadt}, year = {2021}, abstract = {For the environmental perception of autonomous vehicles, camera and LiDAR sensors are widely used. Applying computer vision algorithms to the data captured by these sensors is a key for understanding and interpreting the 3D environment. Therefore, 3D semantic segmentation algorithms are common. This master thesis investigates deep fusion of camera and LiDAR features in neural networks to improve 3D semantic segmentation of traffic scenes. Within the presented approach the so-called range view for LiDAR scans is utilized in order to generate 2D images. This 2D projection can be processed by CNNs which have already been used successfully in the camera domain. Building upon a state-of-the-art approach from the camera domain a CNN is adapted and optimized to enable the range view semantic segmentation. Based on CNNs from the camera domain and the adapted range view CNN a deep fusion architecture is built. For the deep fusion different fusion strategies and fusion locations inside the deep fusion architecture are considered. The deep fusion fuses camera and LiDAR features multiple times. Therefore, two fusion locations have been investigated resulting in two deep fusion approaches. Both fusion approaches extract feature maps of the individual modalities at different stages of the backbones. Within the first fusion approach the feature maps are fused and the fused feature maps are processed by several modules to leverage semantic meaningful information. Within the second fusion approach the fused feature maps influence each other in a top-down manner from high to low resolutions and in a bottom-up manner from low to high resolutions before they are processed by the same modules as used in the first fusion approach. Optionally, a feature refinement in the manner of a late fusion step is presented, which aims to refine the features at the last scale before the final semantic segmentation. The deep fusion architecture is evaluated on two challenging outdoor datasets. It outperforms the early and late fusion baseline building upon the same architectures as the presented deep fusion. Also, it outperforms all range image based LiDAR approaches and deep fusion approaches on the used datasets.}, language = {en} } @thesis{Weidinger2022, author = {Weidinger, Patrizia}, title = {Software testing reconsidered: Evaluation and comparison of symbolic execution tools in the context of aviation}, publisher = {Technische Hochschule Ingolstadt}, address = {Ingolstadt}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:573-36036}, pages = {66, XLI}, school = {Technische Hochschule Ingolstadt}, year = {2022}, abstract = {Producing software in an aviation context means that there are very high testing requirements within the company and from outside by the customer or standards, as the consequences in case of an error can be very high. Fulfilling these requirements is a time-consuming process for the software developers. It is extremely demanding to cover all test cases in complex software systems, which is why a selection of the most important ones is necessary. Finding these can take a long time and is error-prone, as there is no systematic way and so brute force or intuition is often used to approach the issue. In order to ease the test effort for the developers and to make tests of higher quality, it is examined in this thesis to what extent Symbolic Execution can help here. Therefore, the possibilities of this techniques and the tools that are offered, are examined. In a theoretical discussion of the possibilities and limitations of Symbolic Execution, it is evaluated that Symbolic Execution offers good chances to improve the current testing strategy and provide a useful support to developers. The reason therefore is that test cases with high test coverage can be generated automatically and many runtime errors can be found. In order to see, which requirements need to be fulfilled to make a practical usage of Symbolic Execution tools reasonable, expert interviews are conducted. Resulting from these, requirements concerning functionality, performance, procurement, installation, and usage can be derived. In order to facilitate the search for a suitable Symbolic Execution tool for software developers in an aviation context, nineteen tools are being contemplated. Unfortunately, most of these tools are outdated or have dependencies that do not work in the given test environment. Therefore only Klee and Angr are executed and analysed in the following practical tests. The defined test cases are able to show, how the tools interact with the environment, how they react to more complex data constructs, if they can handle loops, how memory is being modelled, how good the constraint solving ability is and what errors can be detected. These practical tests as well as the results from the following comparison show that the requirements of the developers are only completely fulfilled by Klee. It's only disadvantage is the installation step, which is not as easy and takes some time. Angr has severe problems in handling loops, which leads to exceeding memory and the termination of the program by the scheduler. Also, hardly any errors are found by Angr with reasonable effort. By testing the source code of the communication between the different components of an MBDA internal project with Klee, it is detected that there are some hurdles that make the usage of the tool very difficult for real-world examples. First of all, Klee can not handle dynamically linked libraries. Also, the tool will not execute a program symbolically if there are LLVM intrinsics in any library that are not supported by Klee, regardless of whether there is a path that can reach them at all. All in all, Klee offers good possibilities to produce good and helpful results in a short amount of time, if the project under test is not using dynamically linked or too complex libraries. This restriction however leads to the fact, that is hard to use Klee in a real-world example in an aviation context. Nontheless, helpful tips on the installation, usage and error handling of Klee are appended to this thesis that show some lessons learned and give advises for best-practice in case someone wants to use Klee on a more fitting project.}, language = {en} } @thesis{Schmitz2023, author = {Schmitz, Michael}, title = {Design of a SaaS cloud platform for a medium-sized company with focus on multi-instance support}, publisher = {Technische Hochschule Ingolstadt}, address = {Ingolstadt}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:573-36106}, pages = {74}, school = {Technische Hochschule Ingolstadt}, year = {2023}, abstract = {This thesis describes a concept for implementing a multi-instance multi-tenant SaaS. As base of this thesis a single-tenant solution is transformed, which was implemented without multi-tenancy in mind. Thus, tenant specific integrations are tightly coupled with other aspects like authentication, which restricts further development. To reduce coupling and allowing for reuse of business logic across multiple tenants, the conceptual solution aims to provide a uniform codebase for multiple tenants, while separating them at runtime and allowing different behavior and endpoints. The concept is evaluated by a reference proof of concept implementation. Following the arc42 template, this concept describes different viewing angles. Starting with an overview of the complete solution, it is zoomed in until a single service of the solution is exactly described in detail. After this the deployment and runtime are further elaborated. The concept takes the following aspects into consideration: • Authentication and authorization • Storing secrets securely • Differentiate tenants at runtime (and multiple sites per tenant) • Allowing different behavior or even endpoints per tenant • Guarantee the infrastructure state at all times • Ensure conventions defined in the concept are followed by developers • Documentation and service metadata collection These aspects are solved by utilizing interfaces, for which implementations are registered at runtime, conditionally loading controllers based on their namespace, storing secrets in the cloud with Azure Key Vault and using authentication middleware. The infrastructure state is ensured (at least partially) by leveraging Infrastructure as Code (IaC) with Microsoft's Bicep language. Conventions like name patterns for namespaces are ensured by analyzers, which show warnings and errors for not followed conventions. Lastly, the documentation is done based on code comments and C4 diagrams (generated by PlantUML). For customers an OpenAPI specification is generated based on the code comments on the REST endpoints.}, language = {en} } @thesis{Maftei2023, author = {Maftei, Ioan}, title = {Resource management tool}, subtitle = {modern application architecture with focus on database performance}, publisher = {Technische Hochschule Ingolstadt}, address = {Ingolstadt}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:573-38295}, pages = {viii, 91}, school = {Technische Hochschule Ingolstadt}, year = {2023}, abstract = {Query performance and responsiveness are at the top of many organizations' concerns with regard to their data platforms. Online transactional systems, and large web applications in particular, must respond to end users in milliseconds in order to be successful. When embarking on application development, it is crucial to make a wise choice in regard to a database, since a wrongly chosen one can bring the project to failure. This thesis encompasses a comprehensive performance analysis of two distinct database types: Neo4j, a graph database, and PostgreSQL, a relational database. An application for resource management will be developed using the database that demonstrates the best performance based on the application's scenarios. The motivation behind conducting this analysis is rooted in recognizing the pivotal role of the database as the fundamental building block in the development of any application because a wrongly chosen database can put the whole system at risk. The performance analysis is conducted using a structured and rigid methodology in order to provide a fair comparison between the two systems. Lastly, the thesis also presents and discusses the state-of-the-art architecture of the application.}, language = {en} } @thesis{Galler2024, author = {Galler, Jan-Moritz}, title = {Concept and implementation for a distributed event-storage on-board of aircraft}, publisher = {Technische Hochschule Ingolstadt}, address = {Ingolstadt}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:573-51413}, pages = {194}, school = {Technische Hochschule Ingolstadt}, year = {2024}, abstract = {In the realm of avionics, there is a rising demand for modular and distributed system components to exchange event-based data. The events communicated throughout avionics systems rise from topics such as Smart Maintenance or Customer-Based Configuration of aircraft. This thesis presents the design and evaluation of a novel communications protocol tailored for the exchange of event-based data in avionics applications. This protocol, named Avionics Data Exchange Protocol, leverages configuration-based message routing, which fits the needs of distributed systems in the overall thrive towards Open System Architectures. This protocol is implemented in the Event-Logging Library as demonstration throughout this work. To ensure the high demands of assurance in avionics software and system design, the thesis addresses the commonly required technical challenges, such as statical bandwidth and memory allocation. Within the different avionics systems, storage of such event-based data is required to perform post-flight evaluation and potentially, future on-board processing. This aspect is analyzed within this thesis to provide future industrial applications the according foundation. A novel and far-reaching approach demonstrated by the Avionics Data Exchange Protocol is the usage of trust-based secure communications, that target the zero trust principle inside avionics. This vital introduction of secure communications will pave way for future-proof extension, modification and modularization of avionics systems for contributions for Modular Open Avionics Architecture. This thesis provides insights of the impact of using secure communications, further modularizaton of transport layer communication and highlights the advantages of approaching zero trust in avionics.}, language = {en} } @thesis{Gaber2024, author = {Gaber, Philip}, title = {WHOIS and WHOCARES?}, subtitle = {a systematic evaluation of data sources utilized in internet routing security}, publisher = {Technische Hochschule Ingolstadt}, address = {Ingolstadt}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:573-49769}, pages = {I-VI, 68, I-XXVII}, school = {Technische Hochschule Ingolstadt}, year = {2024}, abstract = {The underlying infrastructure of the Internet is in a state of constant change, necessitating a high degree of resilience against a multitude of intentional attacks, as well as unintentional configuration errors. Nevertheless, the Internet is subject to numerous routing-related incidents on a daily basis. Multiple security mechanisms have been proposed to prevent such incidents, although only a few have been widely adopted, either utilizing data provided by the Internet Routing Registry (IRR) or the Resource Public Key Infrastructure (RPKI). Therefore, in this thesis we seek to answer the questions if the data provided by the IRRs is a sufficient foundation for routing security and how different IRR databases perform when utilized in two common methods of anomaly detection, in comparison to the emerging RPKI. Consequently, we evaluate the availability, recency, accuracy and update behavior of different IRRs and their provided objects. Moreover, we assess the capabilities and performance differences among IRRs when utilized in BGP Origin Validation (OV) and Path Verification (PV). Additionally, we compare the performance between IRR and RPKI when utilized as a data source for OV and PV. Our findings indicate that IRRs that mirror the majority of other IRRs while also utilizing data sanitization by employing RPKI Route Origin Authorizations (ROAs) could potentially provide the highest quantity and quality of data that can be used as a foundation for routing security. Additionally, our findings suggest that the age of objects is related to their validity when verified with the help of ROAs. The findings concerning the verification of Autonomous System (AS) paths by employing AS relationships from aut-num objects indicate that IRR data can only be utilized to a certain extent to verify the AS path in route announcements. Conversely, the remarkable explanatory power observed in IRR route(6) objects when utilized in OV and the recent increase in created objects within the IRRs indicate that these databases remain a viable foundation for validating Prefix Origins (POs) pairs, particularly when combined with data provided by the RPKI.}, language = {en} } @thesis{GrafvonPerponcherSedlnitzki2024, author = {Graf von Perponcher-Sedlnitzki, Philipp Christian}, title = {Integrating the future into the past}, subtitle = {Approach to seamlessly integrate newly-developed Rust-components into an existing C++-system}, publisher = {Technische Hochschule Ingolstadt}, address = {Ingolstadt}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:573-45429}, pages = {vi, 99}, school = {Technische Hochschule Ingolstadt}, year = {2024}, abstract = {The goal of this thesis is to provide a guide that can be used by software developers that wants to include Rust into an existing C++ application. After a brief summary of the languages, both the basics of integrating Rust code into C++ applications and the reverse way are presented to set a common base of knowledge. Additionally, a few tools and libraries are introduced, namely bindgen, cbindgen, cxx, and the cc crate. As they are being used in the following guide, the toolsets CMake and CMakeRust are presented and explained in more detail to make it easier for developers to include and use them in their own projects. The guide is separated into three steps which help to identify the required interfaces, implement them and eventually include everything into the C++ compilation process. Apart from more advanced types based on pointers, the integration is fairly easy and straight-forward. Using structs and their implemented methods, Rust is able to replicate a class structure that is typical for object-oriented C++. After providing the required binding files, the Rust component can easily be called from C++ code like any other function. While external Rust methods need to be called using a function(Object) syntax, they can be also be converted and used via the standard Object.function() syntax by implementing wrapper classes that translate the calls. These can then be included in more complex C++ architectures like inheritance structures. The usage of the aforementioned advanced types, which are based on pointers, is not covered in this thesis, though the cxx library can be used for those. The compilation for and usage on embedded targets is also possible with its required effort depending on the target architecture. If the necessary target is not officially supported yet, some additional things like the standard library need to be downloaded and compiled manually. The thesis comes to the conclusion that considering C++ is not officially supported by the Rust FFI, it works very well with the C ABI and apart from one floating point type, no clear limitations or incompatibilities were identified. For interfaces that only work with basic types and to get a general understanding of the topic, this thesis is a good starting point and guide for a developer who is new to the topic.}, language = {en} } @thesis{Stahmer2024, author = {Stahmer, Dominik}, title = {BGPsyche}, subtitle = {AS path predictions beyond valley-free routing}, publisher = {Technische Hochschule Ingolstadt}, address = {Ingolstadt}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:573-50624}, pages = {64, VIII}, school = {Technische Hochschule Ingolstadt}, year = {2024}, abstract = {The BGP routing protocol is one of the essential building blocks of the modern Internet. It allows networks to discover paths to one another on a global scale. While individual BGP participants know how to reach every other participant, there is no way to know the AS path between two arbitrary networks. Network operators however have a need to know these paths to, for example, deploy security mechanisms and optimize peer to peer applications. Over the years, many heuristics have been developed to predict these inter-domain paths. However, all of them still fall short of being truly reliable, which justifies further research in the field. In this thesis, we develop a new AS path prediction system BGPsyche. To our knowledge, it is the first of its kind to be based on deep learning. BGPsyche can find the correct path in the set of its top three selected candidates 85 \% of the time and selects the correct path as its top candidate with an accuracy of 66 \%. This makes it about as accurate as most of its competition, with only one system yielding a superior accuracy. Because of the easy extensibility of BGPsyche, we think that there is still more potential in our approach. In building BGPsyche, we also analyze many features of ASes, links and paths from the perspective of a machine learning application, which may serve as a basis for future research. Notably, we show that including the widely used valley-free constraint in our training data worsens the result, indicating that BGPsyche has learned something more nuanced on its own.}, language = {en} } @thesis{Knauer2024, author = {Knauer, Dominik}, title = {A dual study of filter capacity and adversarial robustness on CNN models using pattern-based pruning}, publisher = {Technische Hochschule Ingolstadt}, address = {Ingolstadt}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:573-51309}, pages = {66, XXIII}, school = {Technische Hochschule Ingolstadt}, year = {2024}, abstract = {This thesis investigates the adversarial robustness and filter capacity of Convolutional Neural Networks (CNN) using a pattern-based pruning approach. Modern CNNs, which are essential in image processing for safety-critical applications like autonomous driving, are susceptible to perturbations and targeted adversarial attacks that can weaken their accuracy and reliability. To address these challenges, an approach based on reducing specific filter weights selected by patterns was developed to increase the efficiency of neural networks without significantly compromising classification accuracy. The Alternating Direction Method of Multipliers algorithm was used to optimally apply this pruning technique while preserving the model's robustness against adversarial attacks. The results show that pattern-based pruning methods not only improve the memory and computational efficiency of CNNs but can also enhance their precision efficiency and resilience against adversarial attacks. Adversarial training as well as filter kernel pruning were integrated into the pattern pruning algorithm to further explore adversarial robustness and the possibility of higher computational efficiency through increased pruning rates, but were considered in a limited way as side information. Additionally, I developed a new evaluation method based on Channel-wise Increases in Confidence, which enables a fine-grained analysis of filter performances within a convolutional layer. This work provides important insights for the further development of robust and efficient CNN optimization techniques in safety-critical applications.}, language = {en} } @thesis{Harsh2024, author = {Harsh, Kshitij}, title = {RFID cloning for enhancing mobile quality assurance aspects}, publisher = {Technische Hochschule Ingolstadt}, address = {Ingolstadt}, url = {http://nbn-resolving.de/urn:nbn:de:bvb:573-51278}, pages = {74}, school = {Technische Hochschule Ingolstadt}, year = {2024}, abstract = {This thesis discusses the challenges and developments in end-to-end RFID card testing, focussing on the use of RFID cloning technology to improve testing efficiency and efficacy. The initial testing arrangement featured mobile devices connected to a host device via USB cables, with just one RFID card checked per mobile device. This arrangement decreased the testing capability while increasing the time and resources required. The study, undertaken by Deutsche Telekom's Mobile Quality Assurance Department in Dresden, investigates an innovative technique to overcoming these restrictions utilising the Proxmark3 gadget.}, language = {en} }