Group 928Created with Sketch.
Group 67Created with Sketch.
Group 125Created with Sketch.
Group 126Created with Sketch.
Group 126Created with Sketch.
Group 928Created with Sketch.
Group 67Created with Sketch.
Group 125Created with Sketch.
Group 126Created with Sketch.

Bisherige Abschlussarbeiten

INternet of things

Das Internet of Things und Industrie 4.0 sind aktuell wichtige, innovative Themenfelder. Um Use Cases in diesem Umfeld zu realisieren, sind Plattform-Lösungen notwendig. Diese beinhalten typische Verwaltungsfunktionen für Dinge oder Mechanismen zur Verarbeitung von Sensordaten. Den großen Cloud-Anbietern (Amazon AWS, Microsoft Azure oder Google) ist dieser Trend natürlich nicht entgangen. Sie bieten mittlerweile die Bestandteile von IoT-Plattformen im Rahmen ihrer Cloud-Angebote an.

Im Rahmen der Bachelor-Arbeit soll ein Katalog an Kriterien entwickelt werden, um diese Plattformen miteinander vergleichen zu können. Der Katalog soll sowohl technische Kriterien (z.B. angebotene Features, Qualität der angebotenen Leistungen), als auch nicht-technische Kriterien wie Aufwand zur Umsetzung oder laufende Kosten enthalten.

Die Evaluierung der Plattformen soll anhand eines praktischen Beispiels erfolgen.

Der Einsatz von Internet of Things Geräten ermöglicht in der heutigen Welt neue und innovative Wege Daten zu erheben. Neben Anwendungen in gewerblichen Prozessen etablieren sich IoT-Geräte auch immer mehr im privaten Umfeld. Daher findet man bereits heute eine Vielzahl an Geräten, welche beispielsweise für die Heimautomation verwendet werden. Die dadurch erhobenen Daten durchlaufen dabei mehrere Anwendungen, die zur Verarbeitung und schließlich zur Auswertung in der Cloud betrieben werden. Im Rahmen dessen entstehen jede Menge neuer Technologien, die sowohl die Entwicklung als auch den Betrieb dieser Applikationen unterstützen. Ziel dieser Arbeit ist die Ausarbeitung eines Konzepts, das den Betrieb von Applikationen auf einer Serverless-Plattform ermöglicht. Durch die Entwicklung eines Prototypen basierend auf modernen Technologien soll die Verarbeitung der von IoT-Geräten bereitgestellten Daten realisiert werden. Alle daraus resultierenden Daten werden über Log-Ausgaben temporär gespeichert. Die aus der Anwendung gewonnenen Erkenntnisse werden zum Schluss bewertet und zusammengefasst.

Auf dem Firmengelände der eXXcellent solutions gibt es eine geringe Anzahl an Parkplätzen. Diese Menge reicht nicht aus, um jedem Angestellten einen Parkplatz zur Verfügung zu stellen. Um dem weiten Weg von öffentlichen Parkplätzen bis zum Firmengelände, der bei Dunkelheit, besonders für Frauen, ein Sicherheitsrisiko darstellt, entgegenzuwirken, sollen dynamische Frauenparkplätze auf dem Firmengelände eingeführt werden. Um dies umzusetzen, soll ein „Predictive Analytics“-Ansatz verwendet werden. Dieser soll Muster in der Parkplatzbelegung ausfindig machen, um täglich vorhersagen zu können, wie viele Mitarbeiterinnen mit dem Fahrzeug zur Arbeit erscheinen. Für diese Mitarbeiterinnen sollen daraufhin Parkplätze reserviert werden. Dies kann durch verschiedene Analysemodelle realisiert werden. Das Ziel der Bachelor-Arbeit ist durch die Evaluation der Modelle, die sich im Algorithmus, den Datensätzen sowie den Ausprägungen der Algorithmen unterscheiden, das bestmögliche Analysemodell, für die vorgestellt Situation, ausfindig zu machen.

