TY - THES A1 - Fischbach, Martin Walter T1 - Enhancing Software Quality of Multimodal Interactive Systems T1 - Verbesserung der Softwarequalität multimodaler interaktiver Systeme N2 - Multimodal interfaces (MMIs) are a promising human-computer interaction paradigm. They are feasible for a wide rang of environments, yet they are especially suited if interactions are spatially and temporally grounded with an environment in which the user is (physically) situated. Real-time interactive systems (RISs) are technical realizations for situated interaction environments, originating from application areas like virtual reality, mixed reality, human-robot interaction, and computer games. RISs include various dedicated processing-, simulation-, and rendering subsystems which collectively maintain a real-time simulation of a coherent application state. They thus fulfil the complex functional requirements of their application areas. Two contradicting principles determine the architecture of RISs: coupling and cohesion. On the one hand, RIS subsystems commonly use specific data structures for multiple purposes to guarantee performance and rely on close semantic and temporal coupling between each other to maintain consistency. This coupling is exacerbated if the integration of artificial intelligence (AI) methods is necessary, such as for realizing MMIs. On the other hand, software qualities like reusability and modifiability call for a decoupling of subsystems and architectural elements with single well-defined purposes, i.e., high cohesion. Systems predominantly favour performance and consistency over reusability and modifiability to handle this contradiction. They thus accept low maintainability in general and hindered scientific progress in the long-term. This thesis presents six semantics-based techniques that extend the established entity-component system (ECS) pattern and pose a solution to this contradiction without sacrificing maintainability: semantic grounding, a semantic entity-component state, grounded actions, semantic queries, code from semantics, and decoupling by semantics. The extension solves the ECS pattern's runtime type deficit, improves component granularity, facilitates access to entity properties outside a subsystem's component association, incorporates a concept to semantically describe behavior as complement to the state representation, and enables compatibility even between RISs. The presented reference implementation Simulator X validates the feasibility of the six techniques and may be (re)used by other researchers due to its availability under an open-source licence. It includes a repertoire of common multimodal input processing steps that showcase the particular adequacy of the six techniques for such processing. The repertoire adds up to the integrated multimodal processing framework miPro, making Simulator X a RIS platform with explicit MMI support. The six semantics-based techniques as well as the reference implementation are validated by four expert reviews, multiple proof of concept prototypes, and two explorative studies. Informal insights gathered throughout the design and development supplement this assessment in the form of lessons learned meant to aid future development in the area. N2 - Multimodale Schnittstellen sind ein vielversprechendes Paradigma der Mensch-Computer-Interaktion. Sie sind in einer Vielzahl von Umgebungen einsetzbar und eignen sich besonders wenn Interaktionen zeitlich und räumlich mit einer Umgebung verankert sind in welcher der Benutzer (physikalisch) situiert ist. Interaktive Echtzeitsysteme (engl. Real-time Interactive Systems, RIS) sind technische Umsetzungen situierter Interaktionsumgebungen, die vor allem in Anwendungsgebieten wie der virtuellen Realität, der gemischten Realität, der Mensch-Roboter-Interaktion und im Bereich der Computerspiele eingesetzt werden. Interaktive Echtzeitsysteme bestehen aus vielfältigen dedizierten Subsystemen, die zusammen die Echtzeitsimulation eines kohärenten Anwendungszustands aufrecht erhalten und die komplexen funktionalen Anforderungen des Anwendungsgebiets erfüllen. Zwei gegensätzliche Prinzipien bestimmen die Softwarearchitekturen interaktiver Echtzeitsysteme: Kopplung und Kohäsion. Einerseits verwenden Subsysteme typischerweise spezialisierte Datenstrukturen um Performanzanforderungen gerecht zu werden. Um Konsistenz aufrecht zu erhalten sind sie zudem auf enge zeitliche- und semantische Abhängigkeiten untereinander angewiesen. Diese enge Kopplung wird verstärkt, falls Methoden der künstlichen Intelligenz in das RIS integriert werden müssen, wie es für die Umsetzung multimodaler Schnittstellen der Fall ist. Andererseits bedingen Softwarequalitätsmerkmale wie Wiederverwendbarkeit und Modifizierbarkeit die Entkopplung von Subsystemen und Architekturelementen und fordern hohe Kohäsion. Bestehende Systeme lösen diesen Konflikt überwiegend zu Gunsten von Performanz und Konsistenz und zu Lasten von Wiederverwendbarkeit und Modifizierbarkeit. Insgesamt wird auf diese Weise geringe Wartbarkeit akzeptiert und auf lange Sicht der wissenschaftliche Fortschritt eingeschränkt. Diese Arbeit stellt sechs Softwaretechniken auf Basis von Methoden der Wissensrepräsentation vor, welche das etablierte Entity-Component System (ECS) Entwurfsmuster erweitern und eine Lösung des Konflikts darstellen, die die Wartbarkeit nicht missachtet: semantic grounding, semantic entity-component state, grounded actions, semantic queries, code from semantics und decoupling by semantics. Diese Erweiterung löst das Introspektionsdefizit des ECS-Musters, verbessert die Granularität von ECS-Komponenten, erleichtert den Zugriff auf Entity-Eigenschaften außerhalb der Subsystem-Komponentenzuordnung, beinhaltet ein Konzept zur einheitlichen Beschreibung von Verhalten als Komplement zur Zustandsrepräsentation und ermöglicht sogar Kompatibilität zwischen interaktiven Echtzeitsystemen. Die vorgestellte Referenzimplementierung Simulator X weist die technische Machbarkeit der sechs Softwaretechniken nach. Sie kann von anderen Forschern auf Basis einer Open-Source Lizenz (wieder)verwendet werden und beinhaltet ein Repertoire an üblichen Verarbeitungsschritten für multimodalen Eingaben, welche die besondere Eignung der sechs Softwaretechniken für eine solche Eingabeverarbeitung veranschaulichen. Dieses Repertoire bildet zusammen das integrierte multimodale Eingabeverarbeitungs-Framework miPro und macht damit Simulator X zu einem RIS, welches explizit die Umsetzung von multimodalen Schnittstellen unterstützt. Die sechs Softwaretechniken sowie die Referenzimplementierung sind durch vier Expertengutachten, eine Vielzahl an technischen Demonstrationen sowie durch zwei explorative Studien validiert. Informelle Erkenntnisse, die während Design und Entwicklung gesammelt wurden, ergänzen diese Beurteilung in Form von lessons learned, welche bei künftigen Entwicklungsarbeiten in diesem Gebiet helfen sollen. KW - Echtzeitsystem KW - Framework KW - Ontologie KW - Multimodales System KW - Intelligent Real-time Interactive System KW - Virtual Reality KW - Mixed Reality KW - Multimodal System KW - Software Quality KW - Software Architecture KW - Multimodal Processing KW - Virtuelle Realität KW - Software Engineering Y1 - 2017 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-152723 ER - TY - THES A1 - Wiebusch, Dennis T1 - Reusability for Intelligent Realtime Interactive Systems T1 - Wiederverwendbarkeit für Intelligente Echtzeit-interaktive Systeme N2 - Software frameworks for Realtime Interactive Systems (RIS), e.g., in the areas of Virtual, Augmented, and Mixed Reality (VR, AR, and MR) or computer games, facilitate a multitude of functionalities by coupling diverse software modules. In this context, no uniform methodology for coupling these modules does exist; instead various purpose-built solutions have been proposed. As a consequence, important software qualities, such as maintainability, reusability, and adaptability, are impeded. Many modern systems provide additional support for the integration of Artificial Intelligence (AI) methods to create so called intelligent virtual environments. These methods exacerbate the above-mentioned problem of coupling software modules in the thus created Intelligent Realtime Interactive Systems (IRIS) even more. This, on the one hand, is due to the commonly applied specialized data structures and asynchronous execution schemes, and the requirement for high consistency regarding content-wise coupled but functionally decoupled forms of data representation on the other. This work proposes an approach to decoupling software modules in IRIS, which is based on the abstraction of architecture elements using a semantic Knowledge Representation Layer (KRL). The layer facilitates decoupling the required modules, provides a means for ensuring interface compatibility and consistency, and in the end constitutes an interface for symbolic AI methods. N2 - Software Frameworks zur Entwicklung Echtzeit-interaktiver Systeme (engl. Realtime Interactive Systems, RIS), z.B. mit Anwendungen in der Virtual, Augmented und Mixed Reality (VR, AR und MR) sowie in Computerspielen, integrieren vielfältige Funktionalitäten durch die Kopplung verschiedener Softwaremodule. Eine einheitliche Methodik einer Kopplung in diesen Systemen besteht dabei nicht, stattdessen existieren mannigfaltige individuelle Lösungen. Als Resultat sinken wichtige Softwarequalitätsfaktoren wie Wartbarkeit, Wiederverwendbarkeit und Anpassbarkeit. Viele moderne Systeme setzen zusätzlich unterschiedliche Methoden der Künstlichen Intelligenz (KI) ein, um so intelligente virtuelle Umgebungen zu generieren. Diese KI-Methoden verschärfen in solchen Intelligenten Echtzeit-interaktiven Systemen (engl. Intelligent Realtime Interactive Systems, IRIS) das eingangs genannte Kopplungsproblem signifikant durch ihre spezialisierten Datenstrukturen und häufig asynchronen Prozessflüssen bei gleichzeitig hohen Konsistenzanforderungen bzgl. inhaltlich assoziierter, aber funktional entkoppelter Datenrepräsentationen in anderen Modulen. Die vorliegende Arbeit beschreibt einen Lösungsansatz für das Entkopplungsproblem mittels Abstraktion maßgeblicher Softwarearchitekturelemente basierend auf einer erweiterbaren semantischen Wissensrepräsentationsschicht. Diese semantische Abstraktionsschicht erlaubt die Entkopplung benötigter Module, ermöglicht eine automatische Überprüfung von Schnittstellenkompatibiltät und Konsistenz und stellt darüber hinaus eine generische Schnittstelle zu symbolischen KI-Methoden bereit. KW - Virtuelle Realität KW - Ontologie KW - Wissensrepräsentation KW - Echtzeitsystem KW - Framework KW - Intelligent Realtime Interactive System KW - Virtual Reality KW - Knowledge Representation Layer KW - Intelligent Virtual Environment KW - Semantic Entity Model KW - Erweiterte Realität KW - Softwarewiederverwendung KW - Modul KW - Software Engineering Y1 - 2016 U6 - http://nbn-resolving.de/urn/resolver.pl?urn:nbn:de:bvb:20-opus-121869 SN - 978-3-95826-040-5 (print) SN - 978-3-95826-041-2 (online) N1 - Parallel erschienen als Druckausg. in Würzburg University Press, ISBN 978-3-95826-040-5, 34,90 EUR PB - Würzburg University Press CY - Würzburg ER -