Filtern
Dokumenttyp
- Diplomarbeit (47) (entfernen)
Schlagworte
- Google App Engine (2)
- Google Web Toolkit (2)
- Interaktion (2)
- Visualisierung (2)
- WebGL (2)
- 101companies (1)
- API Analysis (1)
- API Migratiom (1)
- Adobe Flex (1)
- Ambient Occlusion (1)
Institut
- Fachbereich 4 (47) (entfernen)
Forwarding loops
(2013)
Diese Arbeit befasst sich mit der Migration von Software-Systemen hin zur Verwendung des im Unicode-Standard definierten Zeichensatzes. Die Arbeit wird als Fallstudie am Dokumenten-Management-System PROXESS durchgeführt. Es wird ein Umstellungsprozess entworfen, der die Arbeitsschritte der Migration für das gesamte System und eine beliebige Zerlegung des Systems in einzelne Module definiert. Die Arbeitsschritte für die einzelnen Module können zu großen Teilen zeitlich unabhängig voneinander durchgeführt werden. Für die Umstellung der Implementierung wird ein Ansatz zur automatischen Erkennung von Verwendungsmustern eingesetzt. Im abstrakten Syntaxbaum werden Sequenzen von Anweisungen gesucht, die einem bestimmten Verwendungsmuster zugeordnet werden. Ein Verwendungsmuster definiert eine weitere Sequenz von Anweisungen, die eine Musterlösung für die Unicode-basierte Handhabung von Strings darstellt. Durch das Anwenden einer Transformationsregel wird die ursprüngliche Anweisungssequenz in die zum Verwendungsmuster gehörende Anweisungssequenz überführt. Dieser Mechanismus ist ein Ausgangspunkt für die Entwicklung von Tools, die Transformationen von Anweisungssequenzen automatisch durchführen.
Diese Arbeit befasst sich mit der Evaluation verschiedener Erste Hilfe Applikationen für Smartphones. Diese werden mit der App "DefiNow!", welche von der Universität Koblenz entwickelt wurde, verglichen. Hierbei liegt der Schwerpunkt der Evaluation auf der Usability basierend auf den Softwareergonomischen Prinzipien der Iso Norm 9241-110.
Eine Usability Studie mit 74 Teilnehmern wurde durchgeführt und die daraus resultierenden Ergebnisse genutzt um die bestehende App "Defi Now!" hinsichtlich ihrer Usability zu optimieren.
Software Projekte nutzen typischerweise mehrere externe Programmbibliotheken. Die Schnittstelle, die solch eine Programmbibliothek zur Verfügung stellt, wird als API (application programming interface) bezeichnet. APIs werden üblicherweise laufend weiterentwickelt, was es notwendig macht, dass die Anwendungen, welche sie verwenden, entsprechend modifiziert werden. Zudem kann es kann vorkommen, dass eine Programmbibliothek durch eine andere ersetzt werden soll, was ebenfalls zur Folge hat, dass die Anwendungen, wo die API verwendet wurde, modifiziert werden müssen. Den Vorgang eine Anwendung so zu modifizieren, dass eine andere API verwendet wird, bezeichnet man als API Migration. Manuelle API Migration ist eine mühselige und zeitintensive Aufgabe, deshalb ist automatische API Migration ein aktives Forschungsfeld. Ein verwandtes Forschungsgebiet ist API Analyse, welches Daten zur Verfügung stellt, die helfen können Werkzeuge für API Migration zu entwickeln. Die hier vorliegende Arbeit behandelt Techniken und Technologien für die Entwicklung von Werkzeugen für API Analyse und API Migration. Die Ergebnisse werden als Design Patterns präsentiert, welche auf unseren Erfahrungen mit API Analyse und API Migration innerhalb des Software Languages Teams basieren.
In dieser Arbeit wird der Nutzen von GPGPU (Allzweckberechnungen auf Grafikprozessoren) zur robusten Deskription von natürlichen, markanten Bildmerkmalen mit Hilfe der Grafikprozessoren mobiler Geräte bewertet. Dazu wurde der SURF-Deskriptor [4] mit OpenGL ES 2.0/GLSL ES 1.0 implementiert und dessen Performanz auf verschiedenen mobilen Geräten ausgiebig evaluiert. Diese Implementation ist um ein Vielfaches schneller als eine vergleichbare CPU-Variante auf dem gleichen Gerät. Die Ergebnisse belegen die Tauglichkeit moderner, mobiler Grafikbeschleuniger für GPGPU-Aufgaben, besonders für die Erkennungsphase von NFT-Systemen (Tracking mit natürlichen, markanten Bildmerkmalen), die in Augmented-Reality-Anwendungen genutzt werden. Die nötigen Anpassungen am Algorithmus des SURF-Deskriptors, um diesen effizient auf mobilen GPUs nutzen zu können, werden dargelegt. Weiterhin wird ein Ausblick auf ein GPGPU-gestütztes Tracking-Verfahren gegeben.
Quadrokopter sind Helikopter mit vier in einer Ebene angeordneten Rotoren. Kleine unbemannte Modelle, die oft nur eine Schubkraft von wenigen Newton erzeugen können, sind im Spielzeug- und Modellbaubereich beliebt, werden aber auch von Militär und Polizei als Drohne für Aufklärungs- und Überwachungsaufgaben eingesetzt. Diese Diplomarbeit befasst sich mit den theoretischen Grundlagen der Steuerung eines Quadrokopters und entwickelt darauf aufbauend eine kostengünstige Steuerplatine für einen Modellquadrokopter.
Die theoretischen Grundlagen enthalten eine Untersuchung der Dynamik eines frei fliegenden Quadrokopters, bei der Bewegungsgleichungen hergeleitet und mit den Ergebnissen verglichen werden, die in "Design and control of quadrotors with application to autonomous flying" ([Bou07]) vorgestellt wurden. Weiterhin wird die Funktionsweise verschiedener Sensoren beschrieben, die zur Bestimmung der aktuellen räumlichen Ausrichtung geeignet sind, und es werden Verfahren besprochen, mit denen die Ausrichtung aus den Messwerten dieser Sensoren abgeschätzt werden kann. Zusätzlich wird in den Schiefkörper der Quaternionen eingeführt, in dem dreidimensionale Rotationen kompakt dargestellt und effizient verkettet werden können.
Daran anschließend wird die Entwicklung einer einfachen Steuerplatine beschrieben, die sowohl einen autonomen Schwebeflug als auch Fernsteuerung ermöglicht. Die Platine wurde auf einem X-Ufo-Quadrokopter der Firma Silverlit entwickelt und getestet, der daher ebenfalls vorgestellt wird. Die eingesetzten Bauteile und deren Zusammenspiel werden besprochen. Dabei ist insbesondere die WiiMotionPlus hervorzuheben, die als kostengünstiges Gyrosensormodul verwendet wird. Daneben werden verschiedene Aspekte der Steuersoftware erläutert: die Auswertung der Sensordaten, die Zustandsschätzung mit Hilfe des expliziten komplementären Filters nach Mahony et al. ([MHP08]), die Umsetzung des Ausrichtungsreglers sowie die Erzeugung der Steuersignale für die Motoren. Sowohl die Steuersoftware als auch Schaltplan und Platinenlayout der Steuerplatine liegen dieser Arbeit auf einer CD bei. Schaltplan und Platinenlayout sind zusätzlich im Anhang der Arbeit abgedruckt.
Augmented Reality bedeutet eine reale Umgebung mit, meistens grafischen, virtuellen Inhalten zu erweitern. Oft sind dabei die virtuellen Inhalte der Szene jedoch nur ein Overlay und interagieren nicht mit den realen Bestandteilen der Szene. Daraus ergibt sich ein Authentizitätsproblem für Augmented Reatliy Anwendungen. Diese Arbeit betrachtet Augmented Reality in einer speziellen Umgebung, mit deren Hilfe eine authentischere Darstellung möglich ist. Ziel dieserArbeitwar die Erstellung eines Systems, das Zeichnungen durch Techniken der Augmented Reality mit virtuellen Inhalten erweitert. Durch das Anlegen einer Repräsentation soll es der Anwendung dabei möglich sein die virtuellen Szeneelementemit der Zeichnung interagieren zu lassen. Dazu wurden verschiedene Methoden aus den Bereichen des Pose Tracking und der Sketch Recognition disktutiert und für die Implementierung in einem prototypischen System ausgewählt. Als Zielhardware fungiert ein Android Smartphone. Kontext der Zeichnungen ist eine Dungeon Karte, wie sie in Rollenspielen vorkommt. Die virtuellen Inhalte nehmen dabei die Form von Bewohnern des Dungeons an, welche von einer Agentensimulation verwaltet werden. Die Agentensimulation ist Gegenstand einer eigenen Diplomarbeit [18]. Für das Pose Tracking wurde ARToolkitPlus eingesetzt, ein optisches Tracking System, das auf Basis von Markern arbeitet. Die Sketch Recognition ist dafür zuständig die Inhalte der Zeichnung zu erkennen und zu interpretieren. Dafür wurde ein eigener Ansatz implementiert der Techniken aus verschiedenen Sketch Recognition Systemen kombiniert. Die Evaluation konzentriert sich auf die technischen Aspekte des Systems, die für eine authentische Erweiterung der Zeichnung mit virtuellen Inhalten wichtig sind.
Ein neueres Thema innerhalb des Forschungsbereichs Semantic Web behandelt die Verarbeitung von Anfragen über Linked Open Data (LOD). Wie in der Literatur bereits diskutiert wurde, lässt sich der losen Zergliederung innerhalb des "Web of Data" und dessen Datenquellen durch moderne föderierte Verarbeitungsstrategien bezüglich eingehender Anfragen begegnen. Dieser Ansatz ist jedoch umso mehr abhängig von aktuellen statistischen Informationen (Datenstatistiken) über sämtliche der benutzten Datenquellen einerseits, und genauen Schätzungen von Kardinalitäten und Selektivitäten andererseits. Da föderierte Datenquellen im Allgemeinen keine Auskunft über die Statistik der von ihnen verwalteten Daten geben, schlagen sich Änderungen an diesen Daten nicht automatisch in den zentralen Datenstatistikkatalogen nieder - die verwalteten Datenstatistiken werden obsolet. In der vorliegenden Arbeit wird die Erweiterung eines RDF-basierten Query-Federators beschrieben, die die Obsoleszenz von zentral verwalteten Datenstatistiken beurteilen und eine gegebenenfalls notwendige Aktualisierung einzelner Datenstatistiken unternehmen können soll. Als Grundlage dazu dient die Beobachtung auftretender Fehler in der Kardinalitätsschätzung ausgewerteter Queries. Eine Evaluation des Systems wird anschließend beschrieben. Die Ergebnisse zeigen die prinzipielle Richtigkeit der zugrundeliegenden Überlegungen, die praktische Anwendbarkeit kann jedoch nicht überzeugend demonstriert werden. Die Wiederverwendung der entwickelten Systemerweiterung für vielversprechendere Ansätze erscheint jedoch möglich und wird diskutiert.
Computer unterstützen Menschen zunehmend in Alltagssituationen. Ihre fortwährend voranschreitende Miniaturisierung erlaubt die Erschließung weiterer Einsatzmöglichkeiten und trägt zu einer wachsenden Bedeutung und Verbreitung in der Gesellschaft bei. Längst sind solche Systeme in vielerlei Alltagsgegenständen Realität und ihre Mobilität spielt eine immer größer werdende Rolle: von Laptops über Smartphones und Tablets hin zu am oder im Körper tragbaren Systemen (engl. wearable computing) wie Hörgeräte und Pulsuhren, unterstützen sie den Menschen aktiv und kontextsensitiv in ihrem Alltag.
Als ein Teilgebiet des wearable computing gilt die Entwicklung von Head-mounted Displays (kurz HMD). Das sind Helme oder Brillen die dem Benutzer auf einer oder mehreren Darstellungsflächen computergenerierte Bilder (virtual reality) oder mit Zusatzinformationen versehene Aufnahmen der Umgebung (enhanced reality) präsentieren. Aktuell sind HMDs welche LC-Displays nutzen weit verbreitet, innovativer sind solche welche das Bild direkt auf die Netzhaut des Benutzers projizieren. Neuste Entwicklungen deuten auf weitere Miniaturisierung des Konzepts, hin zu Kontaktlinsen mit integriertem Bildschirm. Für die Sammlung dazustellender Daten werden eine Vielzahl Sensoren hinzugezogen, wie Head-Tracker oder GPS. Auch durch Erweiterungen im Bereich der Bedienbarkeit - zum Beispiel durch Spracheingabe über ein Mikrofon - und die Steigerung des Immersionsgefühls - zum Beispiel durch stereoskopische Bilder oder integrierte Kopfhörer - wandeln sich HMDs von einfachen Anzeigen hin zu stetig besser ausgerüsteten Geräten mit ständig wachsenden Einsatzgebieten. Längst werden HMDs in einer Vielzahl von Feldern benutzt. rnIm Vordergrund dieser Arbeit steht der Entwurf und die Erstellung einer Anwendung für das Betriebssystem Apple iOS 5, als softwaretechnischen Beitrag zur Entwicklung eines HMD auf Basis von Apple-Mobilgeräten mit hochauflösendem Retina Display. Das RollerCoaster2000-Projekt soll zur Darstellung des grafischen Inhalts genutzt werden, aus Gründen einer freien Lizenz, frei zugänglichen Quellcodes sowie einer effizienten OpenGL-ES-Portierung. Dabei soll ein leichter Austausch oder die Erweiterung dieses grafischen Grundgerüsts gegeben sein um die Einsatzmöglichkeiten des HMD zu erhöhen. Über die reine Nutzung als Darstellungsmedium soll die erstellte Anwendung die vielfältigen, sensorischen Fähigkeiten und Vernetzungsmöglichkeiten aktueller Apple-Endgeräte nutzen um mehrere Geräte zu einer Datenbrille zu verbinden und die Kopfbewegungen des Benutzers auszuwerten, in der virtuellen Szene abzubilden und zwischen den Geräten synchron zu halten. Zur leichten Orientierung des Benutzers während der Bedienung soll außerdem auf die integrierte Gerätekamera zugegriffen werden.
Um die Realisierung einer den Kriterien gerecht werdenden Anwendung zu ermöglichen wird in dieser Arbeit in den Bereich der iOS-Entwicklung eingeführt. Zuerst erfolgt eine Einleitung in die historischen Entwicklungen auf dem Gebiet der mobilen Entwicklung für Apple-Mobilgeräte, von der Entstehung des objektorientierten Paradigmas hin zur heutigen Ausprägung des iOS-SDK. Letzteres ergibt sich dabei aus der Summe einer Vielzahl, stark kohärenter Komponenten. Dazu gehören die Grundsteine einer jeden iOS-Applikation, die objektorientierte, dynamische und streng typisierte Sprache Objective-C sowie den durch Apple an die eigenen Bedürfnisse angepassten LLVM-Compiler und die von Apple angepasste LLVM-Laufzeitumgebung. Zudem sind das Cocoa Framework und die Entwicklungsumgebung Xcode, die zur Erstellung mobiler Anwendungen von Apple entwickelt wurden, Gegenstand dieser Arbeit. Anhand der gewonnenen Kenntnisse im Bereich der mobilen Anwendungsentwicklung werden Anforderungen an eine Anwendung für ein HMD erhoben und die Erstellung einer, diesen Kriterien genügenden, Software beschrieben.