Attribut:Kurzfassung

Aus SDQ-Institutsseminar

Dies ist ein Attribut des Datentyps Text.

Unterhalb werden 177 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.  +
The goal of this thesis is to provide a generic concept of a correspondence model (CM) to map high-level model elements to corresponding low-level model elements and to generate this mapping during implementation of the high-level model using a correspondence model generator (CGM). In order to evaluate our approach, we implement and integrate the CM for the iObserve project. Further we implement the proposed CMG and integrate it into ProtoCom, the source code generator used by the iObserve project. We first evaluate the feasibility of this approach by checking whether such a correspondence model can be specified as desired and generated by the CGM. Secondly, we evaluate the accuracy of the approach by checking the generated correspondences against a reference model.  +
The reliable detection of change points is a fundamental task when analysing data across many fields, e.g., in finance, bioinformatics, and medicine. To define “change points”, we assume that there is a distribution, which may change over time, generating the data we observe. A change point then is a change in this underlying distribution, i.e., the distribution coming before a change point is different from the distribution coming after. The principled way to compare distributions, and to find change points, is to employ statistical tests. While change point detection is an unsupervised problem in practice, i.e., the data is unlabelled, the development and evaluation of data analysis algorithms requires labelled data. Only few labelled real world data sets are publicly available and many of them are either too small or have ambiguous labels. Further issues are that reusing data sets may lead to overfitting, and preprocessing (e.g., removing outliers) may manipulate results. To address these issues, van den Burg et al. publish 37 data sets annotated by data scientists and ML researchers and use them for an assessment of 14 change detection algorithms. Yet, there remain concerns due to the fact that these are labelled by hand: Can humans correctly identify changes according to the definition, and can they be consistent in doing so? The goal of this Bachelor's thesis is to algorithmically label their data sets following the formal definition and to also identify and label larger and higher-dimensional data sets, thereby extending their work. To this end, we leverage a non-parametric hypothesis test which builds on Maximum Mean Discrepancy (MMD) as a test statistic, i.e., we identify changes in a principled way. We will analyse the labels so obtained and compare them to the human annotations, measuring their consistency with the F1 score. To assess the influence of the algorithmic and definition-conform annotations, we will use them to reevaluate the algorithms of van den Burg et al. and compare the respective performances.  
The reliable detection of change points is a fundamental task when analyzing data across many fields, e.g., in finance, bioinformatics, and medicine. To define “change points”, we assume that there is a distribution, which may change over time, generating the data we observe. A change point then is a change in this underlying distribution, i.e., the distribution coming before a change point is different from the distribution coming after. The principled way to compare distributions, and thus to find change points, is to employ statistical tests. While change point detection is an unsupervised problem in practice, i.e., the data is unlabeled, the development and evaluation of data analysis algorithms requires labeled data. Only a few labeled real-world data sets are publicly available, and many of them are either too small or have ambiguous labels. Further issues are that reusing data sets may lead to overfitting, and preprocessing may manipulate results. To address these issues, Burg et al. publish 37 data sets annotated by data scientists and ML researchers and assess 14 change detection algorithms on them. Yet, there remain concerns due to the fact that these are labeled by hand: Can humans correctly identify changes according to the definition, and can they be consistent in doing so?  +
State of the Art Vortrag im Rahmen der Praxis der Forschung.  +
In dieser Arbeit geht es um die Analyse von LLVM-Quellcode mit dem Ziel, einen Indikator für die Anzahl der CPU-Instruktionen zu finden. Ein Indikator ist ein geschlossener Term, der für eine bestimmte Eingabe die Anzahl der CPU-Instruktionen eines Stück Codes liefert. Diese Definition korreliert mit der Eingabegröße eines Programmes. Wir analysieren den Kontrollflussgraph und Schleifenbedingungen, um Variablen im Code zu finden, die stellvertretend für die Eingabegröße stehen. Diese Indikator-Ermittlung ist ein Fundament für bessere Online-Autotuner in der Zukunft, die sich automatisch auf Eingaben wechselnder Größen einstellen können.  +
The evaluation of data stream mining algorithms is an important task in current research. The lack of a ground truth data corpus that covers a large number of desireable features (especially concept drift and outlier placement) is the reason why researchers resort to producing their own synthetic data. This thesis proposes a novel framework ("streamgenerator") that allows to create data streams with finely controlled characteristics. The focus of this work is the conceptualization of the framework, however a prototypical implementation is provided as well. We evaluate the framework by testing our data streams against state-of-the-art dependency measures and outlier detection algorithms.  +
The extraction of knowledge from data streams is one of the most crucial tasks of modern day data science. Due to their nature data streams are ever evolving and knowledge derrived at one point in time may be obsolete in the next period. The need for specialized algorithms that can deal with high-dimensional data streams and concept drift is prevelant. A lot of research has gone into creating these kind of algorithms. The problem here is the lack of data sets with which to evaluate them. A ground truth for a common evaluation approach is missing. A solution to this could be the synthetic generation of data streams with controllable statistical propoerties, such as the placement of outliers and the subspaces in which special kinds of dependencies occur. The goal of this Bachelor thesis is the conceptualization and implementation of a framework which can create high-dimensional data streams with complex dependencies.  +
Der Vergleich von zwei Sprachkorpora wird durch einen Homogenitätstest realisiert. Aufgrund der Verfügbarkeit vieler Sprachkorpora unterschiedlicher Sprachen als auch deren zeitlichen Entwicklung, ist diese Methode nicht mehr ausreichend. Diese Arbeit beschäftigt sich damit unterschiedlich sprachige Korpora vergleichbar zu machen. Darüber hinaus werden erste Ansätze zum Vergleich zeitlicher Entwicklungen zwischen verschiedenen Sprachkorpora gegeben.  +
Kernel methods are among the most well-known approaches in data science. Their ability to represent probability distributions as elements in a reproducing kernel Hilbert space gives rise to maximum mean discrepancy (MMD). MMD quantifies the dissimilarity of two distributions and allows powerful two-sample tests on many domains. One important application of general two-sample tests is change detection in data streams: Here, one tests the null hypothesis that the distributions of data within the stream do not change versus the alternative hypothesis that the distributions do change; a change in distribution then indicates a change point. The broad applicability of kernel-based two-sample tests renders their use for change detection in data streams highly desirable. But, their quadratic runtime complexity prohibits their application. While approximations for kernel methods that reduce their runtime in the static setting exist, their application to data streams is challenging. In this thesis, we propose a novel change detector, RADMAN, which leverages the random Fourier feature-based kernel approximation to efficiently detect changes in data streams with a polylogarithmic runtime complexity of O(log^2 n) per insert operation, with n the total number of observations. The proposed approach runs significantly faster than existing methods but obtains similar result quality. Our experiments on synthetic and real-world data sets show that it performs better than current state-of-the-art approaches.  +
Many modern applications take a potentially infinite stream of events as input to interpret and process the data. The established approach to handle such tasks is called Event Stream Processing. The underlying technologies are designed to process this stream efficiently, but applications based on this approach can become hard to maintain, as the application grows. A model-driven approach can help to manage increasing complexity and changing requirements. This thesis examines how a combination of Event Stream Processing and Model-Driven Engineering can be used to handle an incoming stream of events. An architecture that combines these two technologies is proposed and two case studies have been performed. The DEBS grand challenges from 2015 and 2016 have been used to evaluate applications based on the proposed architecture towards their performance, scalability and maintainability. The result showed that they can be adapted to a variety of change scenarios with an acceptable cost, but that their processing speed is not competitive.  +
Data streams are omnipresent. Think of sensor data, bank transactions, or stock movements. We assume that such data is generated according to an underlying distribution, which may change at so-called change points. These points signal events of interest; hence one wants to detect them. A principled approach for finding such change points is to use maximum mean discrepancy (MMD) for a statistical hypothesis test, with the null hypothesis that the distribution does not change. However, the quadratic runtime of MMD prohibits its application in the streaming setting. Approximations for that setting exist but these suffer from high variance. In the static setting, the so-called Nyström method allows to reduce the quadratic runtime of MMD with only a slight increase in variance. We propose an algorithm to employ Nyström estimators for MMD in the streaming setting and compare it to existing approximations.  +
Die Anzahl der Funktionen, die in Software realisiert werden, nimmt in modernen Fahrzeugen immer weiter zu. Da davon verstärkt auch sicherheitskritische Funktionen wie Fahrsicherheits- und Fahrerassistenzsysteme betroffen sind, steigen die Anforderungen an die Zuverlässigkeit der zugrundeliegenden Hardware. Das bedeutet, dass Hardware-Komponenten nicht ausfallen dürfen, sobald kritische Funktionen auf ihr betrieben werden. Um mit diesen Herausforderungen umzugehen, definiert die Industrienorm ISO 26262 (ISO, 2011) ein Vorgehensmodell, dass die funktionale Sicherheit eines Systems mit elektrischen/elektronischen Komponenten im Kraftfahrzeug gewährleisten soll. Sie passt die IEC 61508 (IEC, 2010) an die spezifischen Gegebenheiten im Automobilbereich an. Nach ISO 26262 muss ein System bereits zur Entwurfszeit hinreichend auf seine Zuverlässigkeit analysiert werden. Denn eine Anpassung der Architektur ist nur möglich, wenn Hardware-Ausfälle frühzeitig im Entwicklungsprozess berücksichtigt werden. Mit Hilfe eines Systematic Literature Reviews soll in dieser Arbeit untersucht werden, welche Ansätze es in der Literatur zur Ausfallmodellierung der Hardware-Komponenten von sicherheitskritischen Systemen gibt. Die Recherche lieferte zwei Ansätze: Einer zeigt, wie die Modellierung von Hardware-Ausfällen um eine Weibull-verteile Ausfallrate erweitert werden kann. Ein anderer zeigt, wie die Zustandsmodellierung um einen weiteren Fehlerzustand ergänzt werden kann. Für diese Erweiterungen wurde eine Konzeption skizziert und anschließend deren Integration in die Modellauswertung von Palladio diskutiert.  +
Nach der Entwicklung eines Informationssystems im Rahmen einer studentischen Teamarbeit am Lehrstuhl "Systeme der Informationsverwaltung", das den Studierenden bei der Studienplanung unterstützt, soll dieses System erweitert werden, sodass es auch den Dozenten bei der Einplanung ihrer Lehrveranstaltungen in das Lehrangebot des jeweiligen Modulhandbuchs unterstützen kann. In dieser Arbeit wurde eine Anforderungsanalyse durchgeführt und konzipiert, wie das existierende System erweitert werden kann. Der Lehrstuhl hat bereits umfangreiche Erfahrung in datengestützter Verifikation von Prozessabläufen unter Nutzung von Petri Netzen. Da ein Studienplan als Ablauf seiner Lehrveranstaltungen als Prozess allerdings mit involvierten Daten modelliert werden kann, wurden in dieser Arbeit Verifikationsmethoden untersucht und kombiniert, um eine Datenwert-basierte Verifikation von Petri-Netz-Modellen zu ermöglichen. Anhand der Ergebnisse wurden Tests durchgeführt, um zu untersuchen, inwiefern solche Verifikationsmethoden die Studienpläne auf Korrektheit überprüfen können. Die Tests und die Untersuchungen haben gezeigt, dass ein Einsatz von Verifikationsmethoden für Petri-Netze zur Unterstützung eines solchen Systems unter bestimmten Einschränkungen ermöglicht werden kann.  +
Outlier detection is an important yet challenging task, especially for unlabeled, high-dimensional, datasets. Due to their self-supervised generative nature, Generative Adversarial Networks (GAN) have proven themselves to be one of the most powerful deep learning methods for outlier detection. However, most state-of-the-art GANs for outlier detection share common limitations. Oftentimes we only achieve great results if the model’s hyperparameters are properly tuned or the underlying network structure is adjusted. This optimization is not possible in practice when the data is unlabeled. If not tuned properly, it is not unusual that a state-of-the-art GAN method is outperformed by simpler shallow methods. We propose using a GAN architecture with feature ensemble learning to address hyperparameter sensibility and architectural dependency. This follows the success of feature ensembling in mitigating these problems inside other areas of Deep Learning. This thesis will study the optimization problem, training, and tuning of feature ensemble GANs in an unsupervised scenario, comparing it to other deep generative methods in a similar setting.  +
Modern data mining often takes place on high-dimensional data streams, which evolve at a very fast pace: On the one hand, the "curse of dimensionality" leads to a sparsely populated feature space, for which classical statistical methods perform poorly. Patterns, such as clusters or outliers, often hide in a few low-dimensional subspaces. On the other hand, data streams are non-stationary and virtually unbounded. Hence, algorithms operating on data streams must work incrementally and take concept drift into account. While "high-dimensionality" and the "streaming setting" provide two unique sets of challenges, we observe that the existing mining algorithms only address them separately. Thus, our plan is to propose a novel algorithm, which keeps track of the subspaces of interest in high-dimensional data streams over time. We quantify the relevance of subspaces via a so-called "contrast" measure, which we are able to maintain incrementally in an efficient way. Furthermore, we propose a set of heuristics to adapt the search for the relevant subspaces as the data and the underlying distribution evolves. We show that our approach is beneficial as a feature selection method and as such can be applied to extend a range of knowledge discovery tasks, e.g., "outlier detection", in high-dimensional data-streams.  +
Im Forschungsbereich Softwaretechnik werden viele Publikationen in Form von wissenschaftlichen Aufsätzen veröffentlicht. Für Wissenschaftler ist es wichtig, das gewonnene Wissen zu organisieren und zugänglich zu machen. Zur Erfassung und Strukturierung von Publikationen ist der Open Research Knowledge Graph (ORKG) ein System, das Publikationen aus verschiedenen Forschungsbereichen verwalten, visualisieren und vergleichen kann. Aktuell wird das Hinzufügen von Publikationen manuell durch die Nutzer durchgeführt. Um diesen Prozess zu verbessern und zu erleichtern, kann eine automatische Klassifizierung eingesetzt werden. In dieser Masterarbeit stellen wir einen Ansatz zur Unterstützung des Import-Prozesses für den ORKG vor, indem wir Publikationen aus dem Bereich der Softwarearchitektur mit Sprachmodellen klassifizieren. Für den Ansatz beurteilen wir, wie gut die Sprachmodelle abschneiden und welchen Umwelteinfluss die Klassifizierung hat. Für die Klassifizierung greifen wir auf den Datensatz zurück, welcher eine Taxonomie und einen Datensatz mit Softwarearchitektur-Veröffentlichungen beinhaltet. Auf dem Datensatz wenden wir verschiedene Techniken wie Splitting und Oversampling an, bevor wir ihn an die Sprachmodelle übergeben. Für die Klassifizierung verwenden wir zwei verschieden Ansätze. Zum einen trainieren wir Sprachmodelle und führen eine Hyperparameter Suchen durch. Zum anderen verwenden wir einen Zero-Shot Ansatz um Vorhersagen für die Softwarearchitektur Publikationen zu erhalten. Wir konnten zeigen, dass die trainierten Sprachmodelle gut funktionieren, wenn genügend Vertreter für die Label vorhanden sind. Mit der Oversampling-Strategie konnten wir unsere Ergebnisse verbessern. Für Kategorien mit weniger Labels konnten wir zeigen, dass der Zero-Shot Ansatz besser abschneidet. Für den Umwelteinfluss konnten wir zeigen, dass das kleinere Sprachmodell DistilBERT für die trainierten Sprachmodelle und Mistral bzw. Llama2:7b für den Zero-Shot Ansatz im Vergleich zu größeren Sprachmodellen wie DeBERTa und Llama2:70b weniger CO2-Emissionen verursachen, um gute Ergebnisse zu erzielen. Unsere erstellte Implementierung kann für zukünftige Vorhersagen in Wissensmanagementsystemen integriert werden und unterstützt die Vorhersage für neue Taxonomien und Datensätze.  
Manufacturing optimization is crucial for organizations to remain competitive in the market. However, complex processes, such as textile forming, can be challenging to optimize, requiring significant resources. Surrogate-based optimization is an efficient method that uses simplified models to guide the search for optimal parameter combinations of manufacturing processes. Moreover, incorporating uncertainty estimates into the model can further speed up the optimization process, which can be achieved by using Bayesian deep neural networks. Additionally, convolutional neural networks can take advantage of spatial information in the images that are part of the textile forming parameters. In this work, a Bayesian deep convolutional surrogate model is proposed that uses all available process parameters to predict the shear angle of a textile element. By incorporating background information into the surrogate model, it is expected to predict detailed process results, leading to greater efficiency and increased product quality.  +
When engineers design structures, prior knowledge of how they will react to external forces is crucial. Applied forces introduce stress, leading to dislocations of individual molecules that ultimately may cause material failure, like cracks, if the internal strain of the material exceeds a certain threshold. We can observe this by applying increasing physical forces to a structure and measure the stress, strain and the dislocation density curves. Finite Elemente Analysis (FEM) enables the simulation of a material deforming under external forces, but it comes with very high computational costs. This makes it unfeasible to conduct a large number of simulations with varying parameters. In this thesis, we use neural network based sequence models to build a data-driven surrogate model that predicts stress, strain and dislocation density curves produced by an FEM-simulation based on the simulation’s input parameters.  +
In this work, we build surrogate models to approximate the deformation behavior of face-centered cubic crystalline structures under load, based on the continuum dislocation dynamics (CDD) simulation. The CDD simulation is a powerful tool for modeling the stress, strain, and evolution of dislocations in a material, but it is computationally expensive. Surrogate models provide approximations of the results at a much lower computational cost. We propose two approaches to building surrogate models that only require the simulation parameters as inputs and predict the sequences of stress, strain, and dislocation density. The approaches comprise the use of time-independent multi-target regression and recurrent neural networks. We demonstrate the effectiveness by providing an extensive study of different implementations of both approaches. We find that, based on our dataset, a gradient-boosted trees model making time-independent predictions performs best in general and provides insights into feature importance. The approach significantly reduces the computational cost while still producing accurate results.  +
Predicting software performance under different configurations is a challenging task due to the large amount of possible configurations. Performance-influence models help stakeholders understand how configuration options and their interactions influence the performance of a program. A crucial part of the performance modeling process is the design of an experiment set that delivers performance measurements which are used as input for a machine learning algorithm that learns the performance model. An optimal experiment set should contain the minimal amount of experiments that produces a sufficiently accurate performance model. The topic of this thesis is Symbolic Performance Modeling, a new white-box approach to the analysis of the configuration options' influence on the software's performance. The approach utilizes taint analysis to determine where in the source code configuration options influence the software's performance and symbolic execution to determine whether the influence is significant. We assume that only loop constructs with non-constant iteration counts change the asymptotic behavior of the program. The Feature Taint Analysis provided by VaRA is used to determine which configuration options influence loops, while the Path Tracing provided by PhASAR is used to construct all control-flow paths leading to the loops and their respective path conditions. The SMT Solver Z3 is then used to derive value ranges from the path conditions for the configuration options which influence the loop constructs. We determine the significance of a configuration option's influence based on the size of its value range. We implement the proof-of-concept tool Symbolic Performance Modeling Value Generator to evaluate the approach with regard to its capabilities to analyze real-world applications and its performance. From the insights gained during the evaluation, we define limitations of the current implementation and propose improvements for future work.  +
Das Lehren neuen Wissens erfolgt beim Menschen schon von Kindesalter an durch Erklärungen in gesprochener Sprache. Bei computerbasierten Systemen hingegen wird diese Wissensvermittlung bisher durch die Definition von Konzepten und Prozeduren in einer spezifischen Programmiersprache realisiert. Für die Programmierung in natürlicher Sprache wird im Rahmen des PARSE-Projektes ein Ansatz zur Synthese von Methodendefinitionen aus natürlichsprachlichen Äußerungen vorgestellt. Dieser Ansatz ermöglicht es, natürlichsprachlich formulierte Funktionserweiterungen in ein Zielsystem zu integrieren. Um die dabei auftretende Vielfalt der Nutzerformulierungen behandeln zu können, werden verschiedene neuronale Netze trainiert. Diese Netze klassifizieren die Nutzereingabe hinsichtlich ihrer Intention und extrahieren verschiedene inhaltliche Bestandteile der beschriebenen, neuen Zielsystem-Funktionalität. Anschließend werden diese Bestandteile auf die Programmschnittstelle des Zielsystems abgebildet. Dazu werden verschiedene Sprachverarbeitungswerkzeuge sowie Kontext-Wissen und Synonyme eingesetzt. Für die Abbildung der Bestandteile auf bestehende Zielsystem-Funktionsaufrufe wird ein F1-Wert von bis zu 90.9% erreicht. Die korrekte Abbildung vollständiger Funktionen inklusive aller benötigten Parameter erzielt ein F1-Wert von bis zu 69.4%. Auch die Synthese eines aussagekräftigen Namens für diese neu definierte Funktionalität wird mit 90.4% Genauigkeit umgesetzt. Zusätzlich dazu ist das entwickelte Werkzeug in der Lage, neben den Definitionen neuen Wissens auch diktierte Anweisungsfolgen des Nutzers auf Skripte bestehend aus Zielsystem-Bibliotheksaufrufen abzubilden. Abschließend wurde festgestellt, dass in den meisten Fällen ein fehlendes Verständnis der Semantik einer Nutzereingabe zu Fehlern führt. Dieses Verständnis könnte zukünftig ausgebaut werden.  +
Das Etablieren und Erhalten der Qualitätseigenschaft Sicherheit von Software ist eine herausfordernde Aufgabe. Sie wird oft zu spät in den Entwurf von Software miteinbezogen und nach Evolutionen und damit verbundenen Kontextänderungen kann das Sicherheitsniveau leicht signifikant sinken. Dennoch werden Änderungen dieser Art nicht explizit erfasst. In der angefertigten Arbeit wird ein systematisches Vorgehen zur Erfassung von Kontextannahmen vorgeschlagen. Zusammen mit Angriffs- und Sicherheitskatalogen sollen diese eine systematische Validierung der Sicherheit eines Systems möglich machen.  +
T
Augmentation techniques can be helpful, for instance, to improve the performance of a weak predictor or to satisfy privacy constraints. Our plan is to devise and compare augmentation pipelines on mixed data.  +
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. 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. Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat, vel illum dolore eu feugiat nulla facilisis at vero eros et accumsan et iusto odio dignissim qui blandit praesent luptatum zzril delenit augue duis dolore te feugait nulla facilisi. Lorem ipsum dolor sit amet,  +
The Kconfig variability framework is used to develop highly variable software such as the Linux kernel, ZephyrOS and NuttX. Kconfig allows developers to break down their software in modules and define the dependencies between these modules, so that when a concrete configuration is created, the semantic dependencies between the selected modules are fulfilled, ensuring that the resulting software product can function. Kconfig has often been described as a tool of define software product lines (SPLs), which often occur within the context of feature-oriented programming (FOP). In this paper, we introduce methods to transform Kconfig files into feature models so that the semantics of the model defined in a Kconfig file are preserved. The resulting feature models can be viewed with FeatureIDE, which allows the further analysis of the Kconfig file, such as the detection of redundant dependencies and cyclic dependencies.  +
Active inference-Alogrithmen konstruieren ein Modell einer als black box gegebenen Software durch interaktives Testen. hW-inference ist ein solcher active inference Algorithmus, welcher insbesonder Modelle von Software lernen kann ohne sie währendessen neu zu starten. Die gelernten Modelle sind endliche Zustandsautomaten mit Eingaben und Ausgaben (Mealy Automaten). Der theoretische Teil der Arbeit behandelt das bislang ungelöste Problem, einen formalen Beweis für die Korrektheit von hW-inference zu finden. Im praktischen Teil schlagen wir heuristische Optimierungen vor, die die Anzahl der zum Lernen benötigten Eingaben verringern. Diese Heuristiken sind potentiell auch für anderen Lern- oder Testverfahren von endlichen Zustandsautomaten relevant. Endliche Zustandsautomaten sind außerdem ein verbreitetes Modell, das zum automatisiertem Testen von Anwendungen mit graphischen Benutzeroberflächen (GUIs) verwendet wird. Wir erötern, dass mit active inference-Algorithmen besonders präzise Modelle existierender GUI-Anwendugnen gelernt werden können. Insbesondere können dabei interne, nicht sichtbare Zustände der Anwendung unterschieden werden. Die Anwendung wird außerdem bereits durch den interkativen inference-Prozess gründlich getestet. Wir evaluieren diesen Ansatz in einer Fallstudie mit hW-inference.  +
Für den Menschen sind Kontexte von Anweisungen für die Programmierung in natürlicher Sprache einfach ersichtlich, für den Rechner ist dies nicht der Fall. Eine Art des Kontextwissens ist das Verständnis der Themen. Hierfür wird im Rahmen des PARSE-Projekts zur Programmierung in natürlicher Sprache ein Ansatz zur Themenextraktion vorgestellt. Dafür wird eine Auflösung von mehrdeutigen Nomen benötigt, weshalb in dieser Arbeit ebenfalls ein Werkzeug dafür entwickelt wurde. Als einen Anwendungsfall für die extrahierten Themen wird die Auswahl von passenden Ontologien angegangen. Durch diese Auswahl wird ermöglicht, statt einer großen Ontologie mehrere kleine domänenspezifische Ontologien einzusetzen. Für die Evaluation der Themenextraktion wurde eine Umfrage durchgeführt, die ergab, dass das erste extrahierte Thema in bis zu 63,6% der Fälle treffend war. In 91% der Fälle ist mindestens eines der ersten vier extrahierten Themen passend. Die Evaluation der Ontologieauswahl ergab ein F1-Maß von 90,67% und ein F2-Maß von 89,94%.  +
Purely data-driven Data Science approaches tend to underperform when applied to scientific problems, especially when there is little data available. Theory-guided Data Science (TGDS) incorporates existing problem specific domain knowledge in order to increase the performance of Data Science models. It has already proved to be successful in scientific disciplines like climate science or material research. Although there exist many TGDS methods, they are often not comparable with each other, because they were originally applied to different types of problems. Also, it is not clear how much domain knowledge they require. There currently exist no clear guidelines on how to choose the most suitable TGDS method when confronted with a concrete problem. Our work is the first one to compare multiple TGDS methods on a time series prediction task. We establish a clear guideline by evaluating the performance and required domain knowledge of each method in the context of lithium-ion battery voltage prediction. As a result, our work could serve as a starting point on how to select the right TGDS method when confronted with a concrete problem.  +
Lithium-ion batteries are driving innovation in the evolution of electromobility and renewable energy. These complex, dynamic systems require reliable and accurate monitoring through Battery Management Systems to ensure the safety and longevity of battery cells. Therefore an accurate prediction of the battery voltage is essential which is currently realized by so-called Equivalent Circuit (EC) Models. Although state-of-the-art approaches deliver good results, they are hard to train due to the high number of variables, lacking the ability to generalize, and need to make many simplifying assumptions. In contrast to theory-based models, purely data-driven approaches require large datasets and are often unable to produce physically consistent results. Theory-Guided Data Science (TGDS) aims at using scientific knowledge to improve the effectiveness of Data Science models in scientific discovery. This concept has been very successful in several domains including climate science and material research. Our work is the first one to apply TGDS to battery systems by working together closely with domain experts. We compare the performance of different TGDS approaches against each other as well as against the two baselines using only theory-based EC-Models and black-box Machine Learning models.  +
The goal of Load Disaggregation (or Non-intrusive Load Monitoring) is to infer the energy consumption of individual appliances from their aggregated consumption. This facilitates energy savings and efficient energy management, especially in the industrial sector. However, previous research showed that Load Disaggregation underperforms in the industrial setting compared to the household setting. Also, the domain knowledge available about industrial processes remains unused. The objective of this thesis was to improve load disaggregation algorithms by incorporating domain knowledge in an industrial setting. First, we identified and formalized several domain knowledge types that exist in the industry. Then, we proposed various ways to incorporate them into the Load Disaggregation algorithms, including Theory-Guided Ensembling, Theory-Guided Postprocessing, and Theory-Guided Architecture. Finally, we implemented and evaluated the proposed methods.  +
In the field of software engineering, existing plagiarism detection systems have primarily focused on detecting cases of plagiarism in code. However, other artefacts such as models also play a crucial role in the development process. Statecharts, in particular, are used to model the behavior of a system. This thesis investigates the applicability and challenges of applying token-based plagiarism detection systems to statecharts. We extend the plagiarism detector JPlag to support detecting cases of plagiarism in statecharts. Our approach is evaluated using a dataset of student assignments from a modeling course, where we generate plagiarized statecharts by adopting common obfuscation attacks. We study the effects of the token-extraction strategy, sorting techniques and the minimum token match parameter. The results suggest that an approach tailored to the specific kind of model, such as statecharts, works better than a generic solution for models.  +
Differential privacy is the current standard framework in privacy-preserving data analysis. However, it presumes that data values are not correlated. Specifically, adversaries that are aware of data correlations can use this information to infer user’s sensitive information from differential private statistics. However, data correlations are frequent. In particular, values of time series like energy consumption measurements are frequently highly temporally correlated. In this thesis, we first introduce and critically review the notation of dependent differential privacy (DDP) introduced by Liu at. al (2016), which is a differential-privacy like privacy definition for spatially correlated data. Second, we adapt this notation and the respective privacy mechanisms to temporally correlated data. We evaluate our adaption on a real-world energy consumption time series showing that our mechanism outperforms the baseline approach. We conclude this work by stating in which direction the improvements of the mechanism might be done.  +
Finding dependencies over large distances — known as teleconnections — is an important task in climate science. To find such teleconnections climate scientists usually use Pearson’s Correlation, but often ignore other available similarity measures, mostly because they are not easily comparable: their values usually have different, sometimes even inverted, ranges and distributions. This makes it difficult to interpret their results. We hypothesize that providing the climate scientists with comparable similarity measures would help them find yet uncaptured dependencies in climate. To achieve this we propose a modular framework to present, compare and combine different similarity measures for time series in the climate-related context. We test our framework on a dataset containing the horizontal component of the wind in order to find dependencies to the region around the equator and validate the results qualitatively with climate scientists.  +
In software development, software architecture plays a vital role in developing and maintaining software systems. It is communicated through artifacts such as software architecture documentation (SAD) and software architecture models (SAM). However, maintaining consistency and traceability between these artifacts can be challenging. If there are inconsistencies or missing links, it can lead to errors, misunderstandings, and increased maintenance costs. This thesis proposes an approach for recovering traceability links of software architecture relations between natural language SAD and SAM. The approach involves the use of Pre-trained Language Models (PLMs) such as BERT and ChatGPT and supports different extraction modes and prompt engineering techniques for ChatGPT, as well as different model variants and training strategies for BERT. The proposed approach is integrated with ArDoCo, a tool that detects inconsistencies and recovers trace links between software artifacts. ArDoCo is used for pre-processing the SAD text and parsing the SAM, thus facilitating the traceability link recovery process. In order to assess the performance of the framework, a gold standard of SAD and SAM created from open-source projects is utilized. The evaluation shows that the ChatGPT approach has promising results in relation extraction with a recall of 0.81 and in traceability link recovery with an F1-score of 0.83, while BERT-based models struggle due to the lack of domain-specific training data.  +
Diagramme können in der Softwareentwicklung eingesetzt werden, um verschiedene Aspekte des Projekts darzustellen und zu dokumentieren. Die Bachelorarbeit stellt einen Ansatz vor, der für Diagramme in Boxen-und-Linien-Form erkennt, ob darin ein Codemodell oder Architekturmodell abgebildet ist. Dann wird ein Graph-Matching-Algorithmus genutzt, um Nachverfolgbarkeitsverbindungen zwischen Diagramm und Modell zu finden. Sowohl die Texte als auch strukturelle Informationen aus Diagramm und Modell werden dabei genutzt. Die Verbindungen werden verwendet, um Inkonsistenzen zwischen Modell und Diagramm zu finden. Da auch die Struktur berücksichtigt wird, können zum Beispiel Änderungen von Namen als solche erkannt werden.  +
With the rise of Software-as-a-Service products, the software development landscape transformed to a more agile and data-driven environment. The amount of telemetry data, collected from the users actions, is rapidly increasing and with it the possibilities but also the challenges of using the collected data for quality improvement purposes. LogMeIn Inc. is a global company offering Software-as-a-Service solutions for remote collaboration and IT management. An example product is GoToMeeting which allows to create and join virtual meeting rooms. This Master’s Thesis presents the JoinTracer approach which enables the telemetry-data-based traceability of GoToMeeting join-flows of the GoToMeeting architecture. The approach combines new mechanics and already existing traceability techniques from different traceability communities to leverage synergies and to enable the traceability of individual join-flows. In this work, the JoinTracer approach is designed and implemented as well as evaluated regarding the functionality, performance and acceptance. The results are discussed to analyze the future development and the applicability of this approach to other contexts as well.  +
Mit der Etablierung von Smart Metern gehen verschiedene Vor- und Nachteile einher. Einerseits bieten die Smart Meter neue Möglichkeiten Energieverbräuche akkurater vorherzusagen (Forecasting) und sorgen damit für eine bessere Planbarkeit des Smart Grids. Andererseits können aus Energieverbrauchsdaten viele private Informationen extrahiert werden, was neue potentielle Angriffsvektoren auf die Privatheit der Endverbraucher impliziert. Der Schutz der Privatheit wird in der Literatur durch verschiedene Perturbations-Methoden umgesetzt. Da Pertubation die Daten verändert, sorgt dies jedoch für weniger akkurate Forecasts. Daher gilt es ein Tradeoff zu finden. In dieser Arbeit werden verschiedene gegebene Techniken zur Perturbation hinsichtlich ihrer Privacy (Schutz der Privatheit) und Utility (Akkuratheit der Forecasts) experimentell miteinander verglichen. Hierzu werden verschiedene Datensätze, Forecasting-Algorithmen und Metriken zur Bewertung von Privacy und Utility herangezogen. Die Arbeit kommt zum Schluss, dass die so genannte Denoise- und WeakPeak-Technik zum Einstellen eines Tradeoffs zwischen Privacy und Utility besonders geeignet ist.  +
Die natürliche Sprache befindet sich in ständigem Wandel. Mittels Semantic Change Analysis kann eine Änderung der Bedeutung von Wörtern zwischen Zeitpunkten festgestellt werden. Herkömmliche Semantic Change Detection Systeme arbeiten nur auf statischen Korpora. Durch Social Media wird es jedoch ermöglicht Sprache in Echtzeit zu analysieren. Bisherige Ansätze sind jedoch nicht dafür geeignet auf einem Textstrom zu arbeiten. In dieser Masterarbeit soll deshalb ein Echtzeitsystem zur Verarbeitung von Textströmen entworfen werden, welches frühzeitig die Änderung einer Wortbedeutung aufzeigt. Grundlage hierfür ist die Nutzung und Anpassung geeigneter Einbettung von Wörtern, die zum einen gute Vektoren liefern und zum anderen trotz Begrenzung der Laufzeit und des Speichers den Textstrom gut repräsentieren. Des Weiteren muss das System einen geeigneten Change Detection Algorithmus umfassen. Zur Evaluation soll ein synthetischer Korpus generiert werden, um die verschiedenen Methoden vergleichen zu können. Anschließend soll eine explorative Untersuchung auf Echtweltdaten durchgeführt werden.  +
Philipp Weinmann will present his plan for his Bachelor thesis with the title: Tuning of Explainable Artificial Intelligence (XAI) tools in the field of text analysis: He will present a global introduction to explainers for Artificial Intelligence in the context of NLP. We will then explore in details one of these tools: Shap, a perturbation based local explainer and talk about evaluating shap-explanations.  +
The goal of this bachelor thesis was to analyse classification results using a 2017 published method called shap. Explaining how an artificial neural network makes a decision is an interdisciplinary research subject combining computer science, math, psychology and philosophy. We analysed these explanations from a psychological standpoint and after presenting our findings we will propose a method to improve the interpretability of text explanations using text-hierarchies, without loosing much/any accuracy. Secondary, the goal was to test out a framework developed to analyse a multitude of explanation methods. This Framework will be presented next to our findings and how to use it to create your own analysis. This Bachelor thesis is addressed at people familiar with artificial neural networks and other machine learning methods.  +
U
Es ist essentiell, dass Softwaresysteme die Vertraulichkeit von Informationen gewährleisten. Das Palladio Component Model (PCM) bietet bereits Werkzeuge zur Beschreibung von Softwarearchitekturen mit dem Ziel der Vorhersage von Qualitätseigenschaften. Es bietet allerdings keine unmittelbare Unterstützung zur Untersuchung der Vertraulichkeit von Dienstbeschreibungen auf Architekturebene. In dieser Arbeit wird eine Analysetechnik zur Überprüfung einer im PCM modellierten Architektur auf Vertraulichkeitseigenschaften entwickelt. Diese Analyse beruht auf der Untersuchung der im PCM erstellen Dienstbeschreibungen. In der Konzeption wird eine vorhandene Analysetechnik als Grundlage herangezogen und für die Verwendung mit dem PCM adaptiert. Dabei wird die Fragestellung nach der Vertraulichkeit durch Modelltransformation auf eine durch Model Checking überprüfbare Eigenschaft reduziert. Die Genauigkeit und Performance des Ansatzes werden anhand einer Fallstudie evaluiert. Durch die entwickelte Analysetechnik wird es Softwarearchitekten ermöglicht, frühzeitig auf Architekturebene eine Vertraulichkeitsanalyse auf komponentenbasierten Modellen durchzuführen.  +
Wenn man Softwaresysteme auf Verletzungen der Vertraulichkeit untersuchen will, führen Ungewissheiten zu falschen Aussagen über die Architektur. Vertraulichkeitsaussagen können zur Entwurfszeit kaum getroffen werden, ohne diese Ungewissheiten zu behandeln. Wir entwickeln einen Kombinationsalgorithmus, der Informationen über die Ungewissheiten bei der Analyse der Architekturszenarien berücksichtigt und daraus eine Aussage über die Vertraulichkeit des Systems treffen kann. Wir evaluieren, ob es möglich ist, ein System mit zusätzlichen Informationen nicht-binär zu bewerten, wie genau der Kombinationsalgorithmus ist und ob die zusätzlichen Informationen so minimal bleiben, dass ein Softwarearchitekt den Kombinationsalgorithmus überhaupt verwenden kann.  +
In diesem Vortrag geht es um den Schutz der Privatsphäre im Kontext von Smart Meter Daten. Im Rahmen einer Bachelorthesis werden Ansätze zur Verschleierung von Smart Meter Daten mittels bekannten Algorithmen zur Disaggregation evaluiert. Disaggregation bezeichnet dabei das extrahieren von Geräteverwendungen aus aggregierten Smart Meter Daten.  +
Derzeit ist es nicht möglich, Modellinstanzen in eine geeignete Form zu (de)serialisieren, dass diese zwischen Java und JavaScript korrekt ausgetauscht werden können. Außerdem wurde noch nicht untersucht, welche Anforderungen es an die Werkzeuge der Modell-getriebenen Softwareentwicklung gibt und welche Werkzeuge sich nach diesen Anforderungen eignen und welche Lücken es gibt. Auch wurde noch nicht untersucht, welches Datenaustauschformat sich für den Austausch von Modellinstanzen bei der Problemstellung eignet, oder wie Modellinstanzen zwischen Java und JavaScript auf Korrektheit validiert und die Äquivalenz bei ausgetauschten Modellinstanzen zwischen den Modellierungswerkzeugen auf Seite von Java und JavaScript geprüft werden kann. Das Ziel dieser Arbeit ist es deshalb, die Werkzeuge und Datenaustauschformate zu untersuchen, geeignete Modell-getriebene Werkzeuge auf Seite von Java und JavaScript auszuwählen und dabei ein ein geeignetes Datenaustauschformat für den Austausch von Modellinstanzen zu verwenden, um eine Modell-getriebene Brücke zwischen den beiden Plattformen Java und Javascript herzustellen. Dazu werden Modellierungswerkzeuge auf Seite von Java und JavaScript sowie Datenaustauschformate nach objektiven Kriterien hin bewertet und auf Grund dieser Erkenntnisse für die Modell-getriebene Brücke zwischen Java und JavaScript ausgewählt. Auch wird die Modell-getriebene Brücke konzeptioniert und konkret auf den Plattformen Java und JavaScript implementiert. Diese Brücke wird dabei durch geeignete Tests und Experimente validiert. Insbesondere wird dabei die Korrektheit und Darstellung der Konzepte validiert. Außerdem wird dabei gezeigt, dass Modellinstanzen nahezu fehlerfrei und ohne Unterschiede (de)serialisiert und ausgetauscht werden können. Zusätzlich wird die Zeit gemessen, welche die Modellierungswerkzeuge zum Serialisieren und Deserialisieren von Modellinstanzen einer bestimmten Größe und Komplexität benötigen.  +
In der Softwareentwicklung wird häufig das Prinzip verwendet, ein großes System aus kleineren Teilsystemen zusammenzusetzen. Dies erfordert eine Kommunikation zwischen den Teilsystemen, um Informationen auszutauschen. Allerdings kann dabei der Informationsfluss durch das Gesamtsystem unsicher werden und somit die Vertraulichkeit, eine der wichtigsten Sicherheitseigenschaften eines Systems, verletzt werden. Um sicheren Informationsfluss zu erzielen, müssen sogenannte Informationsflusseigenschaften erfüllt werden. Aus der Literatur ist bekannt, dass Informationsflusseigenschaften bei der Komposition von sicheren Systemen verletzt werden können. Das bedeutet, wenn zwei sichere Systeme zusammengesetzt werden, besteht die Möglichkeit, dass das Gesamtsystem unsicher wird. Hierbei spielt die Art der Kommunikation zwischen den Teilsystemen eine entscheidende Rolle. Die Literatur liefert Ergebnisse, die zeigen, dass synchrone Kommunikation die Zusammensetzbarkeit verletzt, während asynchrone Kommunikation die Zusammensetzbarkeit gewährleistet. Allerdings existieren in der Literatur keine konkreten Ergebnisse darüber, wie sich Abstufungen von synchroner zu asynchroner Kommunikation auf die Zusammensetzbarkeit auswirken. In dieser Arbeit wird untersucht, wie sich verschiedene Kommunikationsformen zwi- schen synchroner und asynchroner Kommunikation auf die Zusammensetzbarkeit von Informationsflusseigenschaften auswirken. Hierfür werden generische Konzepte zur Modellierung asynchroner Kommunikationsformen entwickelt. Die Untersuchung erfolgt mithilfe von Timed Automata. Es wird ein Beispiel modelliert, in dem zwei sichere Systeme, die als Timed Automata modelliert sind, zusammengesetzt werden und unter synchroner Kommunikation ein unsicheres Gesamtsystem bilden. Anschließend wird die synchrone Kommunikation mithilfe der entwickelten Modellierungskonzepte durch asynchrone Kommunikationsformen ersetzt und für jede Form wird die Sicherheit des zusammengesetzten Systems überprüft. Zur Modellierung und Überprüfung des Gesamtsystems hinsichtlich des Erhalts von Informationsflusseigenschaften wird in dieser Arbeit das Werkzeug UPPAAL verwendet. Neben den Modellierungskonzepten liefert diese Arbeit konkrete Ergebnisse über die Auswirkungen der Kommunikationsformen auf die Zusammensetzbarkeit, was einen weiteren Beitrag darstellt. Basierend auf diesen Ergebnissen werden die Eigenschaften einer Kommunikationsform abgeleitet, die für die Zusammensetzbarkeit erforderlich sind, sowie Eigenschaften, die sich negativ auswirken. Im Hinblick auf die abgeleiteten Eigenschaften wird für die prozedurale Kommunikation diskutiert, wie diese sich auf die Zusammensetzbarkeit auswirkt. Dafür wird sie in die synchrone und asynchrone Kommunikation eingeordnet.  
Diese Arbeit befasst sich mit den Themen Realisierung des Privacy-Aspekts bei Smart Meter Daten durch Pertubation, sowie der Güte der Forecasts auf ebendiesen Daten. Genaue Vorhersagen über zukünftigen Stromverbrauch (Forecast) gelten als eine der Errungenschaft durch die Etablierung von Smart Metern. Installiert in Privathaushalten stellen Smart Meter aber auch ein neues Einfallstor in die Privatsphäre des Verbrauchers dar. Die Lösung ist es, die Daten vor der weitergehenden Verarbeitung durch Pertubation zu verschleiern. Mit dem Gewinn an Privatsphäre verlieren die Messdaten an Güte. Die Bachelorarbeit befasst sich mit diesen gegensätzlichen Eigenschaften der Messdaten. Zentrale Fragestellung ist, wie weit man die Daten verschleiern kann und trotzdem gute Forecast-Ergebnisse bekommt.  +
Diese Arbeit wird sich mit der Erklärbarkeit von Sentimentanalyse befassen. Sentimentanalyse ist ein aktuelles Forschungsthema, das sich mit der automatisierten Auswertung der Stimmung von Texten befasst. Dabei klassifiziert ein Entscheider diese als positiv oder negativ. Jedoch sind die meisten hier angewandten Verfahren des maschinellen Lernens Black Boxes, also für Menschen nicht unmittelbar nachvollziehbar. Die Arbeit hat zum Ziel, verschiedene Verfahren der Sentimentanalyse auf Erklärbarkeit zu untersuchen. Hierbei werden eine Datenbank aus Filmrezensionen sowie Word Embeddings auf Basis des word2vec-Modells verwendet.  +
Die Neurorobotik beschäftigt sich damit, Roboter unter Verwendung von künstlichen neuronalen Netzen zu trainieren. Als effektiv hat sich in den letzten Jahren Verfahren auf der Grundlage des Reinforcement Learning (RL) herausgestellt, welche allerdings gradientenbasiert sind. Zur Anpassung der Gewichte des Netzes wird dabei der Backpropagation-Algorithmus angewendet, der bei der Ausführung durch die Schichten des Netzes iteriert und die Gewichte anpasst. Dies limitiert RL-Algorithmen in ihrer Skalierbarkeit. Ein Ansatz, der komplett auf Backpropagation verzichtet, sind die evolutionären Strategien (ES). Basierend auf dem biologischen Vorbild der Evolution werden über Generationen hinweg die Gewichtsvektoren optimiert, indem pro Generation mehrere Veränderungen stattfinden und deren Güte ausgewertet wird. Eine solche ES haben Mitarbeiter von OpenAI um Salimans, 2017 in einem Artikel vorgestellt. Diese wurde auf Robotersimulationen getestet, bei denen standardmäßig RL-Algorithmen eingesetzt werden. Es wurde festgestellt, dass ES mit State-of-the-Art RL konkurrieren können. Des Weiteren sind ES hoch parallelisierbar und können daher beispielsweise einen humanoiden Roboter deutlich schneller trainieren als der vergleichbare RL-Algorithmen. Die vorliegende Arbeit untersucht die ES anhand von zwei Umgebungen der Roboschool. Dies ist eine Gruppe von Robotersimulationen, die in dem Artikel nicht verwendet wurden. Dazu wird auf der Implementation, die zusammen mit dem Artikel veröffentlicht wurde, aufgebaut und eine eigene Implementation angefertigt. Um die ES auf der Roboschool zu evaluieren, werden Ergebnisse von RL-Algorithmen aus der Literatur zitiert und diese zum Vergleich herangezogen. Die Evaluation zeigt, dass die Robotersimulationen durch das Training mit ES das Laufen lernen. Außerdem kann durch das Hinzufügen von Rechenleistung die Berechnungszeit verringert werden.  +
Am Campus Nord messen Smart Meter in einer Forschungsfabrik alle 5 Sekunden den Stromverbrauch und weitere elektrische Messgrößen wie z.B. die elektrische Spannung. In meiner Arbeit geht es darum, ein interaktives System zur Erkennung von Auffälligkeiten in den daraus resultierenden Zeitreihen zu erstellen. Zudem soll ein Fachexperte zu einem Teil der Datenpunkte Feedback geben und so die Verwendung von semiüberwachten Lernverfahren ermöglichen. Allerdings sind aktuelle Lernverfahren, die den Nutzer in die Ausreißererkennung einbinden, nicht für Zeitreihen ausgelegt. Das Ziel der Arbeit ist die Anpassung von bestehenden interaktiven Lernverfahren auf Zeitreihen und die anschließende Evaluierung dieser Verfahren mit Fachexperten. Im Rahmen dieser Arbeit werden dafür zunächst die Zeitreihen auf statische Features abgebildet. Im Anschluss werden anhand eines Prototypen verschiedene interaktive Lernstrategien mit einem Nutzer evaluiert.  +
Am Campus Nord messen Smart Meter in einer Forschungsfabrik alle 5 Sekunden den Stromverbrauch und weitere elektrische Messgrößen wie z.B. die elektrische Spannung. In meiner Arbeit geht es darum, ein interaktives System zur Erkennung von Auffälligkeiten in den daraus resultierenden Zeitreihen zu erstellen. Zudem soll ein Fachexperte zu einem Teil der Datenpunkte Feedback geben und so die Verwendung von semiüberwachten Lernverfahren ermöglichen. Allerdings sind aktuelle Lernverfahren, die den Nutzer in die Ausreißererkennung einbinden, nicht für Zeitreihen ausgelegt. In der Arbeit werden die Zeitreihen auf statische Features abgebildet, um die Lernverfahren aus der Literatur anwenden zu können. Danach müssen die Features visualisiert werden, damit der Nutzer Feedback geben kann. Es wurde evaluiert inwiefern ein Fachexperte erkennen kann, ob es sich bei Zeitreihen um Ausreißer handelt und wie er bei der Entscheidung unterstützt werden kann.  +
QUPER ist eine Methode um bei einer Release-Plannung, bei der eine bestimmte Qualitätsanforderung zentral ist, das Fällen von Entscheidungen einfacher zu machen. Die Methode ist genau dann äußerst hilfreich, wenn das Softwareprojekt mehrere konkurrierende Produkte auf dem Markt hat und eine bestimmte Qualitätsanforderung den Wert der Software für den Kunden stark beeinflusst. QUPER benötigt allerdings Schätzungen des Entwicklungsteams und ist somit stark von der Erfahrung dessen abhängig. Das Palladio Component Model in Kombination mit PerOpteryx können dabei helfen, diese groben Schätzungen durch genauere Information für ein kommendes Release zu ersetzen: Mit einem gegebenen Palladio-Modell und einer potentiellen Verbesserung für die Software kann uns PerOpteryx die genaue Verbesserung der Qualitätsanforderung geben. In dieser Arbeit werden zuerst die QUPER-Methode allein und dann QUPER mit Hilfe von PerOpteryx auf zwei exemplarische Softwareprojekte angewandt und die Ergebnisse verglichen.  +
Begrenzte Trainingsdaten stellen eine Herausforderung für Traceability Link Recovery (TLR) und Inconsistency Detection (ID) dar. Große Sprachmodelle (LLMs) können dieses Problem lösen, da sie oft kein spezifisches Training benötigen. In dieser Arbeit erforschen wir verschiedene Techniken und Methoden für den Einsatz von GPT-4 für TLR und ID. Im Vergleich mit State-of-the-Art-Ansätzen erzielen unsere Ansätze beim Unmentioned-Model-Element-ID ähnliche Leistung. In der Disziplin der Missing-Model-Element ID konnten wir ihre Leistung jedoch nicht erreichen. Beim TLR erzielt Chain-of-Thought-Prompting die besten Ergebnisse, schlägt jedoch auch schlechter ab als State-of-the-Art. Die Ergebnisse sind jedoch vielversprechend und es ist anzunehmen, dass fortschrittlichere LLMs und Techniken zu Verbesserungen führen.  +
V
Diese Arbeit verfolgt das Ziel, durch das Erkennen von Beziehungen zwischen Klassen und Objekten, einen Benutzer des Systems in die Lage zu versetzen, diese für das Beantworten von Fragestellungen auszunutzen. Als Basis hierfür dient das Dialogsystem JustLingo, welches als Erweiterung von Excel konzipiert ist. Im Rahmen dieser Arbeit werden zwei Schritte durchgeführt. In einem ersten Schritt wird JustLingo dazu befähigt, Beschreibungen von Beziehungen zu interpretieren. Dadurch wird es möglich, Modelle zu erzeugen und mit diesen zu arbeiten. Der zweite Schritt ist dann, das Ermöglichen der Verarbeitung von Fragen, welche anhand der generierten Modelle gezielt beantwortet werden können. Neben diesen zwei Aspekten wird JustLingo in die Lage versetzt, Entwurfsmuster aus der Softwaretechnik bzw. ihre Struktur zu erkennen und innerhalb eines Modells nach diesen zu suchen. In einem letzten Schritt wird die erschaffene Erweiterung auf zwei Aspekte, dem der Erkennung und dem der Verwendung hin, evaluiert. Bei dem Erkennen von Beziehungen wurden bei 13 Teilnehmern und 15 Elementen (Klassen und Beziehungen) im Schnitt 94,9% korrekt in ein Modell eingefügt. Die 13 Teilnehmer konnten von 10 Fragen, wobei sie eine der Fragen selbst definieren konnten, durchschnittlich 86,8% beantworten.  +
Diese Arbeit untersucht unterschiedliche Ansätze zum Detektieren und Verbessern von Problemen im Code, um die Codequalität zu steigern. Die meisten verwandten Ansätze beschreiben die Vorverarbeitung des Codes, um eine passende Repräsentation mit geeignetem Vokabular zu erhalten, nur lückenhaft. Des Weiteren werden selten Gründe für bestimmte Vorverarbeitungsschritte angeführt. Zusätzlich bleibt es unklar, wie neuronale Netzarchitekturen mit verschiedenen Repräsentationen abschneiden. Diese Arbeit soll diese Wissenslücken schließen. Basierend auf den verschiedenen Codekomponenten, werden verschiedene Kategorien für die Modellierung des Vokabulars erstellt. Die Auswirkungen jedes Modellierungschrittes werden evaluiert. Des Weiteren werden verschiedene Coderepräsentationen darauf getestet, in wie weit neuronale Netze Fehler in diesen Code detektieren können. Die "Sate IV Juliet Test Suite" wird als Datensatz zur Evaluation verwendet da dieser gut gepflegt und deutlich beschriftet ist. Des Weiteren kann er auf viele verschiedene Arten angewandt und vorverarbeitet werden. Die neuronalen Netze werden auf ihre Fertigkeit zur binären und Mehrklassen-Klassifizierung getestet. Diese Art der Evaluierung konnte in keiner verwandten Arbeit festgestellt werden. Zusätzlich werden die verschiedenen AST und sequenziellen Code-Repräsentationen mit den jeweiligen neuronalen Netzarchitekturen evaluiert. Die unterschiedlichen Schritte zur Modellierung des Vokabulars, werden ebenfalls auf diese beiden Code-Repräsentationen angewendet. Abschließend wird eine geeignete Repräsentation, Netzarchitektur und Modellierung des Vokabulars empfohlen.  +
Anforderungsrückverfolgbarkeit, also das Auffinden von Umsetzungen oder Beschreibungen von Anforderungen in anderen Software-Artefakten, spielt eine wichtige Rolle bei der Pflege und Weiterentwicklung großer Softwaresysteme. So können automatisierte Anforderungsrückverfolgungsverfahren beispielsweise dabei helfen Implementierungen von Anforderungen zu finden. Bei diesen Verfahren können allerdings Probleme auftreten, wenn Anforderung und Quelltextstelle viele unterschiedliche Worte enthalten. In dieser Arbeit wird untersucht, ob die Performanz des automatisierten Anforderungsrückverfolgungsverfahrens FTLR durch Einbindung von hinter den Begriffen der Anforderungen stehenden Konzepten und Themen zu Anforderungen verbessert werden kann. Hierfür wurden mehrere Verfahren zur Konzeptanreicherung sowie verschiedene Einbindungen der gefundenen Konzepte in FTLR entworfen und analysiert. Hierzu wurden Konzepte durch den Einsatz von Informationen aus Wissensgraphen und Verfahren zur Themenmodellierung/Themenbeschriftung angereicht. Durch die Einbindung der gefundenen Konzepte verbesserte sich der MAP-Wert um bis zu 4 % und der F1-Wert um bis zu 3,8 %.  +
In den vergangenen Jahren sind vermehrt Anwendungen von Neuronalen Netzen (NN) entstanden. Ein aktuelles Problem ist der beachtliche Ressourcenbedarf an Speicher, Rechenkapazität oder Energie, den nicht nur die Trainingsphasen, sondern auch die Anwendungsphasen von neuronalen Netzen erfordern. Aus diesem Grund ist eine erfolgreiche Verbreitung von neuronalen Netzen auf ressourcenbeschränkten Plattformen mit geringer Leistung momentan noch mit zahlreichen Herausforderungen verbunden. Die vorliegende Arbeit untersucht diese Problematik und stellt Techniken vor, wie vollständig trainierte neuronale Netze möglichst unter Erhaltung der Genauigkeit in der Anzahl ihrer Neuronen und Verbindungen reduziert werden können. Mithilfe von Experimenten in TensorFlow und Keras wird gezeigt, welche dieser Verfahren sich im Kontext von verschiedenen Praxisbeispielen eignen. Weiterhin beschreibt die Arbeit einen neuen Ansatz SNARE (Score-based Neural Architecture REduction) mit dem Ziel, eine Reduktion nicht nur auf einzelnen Schichten, sondern auf gesamten Netzwerken automatisiert durchzuführen. Die Tool-Implementierung von SNARE analysiert dazu zunächst die Struktur von trainierten Keras NNs mit TensorFlow Backend. Unter der Berücksichtigung von verschiedenen Kriterien wie dem FLOP-Beitrag werden anschließend iterativ Schichten ausgewählt, Reduktionsoperationen angewendet und durch erneutes Trainieren entstandene Fehler kompensiert. Ergebnisse zeigen, dass SNARE auf einer LeNet5-Architektur bei einem Genauigkeitsverlust von 0,39% eine Parameterreduktion um den Faktor 35 erreicht. Zusätzlich erzielte SNARE auf einem NN zur Erkennung von menschlichen Bewegungen aus mobilen Sensordaten eine Reduktionsrate von 245 bei gleicher Genauigkeit.  +
Eine Möglichkeit zur Wahrung der Vertraulichkeit in der Software-Entwicklung ist die frühzeitige Erkennung von potentiellen Schwachstellen und einer darauf folgenden Eindämmung von möglichen Angriffspfaden. Durch Analysen anhand von Software-Architektur Modellen können frühzeitig Angriffspunkte gefunden und bereits vor der Implementierung behoben werden. Dadurch verbessert sich nicht nur die Wahrung von Vertraulichkeit, sondern erhöht auch die Qualität der Software und verhindert kostenintensive Nachbesserungen in späteren Phasen. Im Rahmen dieser Arbeit wird eine Erweiterung hinsichtlich der Vertraulichkeit des Palladio-Komponenten-Modells (PCM) Angreifermodell verfeinert, welches den Umgang mit zusammengesetzten Komponenten ermöglicht, Randfälle der attributbasierten Zugriffskontrolle (ABAC) betrachtet und die Modellierung und Analyse weiterer Aspekte der Mitigation erlaubt. Die Evaluation erfolgte mithilfe einer dafür angepassten Fallstudie, welche eine mobile Anwendung zum Buchen von Flügen modelliert. Das Ergebnis der Evaluation ergab ein zufriedenstellendes F1-Maß.  +
In unserer vernetzten und digitalisierten Welt findet ein zunehmender Austausch von Daten statt. Um die persönlichen Daten von Nutzern zu schützen, werden rechtliche Vorgaben in Form von obligatorischen Richtlinien für den Datenaustausch beschlossen. Diese sind in natürlicher Sprache verfasst und werden oft erst zu späten Entwurfs-Phasen der Softwareentwicklung berücksichtigt. Der fehlende Einbezug von Richtlinien, schon während der Entwurfs-Phase, kann zu unberücksichtigten Lücken der Vertraulichkeit führen. Diese müssen dann oft unter höheren Aufwänden in späteren Anpassungen behoben werden. Eine Verfeinerung der Richtlinien, die bereits zur Entwurfszeit von Software ansetzt, kann einem Softwarearchitekten frühzeitig Hinweise auf kritische Eigenschaften oder Verletzungen der Software liefern und hilft diese zu vermeiden. Das Ziel dieser Arbeit ist es, einen Verfeinerungsansatz trotz Ungewissheiten durch mangelnde Informationen zu entwickeln. Die Erkennung und Einordnung von Ungewissheiten erfolgt basierend auf einer Taxonomie von Ungewissheit. Der Verfeinerungsprozess analysiert verschiedene Abstraktionsebenen einer Softwarearchitektur, angefangen bei der Systemebene, über einzelne Komponenten hin zu Aufrufen von Diensten und deren Schnittstellen. Mögliche Verletzungen der eingegebenen Richtlinien werden durch die Erstellung eines Zugriffskontrollgraphen, der Dekomposition des Graphen und der Identifikation einzelner Serviceaufrufe festgestellt. Die identifizierten, kritischen Elemente der Softwarearchitektur werden ausgegeben.  +
Informationen über logische Verbindungen zwischen Anforderungen und ihrer Umsetzung in Quelltext sind nützlich für viele Aufgabenstellungen der Softwareentwicklung. Sie können beispielsweise die Wartung von Software bei Anforderungs-Änderungen erleichtern. Diese Rückverfolgbarkeitsverbindungen können im Zuge einer Rückverfolgbarkeitsanalyse ermittelt werden. Verfahren, wie FTLR, führen eine automatisierte Rückverfolgbarkeitsanalyse durch. FTLR erkennt Rückverfolgbarkeitsverbindungen mithilfe eines Vergleichs von Repräsentationen von Anforderungen und Quelltext. Bislang setzt FTLR das Sprachmodell fastText zur Repräsentation von Anforderungen und Quelltext ein. Der Ansatz fastText besitzt jedoch Schwachstellen. Das Sprachmodell ist nicht in der Lage verschiedene Bedeutungen eines Wortes zu repräsentieren. Außerdem wurde es nicht auf Quelltext vortrainiert. In dieser Arbeit wurde untersucht, ob sich alternative Sprachmodelle ohne diese Schwachstellen besser zum Einsatz in FTLR eigenen als fastText. In einem Experiment auf fünf Vergleichsdatensätzen für die Rückverfolgbarkeitsanalyse wurden die Ergebnisse der beiden alternativen Sprachmodelle UniXcoder und Wikipedia2Vec mit fastText verglichen. Das Sprachmodell UniXcoder eignet sich auf den Vergleichsdatensätzen iTrust und LibEST besser als fastText. Das Sprachmodell Wikipedia2Vec eignet sich auf keinem der eingesetzten Vergleichsdatensätze besser als fastText. Im Durchschnitt über alle verwendeten Testdatensätze eignet sich fastText besser für den Einsatz in FTLR als UniXcoder und Wikipedia2Vec.  +
Die Nutzung von Metamodellen ist durch die modellgetriebene Software-Entwicklung (MDSD) geprägt. Weiterhin ist das Metamodell ein zentrales Entwicklungselement in allen aktuellen MDSD-Projekten. Das Erweitern von Metamodellen wird somit zwangsläufig ein zentrales Thema bei der Weiterentwicklung. Hierbei wird immer mehr darauf geachtet, die Erweiterungen so zu implementieren, dass man sie separieren kann. Da dieser Trend immer stärker zunimmt, keine wissenschaftliche Arbeit gibt, welche die derzeit existierenden Erweiterungsmethoden in EMOF untersucht und bewertet, wird das Thema in dieser Bachelorthesis aufgegriffen. Ziel der Bachelorthesis ist es, eine aktuelle Übersicht über die existierenden Erweiterungsmöglichkeiten zu erstellen, sowie diese zu untersuchen und zu bewerten.  +
Diese Arbeit dient der Ermittlung der Vergleichbarkeit und des Funktionsumfanges verfügbarer Reverse-Engineering-Ansätze für Software-Architekturen. Ziel der Arbeit war insbesondere die Feststellung der Eignung der Ansätze für die Rückgewinnung Komponenten- und Microservice-basierter Software-Architekturen. Hierfür wurden acht Ansätze auf 22 Fallstudien angewandt und die Ergebnisse zur Identifikation von Stärken, Problemen und Einschränkungen der Ansätze genutzt. Es konnte gezeigt werden, dass ein Vergleich der Ansätze aufgrund der Heterogenität der Ergebnisse nicht durchführbar ist. Eine Erkennung der Abhängigkeiten von Microservices sowie eine eindeutige Identifikation bestehender Komponenten und ihrer Schnittstellen war mithilfe der Ansätze nicht möglich.  +
Security in software systems becomes more important as systems becomes more complex and connected. Therefore, it is desirable to to conduct security analysis on an architectural level. A possible approach in this direction are data-based privacy analyses. Such approaches are evaluated on case studies. Most exemplary systems for case studies are developed specially for the approach under investigation. Therefore, it is not that simple to find a fitting a case study. The thesis introduces a method to create usable case studies for data-based privacy analyses. The method is applied to the Community Component Modeling Example (CoCoME). The evaluation is based on a GQM plan and shows that the method is applicable. Also it is shown that the created case study is able to check if illegal information flow is present in CoCoME. Additionally, it is shown that the provided meta model extension is able to express the case study.  +
Dokumentation von Softwarearchitekturen ist wichtig für die Qualität und Langlebigkeit von Software. Im Verlauf des Lebenszyklus einer Software ändert sich die Architektur meist, was eine Quelle für Inkonsistenzen gegenüber die Architektur beschreibenden Dokumentationstexten sein kann. Um diese automatisiert finden und beheben oder ihnen bestenfalls sogar vorbeugen zu können, bedarf es der Verknüpfung von Text- und Modellentitäten. Dieses Problem wurde in der vorzustellenden Arbeit angegangen. Dabei wurden Wortvektoren verwendet, um Ähnlichkeiten zwischen Wörtern finden zu können.  +
Inkonsistenzen bei der Benennung von Textelementen einer Softwarearchitektur-Dokumentation (SAD) und Modellelementen eines Softwarearchitektur-Modells (SAM) führen zu Problemen bei der Rückverfolgbarkeit. Statt einem direkten Vergleich zwischen den Bezeichnern der Textelemente und den Namen der Modellelemente wird deshalb ein semantischer Vergleich auf Basis von Synsets durchgeführt, die durch die Auflösung sprachlicher Mehrdeutigkeiten (WSD, Word Sense Disambiguation) ermittelt werden. Mit einem WSD-Algorithmus werden die Bedeutungen der Textelemente im Kontext der SAD in Form von Synsets bestimmt. Über diese Synsets werden Synonyme der Textelemente verwendet, um eine Verknüpfung mit den Modellelementen herzustellen. Dadurch ist es möglich, Textelemente zu Modellelementen zuzuordnen, die semantisch dasselbe Element abbilden, aber unterschiedlich benannt sind.  +
Im Rahmen der Bachelorarbeit wird eine prototypische Implementation für die symmetrische, asymmetrische und Attribute-basierte Ver -und Entschlüsselung von Modelländerungen innerhalb Vitruvius vorgestellt. Vor -und Nachteile, Skalierbarkeit und Performanz dieser Verfahren werden besprochen.  +
Diese Arbeit betrachtet das Problem von unvollständigen Aussagen in natürlicher Sprache. Solche Aussagen enthalten nicht explizit alle Informationen, die für die vollständige Umsetzung einer Handlung benötigt werden. Menschen fällt es leicht, aus solchen Aussagen wieder einen Sinn zu extrahieren, indem sie sich auf ihr gelerntes Wissen beziehen. Für Sprachverarbeitungssysteme ist dieser Schritt jedoch nicht so einfach nachvollziehbar. Um diesen Prozess greifbar zu machen wird ein Ansatz entwickelt, der solchen Systemen menschliches, implizites, Wissen verfügbar macht. Damit wird eine durch Wissen begründete Entscheidung über die Vollständigkeit von Aussagen gemacht. Im Weiteren werden durch den Ansatz Kandidaten generiert, welche für die fehlenden Rollen infrage kommen könnten. Diese werden mithilfe von Wissen über die Welt bezüglich ihrer Eignung für die Rolle bewertet und die Aussage somit wieder vervollständigt. Um die Funktion des implementierten PARSE-Agenten zu prüfen wurde eine Evaluation der Ergebnisse im Vergleich zu einer händisch erstellten Lösung durchgeführt. Fehlende Rollen konnten mit einer Präzision von 51% bestimmt werden und eine Vervollständigung war in 25% (Im Falle des Subjektes sogar 100%) der Fälle korrekt möglich.  +
Ziel der vorliegenden Arbeit ist die Konzernsteuerquoten (effecktive tax rate, oder ETR) vorherzusagen durch die Prognosemodelle in Data-Mining. Durch die Analyse und Vergleich von ETR kann die Wettbewerbsfähigkeit verbessert werden und spielt somit eine große Rolle in der Konzernplanung in kommenden Jahren. Voraussetzung ist eine verlässliche Grundlage von Beispieldaten aus der realen Steuerungskennzahl (key performance indicator, oder KPI) eines Jahresabschlussberichtes, um ein erfolgreiches Training der Modelle zu ermöglichen. Eine solche Datengrundlage bietet die SEC-Edgar-Datenbank. Ab dem Jahr 1994 uber die Edgar-Datenbank (Electronic Data Gathering, Analysis, and Retrieval) sind alle Dokumente zugänglich. Eine SEC-Filling ist ein formales und standardisiertes Dokument, welches amerikanische Unternehmen seit dem Securities Exchange Act von 1934 bei der SEC einreichen mussen. Laut dem Steuerexperte werden die KPIs durch Python-Skript in der uber mehrerer Jahre (2012-2016) hinweg extrahiert. Wegen der fehlenden Kenntnisse von der Hochladen des Unternehmen sind die 10-K Reporte sehr dunn (mehr als 60% Daten sind fehlende). Zufällige dunne Besetzung (random sparsity) entsteht bei nicht regelmäßiger bzw. schwer vorhersehbarer Belegung. Ein bewährter Ansatz fur die fehlende Werte ist Online Spärlichkeit Lineare Regression (OSLR). OSLR stellt einerseits eine Art der Ausfullen der fehlenden Werte dar und dienen andererseits der Beseitigung der Datenqualitätsmängel. Die Untersuchung der Anwendbarkeit Multipler lineare Regression, der Zeitreihenanalyse (ARIMA) und kunstlicher neuronaler Netze (KNN) im Bereich der Finanzberichterstattung. Es wird dabei die ETR berucksichtigt. Danach werden diese Methode aus den Bereich Data-Mining verwendet, um die ETR aus Steuerungsgröße vorherzusagen.  +
Das Praktikum findet im Bereich Softwareentwicklung statt. Der Fokus liegt in der Entwicklung von Blockchainanwendungen und dem damit verbundenen Wissensaufbau. Die betreuende Firma ist ETECTURE GmbH (https://www.etecture.de/), ein reines Softwaredienstleistungsunternehmen mit Hauptsitz in Frankfurt am Main und Niederlassungen in Düsseldorf und Karlsruhe.  +
W
Das SAT-Problem ist ein zentrales Problem der theoretischen Informatik. Wegen seiner NP-Schwere sind Forscher insbesondere an effizienten Lösungsverfahren dafür interessiert. Die Kenntnis der Familie einer Instanz kann zur Problemlösung beitragen. In unserer Arbeit haben wir untersucht, wie SAT-Instanzen durch maschinelles Lernen effizient klassifiziert werden können und welche Verfahren sich am besten dazu eignen. Außerdem betrachteten wir, welche Merkmale die Instanzen am eindeutigsten charakterisieren und wie sich die Anzahl der verwendeten Merkmale auf das Klassifikationsergebnis auswirkt. Letztlich untersuchten wir, welche Familien vermehrt fehlklassifiziert werden und was die Gründe dafür sind.  +
SAT gehört zu den wichtigsten NP-schweren Problemen der theoretischen Informatik, weshalb die Forschung vor allem daran interessiert ist, besonders effiziente Lösungsverfahren dafür zu finden. Deswegen wird eine Klassifizierung vorgenommen, indem ähnliche Probleminstanzen zu Instanzfamilien gruppiert werden, die man mithilfe von Verfahren des maschinellen Lernens automatisieren will. Die Bachelorarbeit beschäftigt sich unter anderem mit folgenden Themen: Mit welchen (wichtigsten) Eigenschaften kann eine Instanz einer bestimmten Familie zugeordnet werden? Wie erstellt man einen guten Klassifikator für dieses Problem? Welche Gemeinsamkeiten haben Instanzen, die oft fehlklassifiziert werden? Wie sieht eine sinnvolle Familieneinteilung aus?  +
Anforderungsrückverfolgung spielt im Bereich der Softwarewartung eine große Rolle. Worteinbettungsbasierte Verfahren zur Anforderungsrückverfolgung nutzen Wörter, die in Anforderungen und Quelltext vorkommen, um Rückverfolgbarkeitsverbindungen herzustellen. Semantisch äquivalente aber sprachlich unterschiedliche Formulierungen können dies erschweren. Wissen über derartige semantische Zusammenhänge zwischen verschiedenen Begriffen kann helfen, die Rückverfolgbarkeit zu verbessern. Diese Arbeit hat zum Ziel, in Quelltext vorkommende natürlichsprachliche Begriffe mit Wissen in Form von semantisch verwandten Begriffen anzureichern, um worteinbettungsbasierte Anforderungsrückverfolgung zu verbessern. Hierzu werden zunächst DBpedia-Artikel bestimmt, welche den Bedeutungen der Begriffe im Quelltext entsprechen. Daraufhin werden die Verbindungen dieser DBpedia-Artikel zu weiteren Artikeln dazu genutzt, um Begriffe zu identifizieren, die das gemeinsame Thema der Eingabe beschreiben. Hierzu werden Kategorien- und Oberbegriffsbeziehungen genutzt, um einen DBpedia-Subgraphen aufzubauen und in diesem Zusammenhangskomponenten zu identifizieren. Zentrale Knoten in diesen Zusammenhangskomponenten liefern dabei Kandidaten für die Themenbeschriftung. Durch das Hinzufügen dieser Themenbeschriftungen konnten auf den Datensätzen eTour und eAnci Verbesserungen der F1-Werte von bis zu +9.4 % für das Bestimmen von Rückverfolgbarkeitsverbindungen erzielt werden. Dabei lagen die Verbesserungen der Präzisionswerte zwischen +1.5 % und +11.5 %.  +
Das Projekt EASIER befasst sich mit der semi-automatischen Erstellung von aktiven Ontologien (AO) aus einer Menge von Webformularen. Webformularelemente werden dafür auf AO-Knoten abgebildet. Dabei ist der Wertebereich der Textfelder nicht im Code des Webformulares enthalten, und eine Befragung von externen Datenquellen erforderlich, um den Wertebereich der AO-Knoten zu bestimmen. Im Rahmen der vorliegenden Bachelorarbeit wird eine Software entwickelt, die diese Befragung durchführt. Hierfür werden die übermittelten Attributwerte der Webformularelemente im ersten Schritt als mögliche Eingabewerte oder Oberbegriffe der Eingabewerte klassifiziert. Folgend werden externe Datenquellen befragt, um weitere Eingabewerte und Oberbegriffe zu ermitteln. Als externe Datenquellen dienen Wikipedia, ResearchCyc und WordNet.  +
Worteinbettungen werden in Aufgaben aus der Anforderungsdomäne auf vielfältige Weise eingesetzt. In dieser Arbeit werden Worteinbettungen für die Anforderungsdomäne gebildet und darauf geprüft, ob sie in solchen Aufgaben bessere Ergebnisse als generische Worteinbettungen erzielen. Dafür wird ein Korpus von in der Anforderungsdomäne üblichen Dokumenten aufgebaut. Er umfasst 21458 Anforderungsbeschreibungen und 1680 Anwendererzählungen. Verschiedene Worteinbettungsmodelle werden auf ihre Eignung für das Training auf dem Korpus analysiert. Mit dem fastText-Modell, das durch die Berücksichtigung von Teilwörtern seltene Wörter besser darstellen kann, werden die domänenspezifischen Worteinbettungen gebildet. Sie werden durch Untersuchung von Wortähnlichkeiten und Clusteranalysen intrinsisch evaluiert. Die domänenspezifischen Worteinbettungen erfassen einige domänenspezifische Feinheiten besser, die untersuchten generischen Worteinbettungen hingegen stellen manche Wörter besser dar. Um die Vorteile beider Worteinbettungen zu nutzen, werden verschiedene Kombinationsverfahren analysiert und evaluiert. In einer Aufgabe zur Klassifizierung von Sätzen aus Anforderungsbeschreibungen erzielt eine gewichtete Durchschnittsbildung mit einer Gewichtung von 0,7 zugunsten der generischen Worteinbettungen die besten Ergebnisse. Ihr bester Wert ist eine Genauigkeit von 0,83 mittels eines LSTMs als Klassifikator und der Training-Test-Teilung als Testverfahren. Die domänenspezifischen, bzw. generischen Worteinbettungen liefern dabei hingegen lediglich 0,75, bzw. 0,72.  +
Z
Die Steuerung von Maschinen, wie Robotern und intelligenter Assistenten, durch Sprache gewinnt im täglichen Leben immer stärker an Bedeutung. In Zukunft werden Nutzer erwarten, dass Maschinen komplexe Befehlssequenzen verstehen, die zum Beispiel Kontrollstrukturen enthalten. In dieser Arbeit wurde daher das Thema der zielsystemunabhängigen Quelltextsynthese aus natürlicher Sprache untersucht. Dabei wurden Werkzeuge entwickelt, die aus aufbereiteten Sprachinformationen, wie beispielsweise extrahierten Kontrollstrukturen, einen abstrakten Syntaxbaum synthetisieren. Dazu wurden Strukturen des Syntaxbaumes durch Mustererkenner extrahiert und anschließend verbunden. Der Syntaxbaum wurde durch Besucher und Schablonen-Systeme in Quelltext übersetzt. Mit diesem Vorgehen konnte Quelltext für einen Küchenroboter, einen Legoroboter und ein System zum Erstellen von Aktivitätsdiagrammen erzeugt werden. Die entwickelten Werkzeuge sind in der Lage Quelltext in Java, Python, C und PlantUML zu erzeugen. Bei einer Online-Studie akzeptierten Probanden in einem Mehrheitsentscheid 47,68% der Aktivitätsdiagramme als korrekt. Vollständig korrekter Quelltext wurde bei einer manuellen Evaluation in 32,91% der Fälle erzeugt. Die Ergebnisse zeigen, dass Quelltext mit Kontrollstrukturen aus natürlicher Sprache synthetisiert werden kann.  +
Ü
Um die im digitalen Raum allgegenwärtigen, personenbezogenen Daten vor Missbrauch zu schützen hat die EU eine Datenschutzgrundverordnung eingeführt. An diese müssen sich sämtliche Unternehmen halten, die mit personenbezogenen Daten im digitalen Raum hantieren. Die Implementierung dieser in Softwaresystemen stellt sich aber durch die Involvierung der juristischen Domäne als aufwändig dar. In dieser Bachelorarbeit wurde daher eine Transformation aus Palladio in ein GDPR-Modell entwickelt, um die Kommunikation der verschiedenen Fachbereiche zu erleichtern.  +