AI
Refine
Year of publication
Document Type
- Bachelor Thesis (39)
Has Fulltext
- yes (39)
Is part of the Bibliography
- no (39)
Keywords
- Softwarearchitektur (3)
- API (2)
- Ansible (2)
- Architektur (2)
- Embedded Systems (2)
- Informatik (2)
- LINUX (2)
- Microservice (2)
- Programmiersprache (2)
- Software (2)
Institute
Open Access
- Closed Access (15)
- Closed (12)
- Open Access (12)
- Diamond (2)
Team Autonomous Car Offenburg is one of the University of Applied Sciences Offenburg’s projects which is dedicated to the development of an autonomous scale model car to compete in competitions. Due to the ever-evolving requirements and team member variations, maintaining the extensive codebase has proven to be a challenging task. Following substantial internal codebase revisions, it became apparent that the decision-making aspect of the project could benefit from improvement. Consequently, the adoption of a third-party framework emerged as a viable solution. The selection of the BehaviorTree.CPP framework was influenced by its popularity, use of behavior trees, and official support for the Robot Operating System 2. Another crucial factor in choosing BT.CPP was its GUI companion tool, Groot, making behavior tree development accessible to individuals without programming knowledge. The focus of this work centers on the utilization of BT.CPP as a decision-making framework in combination with ROS 2 and its seamless integration into existing autonomous system projects of the University of Applied Sciences Offenburg by replicating their decision-making logic. The chosen projects are TACO and Sweaty, a self-constructed humanoid robot that can play soccer and chess. TACO’s foundational functionalities have been transitioned to operate with the new framework, accompanied by the implementation of concise showcase behaviors. These behaviors effectively encapsulate the fundamental requirements for most competitions. For Sweaty, the chess subproject and its behavior have been migrated. Due to technical difficulties and time constraints, only placeholders have been implemented to simulate the movement of the robot. The evaluation of this framework and the subsequent integrations discusses the reduced complexity, improved modularity, excellent performance, and enhanced usability based on the applied projects. This further demonstrates that the integration of this behavior framework into an existing project can yield significant improvements in the development process of behaviors while simultaneously enhancing the overall project quality. Specifically, this work led to a substantial reduction in the codebase size for TACO and made the behavior development process accessible to non-programmers.
Diese Bachelorarbeit beschäftigt sich mit der Entwicklung und Implementierung eines Systems zur vollautomatischen Erfassung und Bewertung des Gesundheitszustands der IT-Umgebung eines Kunden. Diese Checks wurden bisher durch das IT-Systemhaus LEITWERK AG manuell durchgeführt. Diese manuellen Checks waren zeitaufwendig und führten dazu, dass die gleichen Daten unterschiedliche Bewertungen ergaben. Ziel war es, dies zu automatisieren. Das entwickelte System ermöglicht es, Checks vollautomatisch durchzuführen und die Ergebnisse effizient und mit hoher Ergebniskonsistenz zu bewerten. Dies wird erreicht durch den Einsatz von Ansible für die Automatisierung und PostgreSQL für die Datenspeicherung. Das System prüft die IT-Umgebung eines Kunden automatisch und bewertet sie anhand festgelegter Schwellenwerte. Die Ergebnisse der Checks werden über eine API im Kunden-Portal MyLEITWERK zur Verfügung gestellt, worüber Kunden direkten Zugriff auf ihre Berichte haben.
Im Kundenauftrag betreibt Herrenknecht mehrere hundert Industrie-PCs auf Tunnelbohrmaschinen, die für den Vortrieb von entscheidender Bedeutung sind. Die Überwachung der Software erfolgt mittels des Monitoring-Tools Icinga2, während das Configuration Management Tool Ansible für die Bereitstellung und Wartung verantwortlich ist. Derzeit besteht keine Verbindung zwischen Monitoring und Configuration Management. Im Rahmen dieser Bachelorarbeit soll eine Web-Anwendung mit Backend entwickelt werden, welche authorisiert und an das Herrenknecht Active Directory angebunden ist. Die Anwendung soll die Infrastruktur visualisieren, die mit den oben genannten Werkzeugen verwaltet wird, und es ermöglichen, Alarmierungen durch Icinga2 direkt einem PC und somit einer Baustelle zuzuordnen. Idealerweise soll es auch möglich sein, einen Alarm durch geeignete Maßnahmen mit Hilfe von Ansible zu beheben. Es ist von Bedeutung, dass Veränderungen an den Industrie-PCs nur nach expliziter Nachfrage und Freigabe durch den Kunden durchgeführt werden dürfen.
Diese Bachelor-Thesis beschreibt die Entwicklung eines universellen Flashers zur Aktualisierung von Betriebssystemen auf Revolution Pi-Modulen. Angesichts bestehender Herausforderungen bei der Aktualisierung dieser Geräte entwickelt diese Arbeit ein Gerät, das eine einfachere und fehlerresistente Aktualisierung ermöglicht. Der Flasher kombiniert speziell entworfene Hardware mit einer Software, die auf einem Linux-Betriebssystem basiert, und bietet eine benutzerfreundliche Oberfläche über ein integriertes Touch-Display. Die Ergebnisse zeigen, dass der Flasher eine zuverlässige Alternative zu bestehenden Methoden darstellt, was die Wartung und Aktualisierung von Revolution Pi-Modulen erheblich vereinfacht.
Ziel dieser Arbeit ist es, die Warenwirtschaftskomponente einer Cloudbasierten Buchhaltungssoftware strukturiert neu zu entwickeln. In einem ersten Schritt wurden hierfür mehrere Software-Architekturen vorgestellt. Daraufhin wurde das bestehende System analysiert, um sowohl die Wahl der Warenwirtschaftskomponente zu begründen als auch deren Funktionen zu identifizieren. Im nächsten Schritt wurde, um eine getrennte Entwicklung und Veröffentlichung zu ermöglichen, entschieden die Komponente aus dem bestehenden System zu trennen und in einem neuen Service zu kapseln. Um diese Migrationsstrategie zu realisieren und den entstehenden Service wartbar, zuverlässig und zukunftssicher zu gestalten, wurde die Implementierung mit Hilfe der Hexagonalen-Architektur realisiert. Die hierfür nötigen Schritte wurden hierbei dokumentiert. Anschließend wurde dieser neue Service getestet. Dabei wurden sowohl der Quellcode mithilfe automatisierter Tests als auch die erreichten und fehlenden Funktionalitäten und Anforderungen mit einem Soll-Ist-Vergleich identifiziert und dokumentiert.
Immer mehr Unternehmen setzen auf eine Cross-Cloud-Strategie, die es Unternehmen ermöglicht, ihre Anwendungen und Daten über mehrere Cloud-Plattformen hinweg effizient zu verwalten und zu betreiben. Konsistenz und Atomarität zwischen den Cloud-Plattformen zu wahren, stellt eine große Herausforderung dar. Hierzu wird in dieser Arbeit eine Lösung vorgestellt, um Cross-Cloud-Atomarität zu erreichen, welche auf Basis des 2-Phasen-Commit-Protokolls (2PC) beruht. In diesem Zusammenhang wird die Funktionsweise des 2PC-Protokolls erörtert und Erweiterungen sowie Alternativen zum Protokoll kurz angesprochen. Zusätzlich werden alternative Lösungsansätze diskutiert, die für die Erzielung von Cross-Cloud-Atomarität in Betracht gezogen werden können. Dadurch wird ein umfassender Einblick in das Thema sowie mögliche Lösungsansätze für diese Herausforderung gewährt.
JavaScript-Frameworks (JSF) sind im Bereich der Webentwicklung seit längerem prominent. Jährlich werden neue JSF entwickelt, um spezifische Probleme zu lösen. In den letzten Jahren hat sich der Trend entwickelt, bei der Wahl des JSF verstärkt auch auf die Performanz der entwickelten Webseite zu achten. Dabei wird versucht, den Anteil an JavaScript auf der Webseite zu reduzieren oder ganz zu eliminieren. Besonders neu ist der Ansatz der "Island Architecture", die erstmals 2019 vorgeschlagen wurde. In dieser Thesis soll die Performanz der meistbenutzten und des performantesten JSF mit dem JSF "Astro" verglichen werden, welches die "Island Architecture" von sich aus unterstützt. Der Schwerpunkt liegt beim Vergleichen der Webseitenperformanz, jedoch werden auch Effizienz und Einfachheit während der Entwicklung untersucht. Das Ziel dieser Arbeit ist es, potenzielle Frameworks zu untersuchen, die die Effizienz und Produktivität für den Nutzer und während der Entwicklung steigern können.
Das Softwareunternehmen HRworks implementiert eine Personalverwaltungssoftware unter Verwendung der Programmiersprache Smalltalk und des Model-View-Controller (MVC) Musters. Innerhalb des Unternehmens erfordert jede Model-Klasse des Patterns das Vorhandensein einer korrespondierenden Controllerklasse. Controller verfügen über ein wiederkehrendes Grundgerüst, das bei jeder neuen Implementierung umgesetzt werden muss. Die Unterscheidungen innerhalb dieses Grundgerüsts ergeben sich lediglich aus dem Namen und der spezifischen Struktur der korrespondierenden Model-Klasse. Die vorliegende Arbeit adressiert die Herausforderung der automatischen Generierung dieses Controllergrundgerüsts, wobei die Besonderheiten jeder Model-Klasse berücksichtigt wird. Dies wird durch den gezielten Einsatz von Metaprogrammierung in der Programmiersprache Smalltalk realisiert und durch eine Benutzeroberfläche in der Entwicklungsumgebung unterstützt. Zusätzlich wird der Controller um eine Datentypprüfung erweitert, wofür ein spezialisierter Parser implementiert wurde. Dieser extrahiert aus einem definierten Getter der Model-Klasse den entsprechenden Datentyp des Attributes. Im Ergebnis liefert die Arbeit eine Methodik zur automatisierten Generierung und Anpassung von Controllergrundgerüsten sowie dazugehörigen Teststrukturen basierend auf der jeweiligen Model-Klasse. Zusätzlich wird die Funktionalität der Controller durch eine integrierte Datentypprüfung erweitert.
Das Ziel dieser Arbeit ist es, eine Schnittstelle zu erstellen, die es erlaubt, dem vom Unternehmen produzierten modulbasierten ERP-System Module zu integrieren, die
mit der aktuellen Version der Programmiersprache Delphi erstellt wurden.
Die Schwierigkeit hierbei ist, dass die momentane Implementation des Systems auf
einer Jahrzehnte alten Version der Sprache basiert, die in mehreren Bereichen keine
Kompatibilität mit der neuen Version besitzt.
Um dieses Ziel zu erreichen wurden zunächst die konkreten Anforderungen an die
Lösung formuliert und daraufhin verschiedene Lösungsansätze für eine Schnittstelle
konzipiert.
Durch Testen an einer prototypisch vereinfachten Version des ERP-Systems konnte
festgestellt werden, dass eine Lösung über eine auf Datenbanktransaktionen basierende Schnittstelle für das Projekt am ehesten geeignet war.
Nach weiterer Planung des exakten Aufbaus wurden die nötigen Funktionalitäten dann
umgesetzt, wobei zuerst in groben Zügen die essentiellen Aspekte realisiert wurden,
welche dann in weiteren Durchläufen auf die exakten Spezifikationen verfeinert und
auf Fehler geprüft wurden.
Nachdem dieser Lösungsansatz einen ausreichenden Vervollständigungsgrad erreicht
hatte, wurde das Projekt zu Testzwecken in firmeninternem Umfeld in Betrieb genommen.
Durch anschließendes weiteres Beheben von noch ausstehenden Fehlern wurde das
Projekt dann in einen Zustand gebracht, in dem es allgemein in Verwendung genommen werden kann und somit die gewünschten Vorgaben erfüllt.
Ziel der vorliegenden Bachelorarbeit ist es, eine automatisierte Bildausschnittkontrolle für die Low Code Plattform Intrexx zu implementieren. Diese soll mit Hilfe eines geeigneten Künstliche Intelligenz Frameworks Gesichter in Bildern erkennen und diese anschließend ausschneiden. Die Benutzer*innen sollen die Ausschnitte außerdem noch manuell anpassen können. Die Implementierung erfolgt mittels Typescript innerhalb einer Webkomponente, um eine Verwendung innerhalb von Intrexx zu ermöglichen. Nach einem Vergleich verschiedener technologischer Ansätze hat sich Tensorflow als geeignetes KI-Framework herausgestellt. Im Rahmen einer Performance-Analyse wurden außerdem verschiedene Tensorflow-Modelle miteinander verglichen.