Eine große Herausforderung beim Einsatz eines IoT-Funkstandards wie LoRaWAN ist die entsprechende Verteilung bzw. Platzierung der Gateways im Stadtgebiet. So sollten sich die Standorte aller installierten Sensoren innerhalb des Empfangsradius eines Gateways befinden, um stets aktuelle Messwerte übertragen zu können. Ziel dieser Bachelorarbeit ist es, die Qualität des LoRa-Netzes beispielhaft anhand der bestehenden Infrastruktur des Projekts ‚CitySens‘ in der Stadt Ulm zu analysieren.

SAP

Die Überprüfung der Einhaltung von Entwicklungsrichtlinien kann auf unterschiedliche Art erfolgen und unterscheidet sich unter anderem im Automatisierungsgrad der Überprüfung: Eine technische Form der Überprüfung kann mit einem Tool, das zu festen Zeitpunkten, beispielsweise bei jedem Merge Request oder Code Review, den eingecheckten Code auf die Einhaltung der Guidelines überprüft, erfolgen. Diese Form setzt auf eine automatisierte und somit schnelle und unkomplizierte Prüfung der Einhaltung. Eine organisatorische Form kann durch das manuelle Durchgehen einer Checkliste bei jedem Code Review geschehen. Hierbei wird versucht ein Bewusstsein unter den Entwicklern für die Entwicklungsrichtlinien zu schaffen. Ziel der Arbeit ist es herauszufinden, welche Art der Überprüfung erfolgversprechender ist.

 

Business Applications

Seit des Inkrafttretens des Behindertengleichstellungsgesetzes müssen Webseiten von Trägern öffentlicher Gewalt barrierefrei sein, sodass diese auch von Menschen mit Behinderungen bedient werden können. Diese Pflicht betrifft zwar noch nicht alle Webseiten, jedoch liegt der Fokus auch bei der Entwicklung von privaten Webseiten immer mehr auf der Gleichberechtigung aller Menschen. Das Ziel dieser Bachelorarbeit ist es, die Probleme, die durch eine Behinderung bei der Benutzung von Webseiten auftreten können, zu definieren, Möglichkeiten zur Optimierung darzustellen und diese in bereits bestehende Websites zu implementieren.

This work is done in the context of knowledge collection and its practical illustration for training purposes. The aim is to investigate the self-contained system architecture and demonstrate it in an exemplary system strongly oriented towards theory.
The theory described in this thesis can be seen as a guide to the design and implementation of a self-contained system, which allows interested parties to gain an overview of the architecture and its implementation. The knowledge collection contains the principles of the self-contained systems architecture as well as the recommended procedures to implement it. Included are the separation of a business use case into individual SCS, their possible internal structure, data replication, and integration. The combination of theoretical basics and a complete matching implementation distinguishes this work from already existing explanations.
The practical implementation includes the design and implementation of an ordering system for waiters in a fictional restaurant. After the requirements analysis, the use case is cut into individual self-contained systems according to the theory and implemented. The implementation is evaluated against the given requirements and the self-contained system principles. Decisions regarding implementation and scope are discussed, and alternatives are shown.

Im Zuge des Designs und der Implementierung von Softwareprojekten seitens der eXXcellent solutions werden eine Vielzahl von architekturrelevanten Dokumenten benötigt. Diese Dokumente werden im Moment in unterschiedlicher Ausprägung, Qualität, Quantität und Form erstellt.

In dieser Arbeit soll am Beispiel der Datenbankdokumentation untersucht werden, welche Möglichkeiten es für die automatische Generierung von architekturrelevanter Dokumentation gibt und wo deren Grenzen liegen. Dabei soll auch geprüft werden wie eine manuelle Änderung der generierten Dokumente bei der nächsten automatischen Generierung berücksichtigt bzw. in welchem Maße die automatische Generierung an eigene Bedürfnisse angepasst werden kann.

