Attribut:Kurzfassung

Aus SDQ-Institutsseminar

Dies ist ein Attribut des Datentyps Text.

Unterhalb werden 100 Seiten angezeigt, auf denen für dieses Attribut ein Datenwert gespeichert wurde.
K
Die Einhaltung datenschutzrechtlicher Aspekte sind in der Softwareentwicklung von zunehmender Bedeutung. Um den Prozess der Zusammenarbeit zwischen Softwarearchitekten und Rechtsexperten zu vereinfach und eine selbständigere Arbeitsweise des Softwarearchitekten zu erlangen, wird in dieser Bachelorarbeit ein Konzept zum automatisierten Annotieren rechtlicher Kommentare entwickelt. Im ersten Schritt wird ein Katalog relevanter rechtlicher Kommentare zur DSGVO zusammengestellt, welcher im darauf folgenden Schritt zentraler Bestandteil des Annotationsmechanismus ist. Bei diesem werden die formulierten Kommentare den entsprechenden Modellklassen einer DSGVO-Instanz als Paare zugeordnet und ausgegeben. Durch diese Zuordnung erhält der Softwarearchitekt erste Hinweise auf Datenschutzaspekte, die in seinem Softwaremodell relevant sind und die er im Speziellen berücksichtigen sollte. Darüber hinaus wird er für die DSGVO sensibilisiert und in seiner Modellierung unterstützt.  +
Durch die voranschreitende Vernetzung und Digitalisierung vergrößert sich die Angriffsfläche von Industrieanlagen drastisch. Umso wichtiger wird es beim Entwurf von Industrie 4.0 Anlagen, so früh wie möglich eine Betrachtung der Sicherheitsaspekte vorzunehmen. Die Durchführung von Sicherheitsanalysen zur Entwurfszeit sind jedoch Aufwändig und müssen immer händisch von einem Sicherheitsexperten durchgeführt werden. Obwohl bereits Lösungsansätze zur modellbasierten Unterstützung von Sicherheitsanalysen existieren, sind diese nicht auf den Kontext der Industrie 4.0 zugeschnitten. In dieser Bachelorarbeit werden zwei Konzepte für eine modellbasierte Unterstützung von Sicherheitsanalysen im frühen Entwurf von Industrie 4.0 Anlagen vorgestellt. Dabei werden die Sicherheitsanforderungen von Datenflüssen über die gesamte Anlage hinweg betrachtet und weiterhin eine kontextbasierte Sicherheitsanalyse zur Unterstützung vorgeschlagen.  +
Die Vernetzung von Software über das Internet und andere Kanäle stellt eine grundsätzliche Gefahr für die Sicherheit von Daten und Systemen dar. Gelangen Informationen in die falschen Hände können enorme wirtschaftliche und soziale Schäden entstehen. Es ist deshalb wichtig die Sicherheit von Systemen bereits zur Entwurfszeit zu berücksichtigen. Mittels Analysewerkzeugen auf Architektursicht können Sicherheitseigenschaften auf einer höheren Abstraktionsebene frühzeitig definiert und überprüft werden. Auf Quelltext-sicht bieten statische, musterbasierte Analysewerkzeuge einen Ansatz zur Überprüfung der korrekten Verwendung von kritischen Schnittstellen. Bisher wurde noch keine Kombination dieser beiden Analyseansätze vorgenommen, um die auf Architektursicht getroffenen Annahmen der im Quelltext umgesetzten Sicherheitseigenschaften auf fehlerhafte Umsetzung zu überprüfen. Deshalb wird untersucht, wie sich eine Kopplung der beiden Sichten und eine Rückführung der Ergebnisse einer Quelltextanalyse in die Architektursicht realisieren lässt. Die vorliegende Arbeit definiert zunächst die für eine Kopplung notwendigen Eigenschaften der Analysen. Darauf basierend wird dann ein Ansatz für eine Kopplung konzipiert. Eine konkrete Umsetzung des Ansatzes wurde im Rahmen der vorliegenden Arbeit mit den Rahmenwerken Confidentiality4CBSE auf Architektursicht und CogniCrypt auf Quelltextsicht in Java vorgenommen. Die Evaluation des Ansatzes erfolgt an Hand eines Fallbeispiels. Die Ergebnisse zeigen, dass die Kopplung von Architekturanalysen mit musterbasierten Quelltextsicherheitsanalysen machbar ist und dass durch die Kopplung von Quelltextfehler mit der Architekturanalyse zusätzliche Fehler aufgedeckt werden.  +
Um mögliche Inkonsistenzen zwischen technischen Modellen und ihren verursachenden Workflows in der Fertigungsindustrie zu identifizieren, wurde der gesamte Fertigungsprozess eines beispielhaften Präzisionsfertigers in einzelne Workflows aufgeteilt. Daraufhin wurden neun Experteninterviews durchgeführt, um mögliche Inkonsistenzen zwischen technischen Modellen zu identifizieren und diese in die jeweiligen verursachenden Workflows zu kategorisieren. Insgesamt wurden 13 mögliche Inkonsistenzen dargestellt und ihre jeweilige Entstehung erläutert. In einer zweiten Interview-Iteration wurden die Experten des Unternehmens erneut zu jeder zuvor identifizierten Inkonsistenz befragt, um die geschätzten Auftrittswahrscheinlichkeiten der Inkonsistenzen und mögliche Auswirkungen auf zuvor durchgeführte, oder darauf folgende Workflows in Erfahrung zu bringen.  +
L
Fehler in einer Software können unter Umständen nicht behoben werden, da die Fehlerursache in der Architektur der Software liegt. Um diesen Fall vorzubeugen, gibt es verschiedenste Ansätze diese Fehler frühzeitig zu erkennen und zu eliminieren. Ein Ansatz sind Sicherheitsanalysen auf Architekturebene. Diese spezifizieren den Aspekt der Sicherheit auf unterschiedliche Weise und können dadurch verschiedene Erkenntnisse über die Sicherheit des Systems erhalten. Dabei wäre es praktischer, wenn die Erkenntnisse der Sicherheitsanalysen kombiniert werden können, um ein aussagekräftigeres Ergebnis zu erzielen. In dieser Arbeit wird ein Ansatz zum Kombinieren von zwei Architektur Sicherheitsanalysen vorgestellt. Die erste Analyse erkennt physische Schwachstellen durch einen Angreifer im System. Die zweite Analyse erkennt mögliche Ausbreitungsschritte eines Angreifers im System. Die Analysen werden kombiniert, indem die Ergebnisse der ersten Analyse zum Erstellen der Eingabemodelle für die zweite Analyse genutzt werden. Dafür wird ein Ausgabemetamodell erstellt und ein Parser implementiert, welcher die Ergebnisse der ersten Analyse in eine Instanz des Ausgabemetamodells übersetzt. Daraus werden die benötigten Informationen für die zweite Analyse extrahiert. Die Machbarkeit und der Mehrwert des Ansatzes wird in einer Fallstudie evaluiert. Diese ergab, dass die Übertragung machbar ist und aussagekräftigere Ergebnisse erzielt werden konnten.  +
In der Softwareentwicklung ist die Konsistenz zwischen Artefakten ein wichtiges Thema. Diese Arbeit schlägt eine Struktur zur Erkennung von korrespondierenden und fehlenden Elementen zwischen einer Dokumentation und einem formalen Modell vor. Zunächst identifiziert und extrahiert der Ansatz die im Text beschriebenen Modell-instanzen und -beziehungen. Dann verbindet der Ansatz diese Textelemente mit ihren entsprechenden Gegenstücken im Modell. Diese Verknüpfungen sind mit Trace-Links vergleichbar. Der Ansatz erlaubt jedoch die Abstufung dieser Links. Darüber hinaus werden Empfehlungen für Elemente generiert, die nicht im Modell enthalten sind. Der Ansatz identifiziert Modellnamen und -typen mit einem F1-Wert von über 54%. 60% der empfohlenen Instanzen stimmen mit den in der Benutzerstudie gefundenen Instanzen überein. Bei der Identifizierung von Beziehungen und dem Erstellen von Verknüpfungen erzielte der Ansatz vielversprechende Ergebnisse. Die Ergebnisse können durch zukünftige Arbeiten verbessert werden. Dies ist realisierbar da der Entwurf eine einfache Erweiterung des Ansatzes erlaubt.  +
In high-volume data streams it is often unpractical to monitor all observations -- often we are only interested in deviations from the normal operation. Detecting outlying observations in data streams is an active area of research. However, most approaches assume that the data's dimensionality, i.e., the number of attributes, stays constant over time. This assumption is unjustified in many real-world use cases, such as sensor networks or computer cluster monitoring. Feature-evolving data streams do not impose this restriction and thereby pose additional challenges. In this thesis, we extend the well-known Local Outlier Factor (LOF) algorithm for outlier detection from the static case to the feature-evolving setting. Our algorithm combines subspace projection techniques with an appropriate index structure using only bounded computational resources. By discarding old observations our approach also deals with concept drift. We evaluate our approach against the respective state-of-the-art methods in the static case, the streaming case, and the feature-evolving case.  +
With the increasing popularity of location-based services and mobile online social networks (mOSNs), secrecy concerns have become one of the main worries of its users due to location information exposure. Users are required to store their location, i.e., physical position, and the relationships that they have with other users, e.g., friends, to have access to the services offered by these networks. This information, however, is sensitive and has to be protected from unauthorized access. In this thesis, we aim to offer location-based services to users of mOSNs while guaranteeing that an adversary, including the service provider, will not be able to learn the locations of the users (location secrecy) and the relationship existing between them (relationship secrecy). We consider both linking attacks and collusion attacks. We propose two approaches R-mobishare and V-mobishare, which combine existing cryptographic techniques. Both approaches use, among others, private broadcast encryption and homomorphic encryption. Private broadcast encryption is used to protect the relationships existing between users, and homomorphic encryption is used to protect the location of the users. Our system allows users to query their nearby friends. Next, we prove that our proposed approaches fulfill our secrecy guarantees, i.e., location and relationship secrecy. Finally, we evaluate the query performance of our proposed approaches and use real online social networks to compare their performance. The result of our experiments shows that in a region with low population density such as suburbs, our first approach, R-mobishare, performs better than our approach V-mobishare. On the contrary, in a region with high population density such as downtown, our second approach, V-mobishare, perform better than R-mobishare.  +
M
The rapid growth of renewable energy sources and the increased sales in electric vehicels contribute to a more volatile power grid. Energy suppliers rely on data to predict the demand and to manage the grid accordingly. The rollout of smart meters could provide the necessary data. But on the other hand, smart meters can leak sensitive information about the customer. Several solution were proposed to mitigate this problem. Some depend on privacy measures to calculate the degree of privacy one could expect from a solution. This bachelor thesis constructs a set of experiments which help to analyse some privacy measures and thereby determine, whether the value of a privacy measure increases or decreases with an increase in privacy.  +
In Model-Driven software development, a complex system is often modeled in different, specialized models. To keep consistency, VITRUVIUS provides a mechanism to define consistency preserving actions for different models. Furthermore, versioning is an important task at developing software. There are various concepts and implementations for the versioning of models, e.g., EMFStore, but none of these are able to guarantee the cross-model consistency provided by VITRUVIUS. Thus, conflicting changes in different models may not be identified as conflicting while merging different branches. In this thesis, an approach is presented that defines a versioning system and preserves the consistency of models of the same system. The approach is based on a graph analysis of the dependency graph of the occurred changes. Besides a requirement relation the dependency graph includes a trigger relation. Afterwards, the two dependency graphs are scanned for a subgraph isomorphism. All changes outside of the isomorphism are potentially conflicting changes. At the manual change resolution, the trigger and the require relation is used to guarantee that a change is applicable and after its application all models are consistent with each other. The approach is illustrated and validated with an application, which combines component-based architectures and class diagrams.  +
Feature Selection ist ein Prozess, der redundante Features aus Datensätzen entfernt. Das resultiert in kürzeren Trainingszeiten und verbessert die Performance von Machine Learning Modellen, weswegen Feature Selection ein wichtiger Bestandteil von Machine Learning Pipelines ist. Die Berechnung der Feature Importance ist jedoch häufig sehr aufwendig und erfordert das Training von Modellen. Ziel dieser Arbeit ist es, einen Meta-Learning Ansatz zu entwickeln, um die Wichtigkeit verschiedener Features für ein Klassifikationsproblem vorherzusagen, ohne vorher ein Modell auf den Daten trainiert zu haben. Meta-Learning ist ein Bereich des maschinellen Lernens, das sich mit der Vorhersage der Performance von verschiedenen Machine Learning Modellen beschäftigt. Für Vorhersagen dieser Art wird ein Meta-Datensatz benötigt, dessen Einträge individuelle Datensätze repräsentieren, die von Meta-Features charakterisiert werden. Die Zielvariablen eines Meta-Datensatzes sind häufig die Performance-Werte verschiedener Klassifikationsmodelle auf den jeweiligen Datensätzen. Im Rahmen dieser Arbeit sollen Meta-Features erarbeitet und implementiert werden, die nicht nur ganze Datensätze, sondern individuelle Features eines Datensatzes charakterisieren. Als Zielvariablen werden Feature Importance Werte verschiedener Verfahren eingesetzt. Erste Ergebnisse zeigen, dass eine positive Korrelation zwischen tatsächlichen und vorhergesagten Feature Importance Werten besteht.  +
In the process of machine learning, the data to be analyzed is often not only numerical but also categorical data. Therefore, encoders are developed to convert categorical data into the numerical world. However, different encoders may have other impacts on the performance of the machine learning process. To this end, this thesis is dedicated to understanding the best encoder selection using meta-learning approaches. Meta-learning, also known as learning how to learn, serves as the primary tool for this study. First, by using the concept of meta-learning, we find meta-features that represent the characteristics of these data sets. After that, an iterative machine learning process is performed to find the relationship between these meta-features and the best encoder selection. In the experiment, we analyzed 50 datasets, those collected from OpenML. We collected their meta-features and performance with different encoders. After that, the decision tree and random forest are chosen as the meta-models to perform meta-learning and find the relationship between meta-features and the performance of the encoder or the best encoder. The output of these steps will be a ruleset that describes the relationship in an interpretable way and can also be generalized to new datasets.  +
Feature selection is essential to the field of machine learning, since its application results in an enhancement in training time as well as prediction error of machine learning models. The main problem of feature selection algorithms is their reliance on feature importance estimation, which requires the training of models and is therefore expensive computationally. To overcome this issue, we propose MetaLFI, a meta-learning system that predicts feature importance for classification tasks prior to model training: We design and implement MetaLFI by interpreting feature importance estimation as a regression task, where meta-models are trained on meta-data sets to predict feature importance for unseen classification tasks. MetaLFI calculates a meta-data set by characterizing base features using meta-features and quantifying their respective importance using model-agnostic feature importance measures as meta-targets. We evaluate our approach using 28 real-world data sets in order to answer essential research questions concerning the effectiveness of proposed meta-features and the predictability of meta-targets. Additionally, we compare feature rankings put out by MetaLFI to other feature ranking methods, by using them as feature selection methods. Based on our evaluation results, we conclude that the prediction of feature importance is a computationally cheap alternative for model-agnostic feature importance measures.  +
Feature Selection is an important process in Machine Learning to improve model training times and complexity. One state-of-the art approach is Wrapper Feature Selection where subsets of features are evaluated. Because we can not evaluate all 2^n subsets an appropriate search strategy is vital. Bayesian Optimization has already been successfully used in the context of hyperparameter optimization and very specific Feature Selection contexts. We want to look on how to use Bayesian Optimization for Feature Selection and discuss its limitations and possible solutions.  +
In the real world, mixed-type data is commonly used, which means it contains both categorical and numerical data. However, most algorithms can only learn from numerical data. This makes the selection of encoder becoming very important. In this presentation, I will present an approach by using ideas from meta-learning to predict the performance from the meta-features and encoders.  +
Active learning describes the topic of a human operator helping with the machine learning process. By asking for a classification of queries, the precision of the machine learning algorithm is increased. Existing research focuses on the idea of using a pool of unlabelled data points or use multiple class cases. We have developed a framework, that allows to synthesize a query in the one-class setting without requiring unlabelled data points. The optimal query is the data point with the highest amount of information. The amount of information for a specific data point is given by the informativeness function. We have created a framework to use metaheuristics to find the maximum of the informativeness function and thus determine the optimal query. We have also conducted experiments to provide a general guideline for the usage of metaheuristics in one-class query synthesis.  +
Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet. Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est Lorem ipsum dolor sit amet.  +
Sobald ein System durch mehrere Modelle beschrieben wird, können sich diese verschiedenen Beschreibungen auch gegenseitig widersprechen. Modelltransformationen sind ein geeignetes Mittel, um das selbst dann zu vermeiden, wenn die Modelle von mehreren Parteien parallel bearbeitet werden. Es gibt mittlerweile reichhaltige Forschungsergebnisse dazu, Änderungen zwischen zwei Modellen zu transformieren. Allerdings ist die Herausforderung, Modelltransformationen zwischen mehr als zwei Modellen zu entwickeln, bislang unzureichend gelöst. Die Gemeinsamkeiten-Sprache ist eine deklarative, domänenspezifische Programmiersprache, mit der multidirektionale Modelltransformationen programmiert werden können, indem bidirektionale Abbildungsspezifikationen kombiniert werden. Da sie bis jetzt jedoch nicht empirisch validiert wurde, stellt es eine offene Frage dar, ob die Sprache dazu geeignet ist, realistische Modelltransformationen zu entwickeln, und welche Vorteile die Sprache gegenüber einer alternativen Programmiersprache für Modelltransformationen bietet. In dieser Abschlussarbeit entwerfe ich eine Fallstudie, mit der die Gemeinsamkeiten-Sprache evaluiert wird. Ich bespreche die Methodik und die Validität dieser Fallstudie. Weiterhin präsentiere ich Kongruenz, eine neue Eigenschaft für bidirektionale Modelltransformationen. Sie stellt sicher, dass die beiden Richtungen einer Transformation zueinander kompatibel sind. Ich leite aus praktischen Beispielen ab, warum wir erwarten können, dass Transformationen normalerweise kongruent sein werden. Daraufhin diskutiere ich die Entwurfsentscheidungen hinter einer Teststrategie, mit der zwei Modelltransformations- Implementierungen, die beide dieselbe Konsistenzspezifikation umsetzen, getestet werden können. Die Teststrategie beinhaltet auch einen praktischen Einsatzzweck von Kongruenz. Zuletzt stelle ich Verbesserungen der Gemeinsamkeiten-Sprache vor. Die Beiträge dieser Abschlussarbeit ermöglichen gemeinsam, eine Fallstudie zu Programmiersprachen für Modelltransformationen umzusetzen. Damit kann ein besseres Verständnis der Vorteile dieser Sprachen erzielt werden. Kongruenz kann die Benutzerfreundlichkeit beliebiger Modelltransformationen verbessern und könnte sich als nützlich herausstellen, um Modelltransformations-Netzwerke zu konstruieren. Die Teststrategie kann auf beliebige Akzeptanztests für Modelltransformationen angewendet werden.  
A cloud storage migration is usually done in one of two ways - via corresponding storage sync clients or SaaS migration tools. The SaaS migration tools can typically migrate the data significantly faster, as they are not as constrained by the Internet bandwidth as the users are. Such tools incorporate a server that reads the data from the user’s old cloud storage and copies it to another, desired cloud storage. This server is referred to as "migration server". The geographic location of the migration server can influence the duration of the cloud storage migration. Commonly, it is reported that closer distances yield better results in terms of speed over the Internet and hence, the expectation is that a migration server placed at the geographic midpoint between the data centers of the cloud storages involved, will lead to good results. We investigate different influences on cloud storage migration speed and conceptualize an algorithm for choosing a migration server location in a generic cloud storage migration scenario. In an experimental evaluation, the results of the algorithm are compared against the results of the geographic midpoint between the data centers of the cloud storages involved in the migration. midpoint, determine the necessity of developing an algorithm for choosing a migration serverlocation and ultimately present some of the guidelines for developing such an algorithm.  +
In Zeiten des Umstiegs auf erneuerbare Energien und dem Einsatz von Smart Metern zum Messen und Steuern des Netzes stellen sich neue Herausforderungen für die Stromversorgung. Um die Kommunikation des Smart Grids zu ermöglichen wird vorgeschlagen das Netzwerk in Microgrids zu unterteilen. Dazu wird eine sinnvolle Aufteilung und eine robuste Kommunikationstopologie benötigt. In dieser Arbeit werden die Anforderungen einer solchen Aufteilung und Topologie erarbeitet und verschiedene Lösungsansätze vorgeschlagen und verglichen. Basierend auf den Ergebnissen wird ein anpassungsfähiger Algorithmus entworfen, der ein Stromnetz in mehrere Microgrids zerlegt und eine Kommunikationstopologie erzeugt.  +
With architecture models, software developers and architects are able to enhance their documentation and communication, perform architecture analysis, design decisions and finally with PCM, can start quality predictions. However, the manual creation of component architecture models for complex systems is difficult and time consuming. Instead, the automatic generation of architecture models out of existing projects saves time and effort. For this purpose, a new approach is proposed which uses technology specific rule artifacts and a rule engine that transforms the source code of software projects into a model representation, applies the given rules and then automatically generates a static software architecture model. The resulting architecture model is then usable for quality prediction purposes inside the PCM context. The concepts for this approach are presented and a software system is developed, which can be easily extended with new rule artifacts to be useful for a broader range of technologies used in different projects. With the implementation of a prototype, the collection of technology specific rule sets and an evaluation including different reference systems the proposed functionality is proven and a solid foundation for future improvements is given.  +
In energy studies, researchers build models for dynamic systems to predict the produced electrical output precisely. Since experiments are expensive, the researchers rely on simulations of surrogate models. These models use differential equations that can provide decent results but are computationally expensive. Further, transition phases, which occur when an input change results in a delayed change in output, are modeled individually and therefore lacking generalizability. Current research includes Data Science approaches that need large amounts of data, which are costly when performing scientific experiments. Theory-Guided Data Science aims to combine Data Science approaches with domain knowledge to reduce the amount of data needed while predicting the output precisely. However, even state-of-the-art Theory-Guided Data Science approaches lack the possibility to model the slopes occuring in the transition phases. In this thesis we aim to close this gap by proposing a new loss constraint that represents both transition and stationary phases. Our method is compared with theoretical and Data Science approaches on synthetic and real world data.  +
Durch den gezielten Einsatz von Energiespeichern, wie bspw. Lithium-Ionen-Batterien, können Spitzenlasten in Verbrauchsprofilen und damit unter anderem auch für Großverbraucher von den Spitzenlasten abhängige Energiekosten reduziert werden. Die Planung solcher Energiespeicher wird in der Regel mit Hilfe historischer Daten durchgeführt. Im Zuge dieser Arbeit wurde der Einfluss von Störungen (z.B. durch Sampling) in derartigen Daten auf Peak-Shaving-Ansätze am Beispiel einer Produktionsanlage am KIT Campus Nord genauer betrachtet. Mit den gewonnen Informationen wurden verschiedene Prädiktionsmodelle erzeugt, welche die Abweichung der Ergebnisse auf gestörten Zeitreihen gegenüber ungestörten Zeitreihen vorhersagen. Es konnte festgestellt werden, dass durch die Kombination aus den Ergebnissen und den Vorhersage der Modelle in den meisten Fällen eine Verbesserung der absoluten Abweichung erzielt werden kann.  +
Dynamic systems that reconfigure themselves use message queues as a common method to achieve decoupling between senders and receivers. Predicting the quality of systems at design time is crucial as changes in later phases of development get way more costly. At the moment, there is no method to represent message queues on an architectural level and predict their quality impact on systems. This work proposes a meta-model for enabling such representation and a simulation interface between a simulation of a component-based architecture description language and a messaging simulation. The interface is implemented for the Palladio simulator SimuLizar and an AMQP simulation. This enables architectural representation of messaging and predicting quality attributes of message-driven self-adaptive systems. The evaluation with a case study shows the applicability of the approach and its prediction accuracy for Point-To-Point communication.  +
Integrating a Zero Trust Architecture (ZTA) into a system is a step towards establishing a good defence against external and internal threats. However, there are different approaches to integrating a ZTA which vary in the used components, their assembly and allocation. The earlier in the development process those approaches are evaluated and the right one is selected the more costs and effort can be reduced. In this thesis, we analyse the most prominent standards and specifications for integrating a ZTA and derive a general model by extracting core ZTA tasks and logical components. We model these using the Palladio Component Model to enable assessing ZTAs at design time. We combine performance and security annotations to create a single model which supports both performance and security analysis. By doing this we also assess the possibility of combining performance and security analyses.  +
Software itself and the contexts, it is used in, typically evolve over time. Analyzing and ensuring security of evolving software systems in contexts, that are also evolving, poses many difficulties. In my thesis I declared a number of goals and propose processes for the elicitation of attacks, their prerequisites and mitigating security patterns for a given architecture model and for annotation of it with security-relevant information. I showed how this information can be used to analyze the systems security, in regards of modeled attacks, using an attack validity algorithm I specify. Process and algorithm are used in a case study on CoCoME in order to show the applicability of each of them and to analyze the fulfillment of the previously stated goals. Security catalog meta-models and instances of catalogs containing a number of elements have been provided.  +
In dieser Arbeit werden Verfahren entwickelt, um die den Datenaustausch in Fabrikanlagen durch die Anwendung von modell- und änderungsgetriebener Konsistenzerhaltung, wie sie für die Softwaretechnik entwickelt wurde, zu unterstützen. In der Arbeit fokussieren wir uns dabei besonders auf die Eingabe einer fehlerhaften (nicht auflösbaren) Referenz. Dafür kategorisieren wir die Eigenschaften der Referenzen und des Typs des jeweiligen Fehlers und entwickeln basierend darauf ein Regelwerk. Zum anderen werden in CAEX Prototypen genutzt, um Objekte zu instantiieren. Dabei hängt es von den individuellen Eigenschaften ab, ob die Prototypen und Klone im Anschluss daran konsistent gehalten werden sollen. Hierfür entwickeln wir wiederum Kategorien für die jeweiligen Eigenschaften, und aufbauend darauf ein Regelwerk. Beispielsweise sollte bei einem Prototypen für einen Roboter eine Änderung an seiner Hardware nicht auf Klone übertragen werden, die bereits in Fabriken eingesetzt werden. Diesen Ansatz implementierten wir mithilfe des VITRUVIUS-Frameworks, das ein Framework zur modell- und änderungsgetriebenen Konsistenzerhaltung darstellt. Anhand dessen konnten wir die Funktionalität unserer Implementierung zeigen. Durch ein Beispielmodell konnten wir zeigen, dass unsere Kategorisierungen von Referenzen, Fehlertypen, Eigenschaften und Klonen in der Fabrikanlagenplanung anwendbar sind.  +
In der modernen Software-Entwicklung wird eine Vielzahl von Subsystemen von Drittanbietern wiederverwendet, deren Realisierungen und Varianten jeweils einen dedizierten Einfluss auf die Qualitätseigenschaften des Gesamtsystems implizieren. Doch nicht nur die Realisierung und Variante eines Subsystems, sondern auch die Platzierung in der Zielarchitektur haben einen Einfluss auf die resultierende Qualität. In dieser Arbeit wird der bestehende Ansatz zur Modellierung und Simulation von wiederverwendbaren Subsystemen in Palladio bzw. PerOpteryx um einen neuen Inklusionsmechanismus erweitert, der eine flexible, feingranulare Modellierung und anschließende automatisierte Qualitätsoptimierung der Platzierung von wiederverwendbaren Subsystemen ermöglicht. Dazu wird eine domänenspezifische Sprache definiert, die eine deklarativen Beschreibung der Einwebepunkte in einem Architekturmodell durch aspektorientierte Semantiken erlaubt. Mithilfe eines Modellwebers werden die wiederverwendbaren Subsysteme in eine annotierte Zielarchitektur eingewebt. Schließlich wird der Ansatz in die automatisierte Qualitätsoptimierung von PerOpteryx integriert, sodass der Architekt bei seinen Entwurfsentscheidungen bezüglich dieser Freiheitsgrade unterstützt wird. Das vorgestellte Verfahren wurde durch eine simulationsbasierte Fallstudie anhand von realen Applikationsmodellen evaluiert. Es hat sich gezeigt, dass der Ansatz geeignet ist, um eine Vielzahl von Architekturkandidaten automatisiert generieren bzw. evaluieren und somit einen Architekten bei seinen Entwurfsentscheidungen unterstützen zu können.  +
Zukünftige Anwendungen der Automobilindustrie, wie beispielsweise das autonome Fahren oder die fortschreitende Elektrifizierung der Fahrzeuge, resultieren in einer ständig steigenden Anzahl an Funktionen bzw. einen immer größer werdenden Bedarf an Rechenleistung der elektronischen Steuereinheiten. Damit derartige Anwendungen realisiert werden können, führte die Entwicklung bei sicherheitskritischen, echtzeitfähigen eingebetteten Systemen zu Prozessoren mit mehreren Kernen (Multicore-Prozessoren). Dies reduziert einerseits die Komplexität des Netzwerks innerhalb des Fahrzeugs, jedoch werden aber sowohl die Komplexität der Hardware-Architektur für das Steuergerät als auch die Komplexität der Software-Architektur erhöht, aufgrund des zeitlichen Verhaltens des Systems, der gemeinsamen Ressourcennutzung, des gemeinsamen Speicherzugriffs, etc. Dadurch entstehen auch neue Anforderungen an die Tools des Enwticklungsprozesses von Multicore-Systemen. Um eine nahtlose Toolchain für diesen Entwicklungsprozess zu entwerfen, muss es schon zu einer frühen Phase der Funktionsentwicklung möglich sein, die benötigten Multicore-Eigenschaften des Systems zu modellieren, um diese nachher evaluieren zu können.  +
Mit dem Palladio Komponentenmodell (PCM) lassen sich Softwaresysteme modellieren und simulieren. Moderne verteilte Software-Systeme werden jedoch nicht mehr einfach statisch deployed, sondern es wird ein gewünschter Zustand definiert, der mithilfe einer Kontrollschleife dann eingehalten werden soll. Das passiert dann bspw. durch das Starten oder Stoppen von Containern und Pods. In dieser Arbeit wurde eine Erweiterung des PCM um die Konzepte von Containerorchestrierungswerkzeugen wie Kubernetes erarbeitet und umgesetzt. Zusätzlich wurde ein Konzept erarbeitet um dynamische Containerbasierte Systeme zu simulieren. Es wurde dabei insbesondere die Allokation bzw. Reallokation von Pods zur Simulationszeit betrachtet. Abschließend wurde die Modellerweiterung evaluiert.  +
Heutige emergente und verteilte Softwaresysteme sollen auch bei Teilausfällen ein bestimmtes Minimum an Funktionalität bereitstellen. Die Nachweisbarkeit von Reaktionen auf Fehlerszenarien ist deshalb bereits in frühen Phasen der Entwicklung essenziell. Denn so lassen sich Aussagen über die Zuverlässigkeit und Resilienz an leichtgewichtigen Modellen statt teuren Experimenten treffen. Bisherige Performance-Analysen im Palladio-Komponenten-Modell (PCM) modellieren Ausfälle stochastisch und verhindern es so, bestimmte Fehlerauftritte gezielt zu untersuchen. Die, im Rahmen dieser Arbeit bereitgestellte Modellierung von verketteten Ausfallszenarien erlaubt eine explizite Szenariendefinition und integriert probabilistisch abhängige Fehlerauftritte in das PCM. Durch Anpassungen am Palladio-Plugin SimuLizar ist es nun außerdem möglich, die erstellten Modelle in der Simulation auszuwerten. Am Fallbeispiel eines Lastverteilungssystems konnte die Evaluation einerseits die technische Funktionalität der Implementierung validieren. Zusätzlich wird gezeigt, dass der Ansatz eine Einordnung verschiedener Entwurfsalternativen von LoadBalancern ermöglicht, wodurch die Entscheidungsfindung in der System-Entwicklung unterstützt werden kann.  +
Nachrichtenbasierte Middleware (MOM) wird in verschiedenen Domänen genutzt. Es gibt eine Vielzahl von verschiedenen MOMs, die jeweils unterschiedliche Ziele oder Schwerpunkte haben. Währende die einen besonderen Wert auf Performance oder auf Verfügbarkeit legen, möchten andere allseitig einsetzbar sein. Außerdem bieten MOMs eine hohe Konfigurierbarkeit an. Das Ziel dieser Masterarbeit ist es, den Softwarearchitekten bei der Wahl und der Konfiguration einer MOM bereits in der Designphase zu unterstützen. Existierende Modellierungs- und Vorhersagetechniken vernachlässigen den Einfluss von Warteschlangen. Dadurch können bestimmte Effekte der MOM nicht abgebildet werden, zum Beispiel, das Ansteigen der Latenz einer Nachricht, wenn die Warteschlange gefüllt ist. Die Beiträge der Masterarbeit sind: Auswahl und Ausmessen einer MOM, um Effekte und Ressourcenanforderungen zu untersuchen; Performance-Modellierung einer MOM mit Warteschlangen mit anschließender Kalibrierung; Eine Modeltransformation um bereits existierende Modell-Elemente wiederzuverwenden. Der Ansatz wurde mithilfe des SPECjms2007 Benchmarks evaluiert.  +
The presentation will be in English. Die Zielsetzung in dieser Arbeit war die Entwicklung eines Systems zur Verifikation von Mehrgüterauktionen als Workflows am Beispiel eines Auktionsdesigns. Aufbauend auf diversen Vorarbeiten wurde in dieser Arbeit das Clock-Proxy Auktionsdesign als Workflow modelliert und zur Verifikation mit Prozessverifikationsmethoden vorbereitet. Es bestehen bereits eine Vielzahl an Analyseansätzen für Auktionsdesign, die letztendlich aber auf wenig variierbaren Modellen basieren. Für komplexere Auktionsverfahren, wie Mehrgüterauktionen, die in dieser Arbeit betrachtet wurden, liefern diese Ansätze keine zufriedenstellenden Möglichkeiten. Basierend auf den bereits bestehenden Verfahren wurde ein Ansatz entwickelt, dessen Schwerpunkt auf der datenzentrierten Erweiterung der Modellierung und der Verifikationsansätze liegt. Im ersten Schritt wurden daher die Regeln und Daten in das Workflowmodell integriert. Die Herausforderung bestand darin, den Kontroll-und Datenfluss sowie die Daten und Regeln aus dem Workflowmodell über einen Algorithmus zu extrahieren und bestehende Transformationsalgorithmen hinreichend zu erweitern. Die Evaluation des Ansatzes zeigt, dass die Arbeit mit der entwickelten Software das globale Ziel, einen Workflow mittels Eigenschaften zu verifizieren, erreicht hat.  +
Undokumentierte Sicherheitsannahmen können zur Vernachlässigung von Softwareschwachstellen führen, da Zuständigkeit und Bezugspunkte von Sicherheitsannahmen häufig unklar sind. Daher ist das Ziel dieser Arbeit, Sicherheitsannahmen in den komponentenbasierten Entwurf zu integrieren. In dieser Arbeit wurde basierend auf Experteninterviews und Constructive Grounded Theory ein Modell für diesen Zweck abgeleitet. Anhand einer Machbarkeitsstudie wird der Einsatz des Annahmenmodells demonstriert.  +
Cloud-IoT is a new paradigm which has emerged from the combination of Cloud computing and IoT. The Smart Devices are connected straight to a Cloud application to perform calculations which are too complex for a on-site computation. This has the advantage that the resources of the cloud application can be scaled horizontally under heavy load, e.g. due to many connected devices. However, due to cost reasons, it may not be possible to allocate additional resources. Alternatively, the transmission rate of the smart devices can be reduced to reduce the incoming messages and thus the load on the cloud application. For this a controller is needed, which is able to calculate the magnitude of the adaptation of the transmission rate. In addition, the compliance with quality of service requirements should also be ensured. In the course of this thesis we design such a feedback controller based on fuzzy logic, which also pays attention to the compliance with quality of service requirements.  +
Despite promising performance of data science approaches in various applications, in industrial research and development the results can be often unsatisfactory due to the costly experiments that lead to small datasets to work with. Theory-guided Data Science (TGDS) can solve the problem insufficient data by incorporating existing industrial domain knowledge with data science approaches. In dynamical systems, like gas turbines, transition phases occur after a change in the input control signal. The domain knowledge about the steepness of these transitions can potentially help with the modeling of such systems using the data science approaches. There already exist TGDS approaches that use the information about the limits of the values. However it is currently not clear how to incorporate the information about the steepness of the transitions with them. In this thesis, we develop three different TGDS approaches to include these transition constraints in recurrent neural networks (RNNs) to improve the modeling of input-output behavior of dynamical systems. We evaluate the approaches on synthetic and real time series data by varying data availability and different degrees of steepness. We conclude that the TGDS approaches are especially helpful for flat transitions and provide a guideline on how to use the available transition constraints in real world problems. Finally, we discuss the required degree of domain knowledge and intellectual implementation effort of each approach.  +
Smart contracts are software systems employing the underlying blockchain technology to handle transactions in a decentralized and immutable manner. Due to the immutability of the blockchain, smart contracts cannot be upgraded after their initial deploy. Therefore, reasoning about a contract’s security aspects needs to happen before the deployment. One common vulnerability for smart contracts is improper access control, which enables entities to modify data or employ functionality they are prohibited from accessing. Due to the nature of the blockchain, access to data, represented through state variables, can only be achieved by employing the contract’s functions. To correctly restrict access on the source code level, we improve the approach by Reiche et al. who enforce access control policies based on a model on the architectural level. This work aims at correctly enforcing role-based access control (RBAC) policies for Solidity smart contract systems on the architectural and source code level. We extend the standard RBAC model by Sandhu, Ferraiolo, and Kuhn to also incorporate insecure information flows and authorization constraints for roles. We create a metamodel to capture the concepts necessary to describe and enforce RBAC policies on the architectural level. The policies are enforced in the source code by translating the model elements to formal specifications. For this purpose, an automatic code generator is implemented. To reason about the implemented smart contracts on the source code level, tools like solc-verify and Slither are employed and extended. Furthermore, we outline the development process resulting from the presented approach. To evaluate our approach and uncover problems and limitations, we employ a case study using the three smart contract software systems Augur, Fizzy and Palinodia. Additionally, we apply a metamodel coverage analysis to reason about the metamodel’s and the generator’s completeness. Furthermore, we provide an argumentation concerning the approach’s correct enforcement. This evaluation shows how a correct enforcement can be achieved under certain assumptions and when information flows are not considered. The presented approach can detect 100% of manually introduced violations during the case study to the underlying RBAC policies. Additionally, the metamodel is expressive enough to describe RBAC policies and contains no unnecessary elements, since approximately 90% of the created metamodel are covered by the implemented generator. We identify and describe limitations like oracles or public variables.  
Quality characteristics of a software system such as performance or reliability can determine its success or failure. In traditional software engineering, these characteristics can only be determined when parts of the system are already implemented and past the design process. Computer simulations allow to determine estimations of quality characteristics of software systems already during the design process. Simulations are build to analyse certain aspects of systems. The representation of the system is specialised for the specific analysis. This specialisation often results in a monolithic design of the simulation. Monolithic structures, however, can induce reduced maintainability of the simulation and decreased understandability and reusability of the representations of the system. The drawbacks of monolithic structures can be encountered by the concept of modularisation, where one problem is divided into several smaller sub-problems. This approach allows an easier understanding and handling of the sub-problems. In this thesis an approach is provided to describe the coupling of newly developed and already existing simulations to a modular simulation. This approach consists of a Domain-Specific Language (DSL) developed with model-driven technologies. The DSL is applied in a case-study to describe the coupling of two simulations. The coupling of these simulations with an existing coupling approach is implemented according to the created description. An evaluation of the DSL is conducted regarding its completeness to describe the coupling of several simulations to a modular simulation. Additionally, the modular simulation is examined regarding the accuracy of preserving the behaviour of the monolithic simulation. The results of the modular simulation and the monolithic version are compared for this purpose. The created modular simulation is additionally evaluated in regard to its scalability by analysis of the execution times when multiple simulations are coupled. Furthermore, the effect of the modularisation on the simulation execution times is evaluated. The obtained evaluation results show that the DSL can describe the coupling of the two simulations used in the case-study. Furthermore, the results of the accuracy evaluation suggest that problems in the interaction of the simulations with the coupling approach exist. However, the results also show that the overall behaviour of the monolithic simulation is preserved in its modular version. The analysis of the execution times suggest, that the modular simulation experiences an increase in execution time compared to the monolithic version. Also, the results regarding the scalability show that the execution time of the modular simulation does not increase exponentially with the number of coupled simulations.  
Monitoring in complex computing systems is crucial to detect malicious states or errors in program execution. Due to the computational complexity, it is not feasible to monitor all data streams in practice. We are interested in monitoring pairs of highly correlated data streams. However we can not compute the measure of correlation for every pair of data streams at each timestep. Picking highly correlated pairs, while exploring potentially higher correlated ones is an instance of the exploration / exploitation problem. Bandit algorithms are a family of online learning algorithms that aim to optimize sequential decision making and balance exploration and exploitation. A contextual bandit additional uses contextual information to decide better. In our work we want to use a contextual bandit algorithm to keep an overview over highly correlated pairs of data streams. The context in our work contains information about the state of the system, given as execution traces. A key part of our work is to explore and evaluate different representations of the knowledge encapsulated in traces. Also we adapt state-of-the-art contextual bandit algorithms to the use case of correlation monitoring.  +
Software systems are usually described through multiple models that address different development concerns. These models can contain shared information, which leads to redundant representations of the same information and dependencies between the models. These representations of shared information have to be kept consistent, for the system description to be correct. The evolution of one model can cause inconsistencies with regards to other models for the same system. Therefore, some mechanism of consistency restoration has to be applied after changes occurred. Manual consistency restoration is error-prone and time-consuming, which is why automated consistency restoration is necessary. Many existing approaches use binary transformations to restore consistency for a pair of models, but systems are generally described through more than two models. To achieve multi-model consistency preservation with binary transformations, they have to be combined through transitive execution. In this thesis, we explore transitive combination of binary transformations and we study what the resulting problems are. We develop a catalog of six failure potentials that can manifest in failures with regards to consistency between the models. The knowledge about these failure potentials can inform a transformation developer about possible problems arising from the combination of transformations. One failure potential is a consequence of the transformation network topology and the used domain models. It can only be avoided through topology adaptations. Another failure potential emerges, when two transformations try to enforce conflicting consistency constraints. This can only be repaired through adaptation of the original consistency constraints. Both failure potentials are case-specific and cannot be solved without knowing which transformations will be combined. Furthermore, we develop two transformation implementation patterns to mitigate two other failure potentials. These patterns can be applied by the transformation developer to an individual transformation definition, independent of the combination scenario. For the remaining two failure potentials, no general solution was found yet and further research is necessary. We evaluate the findings with a case study that involves two independently developed transformations between a component-based software architecture model, a UML class diagram and its Java implementation. All failures revealed by the evaluation could be classified with the identified failure potentials, which gives an initial indicator for the completeness of our failure potential catalog. The proposed patterns prevented all failures of their targeted failure potential, which made up 70% of all observed failures, and shows that the developed implementation patterns are applicable and help to mitigate issues occurring from transitively combining binary transformations.  
Die Arbeit geht der Frage nach, inwieweit eine Optimierung von Microservice-Architekturen unter Einbezug der zu erwarteten Kosten auf Modellebene möglich ist, und ob diese einen Entscheidungsprozess für eine konkrete Architektur unterstützen kann. Dazu werden die relevanten Kostenfaktoren identifiziert und in ein formales Kostenmodell zusammengeführt. Dieses unterstützt nicht nur mehrere Servicemodelle (IaaS, PaaS, OnPremise) und Cloud-Anbieter, sondern bezieht neben den eigentlichen Betriebskosten auch weitere Kostenfaktoren wie Personal oder Lizenzen mit ein.  +
Zur automatischen Erzeugung von Rückverfolgbarkeitsinformationen muss zunächst die Absicht der Anforderungen verstanden werden. Die Grundvoraussetzung hierfür bildet das Verständnis der Bedeutungen der Worte innerhalb von Anforderungen. Obwohl hierfür bereits klassische Systeme zur Wortbedeutungsauflösung existieren, arbeiten diese meist nur auf Wortebene und ignorieren sogenannte "Multiwort-Ausdrücke" (MWAs), deren Bedeutung sich von der Bedeutung der einzelnen Teilworte unterscheidet. Im Rahmen des INDIRECT-Projektes wird deshalb ein System entwickelt, welches die MWAs mithilfe eines einfach verketteten Zufallsfeldes erkennt und anschließend eine wissensbasierte Bedeutungsauflösung mit den Wissensbasen DBpedia und WordNet 3.1 durchführt. Um das System zu evaluieren wird ein Datensatz aus frei verfügbaren Anforderungen erstellt. Das Teilsystem für die Erkennung von MWAs erreicht dabei maximal einen F1-Wert von 0.81. Die Bedeutungsauflösung mit der Wissensbasis DBpedia erreicht maximal einen F1-Wert von 0.496. Mit der Wissensbasis WordNet 3.1 wird maximal ein F1-Wert von 0.547 erreicht.  +
N
Outlier detection often needs to be done unsupervised with high dimensional data in data streams. “Deep structured energy-based models” (DSEBM) and “Variational Denoising Autoencoder” (VDA) are two promising approaches for outlier detection. They will be implemented and adapted for usage in data streams. Finally, their performance will be shown in experiments including the comparison with state of the art approaches.  +
O
Das in Microsoft Excel integrierte Add-In JustLingo ist ein System, das ermöglicht, natürlichsprachliche Eingaben in die Formelsprache von Excel zu überführen. Motiviert durch die Möglichkeit einfache Algorithmenbeschreibungen der Benutzer zu erkennen, wird in dieser Arbeit eine zusätzliche Erweiterung zum bestehenden System vorgestellt, die das Themengebiet der Objektorientierung einführt. Dabei werden die Nutzereingaben zunächst in UML-Klassennotation überführt. Diese Zwischendarstellung kann dann in ausführbaren C#-Klassencode samt Klassen, Attribute sowie Methoden überführt werden. Zusätzlich verfügt der Prototyp über ein Werkzeug, das in den UML-Diagrammen nicht nur nach existierenden Entwurfsmustern der Softwaretechnik sucht, sondern auch teilweise vorhandene Muster automatisiert vervollständigen kann. Zur Evaluierung der Arbeit wurde das System mit Beschreibungen aus den Klausuraufgaben, die Informatikstudenten im dritten Semester lösen können müssen, konfrontiert. Bei den acht Klausuraufgaben sollten Klassen und deren Beziehungen sowie Attribute und Methoden in den Beschreibungen erkannt werden. Das System hat dabei einen Precision-Wert von 0,70, einen Recall-Wert von 0,59 und einen F-Wert von 0,63 erreicht.  +
Estimating dependency is essential for data analysis. For example in biological analysis, knowing the correlation between groups of proteins and genes may help predict genes functions, which makes cure discovery easier. The recently introduced Monte Carlo Dependency Estimation (MCDE) framework defines the dependency between a set of variables as the expected value of a stochastic process performed on them. In practice, this expected value is approximated with an estimator which iteratively performs a set of Monte Carlo simulations. In this thesis, we propose several alternative estimators to approximate this expected value. They function in a more dynamic way and also leverage information from previous approximation iterations. Using both probability theory and experiments, we show that our new estimators converge much faster than the original one.  +
Verifying anomaly detection results when working in on an unsupervised use case is challenging. For large datasets a manual labelling is economical unfeasible. In this thesis we create explanations to help verifying and understanding the detected anomalies. We develop a method to rule generation algorithm that describe frequent patterns in the output of autoencoders. The number of rules is significantly lower than the number of anomalies. Thus, finding explanations for these rules is much less effort compared to finding explanations for every single anomaly. Its performance is evaluated on a real-world use case, where we achieve a significant reduction of effort required for domain experts to understand the detected anomalies but can not specify the usefulness in exact numbers due to the missing labels. Therefore, we also evaluate the approach on benchmark dataset.  +
Hybrid presentation : https://kit-lecture.zoom.us/j/67744231815 Battery based load hiding gained a lot of popularity in recent years as an attempt to guarantee a certain degree of privacy for users in smart grids. Our work evaluates a set of the most common privacy measures for BBLH. For this purpose we define logical natural requirements and score how well each privacy measure complies to each requirement. We achieve this by scoring the response for load profile altering (e.g. noise addition) using measures of displacement. We also investigate the stability of privacy measures toward load profile length and number of bins using specific synthetic data experiments. Results show that certain private measures fail badly to one or many requirements and therefore should be avoided.  +
Recently, a deep learning model (t2vec) for trajectory similarity computation has been proposed. Instead of using the trajectories, it uses their deep representations to compute the similarity between them. At this current state, we do not have a clear idea how to interpret the t2vec similarity values, nor what they are exactly based on. This thesis addresses these two issues by analyzing t2vec on its own and then systematically comparing it to the the more familiar traditional models. Firstly, we examine how the model’s parameters influence the probability distribution (PDF) of the t2vec similarity values. For this purpose, we conduct experiments with various parameter settings and inspect the abstract shape and statistical properties of their PDF. Secondly, we consider that we already have an intuitive understanding of the classical models, such as Dynamic Time Warping (DTW) and Longest Common Subsequence (LCSS). Therefore, we use this intuition to analyze t2vec by systematically comparing it to DTW and LCSS with the help of heat maps.  +
In data analysis, the ability to detect and understand critical shifts in information patterns holds immense significance. Whether it is monitoring real-time network traffic, identifying anomalies in financial markets, or tracking fluctuations in climate data, the ability to swiftly identify change points is crucial for effective decision-making. Since the default implementation of MMD is quadratic the algorithms to enable this however tend to exceed runtime limits for certain contexts, such as those where the speed and volume of incoming data is relatively high. In continuation of recent developments in change point detection optimization through estimators, notably RADMAN, we propose to integrate the “Nyström” estimator into a similar context of exponential bucketing to improve on this matter. This thesis will focus on the concept, the implementation and testing of this construct and its comparison to other recent approaches.  +
Die Analyse der Lastenhefte für die Planung der Software bringt einen erheblichen manuellen Aufwand mit sich. Bei der Robert Bosch Engineering GmbH werden die Anforderungen aus den Lastenheften der Kunden auf eine V-Prozessmodell-Datenbank abgebildet. Diese Datenbank besteht aus sogenannten internen Anforderungen, die Richtlinien für Hardware-und Softwareentwicklung enthalten. Jede Kundenanforderung muss von den Mitarbeitern manuell auf eine oder mehrere interne Anforderungen abgebildet werden. In Rahmen dieser Arbeit wurde ein automatisiertes Verfahren entwickelt, welches den Mitarbeiter bei dem Abbildungsprozess unterstützen kann. Dafür wurde aus den Textdaten der Kundenanforderungen eine Ontologie automatisch generiert, welche Fachbegriffe und ihre Beziehungen enthält. Aus dieser Ontologie wurden Merkmale erzeugt, welche mit einem unüberwachten Verfahren des maschinellen Lernens, nämlich hiearchisches Clustering gruppiert wurden. Dadurch war es möglich eine neue Kundenanforderung in ein bestehendes Cluster einzuordnen und basierend auf die Kundenanforderungen in dem Cluster Vorschläge für die zutreffenden internen Anforderungen zu erhalten. Um die entstandene Ontologie zu evaluieren, wurde diese auf falsch extrahierte Konzepte und Beziehungen überprüft. 16% der Konzepte und 24% der Relationen erwiesen sich als falsch. Die Voraussage der Vorschläge erreichte einen F-Maß Wert von 62%, bei den Evaluationsmetriken Präzision@5 und Ausbeute@5.  +
In der Modellgetriebenen Softwareentwicklung sind Analysen der entstehenden Modelle notwendig, um Validierungen schon auf der Modellebene durchführen zu können, um so kostenintensiveren Fehlern vorzubeugen und Kosten zu sparen. Allerdings sind die Modelle stetigen Änderungen unterworfen, die sich auch auf die Analyseergebnisse auswirken können, die man gerne stets aktuell hätte. Da die Modelle sehr groß werden können, sich aber immer nur kleine Teile dieser Modelle ändern, ist es sinnvoll diese Analysen inkrementell zu gestalten. Ein Ansatz für solche inkrementellen Modellanalysen ist NMF Expressions, das im Hintergrund einen Abhängigkeitsgraphen der Analyse aufbaut und bei jeder atomaren Änderung des Modells aktualisiert. Die Effizienz der Analysen hängt dabei aber oft von der genauen Formulierung der Anfragen ab. Eine ungeschickte Formulierung kann somit zu einer ineffizienten Analyse führen. In der Datenbankwelt hingegen spielt die genaue Formulierung der Anfragen keine so große Rolle, da automatische Optimierungen der Anfragen üblich sind. In dieser Masterarbeit wird untersucht, inwieweit sich die Konzepte der Optimierungen von Anfragen aus der Datenbankwelt auf die Konzepte von inkrementelle Modellanalysen übertragen lassen. Am Beispiel von NMF Expression wird gezeigt, wie solche Optimierungen für inkrementelle Modellanalysen umgesetzt werden können. Die implementierten Optimierungen werden anhand von definierten Modellanalysen getestet und evaluiert.  +
Often during the development phase of a software, engineers are facing different implementation alternatives. In order to test several options without investing the resources in implementing each one of them, a so-called performance model comes in practice. By using a performance models the developers can simulate the system in diverse scenarios and conditions. To minimize the differences between the real system and its model, i.e. to improve the accuracy of the model, parametric dependencies are introduced. They express a relation between the input arguments and the performance model parameters of the system. The latter could be loop iteration count, branch transition probabilities, resource demands or external service call arguments. Existing works in this field have two major shortcomings - they either do not perform incremental calibration of the performance model (updating only changed parts of the source code since the last commit), or do not consider more complex dependencies than linear. This work is part of the approach for the continuous integration of performance models. Our aim is to identify parametric dependencies for external service calls, as well as, to optimize the existing dependencies for the other types of performance model parameters. We propose using two machine learning algorithms for detecting initial dependencies and then refining the mathematical expressions with a genetic programming algorithm. Our contribution also includes feature selection of the candidates for a dependency and consideration not only of input service arguments but also the data flow i.e., the return values of previous external calls.  +
Modern computer applications tend to generate massive amounts of logs and have become so complex that it is often difficult to explain why applications failed. Locating outliers in application logs can help explain application failures. Outlier detection in application logs is challenging because (1) the log is unstructured text streaming data. (2) labeling application logs is labor-intensive and inefficient. Logs are similar to natural languages. Recent deep learning algorithm Transformer Neural Network has shown outstanding performance in Natural Language Processing (NLP) tasks. Based on these, we adapt Transformer Neural Network to detect outliers from applications logs In an unsupervised way. We compared our algorithm against state-of-the-art log outlier detection algorithms on three widely used benchmark datasets. Our algorithm outperformed state-of-the-art log outlier detection algorithms.  +
P
Qualitätseigenschaften von komponentenbasierten Software-Systemen hängen sowohl von den eingesetzten Komponenten, als auch von ihrem eingesetzten Kontext ab. Während die kontextabhängige Parametrisierung für einzelne Qualitätsanalysemodelle, wie z.B. Performance, bereits fundiert wissenschaftlich analysiert wurde, ist dies für andere Qualitätsattribute, insbesondere für qualitativ beschreibende Modelle, noch ungeklärt. Die vorgestellte Arbeit stellt die Qualitätseffekt-Spezifikation vor, die eine kontextabhängige Analyse und Transformation beliebiger Qualitätsattribute erlaubt. Der Ansatz enthält eine eigens entworfene domänenspezifischen Sprache zur Modellierung von Auswirkungen in Abhängigkeit des Kontextes und dazu entsprechende Transformation der Qualitätsannotationen.  +
PRIM (Patient Rule Induction Method) is an algorithm for discovering scenarios from simulations, by creating hyperboxes, that are human-comprehensible. Yet PRIM alone requires relatively large datasets and computational simulations are usually quite expensive. Consequently, one wants to obtain a plausible scenario, with a minimal number of simulations. It has been shown, that combining PRIM with ML models, which generalize faster, can reduce the number of necessary simulation runs by around 75%. We will try to reduce the number of simulation runs even further, using an active learning approach to train an intermediate ML model. Additionally, we extend the previously proposed methodology to not only cover classification but also regression problems. A preliminary experiment indicated, that the combination of these methods, does indeed help reduce the necessary runs even further. In this thesis, I will analyze different AL sampling strategies together with several intermediate ML models to find out if AL can systematically improve existing scenario discovery methods and if a most beneficial combination of sampling method and intermediate ML model exists for this purpose.  +
folgt  +
Multiple containers as packages of software code can interact with each other in a network and build together a container-based architecture. Huge architectures are hard to understand without any knowledge about the application or the applied underlying technologies. Therefore, this master thesis uses the approach of design pattern detection to reduce the amount of complexity of one architecture representation to multiple smaller pattern instances. So, a user can understand the depicted pattern instances in a short period of time by knowing the general patterns in advance.  +
In dieser Arbeit werden zwei neue Arten der Codegenerierung durch den automatisch parallelisierenden Übersetzer Aphes für beschleunigte Ausführung vorgestellt. Diese basieren auf zwei zusätzlich erkannten Mustern von implizitem Parallelismus in Eingabeprogrammen, nämlich Reduktionen in Schleifen und rekursive Funktionen die das Teile-und-herrsche-Muster umsetzen. Aphes hebt sich in zwei Punkten von herkömmlichen parallelisierenden Übersetzern hervor, die über das reine Parallelisieren hinausgehen: Der erste Punkt ist, dass Aphes sich auf heterogene Systeme spezialisiert. Das zweite Hervorstellungsmerkmal ist der Einsatz von Online-Autotuning. Beide Aspekte wurden während der Umsetzung dieser Arbeit beachtet. Aus diesem Grund setzen die von uns implementierten Code-Generatoren sowohl lokale Beschleunigung über OpenMP und C++11 Threads als auch entfernte Beschleunigung mittels Nvidias CUDA um. Desweiteren setzt der generierte Code weiter auf die bereits in Aphes vorhandene Infrastruktur zum Autotuning des generierten Maschinencodes zur Laufzeit. Während unserer Tests ließen sich in mit Aphes kompilierten Programmen mit Reduktionen in Schleifen Beschleunigungen von bis zu Faktor 50 gegenüber mit Clang kompilierten Programmen beobachten. Von Aphes transformierter Code mit rekursiven Funktionen erzielte Beschleunigungswerte von 3,15 gegenüber herkömmlich mit GCC und Clang generierten ausführbaren Dateien des gleichen Programms. In allen Fällen war der Autotuner in der Lage, innerhalb der ersten 50 Ausführungsiterationen des zu optimierenden Kernels zu konvergieren. Allerdings wiesen die konvergierten Ausführungszeiten teils erhebliche Unterschiede zwischen den Testläufen auf.  +
Optimizing resource allocation in distributed computing systems is crucial for enhancing system efficiency and reliability. Predicting job execution metadata, based on resource demands and platform characteristics, plays a key role in this optimization process. Distributed computing simulators are utilized for this purpose to model and predict system behaviors. Among the various simulators developed in recent decades, this thesis specifically focuses on the state-of-the-art simulator DCSim. DCSim simulates the nodes and links of the configured platform, generates the workloads according to configured parameter distributions, and performs the simulations. The simulated job execution metadata is accurate, yet the simulations demand computational resources and time that increase superlinearly with the number of nodes simulated. In this thesis, we explore the application of Recurrent Neural Networks and Transformer models for predicting job execution metadata within distributed computing environments. We focus on data preparation, model training, and evaluation for handling numerical sequences of varying lengths. This approach enhances the scalability of predictive systems by leveraging deep neural networks to interpret and forecast job execution metadata based on simulated data or historical data. We assess the models across four scenarios of increasing complexity, evaluating their ability to generalize for unseen jobs and platforms. We examine the training duration and the amount of data necessary to achieve accurate predictions and discuss the applicability of such models to overcome the scalability challenges of DCSim. The key findings of this work demonstrate that the models are capable of generalizing across sequences of lengths encountered during training but fall short in generalizing across different platforms.  +
Für Nutzende des Mechanik-Lösermoduls von Pace3D ist es schwierig vorherzusagen, wie sich unterschiedliche Konfigurationen auf die Rechenzeit auswirken. Um das Verständnis dafür zu schaffen, welcher Einfluss von verschiedenen Konfigurationsoptionen auf die Laufzeit ausgeht, wird eine Performance-Modellierung des Mechanik-Lösermoduls von Pace3D durchgeführt. Das gewählte Verfahren zur Performance-Modellierung unterstützt bisher nur die Berücksichtigung numerischer Konfigurationsoptionen. Das Verfahren wird deshalb erweitert, sodass sich auch binäre Konfigurationsoptionen berücksichtigen lassen. Zur Evaluierung der Performance-Modelle wird ausgewertet, wie gut interpolierte und extrapolierte Testpunkte vorhergesagt werden. Unter Verwendung ausschließlich numerischer Eingabeparameter wird eine Genauigkeit von 87,99 % erzielt. Das Modell mit numerischen sowie einem binären Parameter erzielt eine Genauigkeit von 89,14 %.  +
Nowadays distributed applications are often not statically deployed on virtual machines. Instead, a desired state is defined declaratively. A control loop then tries to create the desired state in the cluster. Predicting the impact on the performance of a system using these deployment techniques is difficult. This paper introduces a method to predict the performance impact of the usage of containers and container orchestration in the deployment of a system. Our proposed approach enables system simulation and experimentation with various mechanisms of container orchestration, including autoscaling and container scheduling. We validated this approach using a micro-service reference application across different scenarios. Our findings suggest, that the simulation could effectively mimic most features of container orchestration tools, and the performance prediction of containerized applications in dynamic scenarios could be improved significantly.  +
Das Ziel dieser Arbeit war es, einen Entwickler dabei zu unterstützen, in einer Anwendung Schleifen mit Parallelisierungspotential zu finden. Hierzu wurde das auf der Compiler-Infrastruktur LLVM aufbauende Test-Programm KLEE erweitert. Mit Hilfe von symbolischer Ausführung werden Variablenbelegungen bestimmt, die zu hohen Ausführungskosten bei einem Pfad führen. Durch die Analyse der Pfade auf Hot-Spots, also Bereiche, die besonders hohe Kosten verursachen, wird es einem Entwickler ermöglicht, gezielt diese auf ihr Parallelisierungspotential zu untersuchen.  +
NoSQL-Datenbankmanagementsysteme werden als Back-End für Software im Big-Data-Bereich verwendet, da sie im Vergleich zu relationalen Datenbankmanagementsystemen besser skalieren, kein festes Datenbankschema benötigen und in virtuellen Systemen einfach eingesetzt werden können. Apache Cassandra wurde aufgrund seiner Verbreitung und seiner Lizensierung als Open-Source-Projekt als Beispiel für NoSQL-Datenbankmanagementsysteme ausgewählt. Existierende Modelle von Apache Cassandra betrachten dabei nur die maximal mögliche Anzahl an Anfragen an Cassandra und deren Durchsatz und Latenz. Diese Anzahl zu reduzieren erhöht die Latenz der einzelnen Anfragen. Das in dieser Bachelorarbeit erstellte Modell soll unter anderem diesen Effekt abbilden. Die Beiträge der Arbeit sind das Erstellen und Parametrisieren eines Modells von Cassandra im Palladio-Komponentenmodell und das Evaluieren des Modells anhand von Benchmarkergebnissen. Zudem wird für dieses Ziel eine Vorgehensweise entwickelt, die das Erheben der notwendigen Daten sowie deren Auswertung und Evaluierung strukturiert und soweit möglich automatisiert und vereinfacht. Die Evaluation des Modells erfolgt durch automatisierte Simulationen, deren Ergebnisse mit den Benchmarks verglichen werden. Dadurch konnte die Anwendbarkeit des Modells für einen Thread und eine beliebige Anzahl Anfragen bei gleichzeitiger Verwendung von einer oder mehreren verschiedenen Operationen, abgesehen von der Scan-Operation, gezeigt werden.  +
In dieser Arbeit werden Methoden entwickelt um versteckte Ausreißer in Datensätzen zu platzieren. Versteckte Ausreißer sind dabei abweichende Datenpunkte die im Gesamtraum als abweichend erkannte werden können, aber in gewissen Teilräumen als normale Datenpunkte erscheinen. Zusätzlich werden benutzerdefinierte Einschränkungen entwickelt, die es einem Benutzer erlauben, den Bereich in dem versteckte Ausreißer platziert werden sollen, einzuschränken. Die Verfahren werden in unterschiedlichen Szenarien mit realen und synthetischen Daten evaluiert.  +
Sowohl Offline- als auch Online-Tuning stellen gängige Lösungen zur automatischen Optimierung von parallelen Anwendungen dar. Beide Verfahren haben ihre individuellen Vor- und Nachteile: das Offline-Tuning bietet minimalen negativen Einfluss auf die Laufzeiten der Anwendung, die getunten Parameterwerte sind allerdings nur auf im Voraus bekannter Hardware verwendbar. Online-Tuning hingegen bietet dynamische Parameterwerte, die zur Laufzeit der Anwendung und damit auf der Zielhardware ermittelt werden, dies kann sich allerdings negativ auf die Laufzeit der Anwendung ausüben. Wir versuchen die Vorteile beider Ansätze zu verschmelzen, indem im Voraus optimierte Parameterkonfigurationen auf der Zielhardware, sowie unter Umständen mit einer anderen Anwendung, verwendet werden. Wir evaluieren sowohl die Hardware- als auch die Anwendungsportabilität der Konfigurationen anhand von fünf Beispielanwendungen.  +
Während des Praktikums bestand mein Aufgabengebiet im Rahmen der Weiterentwicklung einer vollumfangreichen Softwareumgebung zur Videobearbeitung und Synchronisation von Motordaten daraus, mich in die Softwareumgebung MATLAB einzuarbeiten und mich daraufhin mit der vorhandenen Software vertraut zu machen, um diese dann in vielerlei Hinsicht aufzufrischen und um neue Funktionen zu erweitern.  +
Choosing a suitable classifier for a given dataset is an important part in the process of solving a classification problem. Meta-learning, which learns about the learning algorithms themselves, can predict the performance of a classifier without training it. The effect of different types of performance measures remains unclear, as it is hard to draw a comparison between results of existing works, which are based on different meta-datasets as well as meta-models. In this thesis, we study the predictability of different classification performance measures with meta-learning, also we compare the performances of meta-learning using different meta-regression models. We conduct experiments with meta-datasets from previous studies considering 11 meta-targets and 6 meta-models. Additionally, we study the relation between different groups of meta-features and the performance of meta-learning. Results of our experiments show that meta-targets have similar predictability and the choice of meta-model has a big impact on the performance of meta-learning.  +
In machine learning, classification is the problem of identifying to which of a set of categories a new instance belongs. Usually, we cannot tell how the model performs until it is trained. Meta-learning, which learns about the learning algorithms themselves, can predict the performance of a model without training it based on meta-features of datasets and performance measures of previous runs. Though there is a rich variety of meta-features and performance measures on meta-learning, existing works usually focus on which meta-features are likely to correlate with model performance using one particular measure. The effect of different types of performance measures remain unclear as it is hard to draw a comparison between results of existing works, which are based on different meta-data sets as well as meta-models. The goal of this thesis is to study if certain types of performance measures can be predicted better than other ones and how much does the choice of the meta-model matter, by constructing different meta-regression models on same meta-features and different performance measures. We will use an experimental approach to evaluate our study.  +
The concept of Artificial Intelligence for IT Operations combines big data and machine learning methods to replace a broad range of IT operations including availability and performance monitoring of services. In large-scale distributed cloud infrastructures a service is deployed on different separate nodes. As the size of the infrastructure increases in production, the analysis of metrics parameters becomes computationally expensive. We address the problem by proposing a method to predict dependencies between metrics parameters of system components instead of computing them. To predict the dependencies we use time windowing with different aggregation methods and distributed tracing data that contain detailed information for the system execution workflow. In this bachelor thesis, we inspect the different representations of distributed traces from simple counting of events to more complex graph representations. We compare them with each other and evaluate the performance of such methods.  +
Code plagiarism is a significant problem in computer science education. Token-based plagiarism detectors, which represent the state-of-the-art in code plagiarism detection, excel at identifying manually plagiarized submissions. Unfortunately, they are vulnerable to automatic plagiarism generation, particularly when statements are inserted or reordered. Therefore, this thesis introduces token string normalization, which makes the results of token-based plagiarism detectors invariant to statement insertion and reordering. It inher- its token-based plagiarism detectors’ high language independence and utilizes a program graph. We integrate token string normalization into the state-of-the-art token-based plagiarism detector JPlag. We show that this prevents automatic plagiarism generation using statement insertion and reordering. Additionally, we confirm that JPlag’s existing capabilities are retained.  +
Some students tasked with mandatory programming assignments lack the time or dedication to solve the assignment themselves. Instead, they plagiarize a peer’s solution by slightly modifying the code. However, there exist numerous tools that assist in detecting these kinds of plagiarism. These tools can be used by instructors to identify plagiarized programs. The most used type of plagiarism detection tools is token-based plagiarism detectors. They are resilient against many types of obfuscation attacks, such as renaming variables or whitespace modifications. However, they are susceptible to inserting lines of code that do not affect the program flow or result. The current working assumption was that the successful obfuscation of plagiarism takes more effort and skill than solving the assignment itself. This assumption was broken by automated plagiarism generators, which exploit this weakness. This work aims to develop mechanisms against code insertions that can be directly integrated into existing token-based plagiarism detectors. For this, we first develop mechanisms to negate the negative effect of many types of code insertion. Then we implement these mechanisms prototypically into a state-of-the-art plagiarism detector. We evaluate our implementation by running it on a dataset consisting of real student submissions and automatically generated plagiarism. We show that with our mechanisms, the similarity rating of automatically generated plagiarism increases drastically. Consequently, the plagiarism generator we use fails to create usable plagiarisms.  +
Computer-supported simulations provide multiple ways to analyse design decisions and avoid many possible mistakes. For simulating large and complex systems, multiple simulation tools may be necessary, as having the means to simulate in only one tool may not be the best approach. In such cases, co-simulation can be used to simulate the said system by interconnecting the mentioned simulation tools using a co-simulation standard. A system that consists of hardware and software falls under this category of systems. Depending on how a system is to be co-simulated, choosing a co-simulation standard can be challenging, as there are many factors and trade-offs to consider. In this thesis, existing co-simulation standards with discrete-event-based co-simulation support will be researched and compared to one another. This comparison will then be used to choose a co-simulation standard for an exemplary case of hardware-software co-simulation, which will be prototypically implemented and evaluated.  +
Gamification ist ein neuartiger Ansatz um Motivation bei Lernenden zu steigern. In dieser Studie wurde die Wirksamkeit eines Punktesystems auf Motivation und Ineteresse von Lernenden in einem Onlinekurs untersucht. Verglichen mit einer früheren Studie ohne Punktesystem zeigte sich, dass die Punkte allein das Interesse nicht signifikant erhöhten. Auch eine Anpassung der Punkteskala führte nicht zu einem positiven Effekt. Mögliche Gründe und Implikationen werden diskutiert.  +
Q
Explainable artificial intelligence (XAI) offers a reasoning behind a model's behavior. For many explainers this proposed reasoning gives us more information about the inner workings of the model or even about the training data. Since data privacy is becoming an important issue the question arises whether explainers can leak private data. It is unclear what private data can be obtained from different kinds of explanation. In this thesis I adapt three privacy attacks in machine learning to the field of XAI: model extraction, membership inference and training data extraction. The different kinds of explainers are sorted into these categories argumentatively and I present specific use cases how an attacker can obtain private data from an explanation. I demonstrate membership inference and training data extraction for two specific explainers in experiments. Thus, privacy can be breached with the help of explainers.  +
In der datengetriebenen Forschung ist das Analysieren hochdimensionaler Daten von zentraler Bedeutung. Hierbei ist es nicht immer ausreichend lediglich Abhängigkeiten zwischen Paaren von Attributen zu erkennen. Häufig sind hier Abhängigkeiten zwischen mehreren Attributen vorhanden, welche sich zwischen den zweidimensionalen Paaren nicht feststellen lassen. Zur Erkennung monotoner Zusammenhänge zwischen beliebig vielen Dimensionen existiert bereits eine mehrdimensionale Erweiterung des Spearman Rangkorrelationskoeffizienten, für beliebige Abhängigkeiten existiert jedoch kein solches erprobtes Maß. Hier setzt diese Arbeit an und vergleicht die beiden multivariaten informationstheoretischen Metriken "allgemeine Redundanz" und "Interaktionsinformation" miteinander. Als Basislinie für diesen Vergleich dienen die Spearman Rangkorrelation, sowie das Kontrastmaß von HiCS.  +
Although machine learning plays an ever-increasing role in modern technology, there are still some parts where a human is needed to help with the learning process. With active learning a human operator is added to the process and helps with the classification of unknown samples. This improves the precision of the machine learning process. Although increasing the precision is important, the addition of a human operator introduces a problem known since the invention of the computer: Humans are slow compared to machines. Therefore it is essential to present the human operator with queries having the highest value of informativeness to optimize the learning process. The better the queries are chosen, the less time the learning process needs. Current query selection strategies, use class label information to interpolate between opposite pairs at the decision boundary or select a query from a set of given unlabeled data points. However, these strategies cannot be used when no unlabeled and no negative observations are available. Then, one uses a query strategy function that rates the informativeness for any query candidate to synthesize the optimal query. While it is easy to calculate the most informative point in just a few dimensions, the curse of dimensionality quickly becomes a problem when searching for the most informative point in a high-dimensional space. This thesis takes a look at synthesizing queries in high-dimensional one-class cases via metaheuristics. The goal is to compare different metaheuristics experimentally with multiple data sets.  +
R
In Palladio werden die erstellten Modelle groß, weil die heutigen Softwaresysteme durch ihre Komplexität immer größer werden und nur noch mit der modellgetriebener Softwareentwicklung eine gute Architektur erstellt werden kann. Das Softwaresystem wird in mehrere Modelle aufgeteilt, damit sie unabhängig voneinander sind und ersetzt werden können. Dadurch werden die Modelle unübersichtlich, zum Beispiel müssen mehrere Modelle geöffnen werden, um einen Ablauf nachvollziehen zu können. In verteilten Modellen sind Abläufe aufwendiger zu verfolgen und das Modell schwerer zu verstehen. Aus diesem Grund wurde ein Werkzeug entwickelt, das Teile von Palladio als Sicht anzeigen kann. Palladio ist ein Werkzeug zur modellbasierten Performance-Analyse. Die modellierten Softwaresysteme sind in vier Modelle aufgeteilt, so kann dieselbe Repository-Spezifikation mit verschiedenen System-Modellen oder Hardware-Konfigurationen simuliert werden. In Palladio ist es aufwendig den Ablauf eines Systemaufrufs in einem System zu finden. Durch die Unübersichtlichkeit werden die gefundenen Abläufe fehlerhaft und inkonsistent, was den Einstieg in die Software, das Warten und das Erweitern der Modelle erschwert. In dieser Bachelorarbeit wird im ersten Teil ein Rahmenwerk zum Erzeugen von Sichten vorgestellt. Diesem Rahmenwerk können neue Sichten hinzugefügt werden, die eine Hilfestellung beim Erstellen und Verstehen von Modellen geben. Mit Hilfe von Modelltransformationen erzeugt dieses Rahmenwerk neue Blickwinkel auf gesonderte Teile des Palladio-Komponentenmodells. Eine erste Sicht ist die Darstellung des Palladio-Komponentenmodells als ein Sequenzdiagramm, die im zweiten Teil der Bachelorarbeit vorgestellt wird. Die Diagramme wurden mit PlantUML erzeugt. Der PlantUML-Quelltext wird mit einer Model-zu-Text-Transformation generiert. Durch das erstellte Rahmenwerk können neue Einblicke auf ein Palladio-Komponentenmodell gegeben werden. Neue Benutzer von Palladio müssen sich nicht durch Modelle arbeiten. Sie können mit dem Rahmenwerk Abläufe direkt erkennen. Die Entwickler von Palladio können eigene Sichten hinzufügen. Dadurch erweitert sich der Werkzeugkasten von Palladio und ermöglicht einen leichteren Einstieg in das Softwaresimulationsprogramm.  
Due to the energy transition towards weather-dependent electricity sources like wind and solar energy, as well as new notable loads like electric vehicle charging, the voltage quality of the electrical grid suffers. So-called Smart Transformers (ST) can use Voltage Sensitivity (VS) information to control voltage, frequency, and phase in order to enhance the voltage quality. Acquiring this VS information is currently costly, since you have to synthetically create an output variability in the grid, disturbing the grid even further. In this thesis, I propose a method based on Kalman Filters and Neural Networks to predict the VS, while giving a confidence interval of my prediction at any given time. The data for my prediction derives from a grid simulation provided by Dr. De Carne from the research center Energy Lab 2.0.  +
Data Reduction is known as the process of compressing large amounts of data down to its most relevant parts and is an important sub-field of Data Mining. Energy time series (ETS) generally feature many components and are gathered at a high temporal resolution. Hence, it is required to reduce the data in order to allow analysis or further processing of the time series. However, existing data reduction methods do not account for energy-related characteristics of ETS and thus may lead to unsatisfying results. In this work, we present a range of state-of-the art approaches for time series reduction (TSR) in the context of energy time series. The aim is to identify representative time slices from the multivariate energy time series without any prior knowledge about the inherent structure of the data. We rely on unsupervised approaches, i.e., clustering algorithms, to derive these representatives. For validation purpose, we apply the proposed reduction methods in two distinct approaches: First, we use the TSR method to reduce the run time of energy system optimization models (ESM). ESM produce predictions and recommendations for the future energy system on the basis of historical data. As the model complexity and execution time of the ESM increases dramatically with the temporal resolution of the input data, reducing the input data without impacting the quality of predictions allows analysis at scales that are out of reach otherwise. In particular, we will study the Perseus-EU model. Our analysis show the extent to which each TSR method can reduce run times without degrading the quality of the prediction significantly. The second application relates to the compression of ETS emerging from grid measurement data. Measurements from sensors installed in the energy grid collect observations in a high temporal resolution but are often highly redundant. Hence, while the storage requirements are high, the collected time series only contain few interesting and representative observations. Here, we use TSR methods to reduce the multivariate time series to a set of representative time slices. We show that amount of redundant observations can be greatly reduced in that way while preserving rare and interesting observations.  
Advances in computational power have led to increased in interest in machine learning techniques. Sophisticated approaches now solve various prediction problems in the domain of healthcare. Traditionally, machine learning techniques integrate domain knowledge implicitly, by statistically extracting dependencies from their input data. Novel approaches instead integrate domain knowledge from taxonomies as an external component. However, these approaches assume the existence of high quality domain knowledge and do not acknowledge issues stemming from low quality domain knowledge. It is thus unclear what low quality domain knowledge in the context of Domain Knowledge Guided Machine Learning looks like and what its causes are. Further it is not clearly understood what the impact of low quality domain knowledge on the machine learning task is and what steps can be taken to improve the quality in this context. In this Thesis we describe low quality domain knowledge and show examples of such knowledge in the context of a sequential prediction task. We further propose methods for identifying low quality domain knowledge in the context of Domain Knowledge Guided Machine Learning and suggest approaches for improving the quality of domain knowledge in this context.  +
The knight’s tour problem is an instance of the Hamiltonian path problem that is a typical NP-hard problem. A knight makes L-shape moves on a chessboard and tries to visit all the squares exactly once. The tour is closed if a knight can finish a complete tour and end on a square that is a neighbourhood of its starting square; Otherwise, it is open. Many algorithms and heuristics have been proposed to solve this problem. The most well-known one is warnsdorff’s heuristic. Warnsdorff’s idea is to move to the square with the fewest possible moves in a greedy fashion. Although this heuristic is fast, it does not always return a closed tour. Also, it only works on boards of certain dimensions. Due to its greedy behaviour, it can get stuck into a local optimum easily. That is similar to the other existing approaches. Our goal in this thesis is to come up with a new strategy based on reinforcement learning. Ideally, it should be able to find a closed tour on chessboards of any size. We will consider several approaches: value-based methods, policy optimization and actor-critic methods. Compared to previous work, our approach is non-deterministic and sees the problem as a single-player game with a tradeoff between exploration and exploitation. We will evaluate the effectiveness and efficiency of the existing methods and new heuristics.  +
Moderne Softwaresysteme werden oftmals nicht mehr als monolithische Anwendungen konstruiert. Verteilte Architekturen liegen im Trend. Der Einsatz von Technologien wie Docker und Spring bringt, neben dem Quelltext, zusätzliche Konfigurationsdateien mit ein. Eine Rekonstruktion der Softwarearchitektur nur anhand des Quelltextes wird dadurch erschwert. Zu Beginn dieser Arbeit wurden einige wissenschaftliche Arbeiten untersucht, die sich mit dem Thema Rekonstruktion von Softwarearchitekturen beschäftigen. Jedoch konnte keine Arbeit gefunden werden, welche sowohl heterogene Softwareartefakte unterstützt als auch ein für die Qualitätsvorhersage geeignetes Modell generiert. Aufgrund dessen stellt diese Arbeit einen neuen Ansatz vor, der mehrere heterogene Softwareartefakte zur Rekonstruktion eines Architekturmodells miteinbezieht. Genauer wird in dieser Arbeit der Ansatz als Prototyp für die Artefakte Java-Quelltext, Dockerfiles, Docker-Compose-Dateien sowie Spring-Konfigurationsdateien umgesetzt. Als Zielmodell kommt das Palladio-Komponentenmodell zum Einsatz, welches sich für Analysen und Simulationen hinsichtlich Performanz und Verlässlichkeit eignet. Es wird näher untersucht, inwiefern die Informationen der Artefakte zusammengeführt werden können. Der Ansatz sieht es vor, die Artefakte zuerst in Modelle zu transformieren. Für diese Transformationen werden zwei unterschiedliche Vorgehensweisen betrachtet. Zuerst soll Java-Quelltext mithilfe von JDT in ein bestehendes Metamodell übertragen werden. Für die übrigen Artefakte wird eine Xtext-Grammatik vorgeschlagen, welche ein passendes Metamodell erzeugen kann. Die Architektur des Ansatzes wurde außerdem so gestaltet, dass eine Anpassung oder Erweiterung bezüglich der unterstützten Artefakte einfach möglich ist. Zum Abschluss wird die prototypische Implementierung beschrieben und evaluiert. Dafür wurden zwei Fallstudien ausgewählt und mithilfe des Prototyps das Architekturmodell der Projekte extrahiert. Die Ergebnisse wurden anhand von vorher definierten Metriken anschließend untersucht. Dadurch konnte gezeigt werden, dass der Ansatz funktioniert und durch die heterogenen Artefakte ein Mehrwert zur Rekonstruktion des Architekturmodells beigetragen werden kann.  
In predictive maintenance scenarios, failure classification is challenging because large high-dimensional data volumes are being generated continuously in modern factories. Currently complex error analysis occurs manually based on recorded data in our industry use-case. The resulting misclassification leads to longer rework times. Our goal is to perform automated failure detection. In particular, this thesis builds a classification model to detect faulty engines in the vehicle manufacturing process. The work’s first part focuses on the binary anomaly detection classification problem and aims to predict an engine’s deficiency status. Here, we manage to recognize more than 90% of the faulty engines. In the second part, we extend our analysis to the multi-class classification problem with high-unbalanced classes. Here, our objective is to forecast the exact type of failure. To some extent, this situation shows similarities with the microarray analysis – we observe high-dimensional data with few instances available. This thesis develops a relevance-driven feature engineering meta-algorithm framework. We study the integration of feature relevance evaluation in the construction process of new features. We also use ensemble feature selection algorithms and define our own criteria to determine the relevance of feature subsets. These criteria are integrated in the feature engineering process in order to accelerate it by ignoring parts of the search space without significantly degrading the data quality.  +
Durch Industrie 4.0 sind Organisationen in der Lage kleinere Produktionseinheiten, oder individualisierte Produkte kosteneffizienter herzustellen. Dies wird erreicht durch selbstorganisierende Produktions- und Lieferketten, bei der die im Prozess beteiligten Menschen, Maschinen und Organisationen ad-hoc zusammenarbeiten. Um den, durch diese ad-hoc Zusammenarbeit entstehenden, Datenfluss, kontrollieren zu können, reichen aktuelle Zugriffskontrollsysteme nicht aus. Im Zuge dieser Bachelorarbeit wird ein Metamodell vorgestellt, welches in der Lage ist die sich dynamisch ändernden Kontextinformationen von den im Prozess beteiligten Entitäten abzubilden und zur Zugriffskontrolle zu nutzen. Dabei werden Kontexte zum Darstellen von einzelnen Eigenschaften und als Menge zum Definieren eines Zustands in dem sich eine Entität befinden muss um auf ein Datum zugreifen zu dürfen. Des Weiteren wird eine Analyse beschrieben und evaluiert, welche in der Lage ist verbotene Datenzugriffe in einem modelliertem Systemzustand und Datenfluss zu identifizieren.  +
The amount and complexity of data collected in the industry is increasing, and data analysis rises in importance. Dependency estimation is a significant part of knowledge discovery and allows strategic decisions based on this information. There are multiple examples that highlight the importance of dependency estimation, like knowing there exists a correlation between the regular dose of a drug and the health of a patient helps to understand the impact of a newly manufactured drug. Knowing how the case material, brand, and condition of a watch influences the price on an online marketplace can help to buy watches at a good price. Material sciences can also use dependency estimation to predict many properties of a material before it is synthesized in the lab, so fewer experiments are necessary. Many dependency estimation algorithms require a large amount of data for a good estimation. But data can be expensive, as an example experiments in material sciences, consume material and take time and energy. As we have the challenge of expensive data collection, algorithms need to be data efficient. But there is a trade-off between the amount of data and the quality of the estimation. With a lack of data comes an uncertainty of the estimation. However, the algorithms do not always quantify this uncertainty. As a result, we do not know if we can rely on the estimation or if we need more data for an accurate estimation. In this bachelor's thesis we compare different state-of-the-art dependency estimation algorithms using a list of criteria addressing these challenges and more. We partly developed the criteria our self as well as took them from relevant publications. The existing publications formulated many of the criteria only qualitative, part of this thesis is to make these criteria measurable quantitative, where possible, and come up with a systematic approach of comparison for the rest. From 14 selected criteria, we focus on criteria concerning data efficiency and uncertainty estimation, because they are essential for lowering the cost of dependency estimation, but we will also check other criteria relevant for the application of algorithms. As a result, we will rank the algorithms in the different aspects given by the criteria, and thereby identify potential for improvement of the current algorithms. We do this in two steps, first we check general criteria in a qualitative analysis. For this we check if the algorithm is capable of guided sampling, if it is an anytime algorithm and if it uses incremental computation to enable early stopping, which all leads to more data efficiency. We also conduct a quantitative analysis on well-established and representative datasets for the dependency estimation algorithms, that performed well in the qualitative analysis. In these experiments we evaluate more criteria: The robustness, which is necessary for error-prone data, the efficiency which saves time in the computation, the convergence which guarantees we get an accurate estimation with enough data, and consistency which ensures we can rely on an estimation.  
In our data-driven world, large amounts of data are collected in all kinds of environments. That is why data analysis rises in importance. How different variables influence each other is a significant part of knowledge discovery and allows strategic decisions based on this knowledge. Therefore, high-quality dependency estimation should be accessible to a variety of people. Many dependency estimation algorithms are difficult to use in a real-world setting. In addition, most of these dependency estimation algorithms need large data sets to return a good estimation. In practice, gathering this amount of data may be costly, especially when the data is collected in experiments with high costs for materials or infrastructure. I will do a comparison of different state-of-the-art dependency estimation algorithms. A list of 14 different criteria I but together, will be used to determine how promising the algorithm is. This study focuses especially on data efficiency and uncertainty of the dependency estimation algorithms. An algorithm with a high data efficiency can give a good estimation with a small amount of data. A degree of uncertainty helps to interpret the result of the estimator. This allows better decision-making in practice. The comparison includes a theoretical analysis and conducting different experiments with dependency estimation algorithms that performed well in the theoretical analysis.  +
In this thesis, the idea of finding robust subspaces with help of an iterative process is being discussed. The process firstly aims for subspaces where hiding outliers is feasible. Subsequently, the subspaces used in the first part are being adjusted. In doing so, the convergence of this iterative process can reveal valuable insights in systems where the existence of hidden outliers poses a high risk (e.g. power station). The main part of this thesis will deal with the aspect of hiding outliers in high dimensional data spaces and the challenges resulting from such spaces.  +
S
PRIM (Patient Rule Induction Method) is an algorithm used for discovering scenarios, by creating hyperboxes in the input space. Yet PRIM alone usually requires large datasets and computational simulations can be expensive. Consequently, one wants to obtain scenarios while reducing the number of simulations. It has been shown, that combining PRIM with machine learning models, can reduce the number of necessary simulation runs by around 75%. In this thesis, I analyze nine different active learning sampling strategies together with several machine learning models, in order to find out if active learning can systematically improve PRIM even further, and if out of those strategies and models, a most beneficial combination of sampling method and intermediate machine learning model exists for this purpose.  +
In dieser Arbeit wird ein Schema entwickelt, um Architekturentscheidungen aus Softwarearchitekturdokumentationen einzuordnen. Somit solldas Einordnen und Wiederverwenden von Entscheidungen in Softwarearchitekturdokumentation erleichtert werden. In meinem Ansatz wird ein Schema zur Einordnung entwickelt, das sich an aktuelle Literatur anlehnt und drei grundsätzliche Arten von Entscheidungen unterscheidet: Existenzentscheidungen, Eigenschaftenentscheidungen und Umgebungsentscheidungen. Zur Evaluation wurden Open-Source-Softwareprojekte mit natürlichsprachiger Softwarearchitekturdokumentationen betrachtet und iterativ überprüft, wo das aktuelle Schema verbessert werden kann. Zum Schluss wird vorgestellt, welche der Entscheidungsklassen sich im Palladio Component Model abbilden lassen.  +
Hardwaresimulationen dienen dazu, die Hardware zu simulieren und somit das Verhalten der Software auf der Hardware zu testen. Beim Testen von Software, die auf Hardware läuft, entsteht bei jeder Simulation ein Zielkonflikt zwischen Genauigkeit und Geschwindigkeit. Es gibt verschiedene Hardwaresimulationen zur Auswahl, die eine höhere Genauigkeit bieten, aber längere Ausführungszeiten erfordern. Wenn jedoch die Geschwindigkeit der Co-Simulation, die mehrere Simulationen kombiniert, von größter Bedeutung ist, wählt man eine Simulation, die zwar geringere Genauigkeit bietet, aber schneller ausgeführt werden kann. Je nach Zielsetzung erfordert die Co-Simulation unterschiedliche Hardwaresimulationen. Ein Austausch von Hardwaresimulationen kann jedoch aufwändig sein und Anpassungen an der Co-Simulation erfordern. Diese Arbeit zielt darauf ab, eine allgemeine Schnittstelle für Hardwaresimulationen zu entwickeln, die den Wechsel erleichtert, ohne die Co-Simulation zu beeinträchtigen. Eine allgemeine Schnittstelle für alle Hardwaresimulationen ist jedoch nicht realisierbar. Daher erfolgt eine Klassifizierung, um ähnliche Simulationen zu gruppieren und für eine Klasse eine allgemeine Schnittstelle zu entwickeln.  +
In an identity ecosystem, actors exchange digital proofs, so called "credentials". Actors can also take on different roles: "Issuers" generate credentials and issue them to other actors. "Holders" store them and present them to "verifiers", who verify and accept the credential or reject it. In decentralized identity ecosystems, actors can interact with each other on an equal basis, regardless of their current role. They are not subjected to permanent hierarchies. Instead, they are loosely coupled with each other and where it is possible, intermediaries are avoided. In this thesis, the "semantic interoperability" of actors in decentralized identity ecosystems are examined. Semantic interoperability aims at a common understanding of credentials for all actors. For this purpose, two things have to be taken into account: First, the understanding of the properties and statements evidenced in the credential, e.g., "What does the content say and what does it not say? What level of trust is guaranteed? What kind of actor issued the credential?" Second, it is about the context of the credential in its own environment, e.g., "Is the evidence of these properties adequate to continue this process? Is the level of trust sufficient?" Regarding this, there are already promising approaches from researchers and practitioners, especially in the area of the "Semantic Web", which is closely connected to the topic of semantic interoperability. This is why we want to collect and classify various existing technologies and standards for creating semantic interoperability. These technologies and standards will also be evaluated for their use on the basis of requirements collected in the project "Schaufenster sichere digitale Identitäten Karlsruhe" (Showcase secure digital identities Karlsruhe).  +
In order to manage the high complexity of developing software systems, oftentimes several models are employed describing different aspects of the system under development. Models often contain redundant or dependent information, meaning changes to one model without adjustments to others representing the same concepts lead to inconsistencies, which need to be repaired automatically. Otherwise, developers would have to know all dependencies to preserve consistency by hand. For automated consistency preservation, model transformations can be used to specify how elements from one model correspond to those of another and define consistency preservation operations to fix inconsistencies. In this specification, it is not always possible to determine one generally correct way of preserving consistency without insight into the intentions of the developer responsible for making the changes. To be able to factor in underlying intentions, user interactions used to clarify the course of consistency preservation in ambiguous cases are needed. Existing approaches either do not consider user interactions during consistency preservation or provide an unstructured set of interaction options. In this thesis, we therefore identify a structured classification of user interaction types to employ during consistency preservation. By applying those types in preexisting case studies for consistency preservation between models in different application domains, we were able to show the applicability of these types in terms of completeness and appropriateness. Furthermore, software projects are rarely developed by a single person, meaning that multiple developers may work on the same models in different development branches and combine their work at some point using a merge operation. One reasonable option to merge different development branches of models is to track model changes and merge the change sequences by applying one after another. Since the model state changed due to changes made in the one branch, the changes in the other branch can potentially lead to different user decisions being necessary for consistency preservation. Nevertheless, most necessary decisions will be the same, which is why it would be useful to reuse the previously applied choices if possible. To achieve this, we provide a concept for storing and reapplying decisions during consistency preservation in this thesis. Thus, we establish which information is necessary and reasonable to represent a user interaction and allow for its correct reuse. By applying the reuse mechanism to a change scenario with several user interactions in one of the case studies mentioned above, we were able to show the feasibility of our overall concept for correctly reusing changes.  
Es wird prognostiziert, dass in Zukunft die Hälfte der Firmenausgaben für mobile Anwendungen in die Entwicklung von Chatbots oder intelligenten Assistenten fließt. In diesem Bereich benötigt es zur Zeit viel manuelle Arbeit zur Modellierung von Beispielfragen. Diese Beispielfragen werden benötigt, um natürlichsprachliche Anfragen zu verstehen und in Datenbankanfragen umsetzen zu können. Im Rahmen dieser Arbeit wird ein Ansatz vorgestellt, welcher die manuelle Arbeit reduziert. Dazu wird mittels der Daten aus der Datenbank und Formulierungen, inklusive Synonymen, aus Dialogflow (ein intelligenter Assistent von Google) eine Aktive Ontologie erzeugt. Diese Ontologie verarbeitet anschließend die natürlichsprachlichen Anfragen und extrahiert die Parameter, welche für die Anfrage an die Datenbank benötigt werden. Die Ergebnisse der Aktiven Ontologie werden mit den Ergebnissen aus Dialogflow verglichen. Bei der Evaluation fällt auf, dass die Aktiven Ontologien fehleranfällig sind. Es werden zusätzliche, unerwünschte Parameter extrahiert, welche das Ergebnis verschlechtern. Die Übereinstimmungsrate bei einem Eins-zu-Eins-Vergleich mit Dialogflow liegt bei etwa 40%. Zukünftig könnte durch das Hinzufügen einer zusätzlichen selektiven Schicht innerhalb der Aktiven Ontologien die Parameterextraktion verbessert werden.  +
Der gegenwärtige Stand der Industrie wurde mit dem Konzept der Industrie 4.0 erfasst. Die Industrie 4.0 ist gekennzeichnet durch eine kontinuierliche Interaktion zwischen Technologien, die große Datenmengen gemeinsam nutzen, austauschen und verarbeiten. Damit entstehen neue Herausforderungen für die Datentransfertechnologien. Auf diese Weise prägt die Nachfrage der Industrie das Konzept der Datensouveränität, das für die gemeinsame Nutzung von Daten durch Unternehmen gilt. Datensouveränität für Unternehmen bedeutet, dass das Unternehmen, das über die Daten verfügt und beschließt, diese Daten weiterzugeben, die Regeln für die Verwendung dieser Daten festlegt. Hierdurch behält das Unternehmen die Kontrolle über seine Daten, wenn es diese gemeinsam mit anderen Unternehmen nutzt. Die deutsche Regierung und deutsche Unternehmen haben mit der Ausarbeitung des <i>International Data Space</i> (IDS) Architekturmodells einen Schritt in Richtung Datensouveränität getan. IDS beschreibt abstrakt die Architektur von Datenräumen, innerhalb derer der souveräne Datentransfer bereitgestellt wird. Eine Schlüsselkomponente der IDS-Architektur ist der Datenraum-Konnektor, über den sich Unternehmen mit einem Datenraum verbinden und Daten austauschen. Der <i>Eclipse Dataspace Connector</i> (EDC) implementiert den abstrakten IDS Konnektor. Da es sich bei EDC um eine junge Technologie handelt, gibt es keine Untersuchungen, um zu prüfen, ob sie den souveränen Datentransfer vollständig unterstützt. Deshalb wurde im Rahmen dieser Bachelorarbeit eine Analyse der Sicherheit von EDC als eine Technologie, die den souveränen Datentransfer bereitstellt, durchgeführt. Die Methodik für diese Analyse war die STRIDE Bedrohungsmodellierung. Das System wurde auf Gegenmaßnahmen zu diesen Bedrohungen untersucht, sowie Testfälle zur Validierung der Gegenmaßnahmen implementiert. Der Vorteil der Bachelorarbeit sind die Ergebnisse der Sicherheitsanalyse, die eine Liste der Bedrohungen der EDC Architektur identifizieren. Für alle Bedrohungen, bis auf eine, werden in EDC die entsprechenden Gegenmaßnahmen implementiert. Die Implementierung für die nicht behobene Bedrohung befindet sich zur Zeit der Bachelorarbeit in Entwicklung. Als Ergebnis dieser Arbeit konnten wir zeigen, dass die Konzepte der Datensouveränität im EDC das <i>International Data Spaces Reference Architecture Model</i> umsetzt. Die durchgeführte Analyse hat gezeigt, dass die EDC Architektur eine sichere Umsetzung vom International Data Spaces Reference Architecture Model ist.  
Ausreißerkennung beschäftigt sich damit, ungewöhnliche Beobachtungen in Daten zu finden. Weit verbreitet ist dabei der Einsatz von maschinellen Lernverfahren, wie beispielsweise des 1-Klassen Klassifikators „Support Vector Data Description“ (SVDD). Ein Problem des SVDD Klassifikators ist allerdings, dass SVDD schlecht mit steigender Anzahl an Beobachtungen skaliert. Vorausgehende Arbeiten zeigen, dass während des Trainings einer SVDD nicht alle Objekte des Datensatzes benötigt werden. Es zeigt sich hierbei, dass vor allem jene, die sich am Rand der Verteilung befinden, von Interesse sind. Welche Objekte genau gewählt werden sollten und wie sich eine solche Reduktion letztlich auf die Qualität des Ergebnisses auswirkt, wird in den vorausgehenden Arbeiten bislang ausschließlich auf heuristischer Ebene behandelt. In dieser Arbeit entwickeln wir einen neuen Ansatz, um SVDD schneller zu trainieren. Wir geben dabei konkrete, analytisch berechnete Fehlerschranken an und ermöglichen es somit dem Nutzer, den Kompromiss zwischen Laufzeit und Ergebnis-Qualität selbst zu adjustieren.  +
Ausreißerkennung beschäftigt sich damit, ungewöhnliche Beobachtungen in Daten zu finden. Weit verbreitet ist dabei der Einsatz von maschinellen Lernverfahren, wie beispielsweise des 1-Klassen Klassifikators „Support Vector Data Description“ (SVDD). Ein Problem des SVDD Klassifikators ist allerdings, dass die SVDD schlecht mit steigender Anzahl an Beobachtungen skaliert. Vorausgehende Arbeiten zeigen, dass während des Trainings einer SVDD nicht alle Objekte des Datensatzes benötigt werden. Es zeigt sich hierbei, dass vor allem jene, die sich am Rand der Verteilung befinden, von Interesse sind. Welche Objekte genau gewählt werden sollten und wie sich eine solche Reduktion letztlich auf die Qualität des Ergebnisses auswirkt, wird in den vorausgehenden Arbeiten bislang ausschließlich auf heuristischer Ebene behandelt. In dieser Arbeit entwickeln wir einen neuen Ansatz, um die SVDD schneller zu trainieren. Wir geben dabei konkrete, analytisch berechnete Fehlerschranken an und ermöglichen es somit dem Nutzer, den Kompromiss zwischen Laufzeit und Ergebnis-Qualität selbst zu adjustieren.  +
Source code plagiarism is a widespread problem in computer science education. To counteract this, software plagiarism detectors can help identify plagiarized code. Most state-of-the-art plagiarism detectors are token-based. It is common to design and implement a new dedicated language module to support a new programming language. This process can be time-consuming, furthermore, it is unclear whether it is even necessary. In this thesis, we evaluate the necessity of dedicated language modules for Java and C/C++ and derive conclusions for designing new ones. To achieve this, we create a language module for the intermediate representation of LLVM. For the evaluation, we compare it to two existing dedicated language modules in JPlag. While our results show that dedicated language modules are better for plagiarism detection, language modules for intermediate representations show better resilience to obfuscation attacks.  +