D. Software
Refine
Document Type
- Master's Thesis (15) (remove)
Language
- German (15)
Has Fulltext
- yes (15)
Keywords
- Cloud Computing (2)
- Neuronale Netze (2)
- Neuronales Netz (2)
- Technische Hochschule Köln (2)
- Agile Softwareentwicklung (1)
- Automatische Spracherkennung (1)
- Backend-Driven UI (1)
- Blended Learning (1)
- Blended Space (1)
- Captcha (1)
CAPTCHAs (Completely Automated Public Turing test to tell Computers and Humans Apart), auch HIPs (Human Interaction Proof) genannt, sind weit verbreitete Sicherheitsmaßnahmen im World Wide Web, die Online-Dienste vor dem Missbrauch durch automatisierte Programme schützen sollen. Dazu werden die Benutzer aufge-fordert, eine Aufgabe zu lösen, welche von Computern nicht gelöst werden kann, wie beispielsweise das Entziffern von verkrümmten Buchstaben. Durch die immer weiter verbesserten Fähigkeiten der Computerprogramme auf diesen Gebieten, wird es für die Entwickler der HIPs immer anspruchsvoller eine ausreichende Sicherheit zu garantieren. Daraus resultiert ein Zielkonflikt zwischen der Sicherheit und Gebrauchstauglichkeit der HIPs. Da die Sicherheit garantiert werden muss, leidet die Gebrauchstauglichkeit und die Benutzer sind oftmals nicht in der Lage das HIP zu lösen. Dies führte bereits in der Vergangenheit zu einer Abneigung gegenüber diesen Systemen.
In dieser Arbeit wurde überprüft ob diese Abneigung durch die Verwendung von Gamifizierung, also Spielelementen, in einem neu entwickelten HIP verringert werden kann. Zusätzlich sollte geprüft werden, ob anstelle der Tastatur die Sensoren mobiler Endgeräte als Eingabe-medium dienen können.
Dazu wurde durch eine Analyse von durchgeführten Angriffen auf bestehende HIPs sowie Studien zur Gebrauchs-tauglichkeit derselben ein Rahmenwerk erstellt. Dieses Rahmenwerk definiert Anforderungen, die ein sicheres und zugleich benutzerfreundliches HIP erfüllen muss. Anhand dieser Anforderungen wurde ein neues spielbasiertes HIP in Form eines Kugellabyrinths auf Basis von JavaScript und HTML5 implementiert. Der Benutzer muss durch die Neigung des Geräts eine Kugel steuern und diese innerhalb der vorge-gebenen Zeit in das Loch lenken. Die Gebrauchstauglichkeit dieses HIPs konnte durch eine Onlineumfrage bestätigt werden. Dies gilt jedoch nicht für die Sicherheit, welche durch den lesbaren Quellcode stark beeinträchtigt wird. Für diese Schwach-stelle konnte eine Lösung in Form einer Browsererweiterung durch eine Public-Key-Signatur konzipiert werden. Durch diese Erweiterung könnte auf den Einsatz von HIPs in vielen Bereichen verzichtet und andere Webanwendungen sicherer gestaltet werden.
Die Menge an Informationen steigt seit Jahren immer weiter an. Dies lässt sich auch leicht an der Entwicklung der Speichermedien feststellen. So bot die erste 5,25-Zoll Festplatte, eine Seagate ST- 506, lediglich 5 MB Speicherkapazität. Heutige 3,5-Zoll Festplatten verfügen hingegen über bis zu 8 TB Speicherkapazität und werden ebenso ausgenutzt wie ihre Vorgänger aus der Anfangszeit der Magnet-festplatten. Zusätzlich geht die Tendenz dorthin, alle Daten jederzeit zur Verfügung zu haben. Sei es daheim am Rechner, auf der Arbeit oder per Tablet oder Smartphone unterwegs, dank der immer mehr verbreiteten Cloud-Speicher stehen die Daten jederzeit zur Verfügung. Mit dem enormen Zuwachs an Dateien und auch an Dateiformaten wird es jedoch immer schwieriger, diese Masse zu überblicken und bestimmte Inhalte in annehmbarer Zeit wiederzufinden. Beispiels- weise hostet der Internetdienst Flikr die schier unüberschaubare Menge von über 6 Milliarden Bilder. Doch nicht nur die großen Servicedienstleister besitzen große Datenmengen, auch Einzelpersonen haben derweil große Musik- und Bildsammlungen, zumal jedes aktuelle Smartphone über eine Kamera verfügt. Jeder ist somit praktisch zu jeder Zeit in der Lage, ein Foto in hochauflösender Qualität zu schießen und direkt in seine Cloud hochzuladen. Diese Datenmengen manuell zu ordnen, erfordert einen sehr hohen Aufwand, den nicht alle Menschen gewillt sind zu leisten. Vor allem am Smartphone geht dieses Benennen und Einsortieren aufgrund der vorhandenen Technik nicht so leicht von der Hand. In der Praxis sammeln sich die Aufnahmen mit der Zeit immer weiter an und letztlich befinden sich mehrere hundert wenn nicht gar tausend Bilder in einem Ordner, welche sich namentlich meist nur durch eine fort- laufende Nummer unterscheiden. Diesen Umstand Rechnung tragend, treten Metainfor-mationen immer mehr in den Vordergrund. So speichern die zuvor genannten mobilen Alleskönner meist viele informative Daten mit in den Bilddateien ab. Beispielsweise kann dank der eingebauten GPS-Module der Ort der Aufnahme aus den Bildern ausgelesen werden. Die Dienstleister für Cloud-speicher nutzen diese Informationen jedoch nur marginal aus und bieten dem Endanwender kaum Unterstützung bei der Suche nach be- stimmten Inhalten, wie etwa beim OX Drive, der Cloudlösung der Firma Open-Xchange.
Die vorliegende Master Thesis zeigt, wie dieser Cloud-Speicher, welcher in die Hauseigene OX App Suite integriert ist, um sogenannte Smartfeatures erweitert werden kann. Diese Smartfeatures sollen dem Endan-wender helfen, die Daten einfacher – wenn nicht gar automatisch – zu ordnen und somit leichter bestimmte Inhalte wiederzufinden. Kernthema dieser Arbeit ist daher die auto- matische Extraktion von unterschiedlichen Metadaten aus diversen Dateiformaten. Des Weiteren wird gezeigt, wie diese Daten effizient gespeichert und abgefragt werden können. Die Thesis stellt hierzu den Document Store Elasticsearch vor und vergleicht diesen mit seinem Konkurrenten Apache Solr.
Untersuchung des Potentials Neuronaler Netze für Regelungsprozesse am Beispiel eines Betonverteilers
(2018)
Ziel der Arbeit ist die Entwicklung eines Ansatzes zur Nutzung Neuronaler Netze für die Steuerung eines Betonverteilers. Nach der Erläuterung der Grundlagen Neurona-ler Netze wird ein Netz entworfen und ein Test anhand realistischer Testdaten durch-geführt. Nach einer ausführlichen Beschreibung des Umfelds des Anwendungsfalls (Betonverteiler), sowie der Grundlagen Neuronaler Netze, ihrer Lernverfahren und ihrer Einsatzmöglichkeiten in der Regelungstechnik erfolgt der Entwurf eines Ansatzes zur Konstruktion eines Netzes für den Betonverteiler als Anwendungsfall sowie die Beschreibung der Implementation von Simulationsmodell und neuronalem Netz.
Aufgrund ihrer aktuellen Bedeutung im Zusammenhang des Internet of Things werden in der vorliegenden Arbeit Time Series Databases und Event Stores miteinander vergli-chen. Ziel ist, die Gemeinsamkeiten und Unterschiede der beiden Arten von Datenbank Management Systemen herauszustellen.
Der erste, theoretische Teil des Vergleichs erfolgt anhand der funktionalen Kriterien Speichersystem, Performance und Funktionen sowie der nicht-funktionalen Kriterien Usability und Support. Im zweiten Teil des Vergleichs wird anhand eines konkreten An-wendungsfalls untersucht, ob sich Time Series Databases und Event Stores gleicher-maßen für die Speicherung und in einem zweiten Schritt für die Abfrage von Zeitreihen-daten eignen.
Zumal der theoretische Vergleich Unterschiede zwischen einzelnen Time Series Data-bases und Event Stores in Bezug auf die betrachteten Kriterien erkennen lässt, wird für den praktischen Vergleich unter Berücksichtigung der im konkreten Anwendungsfall gegebenen Anforderungen nur die am besten geeignetste Time Series Database (In-fluxDB) und der am besten geeignetste Event Store (Event Store) ausgewählt. Der prak-tische Vergleich zeigt, dass die Zeitreihendaten im konkreten Anwendungsfall zwar in beiden Arten von Datenbank Management Systemen gespeichert werden können, die Nutzung der auf Zeitreihendaten spezialisierten Time Series Database InfluxDB jedoch offensichtliche Vorteile gegenüber dem Event Store aufweist.
Eine gängige Form der Qualitätskontrolle von Quellcode sind Code Reviews. Der Fokus von Code Reviews liegt allerdings oft auf syntaktischer Analyse, wodurch weniger Zeit für eine semantische Überprüfung bleibt und zusätzliche Kosten verursacht werden. Code Reviews lassen sich zwar teilweise durch "Linter" automatisieren, dennoch können sie nur syntaktische Fehlermuster identifizieren, welche vorher definiert wurden. Zudem kann ein Linter nur darauf hinweisen, dass möglicherweise ein Fehler vorliegt, da die Fehler nicht durch logische Inferenz ermittelt werden. Die vorliegende Arbeit prüft, ob ein Deep Learning Modell den regelbasierten Ansatz von Lintern ablösen und die semantische Ebene erschließen kann. Dazu wurde eine Stichprobe von Java Methoden zusammengestellt und im Anschluss mit einem Supervised Learning Ansatz binär klassifiziert. Da die Analyse von Quellcode der Textanalyse stark ähnelt wird ein gängiger Ansatz für Textklassifikation verwendet. Dadurch kann gezeigt werden, dass eine Präzision von 85% bei der Erkennung von Quellcodeproblemen durch Deep Learning möglich ist.
Konzeption einer flexiblen Systemarchitektur zur dynamischen Konfiguration hybrider Lernräume
(2021)
In dieser Arbeit wird eine dynamische Systemarchitektur für die Schaffung hybrider Ökosysteme konzipiert, welche eine flexible und kontextgerechte Konfiguration hybrider Lernräume ermöglichen. Aufgrund der variierenden Definitionen hybrider Lehre und Lernräume sowie der schwachen Abgrenzung zu verwandten Begriffen findet hierfür zunächst eine Konkretisierung eigener Arbeitsdefinitionen statt. Aufbauend auf diesen Begriffsbestimmungen und ausführlichen Literaturrecherchen, werden anschließend sich interdisziplinär überschneidende Kernelemente hybrider Lehre und Lernräume identifiziert sowie in einem Übersichtsmodell zusammengefasst. Durch die Literaturrecherche ersichtliche Charakteristiken des hybriden Paradigmas werden ebenso in
Beziehung gesetzt und zusammenfassend aufgeführt. Auf Basis dieser Übersichten und unter Berücksichtigung weiterer Forschungsergebnisse wird nachfolgend ein Vorgehensmodell kreiert, welches kontextgerechte Designs hybrider Systeme strukturiert ermöglicht. Neben didaktischen, physischen und digitalen Komponenten werden dafür diverse Typen von Lernaktivitäten identifiziert, welche als Ausgangspunkt eine effiziente und praxisorientierte Planung ermöglichen.
Alle erstellten Modelle bilden abschließend die Grundlage der konzipierten Systemarchitektur, in welcher die hybriden Kernkonzepte aus einer technischen Perspektive beleuchtet werden. Das hierdurch repräsentierte Microservice-Websystem beinhaltet neben notwendigen Basis-Services vor allem einen dynamischen Plugin-Mechanismus, welcher die flexible Integration neuer Bestandteile ermöglicht. So kann der Funktionsumfang auf sich wandelnde Anforderungen der Nutzer angepasst werden und die Anwendung mit der Zeit zu einem umfassenden Ökosystem heranwachsen.
More and more often, spoken information must and should be available in written form. For this purpose, various transcription programs try to support the user with various conveniences when transcribing the source material. A variety of online services go one step further and provide a ready-to-use, automatically generated transcription for a fee. Since the fees can be very expensive for the individual user and the online services may not always be used for privacy reasons, the goal of this work is to implement an open offline alternative. This alternative should be an open source editor based on the open speech-to-text-engine DeepSpeech and should on one hand provide the user with an offline transcription and on the other hand support him in correcting it. To achieve this goal, first the traditional speech recognition and eventually DeepSpeech will be described. This is followed by the conception and implementation of the editor. Since this project is explicitly intended to be an open source project, the last part will take a closer look at the release.
Cloud Computing ist der zentrale Faktor zur Beschleunigung der Digitalisierung in Deutschland und wird in den kommenden Jahren eine wichtige Rolle in jedem deutschen Unternehmen spielen. Für Unternehmen wird es dabei um die Umsetzung von
Cloud-Strategien und die praktische Einbindung in die täglichen Betriebsprozesse gehen. Zusätzlich müssen Unternehmen ihre bestehende Datenlandschaft in moderne Architekturen zum Datenmanagement in die Cloud migrieren. Dabei können Unternehmen auf eine Vielzahl an unterschiedlichen unternehmensweiten Datenarchitekturen
zurückgreifen. Die vorliegende Masterarbeit gibt eine Einführung in die aktuelle Entwicklung von Cloud Computing und erläutert, mit Data Fabric, Data Lakehouse und Data Mesh, drei unternehmensweite Datenarchitekturen für die Cloud. Data Fabric, Data Lakehouse und Data Mesh bilden dabei aktuell die modernsten Konzepte für unternehmensweite Datenarchitekturen. Zusätzlich werden ein Data Lakehouse und ein Data Mesh in einer ausgewählten Cloud-Umgebungen entworfen, prototypisch aufgebaut und praktisch analysiert. Ziel der Masterarbeit ist es, die unternehmensweiten Datenarchitekturen in der Cloud zu erläutern, konkrete technologische Architekturen zu entwerfen und entsprechende Hinweise zu Aufwandstreibern in Unternehmen zu identifizieren.
Die Digitalisierung hat Auswirkung auf die Entwicklung von Produkten. Die Teams werden agiler, die Kunden haben als Eigentümer eines Produktes Mitspracherecht und bestimmen gemeinsamen mit den Entwicklern, welche Features als Nächstes aus dem vordefinierten Backlog in dem nächsten Sprint als Inkrement eingebaut und ausgeliefert werden. Durch die enge Zusammenarbeit werden die Release-Zyklen eines Produktes kürzer und es werden mehr Features als in der Vergangenheit bei nicht agilen Methoden deployt. Durch die kurzen Release-Zyklen werden viele unterschiedlichen Versionen ausgerollt. Dies hat zur Folge, dass Fehler, die vorher durch das Testen nicht entdeckt worden sind, auf einer produktiven Umgebung ausgerollt werden. Hat der Fehler eine starke Auswirkung auf die Benutzung der Anwendung, dann besteht die Möglichkeit, die Änderung manuell durchzuführen. Diese muss beim nächsten Release eingebaut werden. Wenn die Release-Zyklen länger werden, birgt es die Gefahr, dass viele manuelle Änderungen in der Zeit entstehen. Der ausgerollte Zustand entspricht nach einer bestimmten Zeit nicht mehr dem eingecheckten Zustand im Git-Repository. An der Stelle bietet der GitOps-Ansatz eine mögliche Abhilfe, um den ausgerollten Ist-Zustand durch regelmäßiges Pullen so nah wie möglich an dem im Repository eingecheckten Soll-Zustand zu halten.
Architektur für ein Qualitätsmanagementsystem zur Verbesserung der Relevanz von Suchergebnissen
(2023)
Die Suchfunktion ist in vielen Softwareprodukten eine wichtige Komponente, die häufig zur Navigation in der Anwendung dient. Gerade, wenn große Datenmengen bereitgestellt werden, wie es bei Streamingdiensten (Netflix, Spotify) oder bei E-Commerce-Plattformen (Amazon, Zalando) der Fall ist, ist es wichtig, dass die Suchergebnisse für den Nutzer relevant sind. Eine für den Nutzer effektive Navigation mit der Suchfunktion ist nur möglich, wenn die Suchergebnisse eine ausreichend große Relevanz für den Nutzer bieten. Die Organisationen, welche die oben genannten Dienste betreiben, versuchen daher, die Relevanz ihrer Suchergebnisse zu optimieren. Eine Optimierung auf Relevanz ist zwar für eine spezielle Suche einfach, jedoch können dabei häufig Seiteneffekte auftreten, welche die Relevanz über alle Suchen verschlechtern. In einem E-Commerce-Shop kann das Einfiihren des Synonyms „Birne -> Glühbirne" dafür sorgen, dass Nutzer, die Gliihbirnen kaufen wollen und nach „Birne" suchen nun auch Gliihbirnen finden. Falls Nutzer aber das Obst Birne kaufen möchten, sind die Ergebnisse für diese Gruppe irrelevant. Bei einer Optimierung der Relevanz über alle Suchen können Qualitätsmanagementsysteme unterstützen. Ein Qualitätsmanagementsystem fiir die Relevanz von Suchergebnissen muss nicht nur fachliche und technische, sondern auch organisatorische Anforderungen beachten, um die Optimierungspotenziale vollständig auszuschöpfen. Diese Arbeit erläutert diese Anforderungen und stellt eine Architektur für ein Qualitätsmanagementsystem vor. Die Architektur wird hinsichtlich der Erfüllung der erläuterten Anforderungen analysiert. Desweiteren werden die Vor- und Nachteile fiir die jeweiligen Architekturentscheidungen unter Betrachtung der Anforderungen diskutiert. Das Ziel der Arbeit ist es, die Architektur entsprechend zu erläutern, sodass eine Organisation diese für sich angepasst implementieren kann.