Die gewonnenen Erkenntnisse sollen in eine prototypische Implementierung zur automatischen Datenbankdokumentation einfließen.

Bei eXXcellent solutions werden viele Projekte in Form von Webanwendungen entwickelt, bei welchen häufig gleiche Muster auftreten. Damit nicht in jedem Projekt diese Standard-Aspekte neu implementiert werden müssen, wurden zwei Frameworks entwickelt, die diese wiederkehrenden Aspekte den Entwicklern abnehmen. Diese Frameworks wurden für stark serverlastige Architekturen ausgelegt und sind nur eingeschränkt für moderne Webanwendungen mit eigenständiger, browserlaufenden JavaScript-Anwendung nutzbar.

Wie die Nachfolger dieser Frameworks und deren Features für eine moderne Webanwendung umgesetzt werden können sollen diese Arbeit und die Arbeit „Untersuchung eines Frameworks und Konzept zur Steuerung der Businesslogik aus der Präsentationsschicht für eine Architektur moderner Webanwendungen“ klären.

Die erste Arbeit kümmert sich dabei um die Features der Präsentationsschicht die zur Abbildung der Modelldaten auf diese genutzt werden.

Die zweite Arbeit kümmert sich um die Features der Business-Logik die zur Steuerung der BusinessLogik aus der Präsentationsschicht genutzt werden.

 

The impact of micro services on software development and the structure of software in the last years has been huge. Projects started becoming easily scalable and more flexible in terms of technology. Micro services as an alternative to huge backend monoliths have established themselves and that is a huge step forward in the field of software architecture. Unfortunately, the frontend has not had the same type of development yet. The complexity of web applications is rising every day. Features such as customizable themes, and user specific content require more and more source code to be implemented. Even for web developers, there have been quality of life improvements in the form of frameworks and libraries. But these frameworks are usually designed to be structured like monoliths. So, the issue of monoliths is still there but it now occurs in the frontend. Developers have therefore been trying to come up with a way of implementing a micro service type architecture in the frontend, which has been called micro frontends. The idea of micro frontends is to introduce the flexibility and scalability of micro services mainly into the frontends of web applications and web-based mobile applications, so that these applications can be split among many teams of developers. In this bachelor thesis I present the results of my research and of my implementation of micro frontends in web applications in the form of a criteria catalogue and a table of criteria. Additionally, I summarize the results of a survey on my criteria catalogue which I did with the help of my supporting company.

Bei orchideo|vizzard geht es darum, Daten und ihre Eigenschaften und Beziehungen zu visualisieren. Diese Business-Daten werden aktuell in 2D mit Hilfe von auf zwei unterschiedliche Arten visualisiert, von denen eine die Systemlandschaft und die andere die Beziehung zwischen den einzelnen Systemen darstellt.

Ausgehend von diesen Darstellungsformen soll diese Business-Daten nun in Form einer prototypischen Implementierung in 3D visualisiert werden, um die Zusammenhänge, Eigenschaften und Beziehungen möglichst intuitiv zu erkennen und im 3D-Raum interagieren und navigieren zu können. Der Fokus liegt dabei auf einer 3D-Visualisierung mit einer intuitiven Navigation, die einen Mehrwert zur aktuellen 2D-Visualisierungen bietet.
Idealerweise sollte neben der VR-Ansicht auch eine 3D-Ansicht ohne VR-Brille möglich sein, wenn beispielsweise keine entsprechende Hardware vorhanden ist.

