Attribut:Kurzfassung

Aus SDQ-Institutsseminar

Dies ist ein Attribut des Datentyps Text.

Unterhalb werden 100 Seiten angezeigt, auf denen für dieses Attribut ein Datenwert gespeichert wurde.
D
In One-Class classification, the classifier decides if points belong to a specific class. In this thesis, we propose an One-Class classification approach, suitable for active learning, that models for each point, a prediction range in which the model assumes the points state to be. The proposed classifier uses a Gaussian process. We use the Gaussian processes prediction range to derive a certainty measure, that considers the available labeled points for stating its certainty. We compared this approach against baseline classifiers and show the correlation between the classifier's uncertainty and misclassification ratio.  +
HYBRID: This Proposal will be online AND in the seminar room 348. When working with large data sets, in many situations one has to deals with a large set data from a single class and only few negative examples from other classes. Learning classifiers, which can assign data points to one of the groups, is known as one-class classification (OCC) or outlier detection. The objective of this thesis is to develop and evaluate an active learning process to train an OCC. The process uses domain knowledge to reasonably adopt a prior distribution. Knowing that prior distribution, query strategies will be evaluated, which consider the certainty, more detailed the uncertainty, of the estimated class membership scorings. The integration of the prior distribution and the estimation of uncertainty, will be modeled using a gaussian process.  +
Ziel der Arbeit ist die Beschreibung von Simulatoren und deren Vergleich. Damit Simulatoren beschrieben werden können ist es notwendig die Elemente zu identifizieren, die in Summ eine vollständige Beschreibung eines Simulators ermöglicht. Basierend auf der Beschreibung werden dann Vergleichsmöglichkeiten entwickelt, sodass beschriebene Simulatoren miteinander Verglichen werden können. Der Vergleich dient der Ermittlung der Ähnlichkeit von Simulatoren. Da die Ähnlichkeit zwischen Simulatoren nicht allgemeingültig definierbar ist, ist auch Teil der Arbeit diese Ähnlichkeitsmaße zu definieren und zu beschreiben. Im Fokus dieser Arbeit sind diskrete ereignisorientierte Simulatoren. Das übergeordnete Ziel ist das wiederfinden von Simulatoren in bereits bestehenden Simulationen um die Wiederverwendung zu ermöglichen. Daher ist das Ziel die Vergleichsmöglichkeiten dahingehend zu entwickeln, dass auch Teile von Simulationen wiedergefunden werden können. Das entwickelte Tool DesComp implementiert sowohl die Möglichkeit der Beschreibung als auch die notwendigen Verfahren für den Vergleich von Simulatoren. Für die Evaluation der Eignung der entwickelten Verfahren wird eine Fallstudie anhand des Simulators EventSim durchgeführt.  +
Mit Smart Metern erfasste Datenströme stellen eine Gefahr für die Privatheit dar, sodass Bedarf für Privatheitsverfahren besteht. Aktueller Stand der Technik für Datenströme ist w-event differential privacy. Dies wurde bisher v.a. für die Publikation von Histogram-Queries verwendet. Ziel dieser Arbeit ist die eingehende experimentelle Analyse der Mechanismen, mit dem Fokus darauf zu beurteilen, wie gut diese Mechanismen sich für die Publikation von Sum-Queries, wie sie im Smart Meter Szenario gebraucht werden, eignen. Die Arbeit besteht aus drei Teilen: (1) Reproduktion der in der Literatur propagierten guten Ergebnisse der wichtigsten w-event DP Mechanismen für Histogram-Queries, (2) Evaluierung deren Qualität bei Anwendung auf Smart Meter Daten (Sum-Queries), (3) Evaluierung der Qualität zweier Mechanismen bzgl. der Gewährleistung von Pan-Privacy, einer erweiterten Garantie. Während wir in (1) die Ergebnisse größtenteils nicht reproduzieren konnten, erzielten wir in (2) gute Ergebnisse. Bzgl. (3) gelang es uns, die theoretische Qualitätsanalyse aus der Literatur zu bestätigen.  +
The main goal knowledge discovery focusses is, an increase of knowledge using some set of data. In many cases it is crucial that results are human-comprehensible. Subdividing the feature space into boxes with unique characteristics is a commonly used approach for achieving this goal. The patient-rule-induction method (PRIM) extracts such "interesting" hyperboxes from a dataset by generating boxes that maximize some class occurrence inside of it. However, the quality of the results varies when applied to small datasets. This work will examine to which extent data-generators can be used to artificially increase the amount of available data in order to improve the accuracy of the results. Secondly, it it will be tested if probabilistic classification can improve the results when using generated data.  +
In today's connected world, exchanging data is essential to many business applications. In order to cope with security requirements early, design time data flow analyses have been proposed. These approaches transform the modeled architecture into underlying formalisms such as logic programs. Constraints that check requirements often have to be formulated in terms of the underlying formalism. This requires architects to know about the formalism, the transformed architecture and the verification environment. We aim to bridge this gap between the architectural domain and the underlying formalism. We propose a domain-specific language (DSL) which enables architects to define individual constraints in terms of the architecture. Our approach maps the constraints and results between the architectural and the formalism automatically. Our evaluation indicates good overall expressiveness, usability and space efficiency for different sized data flow restrictions.  +
Standard, data-driven machine learning approaches learn relevant patterns solely from data. In some fields however, learning only from data is not sufficient. A prominent example for this is healthcare, where the problem of data insufficiency for rare diseases is tackled by integrating high-quality domain knowledge into the machine learning process. Despite the existing work in the healthcare context, making general observations about the impact of domain knowledge is difficult, as different publications use different knowledge types, prediction tasks and model architectures. It further remains unclear if the findings in healthcare are transferable to other use-cases, as well as how much intellectual effort this requires. With this Thesis we introduce DomainML, a modular framework to evaluate the impact of domain knowledge on different data science tasks. We demonstrate the transferability and flexibility of DomainML by applying the concepts from healthcare to a cloud system monitoring. We then observe how domain knowledge impacts the model’s prediction performance across both domains, and suggest how DomainML could further be used to refine both the given domain knowledge as well as the quality of the underlying dataset.  +
Developing and approach for dynamic adaptation to service usage policies.  +
In dieser Arbeit wird dieses Problem unter Zuhilfenahme des Wissens über kausale Abhängigkeiten verschiedener Tuningaufgaben vereinfacht. Da sich die Fragen nach einigen Parameterwerten oft nur dann stellen, wenn andere Parameter gewisse Werte einnehmen, ist es unsinnig, erstere in jedem Fall in den Optimierungsprozess einzubeziehen. Insbesondere erlaubt das entwickelte Verfahren das verlustfreie, simultane Autotuning voneinander abhängiger nominaler und Verhältnisparameter, ohne auf möglicherweise wertvolle Informationen über deren gegenseitige Einflussnahme aufeinander zu verzichten.  +
E
Aktuelle Entwicklungen in der Softwaretechnik zeigen einen Trend zur Dezentralisierung von Softwaresystemen. Mit dem Einsatz von Techniken wie Cloud-Computing oder Micro-Services fließen immer mehr Daten über öffentliche Netzwerke oder über die Infrastruktur von Drittanbietern. Im Gegensatz dazu führen aktuelle gesetzliche Änderungen wie die "General Data Protection Regulations" der EU dazu, dass es für Softwareentwickler immer wichtiger wird sicherzustellen, dass die Datenflüsse ihrer Software gesetzliche Beschränkungen einhalten. Um dies trotz der stetig wachsenden Komplexität von Softwaresystemen zu ermöglichen, wurden verschiedenste modellbasierte Ansätze vorgeschlagen. Ein Nachteil der meisten Ansätze ist jedoch, dass sie oftmals keine voll automatisierte Analyse bezüglich der Verletzung Datenflussbeschränkungen ermöglichen. Aus diesem Grund schlagen wir ein neues Metamodell zur Beschreibung von Datenflüssen von Softwaresystemen vor. Diese Metamodell ist so entworfen, dass eine automatisierte Übersetzung von Instanzen in ein Programm der logischen Programmiersprache Prolog ermöglicht wird. Dieses Programm erlaubt dann die einfache Formulierung von Regeln zur automatisierten Prüfung der Einhaltung von Datenflussbeschränkungen. Ein wichtiger Aspekt für den Entwurf und die Implementierung unseres Ansatzes war die Skalierbarkeit: Ziel war es, sicherzustellen dass unser Ansatz effizient einsetzbar ist. Hierbei haben wir insbesondere Techniken zur Optimierung von Prolog Programmen entwickelt, deren Einsatzmöglichkeiten nicht nur auf unseren Ansatz beschränkt sind.  +
Big data technology pushes the frontiers of science. A particularly interesting application of it is culturomics. It uses big data techniques to accurately quantify and observe language and culture over time. A milestone to enable this kind of analysis in a traditionally humanistic field was the effort around the Google Books project. The scanned books were then transformed into a so called N-gram corpus, that contains the frequency of words and their combinations over time. Unfortunately this corpus is enormous in size of over 2 terabytes of storage. This makes handling, storing and querying the corpus difficult. In this bachelor thesis, we introduce a novel technique to reduce the storage requirements of N-gram corpora. It uses Natural Language Processing to estimate the counts of N-grams. Our approach is able to prune around 30% more effective than state-of-the-art methods.  +
Graph Neural Networks (GNNs) have shown great potential for use cases that can be described as graphs. However, training GNNs presents unique challenges due to the characteristics of graph data. The focus of this thesis is to examine their learning abilities by developing a GNN-based surrogate model for the injection molding process from materials science. While numerical simulations can model the mold filling accurately, they are computationally expensive and require significant trial-and-error for parameter optimization. We propose representing the mold geometry as a static graph and constructing additional node and edge features from domain knowledge. We plan to enhance our model with a self-attention mechanism, allowing dynamic weighting of a node's neighbors based on their current states. Further improvements may come from customizing the model’s message passing function and exploring node sampling methods to reduce computational complexity. We compare our approach to conventional machine learning models w.r.t. predictive performance, generalizability to arbitrary mold geometries and computational efficiency. This thesis is a follow-up work to a bachelor thesis written at the chair in 2022.  +
Verification methods detect unexpected behavior of business process models before their execution. In many process models, verification depends on data values. A data value is a value in the domain of a data object, e.g., $1000 as the price of a product. However, verification of process models with data values often leads to state-space explosion. This problem is more serious when the domain of data objects is large. The existing works to tackle this problem often abstract the domain of data objects. However, the abstraction may lead to a wrong diagnosis when process elements modify the value of data objects. In this thesis, we provide a novel approach to enable verification of process models with data values, so-called data-value-aware process models. A distinctive of our approach is to support modification of data values while preserving the verification results. We show the functionality of our approach by conducting the verification of a real-world application: the German 4G spectrum auction model.  +
The k nearest neighbors (k-NN) of a time series are the k closest sequences within a dataset regarding a distance measure. Often, not the entire time series, but only specific time intervals are of interest, e.g., to examine phenomena around special events. While numerous indexing techniques support the k-NN search of time series, none of them is designed for an efficient interval-based search. This work presents the novel index structure Time Series Envelopes Index Tree (TSEIT), that significantly speeds up the k-NN search of time series in arbitrary user-defined time intervals.  +
Wartbarkeit spielt eine zentrale Rolle für die Langlebigkeit von Softwareprojekten. Ein wichtiger Teil der Wartbarkeit besteht darin, dass die natürlichsprachliche Dokumentation des Quelltextes einen guten Einblick in das Projekt und seinen dazugehörigen Quelltext liefert. Zur besseren Wartbarkeit dieser beiden Software-Artefakte besteht die Aufgabe dieser Arbeit darin, Verbindungen zwischen den Elementen dieser beiden Artefakte aufzubauen. Diese Verbindungen heißen Trace Links und können für verschiedene Zwecke der Wartbarkeit genutzt werden. Diese Trace Links ermöglichen zum Beispiel die Inkonsistenzerkennung zwischen den beiden Software-Artefakten oder können auch für verschiedene Analysen benutzt werden. Um diese Trace Links nachträglich aus den beiden Software-Artefakten natürlichsprachlicher Dokumentation und Quelltext zu gewinnen, wird das bereits bestehende ArDoCo Framework benutzt und auf das Software-Artefakt Quelltext erweitert. Ebenfalls werden ArDoCos bestehende Entscheidungskriterien auf den neuen Kontext angepasst. Der neuartige Kontext führt zu Herausforderungen bezüglich der Datenmenge, die durch neue Entscheidungskriterien adressiert werden. Dabei zeugen die Ergebnisse dieser Arbeit eindeutige von Potenzial, weswegen weiter darauf aufgebaut werden sollte.  +
Klassendiagramme ermöglichen die grafische Modellierung eines Softwaresystems. Insbesondere zu Beginn von Softwareprojekten entstehen diese als handgezeichnete Skizzen auf nicht-digitalen Eingabegeräten wie Papier oder Whiteboards. Das Festhalten von Skizzen dieser Art ist folglich auf eine fotografische Lösung beschränkt. Eine digitale Weiterverarbeitung einer auf einem Bild gesicherten Klassendiagrammskizze ist ohne manuelle Rekonstruktion in ein maschinell verarbeitbares Diagramm nicht möglich. Maschinelle Lernverfahren können durch eine Skizzenerkennung eine automatisierte Transformation in ein digitales Modell gewährleisten. Voraussetzung für diese Verfahren sind annotierte Trainingsdaten. Für UML-Klassendiagramme sind solche bislang nicht veröffentlicht. Diese Arbeit beschäftigt sich mit der Erstellung eines Datensatzes annotierter UML-Klassendiagrammskizzen für maschinelle Lernverfahren. Hierfür wird eine Datenerhebung, ein Werkzeug für das Annotieren von UML-Klassendiagrammen und eine Konvertierung der Daten in ein Eingabeformat für das maschinelle Lernen präsentiert. Der annotierte Datensatz wird im Anschluss anhand seiner Vielfältigkeit, Detailtiefe und Größe bewertet. Zur weiteren Evaluation wird der Einsatz des Datensatzes an einem maschinellen Lernverfahren validiert. Das Lernverfahren ist nach dem Training der Daten in der Lage, Knoten mit einem F1-Maß von über 99%, Textpositionen mit einem F1-Maß von über 87% und Kanten mit einem F1-Maß von über 71% zu erkennen. Die Evaluation zeigt folglich, dass sich der Datensatz für den Einsatz maschineller Lernverfahren eignet.  +
Diese Arbeit verfolgt das Ziel, ein natürlichsprachliches Dialogsystem zu entwickeln, welches zur Bearbeitung von Anfragen aus dem Umfeld eines Rechenzentrums verwendet werden kann. Das System ermöglicht die gleichzeitige Verwendung durch mehrere Nutzer, ohne dass sich diese während der Nutzung gegenseitig beeinflussen. Des Weiteren stellt die Einführung eines Kommunikationskanals zwischen Endanwendern und Experten eine wesentliche Erweiterung des Dialogsystems dar. Sie soll es ihm ermöglichen, Anfragen, welche es nur unzureichend beantworten kann, an einen Experten weiterzuleiten. Diese Erweiterung verfolgt das Ziel, die Zahl der erfolgreich gelösten Fragestellungen zu maximieren. Diese Arbeit umfasst die folgenden Schritte: nach einem ersten Grobentwurf und der Überlegung eines möglichen Dialogablaufs kann das System aus den zwei Komponenten dem Backend, welches den Kern des Dialogsystems bildet und für die Verarbeitung von Eingaben sowie die Antwortgenerierung zuständig ist, und dem Frontend, welches die Interaktion mit dem System ermöglicht, implementiert werden. Zuletzt wird es anhand der Anzahl an korrekt beantworteten Anfragen evaluiert. Zusätzlich wird ein Vergleich mit den auf den gleichen Datenbasen agierenden Internetauftritten gezogen. Dazu wurden 25 Teilnehmer eingeladen, an der Evaluation teilzunehmen. Insgesamt konnte das Dialogsystem 135 der 150 Fragen automatisiert beantworten. Weitere 13 Anfragen konnten gelöst werden, indem die Mehrmandantenfähigkeit des Systems ausgenutzt wurde und Experten zurate gezogen wurden.  +
Die Cybersicherheit bereits in frühen Entwicklungsphasen zu betrachten, gewinnt in der Automobilindustrie zunehmend an Relevanz, um immer komplexer werdende Fahrzeuge gegen Angriffe abzusichern. Welche Teile eines Systemmodells in einer modellbasierten Sicherheitsbetrachtung bereits analysiert wurden, ist nicht eindeutig und meist nur händisch mit Expertenwissen zu ermitteln. Bestehende Ansätze liefern in der frühen Konzeptphase bestenfalls unvollständige Ergebnisse, da das Systemmodell nur skizzenhaft existiert. In dieser Arbeit wurde ein Konzept vorgestellt, mit dem Sicherheitsbetrachtungen bereits in der frühen Konzeptphase durch eine Metrik auf Vollständigkeit bewertet werden können. Dazu werden aus Systemzusammenhängen Elemente bestimmt, die in einer vollständigen Sicherheitsbetrachtung enthalten sein müssen. Diese Erwartung wird daraufhin mit der tatsächlichen Sicherheitsbetrachtung verglichen, um den Grad der Vollständigkeit zu bestimmen. Das Konzept wurde prototypisch implementiert und dessen Anwendbarkeit anhand einer Fallstudie aus dem EVITA Projekt evaluiert.  +
Mithilfe der modellgetriebenen Softwareentwicklung kann im Entwicklungsprozess eines Software-Systems, dieses bzw. dessen Teile und Abstraktionen durch Modelle beschrieben werden. Diese Modelle können untereinander in Abhängigkeitsbeziehungen stehen sowie über redundante Informationen verfügen. Um Inkonsistenzen zu vermeiden, werden Tools zur automatisierten Konsistenzhaltung eingesetzt. In dieser Arbeit wird das EDA-Programm Eagle, das zur Erstellung elektronischer Schaltpläne und Leiterplatten genutzt wird, in das Vitruvius-Framework eingebunden. Bestandteile sind hierbei das Ableiten eines Ecore-Metamodells, das die Schaltplandatei von Eagle beschreibt, das Etablieren von Transformationen zwischen Ecore-Modellen und Schaltplandateien sowie das Extrahieren von Änderungen zwischen zwei chronologisch aufeinanderfolgenden Schaltplandateien. Die extrahierten Änderungen werden in das Vitruvius-Framework eingespielt, wo sie durch das Framework zu in Konsistenzbeziehung stehenden Ecore-Modellen propagiert werden. Zudem wird ein Verfahren eingesetzt, um Änderungen in der Schaltplandatei einem eindeutigen elektronischen Bauteil zuordnen zu können. Dies ist erforderlich, um Bauteile im Kontext mit anderen Programmen zu verfolgen, da die Eigenschaften eines Bauteils in verschiedenen Programmen variieren können.  +
Im Zuge der Masterarbeit sollte eine domänenspezifische Sprache für Änderungsausbreitungsregeln evaluiert und erweitert werden. Durch diese Sprache wird es Domänenexperten ermöglicht, Änderungsausbreitungsregeln auf Grundlage eines Metamodells innerhalb des Änderungsausbreitungsframeworks zu erstellen. Dabei sind keine tiefer gehenden Kenntnisse der Java-Programmierung oder des Änderungsausbreitungsframeworks notwendig. Aus den in dieser Sprache formulierten Regeln werden automatisch Java-Klassen generiert, die eine Änderungsausbreitungsberechnung durchführen können. Zu Evaluationszwecken wurden die bisher mittels Java-Methoden implementierten Änderungsausbreitungsberechnungen untersucht. Diese konnten in Regelklassen gegliedert und teilweise in der Sprache abgebildet werden. Für die nicht abbildbaren Regeln wurden neue Sprachkonstrukte konzipiert. Zudem wurde die Übertragbarkeit von der Sprache zwischen unterschiedlichen Anwendungsdomänen untersucht.  +
Diese Arbeit stellt eine Schnittstelle vor, die, eingebunden in ein Programm, die Aktionen eines Nutzers im Hintergrund auf dem lokalen Rechner verarbeitet und speichert, und versucht, aus den gesammelten Daten eine Vorhersage für die nächste Aktion zu ermitteln. Eine Nutzeraktion ist dabei durch die Daten eines Datensatzes definiert, die der Nutzer durch die Aktion abfragen möchte. Aus einer Reihe von Paaren (Nutzereingabe, extrahierte Daten), die automatisch über eine REST-Schnittstelle oder von Hand über eine grafische Nutzeroberfläche in das System eingespeist werden können, wird ein Modell gewonnen, das für jede Aktion alle unmittelbar nachfolgenden Aktionen als Bigramm speichert und ihre Häufigkeit zählt. Die Schnittstelle stellt eine Reihe von Vorhersagestrategien zur Verfügung. Eine davon nutzt ein künstliches neuronales Netz, das das System in die Lage versetzt, auch dann einen Aktionsvorschlag zu machen, wenn der Nutzer zuvor eine völlig unbekannte Aktion ausgeführt hat. Die Leistungsfähigkeit des neuronalen Netzes wurde an Beispieldaten getestet und evaluiert. Für die Evaluation wurden zufällig Modelle mit Aktionsfolgen generiert, die menschliches Verhalten nachahmen sollten. Bei einem stichprobenartigen Durchlauf, bei dem das Modell auf zweitausend generierte Nutzeranfragen trainiert wurde, konnte das System die Aktionen zu 54.2 Prozent replizieren, bei zweihundert Nutzeranfragen im Mittel zu 72.2 Prozent. Bei authentischem menschlichem Nutzerverhalten gibt es gute Gründe dafür, anzunehmen, dass die Vorhersage noch leistungsfähiger ist.  +
In der Änderungsausbreitungsanalyse wird untersucht, wie sich Änderungen in Systemen ausbreiten. Dazu werden unter anderem Algorithmen entwickelt, die identifizieren, welche Elemente in einem System von einer Änderung betroffen sind. Für die Anpassung bestehender Algorithmen existiert keine spezielle Sprache, weshalb Domänenexperten universelle Programmiersprachen, wie Java, verwenden müssen, um Änderungsausbreitungen zu formulieren. Durch den imperativen Charakter von Java, benötigen Domänenexperten mehr Code und mehr Wissen über Implementierungsdetails, als sie mit einer, auf die Änderungs- ausbreitungsanalyse zugeschnittenen, Sprache bräuchten. Eine Sprache sollte stets an den Algorithmus der jeweiligen Änderungsausbreitungsanalyse angepasst sein. Für den in dieser Arbeit betrachteten Ansatz zur Änderungsausbreitungsanalyse mit der Bezeichnung Karlsruhe Architectural Maintainability Prediction (KAMP), besteht noch keine spezielle Sprache. KAMP ist ein Ansatz zur Bewertung architekturbasierter Änderungsanfragen, der in einem gleichnamigen Softwarewerkzeug implementiert ist. Diese Arbeit präsentiert mit der Change Propagation Rule Language (CPRL) eine spezielle Sprache für den, in KAMP verwendeten, Algorithmus der Änderungsausbreitungsanalyse. Zum Abschluss wird der Vorteil der entwickelten Sprache, gegenüber drei konkurrierenden Sprachen, ermittelt. Die Arbeit kommt zum Schluss, dass CPRL kompakter als konkurrierende Sprachen ist und es gleichzeitig erlaubt, die Mehrheit an denkbaren Änderungsausbreitungen zu beschreiben.  +
Der Einsatz mehrerer Modelle zur Beschreibung eines Softwaresystems birgt oftmals die Herausforderung, diese konsistent zu halten. Während es viel Forschung zur Konsistenzhaltung zweier Modelle gibt, untersuchen nur wenige Arbeiten die Spezifika der Konsistenzhaltung mehrerer Modelle. In dieser Bachelorarbeit wird eine neue Programmiersprache vorgestellt, die es erlaubt, Transformationen zu erstellen, die mehr als zwei Modelle konsistent halten. Die Sprache verwendet ein Zwischen-Metamodell, sodass alle Transformationen zuerst von einem existierenden Modell in das Zwischenmodell und dann erst in die anderen Modelle ausgeführt werden.  +
Die meta-kognitive Strategie "laut nachzudenken" kann auf neuronale Sprachmodelle übertragen werden, wie Betz et al. zeigen: Ein vortrainiertes Sprachmodell ist besser in der Lage, deduktive Schlussfolgerungsprobleme zu lösen, wenn es zuvor dynamische Problemelaborationen generiert. Das Sprachmodell verwendet auf dem Datensatz von Betz et al. eine einfache Heuristik für seine Antwortvorhersage, die es mithilfe der selbst generierten Kontexterweiterungen effektiver einsetzen kann. In dieser Arbeit untersuche ich, wie dynamische Kontexterweiterungen die Performanz eines neuronalen Sprachmodells beeinflussen, wenn es nicht auf eine solche Heuristik zurückgreifen kann. Ich überprüfe (i) die Schlussfolgerungsfähigkeiten eines vortrainierten neuronalen Sprachmodells im Zero-Shot Setting, (ii) den Einfluss verschiedener vorgegebener Kontexterweiterungen auf die Zero-Shot-Performanz und (iii) die Fähigkeiten des Sprachmodells, selbst effektive Kontexterweiterungen zu generieren und zu nutzen.  +
Unvollständige und nicht überprüfte Anforderungen können zu Missverständnissen und falschen Vorstellungen führen. Gerade im Sicherheitsbereich können verletzte Anforderungen Hinweise auf potenzielle Schwachstellen sein. Um eine Software auf Schwachstellen zu prüfen, werden Sicherheitsanforderungen an ihre Implementierung geknüpft. Hierfür müssen spezifische Anforderungsattribute identifiziert und mit dem Design verknüpft werden. In dieser Arbeit werden 93 Sicherheitsanforderungen auf Designebene für die Open-Source-Software EVerest, einer Full-Stack-Umgebung für Ladestationen, erhoben. Mithilfe von Prompt Engineering und Fine-tuning werden Designelemente mittels GPT klassifiziert und ihre jeweiligen Erwähnungen aus den erhobenen Anforderungen extrahiert. Die Ergebnisse deuten darauf hin, dass die Klassifizierung von Designelementen in Anforderungen sowohl bei Prompt Engineering als auch bei Fine-tuning gut funktioniert (F1-Score: 0,67-0,73). In Bezug auf die Extraktion von Designelementen übertrifft Fine-tuning (F1-Score: 0,7) jedoch Prompt Engineering (F1-Score: 0,52). Wenn beide Aufgaben kombiniert werden, übertrifft Fine-tuning (F1-Score: 0,87) ebenfalls Prompt Engineering (F1-Score: 0,61).  +
Many modern high-performance applications are highly-configurable software systems that provide hundreds or even thousands of configuration options. System administrators or application users need to understand all these options and their impacts on the software performance to choose suitable configuration values. To understand the influence of configuration options on the run-time characteristics of a software system, users can use performance prediction models, but building performance prediction models for highly-configurable high-performance applications is expensive. However, not all configuration options, which a software system offers, are performance-relevant. Removing these performance-irrelevant configuration options from the modeling process can reduce the construction cost. In this thesis, we explore and analyze two different approaches to empirically identify configuration options that are not performance-relevant and can be removed from the performance prediction model. The first approach reuses existing performance modeling methods to create much cheaper prediction models by using fewer samples and then analyzing the models to identify performance-irrelevant configuration options. The second approach uses white-box knowledge acquired through dynamic taint analysis to systematically construct the minimal number of required experiments to detect performance-irrelevant configuration options. In the evaluation with a case study, we show that the first approach identifies performance-irrelevant configuration options but also produces misclassifications. The second approach did not perform to our expectations. Further improvement is necessary.  +
Microservices architectures have gained popularity over the recent years, especially since global players in the internet economy changed to this architectural style. Many architectural patterns for recurring problems were identified, such as the Service Discovery for service registration or Client-side Load Balancing for load distribution. Architectural analyses with the Palladio framework allow for the investigation of the attainment of these requirements during design time. The Architectural Templates method combines architecture models with architectural patterns and styles and allows for design-time analyses. In this thesis, we create a Microservices Architectural Templates catalog, containing microservices Architectural Templates. A selection of widely used patterns is analyzed and conceptually mapped to the Architectural Templates method. A case study, conducted with a sample application representing a customer relationship management application, shows that software architects can profit from the provided templates by automatic model completions and accurate analyses results.  +
Nowadays, software systems are evolving at a pace never seen before. As a result, emerging inconsistencies between different software artifacts are almost inevitable. Currently, there are already approaches for automated consistency maintenance between source code and architecture models. However, these approaches have various limitations. Therefore, in this thesis, we present a comprehensive approach for supporting the consistency preservation between software artifacts with special focus on software evolution and adaptation. At design-time, source code analysis and consistency rules are used, while at run-time, monitoring data is used as input for a transformation pipeline. In contrast to already existing approaches, the automated derivation of the system composition is supported. Ultimately, self-validations were included as a central component of the approach. In a case study based evaluation the accuracy of the models and the performance of the approach was measured. In addition, the scalability of the transformations within the pipeline was investigated.  +
With digitalization in progress, the amount of sensitive data stored in software systems is increasing. However, the confidentiality of this data can often not be guaranteed, as uncertainties with an impact on confidentiality exist, especially in the early stages of software development. As the consideration of uncertainties regarding confidentiality is still novel, there is a lack of awareness of the topic among software architects. Additionally, the existing knowledge is scattered among researchers and institutions, making it challenging to comprehend and utilize for software architects. Current research on uncertainties regarding confidentiality has focused on analyzing software systems to assess the possibilities of confidentiality violations, as well as the development of methods to classify uncertainties. However, these approaches are limited to the researchers’ observed uncertainties, limiting the generalizability of classification systems, the validity of analysis results, and the development of mitigation strategies. This thesis presents an approach to enable the collection and management of knowledge on uncertainties regarding confidentiality, enabling software architects to comprehend better and identify uncertainties regarding confidentiality. Furthermore, the proposed approach strives to enable collaboration between researchers and practitioners to manage the effort to collect the knowledge and maintain it. To validate this approach, a prototype was developed and evaluated with a user study of 17 participants from software engineering, including 7 students, 5 researchers, and 5 practitioners. Results show that the approach can support software architects in identifying and describing uncertainties regarding confidentiality, even with limited prior knowledge, as they could identify and describe uncertainties correctly in a close-to-real-world scenario in 94.4% of the cases.  +
Many software systems have to be designed and developed in a way that specific security requirements are guaranteed. Security can be specified on different views of the software system that contain different kinds of information about the software system. Therefore, a security analysis on one view must assume security properties of other views. A security analysis on another view can be used to verify these assumptions. We provide an approach for enabling the information transfer between a static architecture analysis and a static, lattice-based source code analysis. This approach can be used to reduce the assumptions in a component-based architecture model. In this approach, requirements under which information can be transferred between the two security analyses are provided. We consider the architecture and source code security analysis as black boxes. Therefore, the information transfer between the security analyses is based on a megamodel consisting of the architecture model, the source code model, and the source code analysis results. The feasibility of this approach is evaluated in a case study using Java Object-sensitive ANAlysis and Confidentiality4CBSE. The evaluation shows that information can be transferred between an architecture and a source code analysis. The information transfer reveals new security violations which are not found using only one security analysis.  +
In the area of workflow analysis, the workflow in respect to e.g. a working process can be analyzed by looking into the data which was used for the working process or created during the working process. The main contribution of this work is to extend CoVER in such a way that it supports LIKE predicates with order preserving encryption.  +
Professional installation of stationary sensors burdens the adoption of Activity Recognition Systems in households. This can be circumvented by utilizing sensors that are cheap, easy to set up and adaptable to a variety of homes. Since 72% of European consumers will have Smart Meters by 2020, it provides an omnipresent basis for Activity Recognition. This thesis investigates, how a Smart Meter’s limited recognition of appliance involving activities can be extended by Vibration Sensors. We provide an experimental setup to aggregate a dedicated dataset with a sampling frequency of 25,600 Hz. We evaluate the impact of combining a Smart Meter and Vibration Sensors on a system’s accuracy, by means of four developed Activity Recognition Systems. This results in the quantification of the impact. We found out that through combining these sensors, the accuracy of an Activity Recognition System rather strives towards the highest accuracy of a single underlying sensor, than jointly surpassing it.  +
Softwarearchitekturdokumentationen enthalten Fachbegriffe aus der Domäne der Softwareentwicklung. Wenn man diese Begriffe findet und zu den passenden Begriffen in einer Datenbank verknüpft, können Menschen und Textverarbeitungssysteme diese Informationen verwenden, um die Dokumentation besser zu verstehen. Die Fachbegriffe in Dokumentationen entsprechen dabei Entitätserwähnungen im Text. In dieser Ausarbeitung stellen wir unser domänenspezifisches Entity-Linking-System vor. Das System verknüpft Entitätserwähnungen innerhalb von Softwarearchitekturdokumentationen zu den zugehörigen Entitäten innerhalb einer Wissensbasis. Das System enthält eine domänenspezifische Wissensbasis, ein Modul zur Vorverarbeitung und ein Entity-Linking-System.  +
Natural Language Software Architecture Documentation ( NLSAD ) and Software Architecture Model ( SAM) provide information about a software systems design and qualities. Inconsistencies between these artifacts can negatively impact the comprehension and evolution of the system. ArDoCo is an approach that was proposed in prior work by Keim et al. to find such inconsistencies and relies on Traceability Link Recovery (TLR) between entities in the NLSAD and SAM . ArDoCo searches for Unmentioned Model Elements (UMEs) in the model and Missing Model Elements (MMEs) in the text using the linkage information. ArDoCo’s approach shows promising results but has room for improvement regarding precision due to falsely identified textual entities. This work proposes using informal diagrams from the Software Architecture Documentation (SAD) to improve this. The approach performs an additional TLR between the textual entities and the diagram entities. According to heuristics, the linkage of textual entities and diagram entities is utilized to increase or decrease the confidence in textual entities. The Diagram Text TLR and its impact on ArDoCo’s performance are evaluated separately using the same data set as previous work by Keim et al. The data set was extended to include informal diagrams. The Diagram Text TLR achieves a good F1-score with Optical Character Recognition (OCR) of 0.54. The approach improves the MME detection (0.77→0.94 accuracy) by lowering the amount of falsely identified textual entities (0.39→0.69 precision) with a negligible impact on recall. The UME detection and ArDoCo ’s NLSAD to SAM are slightly positively impacted and continue to perform excellently. The results show that using informal diagrams to improve entity recognition in the text is promising. Room for improvement exists in dealing with issues related to OCR and diagram element processing.  +
Softwaresysteme der heutigen Zeit werden zunehmend komplexer und unterliegen immer mehr variierenden Bedingungen. Dadurch gewinnen selbst-adaptive Systeme an Bedeutung, da diese sich neuen Bedingungen dynamisch anpassen können, indem sie Veränderungen an sich selbst vornehmen. Domänenspezifische Modellierungssprachen (DSL) zur Formalisierung von Adaptionsstrategien stellen ein wichtiges Mittel dar, um den Entwurf von Rückkopplungsschleifen selbst-adaptiver Softwaresysteme zu modellieren und zu optimieren. Hiermit soll eine Bachelorarbeit vorgeschlagen werden, die sich mit der Fragestellung befasst, wie eine Optimierung von Adaptionsstrategien in einer DSL zur Entwurfszeit beschrieben werden kann.  +
Entwicklung einer Methode zum Vergleich mehrsprachiger und zeitabhängiger Textkorpora am Beispiel des Google Books Ngram Datensatzes.  +
Im Bereich der modellgetriebenen Softwareentwicklung sind Simulationen ein wichtiges Konzpet. Zum Beispiel erlaubt das Palladio Component Model (PCM) die Modellierung und der Palladio Simulator die Simulation von Softwarearchitekturen durch ereignisorientierte Simulationen, um Mängel in Softwarearchitekturen frühzeitig zu erkennen. Das Tool DesComp ermöglicht es, ereignisorientierte Simulationen zu modellieren und zu vergleichen. Vor der Implementierung einer neuen Simulation können so Ähnlichkeiten zu bestehenden Simulationen identifiziert werden, um diese wiederzuverwenden. Der DesComp-Ansatz modelliert das Simulations-Verhalten mittels Erfüllbarkeit prädikatenlogischer Formeln (Satisfiability Modulo Theories, kurz SMT). Die Spezifikation des Simulations-Verhaltens durch SMT-Code ist allerdings aufwändig und erfordert Hintergrundwissen zum SMT-LIB Standard. Im Rahmen dieser Arbeit wurde eine domänenspezifischen Sprache (DSL) zur Spezifikation der Simulations-Struktur und des Simulations-Verhaltens mit dem Xtext-Framework entwickelt. Auf Grundlage der Struktur-Spezifikation des DesComp-Ansatzes wurde dafür ein Metamodell zur Modellierung von Struktur und Verhalten ereignisorientierter Simulationen erstellt. Dieses Metamodell wurde als Grundlage der abstrakten Syntax der entwickelten Sprache verwendet. Das Metamodell dient dann als Ausgangspunkt für die weitere Verwendung und Analyse der Simulations-Spezifikation. Dazu wurde eine Transformation der Verhaltens-Spezifikation in SMT-Code implementiert, die zusammen mit der Simulations-Struktur in eine Graph-Datenbank exportiert werden kann, um die Simulation in DesComp zu analysieren oder mit anderen Simulationen zu vergleichen. Die entwickelte Sprache wurde anhand der Simulation BusSimulation und des Palladio-Simulators EventSim evaluiert, indem die Modellierungen der Simulationen mit DesComp und der Sprache anhand verschiedener Kriterien verglichen wurde.  +
Das Testen von Software über deren graphischen Benutzeroberflächen wird mit zunehmender Komplexität der Software (und damit einhergehender Variabilität in der Benutzeroberfläche) aufwendiger. Rein manuelles Testen durch den Entwickler und das Schreiben von Testfällen sind oft nicht mehr möglich. Daher sind neue Ansätze aus dem Bereich des maschinellen Lernens erforderlich, um diese Arbeiten zu erleichtern. Ein Lösungsansatz kann der Einsatz neuronaler Netze sein, die am Forschungszentrum Informatik (FZI) entwickelt werden. Als Eingabedaten sollen dabei Zustände einer graphischen Benutzeroberfläche als Bild dienen, welche jedoch zu komplex sind, um in Echtzeit von diesen Netzen verarbeitet zu werden. In dieser Masterarbeit wurde untersucht, inwiefern eine Kompression der Daten durch den Encoder-Teil von Autoencodern stattfinden kann. Hierzu wurden vier verschiedene Autoencoder-Architekturen entwickelt und analysiert, inwiefern sie sich für diesen Zweck eignen. Um die Autoencoder zu trainieren, wurde ein Trainingsdatengenerator in Rust unter Verwendung von dort vorhandenen GUI-Toolkits als Mock-Applikation einer realen GUI entwickelt. Der Trainingsdatengenerator eignet sich sehr gut zum Training der Autoencoder, da er sehr passgenau Trainingsdaten generieren kann. Aufgrund des frühen Stadiums der verwendeten Werkzeuge traten jedoch während der Entwicklung Fehler auf, die die Entwicklung hemmten. Für diese wurden Workarounds entwickelt, die teilweise die Handhabung des Generators erschweren. Darüber hinaus lässt sich feststellen, dass der Aufwand zur exakten Nachbildung einer Applikation als Mock sehr hoch ist. Bezüglich der Kompression von Informationen über Benutzeroberflächen durch die Autoencoder waren die Ergebnisse dagegen vielversprechend, da die Testdaten auch in hoher Auflösung von 900 x 935 Pixeln mit hoher Genauigkeit rekonstruiert werden konnten. Erste Experimente ergaben, dass die Autoencoder darüber hinaus Fähigkeiten entwickeln, Applikationen mit ähnlichem Farbschema oder ähnlicher Designsprache zu kodieren und wiederzugeben. Ein erstes Fazit über die Fähigkeiten zur Generalisierung fällt daher ebenso positiv aus. Die Genauigkeit der Reproduktion sinkt, wenn die Eingabe farblich oder designtechnisch stark von den Trainingsdaten abweicht.  
Ein neuartiger Ansatz zum Erlernen von Computerspielen ist die Verwendung von neuronalen Netzen mit Gedächtnis (speziell CTRNNs). Die großen Datenmengen in Form roher Pixel-Daten erschweren jedoch das Training. Auto-Encoder können die diese Pixel-Daten der Spielframes soweit komprimieren, dass sie für solche Netze verfügbar werden. Das Ziel dieser Arbeit ist es eine Auto-Encoder-Architektur zu finden, welche Atari-Frames soweit komprimiert, sodass eine möglichst verlustfreie Rekonstruktion möglich ist. Atari-Spiele können so für CTRNNs zugänglich gemacht werden. Dafür wurden zwei unterschiedliche Atari-Spiele ausgewählt, große Datensätze mit geeigneten Spielframes generiert und verschiedene Auto Encoder Architekturen evaluiert. Im Rahmen dieser Arbeit konnte gezeigt werden, dass eine ausreichende Kompression mit akzeptierbaren Qualitätsverlust möglich ist.  +
Die rapide Zunahme der Rechenleistung heutiger Computer hat die Nutzung von KI in alltäglichen Anwendungen wesentlich erleichtert. Aufgrund der statistischen Natur von KI besteht deshalb eine gewisse Unsicherheit. Diese Unsicherheit kann direkten Einfluss auf die Zuverlässigkeit eines Software-Systems haben. Im Rahmen der Arbeit „Entwicklung zuverlässiger KI-basierter Software-Systeme in Anwesenheit von Unsicherheit“ wird ein Vorgehen präsentiert, das solche Problematiken auf Architekturebene analysieren kann. Das Vorgehen nutzt dafür modellbasierte Qualitätsanalysen, welche im Kontext von Palladio realisiert wurde. Zusätzlich wird ein Vorgehen zur Sensitivitätsanalyse vorgestellt, um ein KI-Netz anhand von veränderten Unsicherheiten abzutasten. Mithilfe dieser Werkzeuge kann eine Zuverlässigkeitsvorhersage auf dem Modell des Software-Systems getätigt werden. Dabei konnte für zwei Unterschiedliche KI-Netze gezeigt werden, dass deren Sensitivitätsmodelle direkten Einfluss auf die Zuverlässigkeit des gesamten Software-Systems haben. Durch den Einsatz von Architekturvorlagen konnte auch gezeigt werden, dass die ebenfalls Einfluss auf die Zuverlässigkeit des gesamten Software-Systems haben.  +
In dieser Masterarbeit werden Methodiken erarbeitet, welche die Entwicklung von Produktlinien in der Modellbasierten Systementwicklung (MBSE) unterstützen sollen. Für die Verhaltensbeschreibung von Systemen werden unter anderem Aktivitätsdiagramme verwendet, die keine expliziten Konstrukte zur Modellierung von Variabilität anbieten. Deshalb wird in dieser Arbeit ein Ansatz zur Modellierung von Variabilität in Aktivitätsdiagrammen vorgestellt, der Metamodell-unabhängig ist und somit nicht nur für Aktivitätsdiagramme verwendet werden kann. Dieser Ansatz wird mit gängigen Ansätzen der Variabilitätsmodellierung verglichen und es wird unter anderem untersucht, inwieweit dieser Ansatz die Elementredundanz im Vergleich zu den anderen Ansätzen verringert. Anschließend wird erarbeitet, wie Aktivitätsdiagramme und gefärbte Petri-Netze untereinander konsistent gehalten werden können. Dazu werden deren Gemeinsamkeiten und Unterschiede herausgearbeitet, um Konsistenzhaltungsregeln zu definieren und die Grenzen der Konsistenzhaltung zu finden. Zum Abschluss wird skizziert, was notwendig ist, um die beiden Ansätze miteinander zu kombinieren, um eine Verhaltensbeschreibung einer Produktlinie aus Aktivitätsdiagrammen und gefärbten Petri-Netze zu erhalten, bei denen stets die Aktivitätsdiagramme und Petri-Netze der einzelnen Produktkonfigurationen konsistent zueinander sind.  +
Das manuelle Erstellen von Rückverfolgbarkeitsinformationen ist aufwendig. Deshalb ist es das Ziel des Projekts INDIRECT, Rückverfolgbarkeitsinformationen aus Anforderungen und Quelltext automatisch zu generieren. Um dies zu unterstützen wird eine Ontologie benötigt, welche Domäneninformationen aus den Anforderungen enthält. Im Rahmen dieser Arbeit wurde eine Domänenontologie und ein Werkzeug entwickelt, welches die Ontologie mit Informationen aus Anforderungen erweitert. Dabei lag der Fokus darauf, möglichst nur korrekte Informationen in die Ontologie zu übernehmen. Die Struktur der entworfenen Domänenontologie orientiert sich an den verschiedenen Klassen von Anforderungen, indem analysiert wurde, welche Art von Informationen diese jeweils enthalten. Das Werkzeug zu Erweiterung basiert auf manuell gefertigten Mustern, welche Strukturen in Abhängigkeitsbäumen von Sätzen aus Anforderungen darstellen. Mit ihnen werden Instanzen von Klassen und Relationen aus der Domänenontologie identiziert, welche in den Anforderungen vorkommen. Das Werkzeug wurde auf einem Korpus von Anforderungen aus verschiedenen Projekten aus unterschiedlichen Domänen mithilfe eines Goldstandards evaluiert. Das Verfahren zeigte sich als nicht erfolgreich, da nur eine geringe Präzision erreicht wurde. So wurde bei der Extraktion von Klasseninstanzen eine Präzision von 0,21 und ein F1-Maß von 0,09 erreicht, sowie eine Präzision von 0,09 und ein F1-Maß von 0,06 bei der Extraktion von Relationsinstanzen.  +
Eine Herausforderung bei der Rückverfolgung von Quelltext zu Anforderungen stellt die Analyse von Quelltext dar. Informationen über semantische Zusammenhänge zwischen Programmelementen sind darin nicht explizit dokumentiert, sondern müssen aus vorhandenen Informationen wie der natürlichen Sprache oder den strukturellen Abhängigkeiten abgeleitet werden. Im Rahmen des Forschungsprojekts INDIRECT wird eine semantische Repräsentation von Quelltext entworfen und umgesetzt, um die darin enthaltenen Informationen bei der Rückverfolgung von Anforderungen nutzen zu können. Die Repräsentation umfasst sowohl syntaktische Informationen als auch semantische Zusammenhänge im Quelltext. Für die Identifikation von semantischen Zusammenhängen wird eine Analyse der Syntax und eine Analyse der lexikalischen Bestandteile im Quelltext durchgeführt. Abschließend erfolgt eine Clusteranalyse auf Basis der gefundenen Zusammenhänge, um Gruppen aus semantisch zusammenhängenden Programmelementen zu identifizieren. Bei der Evaluation wurde eine Abdeckung der gefundenen Programmelementgruppen von bis zu 0,91 erzielt. Die Präzision der gefundenen Cluster betrug bis zu 0,9. Das harmonische Mittel aus der Cluster-Abdeckung und der Cluster-Präzision erreichte einen maximalen Wert von 0,73.  +
Um der steigenden Komplexität technischer Systeme zu begegnen, werden in ihrer Entwicklung sichtenbasierte Entwicklungsprozesse eingesetzt. Die dabei definierten Sichten zeigen nur die für ein bestimmtes Informationsbedürfnis relevanten Daten über das System, wie die Architektur, die Implementierung oder einen Ausschnitt davon und reduzieren so die Menge an Informationen und vereinfachen dadurch die Arbeit mit dem System. Neben dem Zweck der Informationsreduktion kann auch eine Einschränkung des Zugriffs aufgrund fehlender Zugriffsberechtigungen notwendig sein. Die Notwendigkeit ergibt sich beispielsweise bei der organisationsübergreifenden Zusammenarbeit zur Umsetzung vertraglicher Vereinbarungen. Um die Einschränkung des Zugriffs umsetzen zu können, wird eine Zugriffskontrolle benötigt. Bestehende Arbeiten nutzen eine Zugriffskontrolle für die Erzeugung einer Sicht. Die Definition weiterer Sichten darauf ist nicht vorgesehen. Außerdem fehlt eine allgemeine Betrachtung einer Integration einer Zugriffskontrolle in einen sichtenbasierten Entwicklungsprozess. Daher stellen wir in dieser Arbeit das Konzept einer Integration einer rollenbasierten Zugriffskontrolle in einen sichtenbasierten Entwicklungsprozess für beliebige Systeme vor. Mit dem Konzept ermöglichen wir die feingranulare Definition und Auswertung von Zugriffsrechten für einzelne Modellelemente für beliebige Metamodelle. Das Konzept implementieren wir prototypisch in Vitruv, einem Framework für sichtenbasierte Entwicklung. Wir evaluieren diesen Prototypen hinsichtlich seiner Funktionalität mithilfe von Fallstudien. Die Zugriffskontrolle konnten wir dabei für verschiedene Fallstudien erfolgreich einsetzen. Außerdem diskutieren wir die Integrierbarkeit des Prototypen in einen allgemeinen sichtenbasierten Entwicklungsprozess.  +
Fehlerzustände in Software oder Hardware führen zu Abweichungen bezüglich der bereitgestellten Daten und der Verarbeitungszeit oder direkt zu einem kompletten Ausfall eines Service an einer Software-Komponente. Diese Abweichung von dem korrekten Service führt wiederum dazu, dass andere Komponenten, die diesen inkorrekten Service in Anspruch nehmen, ihren Service ebenfalls nicht korrekt bereitstellen können. Der entstandene Fehler propagiert durch das System, kombiniert sich mit anderen Fehlern, transformiert zu anderen Fehlerarten und hat letztendlich mehr oder weniger schwere Auswirkungen auf den System-Kontext, falls die Propagation nicht durch geeignete Maßnahmen unterbunden wird. Besonders bei sicherheitskritischen Systemen ist es deshalb notwendig die Auswirkungen der möglichen Fehler im System zu analysieren. Die in der Arbeit entwickelte Erweiterung des Palladio-Konzeptes ermöglicht es, diese Analyse schon zur Entwurfszeit anhand eines Modells durchzuführen. Mithilfe der Erweiterung kann analysiert werden, wie oft und in welchem Verhältnis ein Fehler aufgetreten ist, welche Fehlervorkommen miteinander korrelieren und wie schwerwiegend die Auswirkungen der aufgetretenen Fehler für den Systemkontext waren. Neben der Analyse der Fehlerpropagation ermöglicht die Erweiterung die Modellierung von Systemen, die auf das Vorkommen eines Fehlers im Sinne einer Rekonfiguration reagieren. Das Konzept wurde anhand eines sicherheitskritischen Systems aus der Domäne der autonomen Fahrzeuge validiert.  +
Viele modellgetriebene Entwicklungsumgebungen verfolgen einen rein sequenziellen Ansatz. Modelltransformationen werden sequenziell ausgeführt und zu einem Zeitpunkt darf stets nur eine Modelltransformation ausgeführt werden. Auf entsprechend großen Datenmengen ergeben sich hierdurch jedoch einige Einschränkungen. So kann es dazu kommen, dass Nutzer mehrere Minuten oder sogar Stunden auf den Abschluss einer Modelltransformation warten müssen und die Software währenddessen nicht für Nutzereingaben zur Verfügung steht, selbst wenn die Modelltransformation nur auf einen Teil des Modells zugreift. Dieser Zustand kann jedoch den Nutzerflow unterbrechen, einen mentalen Zustand des Nutzers, der gleichzeitig produktiv ist und als belohnend wahrgenommen wird. Eine Möglichkeit, um das Risiko zu minimieren, dass der Nutzerflow unterbrochen wird, ist die Wartezeit für den Nutzer zu verkürzen, indem Modelltransformationen asynchron im Hintergrund ausgeführt werden. Der Nutzer kann dann mit eingeschränkt weiterarbeiten, während die Modelltransformation durchgeführt wird. Im Kontext von modellgetriebener Softwareentwicklung findet sich zu Nebenläufigkeit nur wenig Forschung. Zwar gibt es einige Ambitionen, Modelltransformationen zu parallelisieren, jedoch gibt es keine Forschung dazu, Modelltransformationen asynchron auszuführen um weitere Modelltransformationen simultan durchführen zu können. Die vorliegende Arbeit stellt am Beispiel der modellgetrieben entwickelten Software PREEvision der Firma Vector Informatik GmbH, Mechanismen und mögliche Implementierungen vor, mit denen simultane Modelltransformationen realisiert werden können. Für vier Operationen in PREEvision wird außerdem beispielhaft beschrieben, wie die Operationen mit Hilfe der vorgestellten Mechanismen so modifiziert werden können, dass diese asynchron ausgeführt werden. Die Prototypen der beschriebenen Modifikationen werden anschließend im Hinblick auf die Unterbrechung des Nutzerflows und die Korrektheit evaluiert. Abschließend zieht die Arbeit ein Fazit über die Anwendbarkeit der vorgestellten Mechanismen und darüber, ob der Nutzer durch die Prototypen seltener auf Wartedialoge warten muss.  
Die natürliche Sprache befindet sich in ständigem Wandel. Mittels Semantic Change Detection kann eine Änderung der Semantik von Wörtern zwischen Zeitpunkten festgestellt werden. Herkömmliche Semantic Change Detection Systeme arbeiten nur auf statischen Korpora. Durch Social Media ist es möglich, Sprache in Echtzeit zu analysieren. Da bisherige Ansätze jedoch nicht auf Textströmen funktionieren, soll in dieser Masterarbeit ein Echtzeitsystem zur Verarbeitung von Textströmen entworfen werden, welches frühzeitig die Änderung einer Wortbedeutung aufzeigt. Grundlage hierfür sind geeignete Worteinbettungen, die zum einen gute Vektoren liefern und zum anderen trotz Begrenzung des Speichers den Textstrom gut repräsentieren. Zur Evaluation soll ein synthetischer Korpus generiert werden, um die verschiedenen Methoden vergleichen zu können. Anschließend wird eine explorative Untersuchung auf Twitterdaten durchgeführt.  +
Die Rückverfolgbarkeit von Quelltext zu Anforderungen ist ein wichtiger werdendes Problem. Eine Garantie der Implementierung aller Anforderungen kann zur Steigerung von Softwarequalität führen. Für das Erstellen der Rückverfolgbarkeitsinformationen ist ein Verständnis des Quelltextes nötig. In dieser Arbeit wurden anhand von Komponententests semantisch zusammenhängende Methoden erkannt. Semantisch zusammenhängende Methoden erfüllen eine Funktionalität miteinander und verbessern das Verständnis von Quelltext. Für die Erkennung wurde ein heuristisches Verfahren entwickelt, welches aus mehreren Teilverfahren besteht, die sowohl auf den textuellen als auch den strukturellen Bestandteilen des Komponententest- und Quelltextes arbeiten. Für die Teilverfahren wurde eine Zerteilung und Transformation von Quelltextes entwickelt. Es wurden verschiedene Textähnlichkeitsalgorithmen mit einem maschinellem Lernverfahren (fastText) verglichen. Zur Bewertung wurden drei Softwareprojekte verwendet, mit einer höchsten Präzision von 74%, bei einer Ausbeute von 19%. Mit einer anderen Parameterkonfiguration wurde ein F1-Wert von 46% erreicht.  +
Das SAT-Problem ist eines der wohl bekanntesten NP-vollständigen Probleme. Hierbei handelt es sich um die Problemstellung, ob für eine gegebene aussagenlogische Formel G eine Variablenbelegung existiert, sodass G erfüllt ist. Zum Lösen des SAT-Problems gibt es eine Vielzahl an unterschiedlichen Ansätzen, sogenannte SAT-Solver. Wie sich herausgestellt hat, ist die Performance der verschiedenen Solver jedoch stark von den jeweiligen Instanzen abhängig, für die es das SAT-Problem zu lösen gilt. Deshalb interessiert man sich für Mengen von Solvern, die sich möglichst gut ergänzen, sogenannte Portfolios. Auf einem Portfolio wird dann mithilfe von Features der gegebenen Instanz eine Auswahl getroffen, welcher Solver wahrscheinlich der Beste ist. Studien zeigen, dass solche Portfolios in ihrer Performance einzelnen Solvern weit überlegen sind, weshalb diese genauer untersucht werden sollten. Hauptaugenmerk der Arbeit liegt auf der Auswahl an möglichst kleinen Portfolios und auf kleinen Mengen von Instanzfeatures und der daraus resultierenden Performance.  +
Das SAT-Problem ist ein bekanntes NP-vollständiges Problem aus der theoretischen Informatik. Es handelt es sich um die Problemstellung, ob für eine gegebene aussagenlogische Formel G eine Variablenbelegung existiert, sodass G erfüllt ist. Portfolio-basierte Methoden zum Lösen von SAT-Instanzen nutzen die komplementäre Stärke von einer Menge von verschiedenen SAT-Algorithmen aus. Hierbei wird aus einer gegebenen Menge von Algorithmen, dem sogenannten Portfolio, mittels eines Vorhersagemodells derjenige Algorithmus ausgewählt, der die bestmögliche Performance für die betrachtete SAT-Instanz verspricht. In dieser Arbeit interessieren wir uns besonders für erklärbare Portfolios, sprich für Portfolios, für die man nachvollziehen kann, wie die Vorhersage zu ihrem Ergebnis kommt. Gute Erklärbarkeit resultiert einerseits aus einer geringen Größe des Portfolios, andererseits aus einer reduzierten Komplexität des Vorhersagemodells. Im Vordergrund der Arbeit liegt das effiziente Finden von kleinen Portfolios aus einer größeren Menge von Algorithmen, sowie den Einfluss der Portfoliogröße auf die Performance des Portfolios.  +
Untersuchungen innerhalb der Begriffsgeschichte erfahren einen Aufschwung. Anhand neuer technologischer Möglichkeiten ist es möglich große Textmengen maschinengestützt nach wichtigen Belegstellen zu untersuchen. Hierzu wurden die methodischen Arbeitsweisen der Historiker und Linguisten untersucht um bestmöglich deren Informationsbedürfnisse zu befriedigen. Auf dieser Basis wurden neue Anfrageoperatoren entwickelt und diese in Kombination mit bestehenden Operatoren in einem funktionalen Benchmark dargestellt. Insbesondere eine Anfragesprache bietet die nötige Parametrisierbarkeit, um die variable Vorgehensweise der Historiker unterstützen zu können.  +
Diese Arbeit beschäftigt sich mit der Frage, ob und inwieweit das Verständnis natürlichsprachlicher Systeme durch das Erlernen von Synonymen gefördert werden kann. Als Grundlage und Benutzerschnittstelle wurde das Dialogsystem JustLingo, ein System zur natürlichsprachlichen Programmierung, verwendet. In vorangegangenen Arbeiten wurde JustLingo als Excel Add-in umgesetzt, mithilfe dessen man u.a. komplexe Algorithmen beschreiben kann. Darauf aufbauend wird in der vorliegenden Arbeit die Umsetzung eines Synonymmoduls beschrieben. Diesem liegen verschiedene Wortnetze zugrunde, die als Quellen dienen und aus denen anschließend relevante Synonyme extrahiert werden. Hierbei achtet das Modul auf den dem System bekannten Wortschatz. Bestätigt der Nutzer ein im Wortschatz vorkommendes Synonym, wird dieses erlernt und kann im Anschluss verwendet werden. Damit ist das in dieser Arbeit entwickelte Modell dem überwachten Lernen unterzuordnen. Um die Effektivität des Synonym-Lernens abzuschätzen, wurden abschließend sowohl Performanz, als auch die, durch Eingaben einer Nutzerstudie, erfasste Qualität geprüft. Hierbei zeigte sich eine enorme Verbesserung des Systems durch das Synonymmodul. Statt bisherigen 59% konnten 82% der Nutzereingaben interpretiert werden.  +
Die Bestimmung von Qualitätsmerkmalen eines Software-Systems, wird typischerweise erst nach der Entwurfsphase ersichtlich. Diskrete-Event-Simulationen basierend auf Computer-Systemen können hier Aufschluss geben und Entscheidungen schon zu Beginn der Entwurfsphase beeinflussen. Mit verfügbarem Domänen-Wissen kann eine Abstrakte Repräsentation eines Software-Systems dargestellt werden, um bestimmte Aspekte für eine Analyse zu simulieren. Mit der wachsenden Komplexität von Software-Systemen steigt auch der Bedarf der Skalierbarkeit, Wartbarkeit und damit auch die Anwendbarkeit von Simulationen. Dies verlangt das kombinieren von Simulationen aus unterschiedlichen Domänen, eine effiziente Wartbarkeit, so wie eine adäquate Wiederverwendbarkeit, die es dem Simulations-Anwender ermöglicht effektiv Simulationen zu Erstellen. Herkömmliche Simulations-Engines, die eine monolithische Vorgehensweise anwenden, können diesen Anforderungen nicht standhalten. Ein Lösungsansatz ist, ein Konzept zur Modularisierung der komplexe Simulationen, das mit einer Domänenspezifischen Sprache (DSL) umgesetzt wurde. Aus diesem Konzept resultiert die Herausforderung, das Simulations-Engines verschiedener Domänen über einen Kopplungsansatz, auf modularer Ebene kommunizieren zu können. In dieser Arbeit wird der Ansatz hinsichtlich einer Simulations-Engine aus der Domäne der Netzwerk Simulationen analysiert und erweitert. Die Ausdrucksmächtigkeit der DSL hinsichtlich der Kopplung von Netzwerk Simulationen ist nicht bekannt und muss bestimmt werden. Als Grundlage der Untersuchung wird eine Fallstudie mit einem existierenden Kopplungsansatz angewendet, die die Kopplung einer Netzwerk-Simulation mit einer Simulation einer alternativen Simulations-Engine manuell implementiert und analysiert. Die Kopplung, der in der Fallstudie entstandene verteilte Simulation, wird mit der existierenden DSL beschrieben und deren Ausdrucksmächtigkeit bestimmt. Aus den Resultaten wird eine Erweiterung der DSL bestimmt, die nach dem selben Vorgehen auf die Ausdrucksmächtigkeit evaluiert wird. Die Evaluation selbst ist ein Vergleich von Elementen der Fallstudie und den beschriebenen Elementen der DSL. Aus den Ergebnissen der Analyse von Netzwerk Simulationen entsteht ein Kopplungs-Interface was als Annäherung an alle Simulations-Engines aus dem Bereich der Diskreten-Event-Simulationen. Durch Teil-Automatisierung des Kopplungs-Interface wird der Entwicklungsaufwand auf ein annäherndes Niveau von monolithischen Simulationen reduziert. Die Ergebnisse der Arbeit zeigen, dass eine Beschreibung von Netzwerk-Simulationen mit der erweiterten DSL möglich ist. Da aber Elemente aus der Logik beschreibbar sind, diese aber für eine Kopplung irrelevant sind, nur ein Bruchteil der Fähigkeiten der DSL benötigt werden. Ebenfalls ist in Bezug zur manuellen Entwicklung einer verteilten Simulation eine Arbeitserleichterung durch Wiederverwendbarkeit und Abstraktion gegeben. Als Kern-Ergebnis ist, die bei hoch skalierenden verteilten Simulationen gesteigerte Attraktivität gegenüber der Verwendung einer monolithischen Variante.  
Domänenspezifische Sprachen für Software sind individuell an den jeweiligen Zweck angepasst. Die Sprache Modular Simulation Language modelliert die Kopplung zwischen verschiedenen Simulationen. Die Kopplung von Simulationen dient dem besseren Verständnis und der Austauschbarkeit. In dieser Arbeit wird geprüft, ob die Sprache alle nötigen Modelle erhält um universell Kommunikation, Struktur und Kopplung von beliebigen Simulationen darstellen zu können. Dazu wurde die Cloud Simulation Cloud Sim Plus ausgewählt und die Kommunikation von zwei Features dieser Simulation modelliert. Während der Modellierung wurden fehlende Elemente der Sprache identifiziert und Lösungsvorschläge integriert oder diskutiert. Das Ergebnis zeigt, dass sie Modular Simulation Language zum aktuellen Zeitpunkt nicht vollständig ist, das Thema aber weiter untersucht werden muss.  +
In der Softwareentwicklung werden häufig Modelle genutzt. Bei einer Zusammenarbeit an diesen Modellen werden Zugriffskontrollsysteme eingesetzt, um die darin enthaltenen Daten vor unbefugtem Zugriff zu schützen. Aktuell genutzte Ansätze benötigen dafür entweder eine zentrale Zugriffskontrolle, der alle Beteiligten vertrauen müssen, oder sind nur für einen bestimmten Typ Modell nutzbar. Daher befassen wir uns in dieser Arbeit mit der Problemstellung, verschiedene Arten von Modellen ohne eine zentrale Zugriffskontrolle zu teilen. Wir stellen ein Konzept zur Ableitung von Verschlüsselungsregeln aus den Regeln einer Rollenbasierten Zugriffskontrolle, die auf Modellelemente definiert sind, vor. Durch Nutzung von symmetrischer Verschlüsselung und Digitaler Signaturen können Lese- und Schreibrechte ohne einen zentralen Server zur Zugriffskontrolle umgesetzt werden. Modelle werden in unserem Ansatz als Delta Chain und somit als Abfolge von einzelnen Modelländerungen dargestellt, wodurch unser Ansatz für verschiedene Arten von Modellen funktioniert. Die Verschlüsselungsregeln werden auf die einzelnen Modelländerungen angewendet. Zusätzlich haben wir das Konzept prototypisch implementiert. Unsere Implementierung haben wir ausführlich evaluiert. Durch eine funktionale Analyse anhand von Software-Tests konnten wir die Funktionalität unseres Ansatzes zeigen. Eine zusätzlich durchgeführte empirische Evaluation bestätigt diese Aussage, zeigt aber auch Einbußen bei Laufzeit und benötigtem Speicherplatz, die durch die Verschlüsselung in Kauf genommen werden müssen. Die für die empirische Evaluation benötigten realitätsnahen Fallstudien haben wir aus Github-Projekten abgeleitet.  +
In today’s world, most datasets do not have only a small number of attributes. The high number of attributes, which are referred to as dimensions, hinder the search of objects that normally not occur. For instance, consider a money transaction that has been not legally carried out. Such objects are called outlier. A common method to detect outliers in high dimensional datasets are based on the search in subspaces of the dataset. These subspaces have the characteristics to reveal possible outliers. The most common evaluation of algorithms searching for subspaces is based on benchmark datasets. However, the benchmark datasets are often not suitable for the evaluation of these subspace search algorithms. In this context, we present a method that evaluates subspace search algorithms without relying on benchmark datasets by hiding outliers in the result set of a subspace search algorithm.  +
One research field of High Performance Computing (HPC) is computing clusters. Computing clusters are distributed memory systems where different machines are connected through a network. To enable the machines to communicate with each other they need the ability to pass messages to each other through the network. The Message Passing Interface (MPI) is the standard in implementing parallel systems for distributed memory systems. To enable software architects in predicting the performance of MPI-based systems several approaches have been proposed. However, those approaches depend either on an existing implementation of a program or are tailored for specific programming languages or use cases. In our approach, we use the Palladio Component Model (PCM) that allows us to model component-based architectures and to predict the performance of the modeled system. We modeled different MPI functions in the PCM that serve as reusable patterns and a communicator that is required for the MPI functions. The expected benefit is to provide patterns for different MPI functions that allow a precise modelation of MPI-based systems in the PCM. And to obtain a precise performance prediction of a PCM instance.  +
In the past decades, there has been an increased interest in the development of automated vehicles. Automated vehicles are vehicles that are able to drive without the need for constant interaction by a human driver. Instead they use multiple sensors to observe their environment and act accordingly to observed stimuli. In order to avoid accidents, the reaction to these stimuli needs to happen in a sufficiently short amount of time. To keep implementation overhead and cost low, it is highly beneficial to know the reaction time of a system as soon as possible. Thus, being able to assess their performance already at design time allows system architects to make informed decisions when comparing software components for the use in automated vehicles. In the presented thesis, I analysed the applicability of architecture-based performance prediction in the context of automated vehicles using the Palladio Approach. In particular, I focused on the prediction of design-time worst-case reaction time as the reaction ability of automated vehicles, which is a crucial metric when assessing their performance.  +
Manual feature engineering is a time consuming and costly activity, when developing new Machine Learning applications, as it involves manual labor of a domain expert. Therefore, efforts have been made to automate the feature generation process. However, there exists no large benchmark of these Automated Feature Generation methods. It is therefore not obvious which method performs well in combination with specific Machine Learning models and what the strengths and weaknesses of these methods are. In this thesis we present an evaluation framework for Automated Feature Generation methods, that is integrated into the scikit-learn framework for Python. We integrate nine Automated Feature Generation methods into this framework. We further evaluate the methods on 91 datasets for classification problems. The datasets in our evaluation have up to 58 features and 12,958 observations. As Machine Learning models we investigate five models including state of the art models like XGBoost.  +
This thesis aims to evaluate the component architecture generated by component-based software systems after reverse engineering. The evaluation method involves performing a manual analysis of the respective software systems and then comparing the component architecture obtained through the manual analysis with the results of reverse engineering. The goal is to evaluate a number of parameters, with a focus on correctness, related to the results of reverse engineering. This thesis presents the specific steps and considerations involved in manual analysis. It will also perform manual analysis on selected software systems that have already undergone reverse engineering analysis and compare the results to evaluate the differences between reverse engineering and ground truth. In summary, this paper evaluates the accuracy of reverse engineering by contrasting manual analysis with reverse engineering in the analysis of software systems, and provides some direction and support for the future development of reverse engineering.  +
Die Wahrung von Vertraulichkeit ist essentiell für moderne Softwaresysteme. Eine Überprüfung auf Probleme bereits während der Entwurfsphase ermöglicht eine effiziente Fehlerbehebung. Mit dem datenzentrierten Palladio-Komponenten-Modell (DPCM) ist eine solche Prüfung möglich. Im Rahmen der Arbeit soll der Ansatz über eine realistische Fallstudie anhand der Corona-Warn-App evaluiert werden. Dazu müssen zunächst aus den Entwurfsdokumenten Vertraulichkeitsanforderungen extrahiert werden, um anschließend deren Einhaltung prüfen zu können. Um den Ansprüchen an ein systematisches und nachvollziehbares Vorgehen bei der Evaluierung zu genügen, wird zunächst ein Prozess zur Anforderungsextraktion konzipiert. Die Evaluation des DPCM findet anschließend für die Qualitätseigenschaften der Ausdrucksmächtigkeit und Genauigkeit statt. Das Ergebnis der Arbeit besteht aus einem Katalog von Vertraulichkeitsanforderungen für die Corona-Warn-App, dem entwickelten Extraktionsprozess, sowie initialen Ergebnissen für die Evaluation des DPCM.  +
Die binäre Klassifikation von Daten mit unbalancierter Klassenverteilung ist ein relevantes Data-Mining-Problem. In vielen Anwendungsgebieten tritt die interessierende Klasse viel seltener auf als die Mehrheitsklasse, beispielsweise in der medizinischen Diagnose. Standard-Lernalgorithmen und -Evaluationsmaße sind in solchen Situationen nicht gut geeignet. In der Literatur gibt es viele Ansätze, die dieses Problem mit geeigneteren Evaluationsmaßen und Lernmethoden adressieren. Die Frage, unter welchen Umständen welche der Lernmethoden am besten funktionieren, soll durch eine umfassende experimentelle Vergleichsstudie beantwortet werden. Ein weiteres Ziel dieser Masterarbeit ist, den Einfluss verschiedener Datencharakteristiken auf die Performanz der Methoden mithilfe von Meta-Learning zu untersuchen.  +
Die binäre Klassifikation von Daten mit unbalancierter Klassenverteilung ist ein relevantes Data-Mining-Problem. In vielen Anwendungsgebieten tritt die interessierende Klasse wesentlich seltener auf als die Mehrheitsklasse. Standard-Klassifikationsalgorithmen und -Evaluationsmaße sind in solchen Situationen nicht gut geeignet. In der Literatur gibt es viele Ansätze, die dieses Problem mit geeigneteren Evaluationsmaßen und Lernmethoden adressieren. Wir führen eine umfassende experimentelle Vergleichsstudie mit vielen Lernmethoden, Evaluationsmaßen und Klassifikationsalgorithmen durch, um herauszufinden, wie gut die Performanz der Methoden auf einer Vielzahl von Datensätzen ist. Im zweiten Teil unserer Arbeit untersuchen wir den Zusammenhang zwischen verschiedenen Datencharakteristiken und der Performanz der Methoden mithilfe von Meta-Learning.  +
Programming assignments for students are target of plagiarism. Especially for graded assignments, instructors want to detect plagiarism among the students. For larger courses, however, manual inspection of all submissions is a resourceful task. For this purpose, there are numerous tools that can help detect plagiarism in submissions. Many well-known plagiarism detection tools are token-based detectors. In an abstraction step, they map source code to a list of tokens, and such lists are then compared with each other. While there is much research in the area of comparison algorithms, the mapping is often only considered superficially. In this work, we conduct two experiments that address the issue of token abstraction. For that, we design different token abstractions and explain their differences. We then evaluate these abstractions using multiple datasets. We show that different abstractions have pros and cons, and that a higher abstraction level does not necessarily perform better. These findings are useful when adding support for new programming languages and for improving existing plagiarism detection tools. Furthermore, the results can be helpful to choose abstractions tailored to specific requirements.  +
Policy makers face the difficult task to make far-reaching decisions that impact the life of the the entire population based on uncertain parameters that they have little to no control over, such as environmental impacts. Often, they use scenarios in their decision making process. Scenarios provide a common and intuitive way to communicate and characterize different uncertain outcomes in many decision support applications, especially in broad public debates. However, they often fall short of their potential, particularly when applied for groups with diverse interests and worldviews, due to the difficulty of choosing a small number of scenarios to summarize the entire range of uncertain future outcomes. Scenario discovery addresses these problems by using statistical or data-mining algorithms to find easy-to-interpret, policy-relevant regions in the space of uncertain input parameters of computer simulation models. One of many approaches to scenario discovery is subgroup discovery, an approach from the domain of explainable Artificial Intelligence. In this thesis, we test and evaluate multiple different subgroup discovery methods for their applicabilty to scenario discovery applications.  +
Large language models like T5 perform excellently on various NLI benchmarks. However, it has been shown that even small changes in the structure of these tasks can significantly reduce accuracy. I build upon this insight and explore how robust the NLI skills of T5 are in three scenarios. First, I show that T5 is robust to some variations in the MNLI pattern, while others degenerate performance significantly. Second, I observe that some other patterns that T5 was trained on can be substituted for the MNLI pattern and still achieve good results. Third, I demonstrate that the MNLI pattern translate well to other NLI datasets, even improving accuracy by 13% in the case of RTE. All things considered, I conclude that the robustness of the NLI skills of T5 really depend on which alterations are applied.  +
A recent trend in the development of enterprise systems constitutes the design of software projects as microservices. When migrating monolithic systems, architectural performance models can provide a valuable contribution. In this thesis, we present an approach for the automatic extraction of performance models based on tracing information. The extracted performance models reconstruct architecture, internal structure, control flow as well as usage scenarios of the system and can therefore support the migration process by simulations. The thesis includes an analysis of current standards in the field of distributed tracing, covering both the integration and the granularity of the extracted data. The architecture of our extraction process allows a flexible, vendor-independent adaptation according to the own system landscape. We also provide an evaluation of our approach, which includes aspects concerning the integration of tracing mechanisms, the examination of the extracted model elements as well as the deviation between model predictions and measurements on the real system.  +
Ein Leistungsmodell ermöglicht den Software-Entwicklern eine frühzeitige Analyse von programmierten Komponenten in Bezug auf Leistungseigenschaften. Um Inkonsistenzen zu vermeiden, soll das Leistungsmodell angepasst werden, sobald Entwickler den Quellcode ändern. Eine Aktualisierung von Leistungsmodellen ist kein triviales Problem. Der Ansatz "kontinuierliche Integration von Leistungsmodellen" (Abkürzung: KILM) führt eine automatische inkrementelle Aktualisierung von Leistungsmodellen durch und bietet somit eine Lösung des Problems an. Ein wichtiger Vorteil von diesem Ansatz ist, dass das Leistungsmodell weder manuell angepasst (aufwändig und fehleranfällig), noch nach jeder Änderung neu aufgebaut (ineffizient und aufwändig) werden muss. In dieser Bachelorarbeit wurde der erste Schritt für die vorgestellte Lösung implementiert: der KILM-Ansatz wird mit Git-Repository verknüpft, Änderungen werden aus Commits extrahiert und auf Code- und Leistungsmodelle angewandt. Die Implementierung wurde in einer Fallstudie evaluiert. Auf einem Projekt wurden unterschiedliche Arten von Änderungen simuliert und die Korrektheit von den aktualisierten Code- und Leistungsmodellen überprüft. Die Ergebnisse bestätigen korrekte Aktualisierung von Code- und Leistungsmodellen in den 96,6 % der durchgeführten Tests.  +
F
In jedem Software-System, in dem Nutzerdaten anfallen, muss deren Verarbeitung strengen Auflagen unterliegen. Das bislang strengste und am weitesten verbreitete dieser Gesetze ist die Europäische Datenschutz-Grundverordnung. Um unter dieser Verordnung Daten legal zu verarbeiten, ist es für Software-Entwickler sehr günstig, diese so früh wie möglich im Entwicklungsprozess zu berücksichtigen. Eine Möglichkeit, um datenschutzrechtliche Verstöße zur Designzeit festzustellen, ist die Datenflussanalyse. Dabei werden dem konventionellen Software-Modell noch Eigenschaften hinzugefügt, ebenso wie den modellierten Daten. Aus dem Aufruf-Graphen kann dann ein Datenflussdiagramm erstellt werden, welches anzeigt, welche Daten von welchen Komponenten wohin fließen. Diese Arbeit beschreibt eine Fallstudie, in welcher die Datenflussanalyse in einem konkreten System untersucht wird. Zunächst werden Anforderungen aufgestellt, welche eine Fallstudie der Bereiche Mobilität und Datenschutz erfüllen muss. Der wissenschaftliche Beitrag dieser Arbeit liegt dann in diesen Anforderungen sowie der testweisen Durchführung der Fallstudie. Dabei wird ein fiktives Ride-Pooling Unternehmen modelliert. Das Modell wird mithilfe der Datenflussanalyse untersucht, und aus den Ergebnissen werden Schlüsse über die Analyse gezogen.  +
Serverless computing allows software engineers to develop applications in the cloud without having to manage the infrastructure. The infrastructure is managed by the cloud provider. Therefore, software engineers treat the underlying infrastructure as a black box and focus on the business logic of the application. This lack of inside knowledge leads to an increased testing difficulty as applications tend to be dependent on the infrastructure and other applications running in the cloud environment. While isolated unit and functional testing is possible, integration testing is a challenge, as reliable results are often only achieved after deploying to the deployment environment because infrastructure specifics and other cloud services are only available in the actual cloud environment. This leads to a laborious development process. For this reason, this thesis deals with creating testing strategies for serverless edge computing to reduce feedback cycles and speed up development time. For evaluation, the developed testing strategies are applied to Lambda@Edge in AWS.  +
Datasets, like gene profiles from cancer patients, can have a large number of features. In order to apply prediction techniques, a lot of computing time and memory is needed. A solution to this problem is to reduce the number of features, whereby the main challenge is to still receive a satisfactory prediction performance afterwards. There are many state-of-the-art feature selection techniques, but they all have their limitations. We use Bayesian optimization, a technique to optimize expensive black-box-functions, and apply it to the problem of feature selection. Thereby, we face the challenge to adjust the standard optimization procedure to work with a discrete-valued search space, but also to find a way to optimize the acquisition function efficiently. Overall, we propose 10 different Bayesian optimization feature selection approaches and evaluate their performance experimentally on 28 OpenML classification datasets. We do not only compare the approaches among themselves, but also to 9 state-of-the-art feature selection approaches. Our results state that especially four of our approaches perform well and can compete to most state-of-the-art approaches in terms of prediction performance. In terms of runtime, all our approaches do not perform outstandingly good, but similar to some filter and wrapper approaches.  +
To build highly accurate and robust machine learning algorithms practitioners require data in high quality, quantity and diversity. Available time series data sets often lack in at least one of these attributes. In cases where collecting more data is not possible or too expensive, data-generating methods help to extend existing data. Generation methods are challenged to add diversity to existing data while providing control to the user over what type of data is generated. Modern methods only address one of these challenges. In this thesis we propose a novel generation algorithm that relies on characteristics of time series to enable control over the generation process. We combine classic interpretable features with unsupervised representation learning by modern neural network architectures. Further we propose a measure and visualization for diversity in time series data sets. We show that our approach can create a controlled set of time series as well as adding diversity by recombining characteristics across available instances.  +
Due to privacy concerns and possible high collection costs of real time series data, access to high quality datasets is difficult to achieve for machine learning practitioners. The generation of synthetic time series data enables the study of model robustness against edge cases and special conditions not found in the original data. A requirement to achieve such results in applications when relying on synthetic data is the availability of fine-grained control over the generation to be able to meet the specific needs of the user. Classical approaches relying on autoregressive Models e.g. ARIMA only provide a basic control over composites like trend, cycles, season and error. A promising current approach is to train LSTM Autoencoders or GANs on a sample dataset and learn an unsupervised set of features which in turn can be used and manipulated to generate new data. The application of this approach is limited, due to the not human interpretable features and therefore limited control. We propose various methods to combine handcrafted and unsupervised features to provide the user with enhanced influence of various aspects of the time series data. To evaluate the performance of our work we collected a range of various metrics which were proposed to work well on synthetic data. We will compare these metrics and apply them to different datasets to showcase if we can achieve comparable or improved results.  +
The talk will be held remotely from Zurich at https://global.gotomeeting.com/join/935923965 and will be streamed to room 348. You can attend via GotoMeeting or in person in room 348. Feedback mechanisms have not yet been sufficiently researched in the context of smart systems. From the research and the industrial perspective, this motivates for investigations on how users could be supported to provide appropriate feedback in the context of smart systems. A key challenge for providing such feedback means in the smart system context might be to understand and consider the needs of smart system users for communicating their feedback. Thesis Goal: The goal of this thesis is the creation of innovative feedback mechanisms, that are tailored to a specific context within the domain of smart systems. Already existing feedback mechanisms for software in general and smart systems in particular will be assessed and the users´ needs regarding those mechanisms will be examined. Based on this, improved feedback mechanisms will be developed, either by improving on existing ones or by inventing and implementing new concepts. The overall aim of these innovative feedback mechanisms is to enable smart system users to effectively and efficiently give feedback in the context of smart systems.  +
The users of the location-based services often want to find short routes that pass through multiple Points-of-Interest (PoIs); consequently, developing trip planning queries that can find the shortest routes that passes through user-specified categories has attracted considerable attention. If multiple PoI categories, e.g., restaurant and shopping mall, are in an ordered list (i.e., a category sequence), the trip planning query searches for a sequenced route that passes PoIs that match the user-specified categories in order. Existing approaches find the shortest route based on the user query. A major problem with the existing approaches is that they only take the order of POIs and output the routes which match the sequence perfectly. However, users who they are interested in applying more constraints, like considering the hierarchy of the POIs and the relationship among sequence points, could not express their wishes in the form of query users. Example below, illustrates the problem: Example: A user is interested in visiting three department stores (DS) but she needs to have some food after each visit. It is important for the user to visit three different department stores but the restaurants could be the same. How could the user, express her needs to a trip planning system? The topic of this bachelor thesis is to design such a language for trip planning system which enables the user to express her needs in the form of user queries in a flexible manner.  +
G
Software-Testing ist notwendig, um die Qualität und Funktionsfähigkeit von Softwareartefakten sicherzustellen. Es gibt sowohl automatisierte als auch manuelle Testverfahren. Allerdings sind automatisierte Verfahren, sowie menschliches Testen und skriptbasiertes Testen in Bezug auf Zeitaufwand und Kosten weniger gut skalierbar. Monkey-Testing, das durch zufällige Klicks auf der Benutzeroberfläche gekennzeichnet ist, berücksichtigt die Applikationslogik oft nicht ausreichend. Der Fokus dieser Bachelorarbeit liegt auf dem automatisierten neuroevolutionären Testverfahren, das neuronale Netze als Testagenten verwendet und sie mithilfe evolutionärer Algorithmen über mehrere Generationen hinweg verbessert. Um das Training der Agenten zu ermöglichen und den Vergleich zum Monkey-Testing zu ermöglichen, wurde eine simulierte Version der Lernplattform Anki implementiert. Zur Beurteilung der Testagenten wurde eine Belohnungsstruktur in der simulierten Anwendung entwickelt. Die Ergebnisse zeigen, dass das neuroevolutionäre Testverfahren im Vergleich zum Monkey-Testing in Bezug auf erreichte Belohnungen signifikant besser abschneidet. Dadurch wird die Applikationslogik im Testprozess besser berücksichtigt.  +
Gamification has emerged as a prominent approach in the field of education, aiming to enhance students’ motivation and foster productive and successful long-term learning experiences. This research paper delves into the correlation between various game design elements and intrinsic motivation within educational contexts. Despite the ongoing challenge of identifying the optimal game design elements to augment intrinsic motivation for individual students, this study presents insights drawn from an extensive systematic literature review, encompassing 24 scholarly papers. From the comprehensive analysis, ten distinct game elements were selected for examination: badges, points, leaderboards, virtual currency, progress bars, achievements, avatars, concept maps, storytelling, and feedback. In order to assess the potential of each game design element to heighten intrinsic motivation, a survey utilizing self-created mockups was conducted. The survey outcomes reveal noteworthy trends, particularly emphasizing the combinations of concept maps and achievements, as well as avatars and virtual currency, as highly popular among participants. Moreover, correlations were identified between the frequency of video game engagement and specific game design elements. For instance, individuals who frequently engage in video games displayed a proclivity for selecting leaderboards. Conversely, the study found no significant influence of player types on the preference for specific game design elements. Overall, this research contributes to the advancement of gamification in education by shedding light on the relationship between game design elements and intrinsic motivation. These insights pave the way for the development of tailored gamified approaches that can positively impact students’ motivation.  +
Dependency estimation is an important problem in statistics and is applied frequently in data science. As modern datasets can be very large, dependency estimators should be efficient and leverage as much information from data as possible. Traditional bivariate and multivariate dependency estimators are only capable to estimate dependency between two or n one-dimensional datasets, respectively. In this thesis, we are interested in how to develop estimators that can estimate the dependency between n multidimensional datasets, which we call "generalized dependency estimators". We extend the recently introduced methodology of Monte Carlo Dependency Estimation (MCDE), an effective and efficient traditional multivariate dependency estimator. We introduce Generalized Monte Carlo Dependency Estimation (gMCDE) and focus in particular on the highly relevant subproblem of generalized dependency estimation, known as canonical dependency estimation, which aims to estimate the dependency between two multidimensional datasets. We demonstrate the practical relevance of Canonical Monte Carlo Dependency Estimation (cMCDE) by applying it to feature selection, introducing two methodologies for anytime supervised filter feature selection, Canonical Monte Carlo Feature Selection (cMCFS) and Canonical Multi Armed Bandit Feature Selection (cMABFS). cMCFS directly applies the methodology of cMCDE to feature selection, while cMABFS treats the feature selection problem as a multi armed bandit problem, which utilizes cMCDE to determine relevant features.  +
Quantifying dependencies among variables is a fundamental task in data analysis. It allows to understand data and to identify the variables required to answer specific questions. Recent studies have positioned Monte Carlo Dependency Estimation (MCDE) as a state-of-the-art tool in this field. MCDE quantifies dependencies as the average discrepancy between marginal and conditional distributions. In practice, this value is approximated with a dependency estimator. However, the original implementation of this estimator converges rather slowly, which leads to suboptimal results in terms of statistical power. Moreover, MCDE is only able to quantify dependencies among univariate random variables, but not multivariate ones. In this thesis, we make 2 major improvements to MCDE. First, we propose 4 new dependency estimators with faster convergence. We show that MCDE equipped with these new estimators achieves higher statistical power. Second, we generalize MCDE to GMCDE (Generalized Monte Carlo Dependency Estimation) to quantify dependencies among multivariate random variables. We show that GMCDE inherits all the desirable properties of MCDE and demonstrate its superiority against the state-of-the-art dependency measures with experiments.  +
While standard machine learning approaches rely solely on data to learn relevant patterns, in certain fields, this may not be sufficient. Researchers in the Healthcare domain, have successfully applied causal domain knowledge to improve prediction quality of machine learning models, especially for rare diseases. The causal domain knowledge informs the machine learning model about similar diseases, thus improving the quality of the predictions. However, some domains, such as Cloud Systems Monitoring, lack readily available causal domain knowledge, and thus the knowledge must be approximated. Therefore, it is important to have a systematic investigation of the processes and design decision that affect the knowledge generation process. In this study, we showed how causal discovery algorithms can be employed to generate causal domain knowledge from raw textual logs in the Cloud Systems Monitoring domain. We also investigated the impact of various design choices on the domain knowledge generation process through systematic testing across multiple datasets and shared the insights we gained. To our knowledge, this is the first time such an investigation has been conducted.  +
Graph Neural Networks (GNNs) have demonstrated great potential for simulating physical systems that can be represented as graphs. However, training GNNs presents unique challenges due to the complex nature of graph data. The focus of this thesis is to examine their learning abilities by developing a GNN-based surrogate model for the injection molding process from materials science. While numerical simulations can accurately model the mold filling with molten plastic, they are computationally expensive and require significant trial-and-error for parameter optimization. We propose a GNN-based model that can predict the fill times and physical properties of the mold filling process. We model the mold geometry as a static graph and encode the process information into node, edge, and global features. We employ a self-attention mechanism to enhance the learning of the direction and magnitude of the fluid flow. To further enforce the physical constraints and behaviors of the process, we leverage domain knowledge to construct features and loss functions. We train our model on simulation data, using a multi-step loss to capture the temporal dependencies and enable it to iteratively predict the filling for unseen molds. Thereby, we compare our models with different distance-based heuristics and conventional machine learning models as baselines in terms of predictive performance, computational efficiency, and generalization ability. We evaluate our architectural and training choices, and discuss both the potential applications and challenges of using GNNs for surrogate modeling of injection molding.  +
H
Hidden outliers represent instances of disagreement between a full-space and an ensemble. This adversarial nature naturally replicates the subspace behavior that high-dimensional outliers exhibit in reality. Due to this, they have been proven useful for representing complex occurrences like fraud, critical infrastructure failure, and healthcare data, as well as for their use in general outlier detection as the positive class of a self-supervised learner. However, while interesting, hidden outliers' quality highly depends on the number of subspaces selected in the ensemble out of the total possible. Since the number of subspaces increases exponentially with the number of features, this makes high-dimensional applications of Data Analysis, such as Computer Vision, computationally unfeasible. In this thesis, we are going to study the generation of hidden outliers on the embedded data manifold using deep learning techniques to overcome this issue. More precisely, we are going to study the behavior, characteristics, and performance in multiple use-cases of hidden outliers in the data manifold.  +
Diese Arbeit untersucht die Erklärbarkeit von Sentimentanalyse. 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. Trotzdem ist es oftmals wünschenswert, ohne Kenntnis des zugrundeliegenden Modells eine Erklärung für die Entscheidung des Klassifikators zu liefern. Der LIME-Algorithmus ist ein gängiger Erklärer für das Problem, der jedoch nur auf Wortebene erklärt. Im Rahmen dieser Arbeit wurde ein Erklärer entwickelt, der auch die größeren Bausteine der Texthierarchie wie Sätze oder Absätze berücksichtigt. Dadurch liefert er einen höheren Informationsgehalt als LIME und er ermöglicht interaktive Erklärungen. Anwendungsfall der Untersuchung sind eine Datenbank aus Filmrezensionen sowie Klassifikatoren in Verbindung mit Word Embeddings.  +
Outlier detection in high-dimensional spaces is a challenging task because of consequences of the curse of dimensionality. Neural networks have recently gained in popularity for a wide range of applications due to the availability of computational power and large training data sets. Several studies examine the application of different neural network models, such an autoencoder, self-organising maps and restricted Boltzmann machines, for outlier detection in mainly low-dimensional data sets. In this diploma thesis we investigate if these neural network models can scale to high-dimensional spaces, adapt the useful neural network-based algorithms to the task of high-dimensional outlier detection, examine data-driven parameter selection strategies for these algorithms, develop suitable outlier score metrics for these models and investigate the possibility of identifying the outlying dimensions for detected outliers.  +
I
In der modernen Softwareentwicklung sind modellbasierte Analysen weit verbreitet. Software-Metriken wie die Vorhersage der Cache-Nutzung haben heute ein breites Anwendungsspektrum. Diese Analysen bedürfen ebenso wie traditionelle objektorientierte Programme der Pflege. Bad Smells und ihre Auswirkungen in objektorientiertem Quellcode sind gründlich erforscht worden. Dies fehlt bei der modellbasierten Analyse. Wir haben uns mit objektorientierten Bad Smells beschäftigt und nach ähnlichen Problemen in der modellbasierten Analyse gesucht. Schlechte Gerüche in der Analyse sind ein Faktor, der zur Qualität der Analysesoftware beiträgt. Eine geringere Qualität erschwert den Entwicklungsprozess der Analyse. Wir haben zehn neue Bad Smells entdeckt. Wir haben Algorithmen zur Identifizierung und zum Refaktorisieren für sie entwickelt. Wir stellen Implementierungen der Identifizierungsalgorithmen zur Verfügung und bewerten sie an- hand realer Software. Wir haben versucht, Bad Smells in bestehender Analysesoftware wie Camunda zu erkennen. Wir haben diese Bad Smells in den vorhandenen Analysen gefunden.  +
Die Rückverfolgbarkeit zwischen Anforderungen ist ein wichtiger Teil der Softwareentwicklung. Zusammenhänge werden dokumentiert und können für Aufgaben wie Auswirkungs- oder Abdeckungsanalysen verwendet werden. Da das Identifizieren von Rückverfolgbarkeitsverbindungen von Hand zeitaufwändig und fehleranfällig ist, ist es hilfreich, wenn automatische Verfahren eingesetzt werden können. Anforderungen werden häufig während der Entwicklung verfeinert. Entstehende Anforderungen lassen sich zu den ursprünglichen Anforderungen zurückverfolgen. Die entstehenden Anforderungen befinden sich auf einem anderen Abstraktionslevel. Dies erschwert die automatische Identifizierung von Rückverfolgbarkeitsverbindungen. Auf großen Textkorpora trainierte Sprachmodelle stellen eine mögliche Lösung für dieses Problem dar. In dieser Arbeit wurden drei auf Sprachmodellen basierende Verfahren entwickelt und verglichen: Feinanpassung einer Klassifikationsschicht, Ausnutzen der Ähnlichkeit der jeweiligen Satzeinbettungen und eine Erweiterung des zweiten Verfahrens, bei dem zusätzlich zunächst Cluster gebildet werden. Es wurden sechs öffentlich verfügbare Datensätze verwendet, um die Verfahren zu evaluieren. Von den drei Verfahren erreichen jeweils das Sprachmodell mit Klassifikationsschicht und das Ausnutzen der Ähnlichkeit zwischen Satzeinbettungen für drei Datensätze die besten Ergebnisse, die aber hinter den Ergebnissen von anderen aktuellen Verfahren zurückbleiben. Das feinangepasste Sprachmodell mit Klassifikationsschicht erzielt eine Ausbeute von bis zu 0,96 bei einer eher geringen Präzision von 0,01 bis 0,26.  +
The automatic identification of requirements, and their classification according to their security objectives, can be helpful to derive insights into the security of a given system. However, this task requires significant security expertise to perform. In this thesis, the capability of modern Large Language Models (such as GPT) to replicate this expertise is investigated. This requires the transfer of the model's understanding of language to the given specific task. In particular, different prompt engineering approaches are combined and compared, in order to gain insights into their effects on performance. GPT ultimately performs poorly for the main tasks of identification of requirements and of their classification according to security objectives. Conversely, the model performs well for the sub-task of classifying the security-relevance of requirements. Interestingly, prompt components influencing the format of the model's output seem to have a higher performance impact than components containing contextual information.  +
Energy data can be used to gain insights into production processes. In the industrial domain, sensors have high sampling rates, resulting in large time series. Therefore, aggregation techniques are used to reduce computation times and memory requirements of data mining techniques like clustering. However, it is unclear what effects the aggregation has on clustering results and how these effects could be described. In our work, we propose measures to analyse the impact of aggregation on clustering and evaluate them experimentally. In particular, we aggregate with standard summary statistics and assess the impact using clustering structure measures, internal validity indices, external validity indices and instance-based forecasting. We adapt these evaluation measures and other data mining techniques to our use case. Furthermore, we propose a decision framework which allows to choose an aggregation level and other experimental settings, considering the trade-off between clustering quality and computational cost. Our extensive experiments comprise the cross-product of 6 physical attributes, 7 clustering algorithms, 7 aggregation techniques, 9 aggregation levels and 13 time series dissimilarities. We use real-world data from different machines and sensors of a production site at the KIT Campus North, extracting time series of fixed and variable length. Overall, we find that clustering results become less similar the more the data is aggregated. However, the exact effect and value of evaluation measures depends on the type of aggregate, clusteringalgorithm, dataset and dissimilarity measure.  +
The IPD defined CHQL, a query algebra that enables to formalize queries about conceptual history. CHQL is currently implemented in MapReduce which offers less flexibility for query optimization than relational database systems does. The scope of this thesis is to implement the given operators in SQL and analyze performance differences by identifying limiting factors and query optimization on the logical and physical level. At the end, we will provide efficient query plans and fast operator implementations to execute CHQL queries in relational database systems.  +
Relational database management systems have an important place in the informational revolution. Their release on the market facilitates the storing and analysis of data. In the last years, with the release of large temporal text corpora, it was proven that domain experts in conceptual history could also benefit from the performance of relational databases. Since the relational algebra behind them lacks special functionality for this case, the Conceptual History Query Language (CHQL) was developed. The first result of this thesis is an original implementation of the CHQL operators in a relational database, which is written in both SQL and its procedural extension. Secondly, we improved substantially the performance with the trigram indexes. Lastly, the query plan analysis reveals the problem behind the query optimizers choice of inefficient plans, that is the inability of predicting correctly the results from a stored function.  +
Auch wenn der Erhalt von Feedback ein wichtiger Teil des Lernprozesses ist, gibt es zu manchen Ansätzen für Feedback bisher kaum wissenschaftliche Arbeiten, welche diese in Onlinekursen isoliert betrachten. Deshalb wurden für diese Arbeit zwei Ansätze für eine genauere Untersuchung ausgewählt: Erstens ein Fortschrittsbalken zur Anzeige des Kursfortschritts und zweitens ein Overlay mit durch den Kursersteller einstellbaren Nachrichten. Damit die Auswirkungen untersucht werden können, wurden diese Feedbackmechanismen auf eine bereits bestehende Webseite mit Onlinekursen, namens "Rockstartit", implementiert. Die Implementation der Feedbackmechanismen auf der in "WordPress" mit dem Plugin "MasterStudy LMS" entwickelten Webseite, wurde dokumentiert und bewertet. Zuletzt wurde eine Evaluation zum Fortschrittsbalken durchgeführt und ein Ansatz für eine Evaluation des Overlays vorgeschlagen.  +
Durch die Verwendung von Software-Anwendungen in verschiedenen Kontexten entsteht eine überladene Benutzeroberfläche. Zur Unterteilung der Benutzeroberfläche wird ein Authority-Mechanismus verwendet. Die bisherigen Konzepte für einen Authority-Mechanismus sind entweder nicht in Eclipse 4 RCP umsetzbar oder erfüllen nicht die Anforderungen, die von der Industrie an einen Authority-Mechanismus gestellt werden. Diese Lücke wird mit einem Konzept für einen dynamischen Authority-Mechanismus geschlossen. Durch eine Implementierung des Authority-Mechanismus in einer bestehenden Software-Anwendungen aus der Industrie wird die Kompatibilität des Konzeptes mit den Anforderungen bestätigt.  +
SAP Document Information Extraction (DOX) is a service to extract logical entities from scanned documents based on the well-known Transformer architecture. The entities comprise header information such as document date or sender name, and line items from tables on the document with fields such as line item quantity. The model currently needs to be trained on a huge number of labeled documents, which is impractical. Also, this hinders the deployment of the model at large scale, as it cannot easily adapt to new languages or document types. Recently, pretraining large language models with self-supervised learning techniques have shown good results as a preliminary step, and allow reducing the amount of labels required in follow-up steps. However, to generalize self-supervised learning to document understanding, we need to take into account different modalities: text, layout and image information of documents. How to do that efficiently and effectively is unclear yet. The goal of this thesis is to come up with a technique for self-supervised pretraining within SAP DOX. We will evaluate our method and design decisions against SAP data as well as public data sets. Besides the accuracy of the extracted entities, we will measure to what extent our method lets us lower label requirements.  +