Durch Aspekte, wie die Digitalisierung und die Globalisierung müssen die Geschäftsmodelle in Unternehmen in immer kürzeren Zeitabständen überdacht und angepasst werden, um wettbewerbsfähig zu bleiben. Kleine Änderungen in den Prozessen oder in den Anwendungen können bereits weitreichende Auswirkungen auf Bereiche haben, die nur mittelbar von der Änderung tangiert sind. Es wird deshalb zunehmend notwendig, die Abhängigkeiten im Unternehmen zu kennen, um bei Entscheidungen den Auswirkungsgrad realistisch einschätzen zu können. Zur Unterstützung der Entscheidungsfindung, können komplexe Sachverhalte mit großen Datenmengen durch eine sinnvolle Visualisierung dargestellt werden, um einen Überblick über die Thematiken zu erhalten und die wesentlichen Informationen und Zusammenhänge zu verstehen.
Mit zunehmender Menge an Informationen werden diese Visualisierungen unübersichtlich und verlieren ihren Nutzen für den Anwender. In Fällen mit vielen verfügbaren Daten, können sich hierin jedoch versteckte Informationen befinden, die für die Entscheidungsfindung von Relevanz sind.
Im Rahmen dieser Arbeit soll deshalb aus diesem Kontext die konkrete Fragestellung untersucht werden, wie IT-Systeme anhand deren Eigenschaften und Beziehungen zu anderen Systemen gruppiert werden können. Hierzu soll ein Konzept erstellt werden, das diese Frage mittels Methoden der Graphen-Theorie und Ansätzen der künstlichen Intelligenz analysiert. Dieses Konzept soll anschließend durch eine prototypische Implementierung anhand eines Praxisbeispiels evaluiert werden.

In vielen Anwendungen ergibt sich aufgrund der unterstützten Prozesse eine Anforderung an eine schnelle Datenverfügbarkeit. In diesem Zusammenhang gilt es eine bestehende Stammdatenschnittstelle hinsichlich ihrer Performance zu optimieren. Als Datenbank wird eine Azure SQL Database (MSSQL Server) verwendet. Die Laufzeitumgebung ist ein Kubernetes-Cluster (AKS) Mit Thorntail-basierten fat jars (JEE) in einem Openjdk11 Container (Linux).

Hierfür kommen vier verschiedene Ansätze in Betracht:

    • Materialized Views

    • Azure Search (Suchindex)

    • Document DB

    • Cluster-Based Caching

Ziel der Arbeit ist es eine Möglichkeit zu finden, die verschiedene Ansätze nach Kosten- und Nutzenfaktoren zu bewerten. Hierbei spielt sowohl die Antwortzeit als der maximale Durchsatz eine Rolle. Auf der anderen Seite müssen Fixkosten (beispielsweise durch eine anstehende Migration) und laufende Kosten (beispielsweise durch erhöhten Wartungsaufwand) in das Bewertungsmodell einfließen.

Die Nutzenfaktoren werden qualitativ erhoben mithilfe von Last- und Performancetests mit dem Gatling-Framework. Hierbei existieren diverse Anwendungsszenarien, welche sich quer durch das zugrundeliegende Datenmodell ziehen.

Zu Beginn der Arbeit wird die “Ausgangslage” vermessen und das Framework zur Bewertung der verschiedenen Ansätze entworfen. Anschließend werden die Ansätze prototypisch implementiert und die entsprechenden Daten bezüglich des Nutzens werden durch das Ausführen der Tests neu erhoben. Die quantitativ, durch das Projektteam, abgeschätzten Kosten werden dann zur Bewertung gemeinsam mit den ermittelten Daten herangezogen.

Motivation und Kontext: Eine Software-Architektur beschreibt ein System auf hoher Abtraktionsebene, um das Wesentliche des Systems darzustellen. Sie ist ein wichtiger Teil für einen Systementwurf, der den Kundenanforderungen gerecht wird. Die aktuelle Standardarchitektur der Software-Architektur von eXXcellent solutions soll mit dieser Arbeit an das Domain-Driven-Design und an plattformübergreifende Web-Anwendungen herangeführt werden. Domain-Drinve Design ist ein Ansatz der Softwareentwicklung mit dem Fokus auf spezifische Eigenschaften, Entitäten und Beziehungen einer Domäne.

Dokumentation im Projektrahmen ist sehr zeitaufwändig und ständig veraltet. Dabei sollten Projektinformationen regelmäßig erneuert werden um zu überprüfen ob Anforderungen erfüllt werden oder ob die Planung weiterhin funktioniert. In Projekten der eXXcellent solutions werden Projektdokumente derzeit in unterschiedlichen Formaten beschrieben und nötige Artefakte immer wieder neu von Hand erstellt. Um Aufwand und damit verbundene Kosten zu verringern sollten die von allen Projekten benötigten Dokumente in einem einheitlichen Format beschrieben und die daraus entstehenden Artefakte weitestgehend automatisch erzeugt werden. Um diese Ziele zu erreichen wurde mit Hilfe von GitLab eine Continuous Integration Umgebung aufgebaut welche die Verwaltung von Dokumenten nach dem Docs as Code Vorgehen automatisiert. Die Dokumente wurden in der leichtgewichtigen Beschreibungssprache AsciiDoc geschrieben.

In dieser Arbeit geht es um die Betrachtung und Integration des LeanUX Prozesses in einen bestehenden agilen Prozess. Anhand der Kommunikationsmuster, der Prozessschritte und der konkreten Umsetzung in einem Kundenprojekt soll ermittelt werden, wie sich die Umstellung auf die Kosten, Zufriedenheit und Geschwindigkeit auswirken. Der Kunde AKAD ist eine Fernhochschule, bei der ein kleiner Fachbereich einer großen Anzahl von Endkunden gegenüber steht. Methodisch, technologisch und inhaltlich ist der Kunde sehr offen und steht für z.B. Interviews zur Verfügung. Das gewählte Fallbeispiel ist ein neu zu entwickelndes Projekt “Wissenschaftliche Arbeiten”, in dem Studenten Themen zu Abschlussarbeiten von Dozenten suchen, die dann bearbeitet und benotet werden.

Software-Systeme unterliegen durch wechselnde Anforderungen einem stetigem Wandel. Die Software-Entwicklung steht vor der Herausforderung einer evolutionären Software-Architektur, die die Anforderungen erfüllen kann. Das Domain-Driven-Design mit dem Microservice-Ansatz und ein agiles Projektvorgehen addressieren diese Herausforderung. Die Kapselung von Domänen-Funktionalitäten in Bounded Contexts erlauben eine inkrementelle und unabhängige Weiterentwicklung eines Software-Systems. Microservice-Architekturen erschweren allerdings die Dokumentation, wie die Erfassung der Beziehungen zwischen den beteiligten Komponenten innerhalb des verteilten Systems. Microservices abstraiieren Funktionalitäten und kommunizieren über das Netzwerk per REST und Messaging. Auf Ebene der Microservices erlaubt die statische Code-Analyse die Auflösung der internen Abhängigkeiten zwischen Modulen, Packages und Klassen. Eine Zyklenfreiheit kann mit bewähreten Werkzeugen zuverlässig festgestellt und visualisiert werden (JDepend, Sonar, etc.). Die Beziehungen zwischen Microservices sind allerdings nur indirekt über Schnittstellen-Aufrufe im Code oder anhand des Kommunikationsverhaltens zur Laufzeit sichtbar.

Zum Auflösen dieser Problematik versucht diese Arbeit die Informationen einzelner Microservices zusammenzuführen und (teil-)automatisiert eine Dokumentation der gesamten Architektur zu erzeugen. Meta-Daten zur Dokumentation sollen daher zusammen mit dem Code versioniert werden und auf bereits bekannten Informationen basieren.

In dieser Arbeit wird eine Entscheidungshilfe für die Auswahl einer horizontalen oder vertikalen Skalierung unter Berücksichtigung von Systemanforderungen und deren Priorisierung beschrieben.
Zunächst wird eine Anforderungsanalyse durchgeführt, um wichtige Kriterien für eine Entscheidungshilfe zu ermitteln. Außerdem wird recherchiert, ob bereits
Handlungsempfehlungen im Bereich Skalierung existieren und wie diese umgesetzt wurden. Folglich werden die Systemattribute Architektur, die verwendete Programmiersprache und verschiedene REST-Frameworks auf ihr Verhalten bei einer vertikalen oder horizontalen Skalierung untersucht. Die Einflüsse der Skalierungsvarianten auf die festgestellten Anforderungen werden in einem Konzept zusammengeführt und somit eine Anleitung zur Bestimmung einer geeigneten Skalierungsvariante vorgelegt. Das vorgestellte Konzept wird abschließend in einer Evaluation angewendet.

Bei Microservice-Anwendungen stellt sich oft speziell das Monitoring als Herausforderung dar, und es liegt für eine Umsetzung bisher kein Konzept vor, das die dabei relevanten Aspekte abdeckt. Ziel der Arbeit ist es daher, ein solches Konzept zu entwerfen, das mögliche Lösungsansätze für relevante Aspekte aufzeigt. Im Anschluss soll dieses zur Darlegung der prinzipiellen Umsetzbarkeit durch einen Proof of Concept implementiert werden.

Eine bestehende Java-Enterprise-Anwendung im Automobilumfeld nutzt Apache Solr für die Erstellung, Pflege und Abfrage eines umfassenden Suchindexes. Dabei werden im Rahmen einer Deltaversorgung in der Anwendung auftretende, relevante Änderungen protokolliert und zyklisch zur Aktualisierung des Suchindexes verwendet. Die relativ hohe Frequenz und der hohe Umfang an Änderungen führen jedoch dazu, dass die Änderungsversorgung derzeit an Ihrer Versorgungsgrenze arbeitet. Bei einem erwarteten, zukünftigen Anstieg der zu pflegenden Daten kann somit eine zeitnahe Pflege der Indexdaten nicht mehr gewährleistet werden.

Ziel dieser Arbeit ist es, durch geeignete Maßnahmen (z. B. fachlicher, technischer oder technologischer Art) die Performance des Aufbaus und der Pflege des Vorhandenen oder eines gleichwertigen Suchindexes zu optimieren ohne die Performance der Abfragen signifikant zu senken. Dabei sollen verschiedene Lösungsstrategien evaluiert und anhand eines aufzustellenden Bewertungsschemas klassifiziert werden. Eine prototypische Umsetzung einer ausgewählten Lösungsstrategie rundet die Arbeit ab.

Künstliche Intelligenz

Die Verarbeitung natürlicher Sprache durch Maschinen spielt in der heutigen Zeit eine große Rolle. Vor allem bei größeren Datenmengen mit textuellem Inhalt kann die händische Extraktion von Informationen mühsam und aufwendig sein. In der deutschen Sprache wird intensiv an maschinellen Methoden zur Beantwortung von Fragen sowie der Extraktion von Informationen geforscht. Erschwert wird dies dadurch, dass im Gegensatz zur englischen Sprache wenig gelabelte Datensätze vorhanden sind, mit denen sich Modelle für die Sprachverarbeitung trainieren lassen. Diese Bachelorarbeit befasst sich daher mit der Fragestellung, inwiefern die Forschung an deutschen Modellen für die Beantwortung von Fragen durch den Einsatz von maschineller Übersetzung vorangetrieben werden kann. Es werden Ansätze vorgestellt, die mithilfe von automatischer Übersetzung deutsche Daten generieren. Als konkrete Anwendung wird der englischsprachige SQuAD-Datensatz ins Deutsche übersetzt. Desweiteren wird eine Baseline als Kennlinie zum Vergleich mit anderen Modellen entwickelt, die maschinelle Übersetzung nutzen. Sie bindet deutsche Daten mit einem Übersetzungsmodell als Adapter direkt an ein englisches Frage-Antwort-Modell an. Die Ergebnisse zeigen, dass eine automatische Übersetzung von englischen Frage-Antwort-Datensätzen und die korrekte Verortung der Antwort im deutschen Text nicht nur möglich ist, sondern auch gute Ergebnisse mit hoher Zuverlässigkeit liefert. Auch die Baseline zeigt einen vielversprechenden Ansatz, wie ohne eine erweiterte komplizierte Verarbeitung der Daten trotzdem gute Ergebnisse in der Beantwortung deutscher Fragen erzielt werden können.

Ein Fuhrpark-Unternehmen muss die Entwicklung der Nachfrage über Monate in die Zukunft planen, um die Nachfrage vollständig, fristgerecht und wunschgemäß bedienen zu können. Dazu muss der Fuhrpark groß genug sein und die richtigen Fahrzeug-Typen umfassen. Menschliche Planer benötigen viel Zeit und Erfahrung, um diese Planungen zu erstellen und die Ergebnisse hängen häufig von subjektiven Beurteilungen ab. Da es somit teuer und fehleranfällig ist, die Nachfrage von einem Menschen planen zu lassen, sollen die Planungen maschinell erzeugt
werden.

The general goal of this thesis is to provide a better search functionality for the systems currently used for documentation of all kind. The overarching problem of having an unreasonable search functionality in terms of documentation is that employees might not get access to information that would facilitate their work. Worst case is that some arbitrary problem needs to be solved twice because of this issue. While being annoying for employees, this can be quite costly for the company because of the additional effort.

Ein Fuhrpark-Unternehmen muss die Entwicklung der Nachfrage über Monate in die Zukunft planen, um die Nachfrage vollständig, fristgerecht und wunschgemäß bedienen zu können. Dazu muss der Fuhrpark groß genug sein und die richtigen Fahrzeug-Typen umfassen. Menschliche Planer benötigen viel Zeit und Erfahrung, um diese Planungen zu erstellen und die Ergebnisse hängen häufig von subjektiven Beurteilungen ab. Da es somit teuer und fehleranfällig ist, die Nachfrage von einem Menschen planen zu lassen, sollen die Planungen maschinell erzeugt werden.

This master thesis deals with the topic Named-entity Recognition (NER). Specifically with the NER of events in German. The system takes the German Named-entity Recognizer by Riedl & Padó as a basis and builds on it. So far this recognizer only identifies persons (PER), locations (LOC), organizations (ORG) and others (OTH). The goal of this master thesis is to extend the NER to be able to also recognize events (EVENT). Therefore a list of events from Wikipedia is extracted with the Petscan Tool. This list is used to annotate a corpus with EVENT tags using the annotation tool Snorkel. Finally, this annotated corpus is used to train the NER of Riedl & Padó to test if it subsequently is able to recognize EVENT entities.

Natural Language Understanding (NLU) ist eine komplexe Aufgabe mit vielen Lösungen auf dem Markt. Um den Vergleich der größeren Angebote zu vereinfachen untersucht diese Arbeit die Leistung und Features von drei der größten Dienstleistern:
Google mit Dialogflow, Microsoft’s mit Luis and IBM mit Watson Assistant. Jeder dieser Dienste bietet Intent und Entität Erkennung und Klassifizierung. Im Verlauf der Arbeit wurde ein einheitliches Interface für die Dienste entwickelt. Die drei Dienste wurden anhand der folgenden Kriterien verglichen: F1-Score auf verschiedenen Datensätze für Intent und Entity Klassifizierung; die Zahl an unterstützten Sprachen; die Kostenstruktur und weiteren Faktoren. Die Ergebnisse, kombiniert mit Ergebnissen anderer Paper, zeigen, dass alle drei Dienste vergleichbare Leistung haben, aber einzelne Faktoren unterscheiden sich.