6 research outputs found

    Method and Technology for Model-based Test Automation of Context-sensitive Mobile Applications

    Get PDF
    Smartphone und Tablet Computer haben sich zu universalen Kommunikations- und Unterhaltungsplattformen entwickelt, die durch ständige Verfügbarkeit mobilen Internets die Verwendung mobiler, digitaler Dienste und Anwendungen immer mehr zur Normalität werden lassen und in alle Bereiche des Alltags vordringen. Die digitalen Marktplätze zum Vertrieb von Apps, sogenannten App Stores, sind Blockbuster-Märkte, in denen wenige erfolgreiche Produkte in kurzen Zeitintervallen den Großteil des Gesamtgewinns des Marktes erzielen. Durch dynamische, summative Bewertungssysteme in App Stores wird die Qualität einer App zu einem unmittelbaren Wert- und Aufwandstreiber. Die Qualität einer App steht in direktem Zusammenhang mit der Anzahl Downloads und somit mit dem wirtschaftlichen Erfolg. Mobile Geräte zeichnen sich gegenüber Desktop-Computern vorrangig dadurch aus, dass sie durch Sensoren in der Lage sind, Parameter ihrer Umgebung zu messen und diese Daten für Anwendungsinhalte aufzubereiten. Anwendungsfälle für solche Technologien sind beispielsweise ortsbasierte digitale Dienste, die Verwendung von Standortinformationen für Fahrzeug- oder Fußgängernavigation oder die Verwendung von Sensoren zur Interaktion mit einer Anwendung oder zur grafischen Aufbereitung in Augmented Reality-Anwendungen. Anwendungen, die Parameter ihrer Umgebung messen, aufbereiten und die Steuerung des Kontrollflusses einfließen lassen, werden als kontextsensitive Anwendungen bezeichnet. Kontextsensitivität hat prägenden Einfluss auf die fachliche und technische Gestaltung mobiler Anwendungen. Die fachliche Interpretation von Kontextparametern ist ein nicht-triviales Problem und erfordert eine sorgfältige Implementierung und gründliches Testen. Herausforderungen des Testens kontextsensitiver, mobiler Anwendungen sind Erstellung und Durchführung von Tests, die zum einen die zu testende Anwendung adäquat abdecken und zum anderen Testdaten bereitstellen und reproduzierbar in die zu testende Anwendung einspeisen. In dieser Dissertation wird eine Methode und eine Technologie vorgestellt, die wesentliche Aspekte und Tätigkeiten des Testens durch modellbasierte Automatisierung von menschlicher Arbeitskraft entkoppelt. Es wird eine Methode vorgestellt, die Tests für kontextsensitive Anwendungen aus UML-Aktivitätsdiagrammen generiert, die durch Verwendung eines UML-Profils zur Kontext- und Testmodellierung um Testdaten angereichert werden. Ein Automatisierungswerkzeug unterstützt die Testdurchführung durch reproduzierbare Simulation von Kontextparametern. Durch eine prototypische Implementierung der Generierung von funktionalen Akzeptanztests, der Testautomatisierung und Kontextsimulation wurde Machbarkeit des vorgestellten Ansatzes am Beispiel der mobilen Plattform Android praktisch nachgewiesen.Smartphones and tablet computers have evolved into universal communication and entertainment platforms. With the ubiquitous availability of mobile internet access, digital services and applications have become a commodity that permeates into all aspects of everyday life. The digital marketplaces for mobile app distribution, commonly referred to as App Stores, are blockbuster markets, where few extraordinarily successful apps generate the major share of the market's overall revenue in a short period of time. Through the implementation of dynamic, summative rating mechanisms in App Stores, app quality becomes a key value-driver of app monetarization, as app quality is directly associated with the number of app downloads, and hence with economic success. In contrast to desktop computers, mobile devices are uniquely characterized by a variety of sensors that measure environmental parameters and make them available as input to software. Potential uses of these technologies range from location-based digital services that use the user's location for vehicle or pedestrian navigation to augmented reality applications that use sensor information for user experience enhancement. Apps instrumenting physical and non-physical environmental parameters to control workflows or user interfaces are called context-aware applications. Context-awareness has a formative impact on the functional and technical design of mobile applications. The algorithmic interpretation of context data is a non-trivial problem that makes thorough implementation and careful testing mandatory to ensure adequate application quality. Major challenges of context-aware mobile application testing are test case creation and test execution. The impact of context-awareness on test case creation is the attainability of adequate test coverage, that in contrast to non-context-aware application extends beyond traditional input data. It requires the identification and characterization of context data sources and the provisioning of suitable, reproducible test data. This thesis addresses a method and technology to decouple test case creation and test execution from manual labor through the extensive use of model-driven automation technology. A method is presented that generates test cases for context-aware mobile applications from UML Activity Models by means of model transformation technology. A test execution framework facilitates the reproducible simulation of context data derived from an enriched system model. The approach is validated using a prototypical implementation of the test case generation algorithm. The simulation of context data during test execution ist validated using a modified implementation of the Android operation system

    Modellgetriebene Entwicklung adaptiver, komponentenbasierter Mashup-Anwendungen

    Get PDF
    Mit dem Wandel des Internets zu einer universellen Softwareplattform sind die Möglichkeiten und Fähigkeiten von Webanwendungen zwar rasant gestiegen. Gleichzeitig gestaltet sich ihre Entwicklung jedoch zunehmend aufwändig und komplex, was dem Wunsch nach immer kürzeren Entwicklungszyklen für möglichst situative, bedarfsgerechte Lösungen entgegensteht. Bestehende Ansätze aus Forschung und Technik, insbesondere im Umfeld der serviceorientierten Architekturen und Mashups, werden diesen Problemen bislang nicht ausreichend gerecht. Deshalb werden in dieser Dissertation neue Konzepte für die modellgetriebene Entwicklung und Bereitstellung von Webanwendungen vorgestellt. Die zugrunde liegende Idee besteht darin, das Paradigma der Serviceorientierung auf die Präsentationsebene zu erweitern. So sollen erstmals – neben Daten- und Geschäftslogik – auch Teile der Anwendungsoberfläche in Form wiederverwendbarer Komponenten über Dienste bereitgestellt werden. Anwendungen sollen somit über alle Anwendungsebenen hinweg nach einheitlichen Prinzipien „komponiert“ werden können. Den ersten Schwerpunkt der Arbeit bilden die entsprechenden universellen Modellierungskonzepte für Komponenten und Kompositionen. Sie erlauben u. a. die plattformunabhängige Beschreibung von Anwendungen als Komposition der o. g. Komponenten. Durch die Abstraktion und entsprechende Autorenwerkzeuge wird die Entwicklung so auch für Domänenexperten bzw. Nicht-Programmierer möglich. Der zweite Schwerpunkt liegt auf dem kontextadaptiven Integrationsprozess von Komponenten und der zugehörigen, serviceorientierten Referenzarchitektur. Sie ermöglichen die dynamische Suche, Bindung und Konfiguration von Komponenten, d. h. auf Basis der o. g. Abstraktionen können genau die Anwendungskomponenten geladen und ausgeführt werden, die für den vorliegenden Nutzer-, Nutzungs- und Endgerätekontext am geeignetsten sind. Der dritte Schwerpunkt adressiert die Kontextadaptivität der kompositen Anwendungen in Form von Konzepten zur aspektorientierten Definition von adaptivem Verhalten im Modell und dessen Umsetzung zur Laufzeit. In Abhängigkeit von Kontextänderungen können so Rekonfigurationen von Komponenten, ihr Austausch oder Veränderungen an der Komposition, z.B. am Layout oder dem Datenfluss, automatisch durchgesetzt werden. Alle vorgestellten Konzepte wurden durch prototypische Implementierungen praktisch untermauert. Anhand diverser Anwendungsbeispiele konnten ihre Validität und Praktikabilität – von der Modellierung im Autorenwerkzeug bis zur Ausführung und dynamischen Anpassung – nachgewiesen werden. Die vorliegende Dissertation liefert folglich eine Antwort auf die Frage, wie zukünftige Web- bzw. Mashup-Anwendungen zeit- und kostengünstig entwickelt sowie zuverlässig und performant ausgeführt werden können. Die geschaffenen Konzepte bilden gleichermaßen die Grundlage für eine Vielzahl an Folgearbeiten.:Verzeichnisse vi Abbildungsverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . vii Verzeichnis der Codebeispiele . . . . . . . . . . . . . . . . . . . . . . . . . . ix Abkürzungsverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . x 1 Einleitung 1 1.1 Problemdefinition, Thesen und Forschungsziele . . . . . . . . . . . . . . 3 1.1.1 Probleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3 1.1.2 Thesen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 1.1.3 Forschungsziele . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.2 Abgrenzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.3 Aufbau der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2 Grundlagen, Szenarien und Herausforderungen 12 2.1 Grundlagen und Begriffsklärung . . . . . . . . . . . . . . . . . . . . . . . 13 2.1.1 Komposite und serviceorientierte Webanwendungen . . . . . . . 13 2.1.2 Mashups . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15 2.1.3 Modellgetriebene Software-Entwicklung . . . . . . . . . . . . . . 17 2.1.4 Kontext und kontextadaptive Webanwendungen . . . . . . . . . 18 2.2 Szenarien und Problemanalyse . . . . . . . . . . . . . . . . . . . . . . . 20 2.2.1 Dienstkomposition zur Reiseplanung . . . . . . . . . . . . . . . . . 20 2.2.2 Interaktive Aktienverwaltung . . . . . . . . . . . . . . . . . . . . . 22 2.2.3 Adaptive Touristeninformation . . . . . . . . . . . . . . . . . . . . 23 2.3 Anforderungen und Kriterien der Analyse . . . . . . . . . . . . . . . . . . 25 2.3.1 Anforderungen an Komponenten- und Kompositionsmodell . . . 25 2.3.2 Anforderungen an die Laufzeitumgebung . . . . . . . . . . . . . 27 3 Stand der Forschung und Technik 30 3.1 SOA und Dienstkomposition zur Interaktion mit Diensten . . . . . . . . . 31 3.1.1 Statische Dienstkomposition . . . . . . . . . . . . . . . . . . . . . . 32 3.1.2 Dynamische Dienstauswahl und -Komposition . . . . . . . . . . . 33 3.1.3 Adaptionskonzepte für Dienstkompositionen . . . . . . . . . . . . 45 3.1.4 Interaktions- und UI-Konzepte für Dienstkompositionen . . . . . . 48 3.2 Web Engineering - Entwicklung interaktiver adaptiver Webanwendungen 50 3.2.1 Entwicklung von Hypertext- und Hypermedia-Anwendungen . . 51 3.2.2 Entwicklung von Mashup-Anwendungen . . . . . . . . . . . . . . 54 3.3 Zusammenfassung und Diskussion der Defizite existierender Ansätze . . 67 3.3.1 Probleme und Defizite aus dem Bereich der Dienstkomposition . 67 3.3.2 Probleme und Defizite beim Web- und Mashup-Engineering . . . 69 4 Universelle Komposition adaptiver Webanwendungen 73 4.1 Grundkonzept und Rollenmodell . . . . . . . . . . . . . . . . . . . . . . 74 4.2 Modellgetriebene Entwicklung kompositer Mashups . . . . . . . . . . . 75 4.2.1 Universelles Komponentenmodell . . . . . . . . . . . . . . . . . . 76 4.2.2 Belangorientiertes Kompositionsmodell . . . . . . . . . . . . . . . 76 4.3 Dynamische Integration und Laufzeitumgebung . . . . . . . . . . . . . 78 4.3.1 Kontextsensitiver Integrationsprozess für Mashup-Komponenten . 79 4.3.2 Referenzarchitektur zur Komposition und Ausführung . . . . . . . 80 4.3.3 Unterstützung von adaptivem Laufzeitverhalten in Mashups . . . 81 5 Belangorientierte Modellierung adaptiver, kompositer Webanwendungen 83 5.1 Ein universelles Komponentenmodell für Mashup-Anwendungen . . . . 84 5.1.1 Grundlegende Eigenschaften und Prinzipien . . . . . . . . . . . . 84 5.1.2 Komponententypen . . . . . . . . . . . . . . . . . . . . . . . . . . 86 5.1.3 Beschreibung von Komponenten . . . . . . . . . . . . . . . . . . 87 5.1.4 Nutzung der Konzepte zur Komponentenentwicklung . . . . . . . 99 5.2 Ein belangorientiertes Metamodell für interaktive Mashup-Anwendungen 100 5.2.1 Conceptual Model – Modellierung der Anwendungskonzepte . . 102 5.2.2 Communication Model – Spezifikation von Daten- und Kontrollfluss 107 5.2.3 Layout Model – Visuelle Anordnung von UI-Komponenten . . . . 114 5.2.4 Screenflow Model – Definition von Navigation und Sichten . . . . 115 5.3 Modellierung von adaptivem Verhalten . . . . . . . . . . . . . . . . . . 117 5.3.1 Adaptionstechniken für komposite Webanwendungen . . . . . . 117 5.3.2 Adaptivity Model – Modellierung von Laufzeitadaptivität . . . . . 119 5.4 Ablauf und Unterstützung bei der Modellierung . . . . . . . . . . . . . . 126 5.5 Zusammenfassung und Diskussion . . . . . . . . . . . . . . . . . . . . . . 128 6 Kontextsensitiver Integrationsprozess und Kompositionsinfrastruktur 132 6.1 Ein kontextsensitiver Integrationsprozess zur dynamischen Bindung von Mashup-Komponenten . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 6.1.1 Modellinterpretation oder -transformation . . . . . . . . . . . . . . 134 6.1.2 Suche und Matching . . . . . . . . . . . . . . . . . . . . . . . . . 135 6.1.3 Rangfolgebildung . . . . . . . . . . . . . . . . . . . . . . . . . . . 142 6.1.4 Auswahl und Integration . . . . . . . . . . . . . . . . . . . . . . . . 145 6.2 Kompositionsinfrastruktur und Laufzeitumgebung . . . . . . . . . . . . . 146 6.2.1 Verwaltung von Komponenten und Domänenwissen . . . . . . . 146 6.2.2 Aufbau der Laufzeitumgebung (MRE) . . . . . . . . . . . . . . . . 148 6.2.3 Dynamische Integration und Verwaltung von Komponenten . . . 151 6.2.4 Kommunikationsinfrastruktur und Mediation . . . . . . . . . . . . . 155 6.3 Unterstützung von Adaption zur Laufzeit . . . . . . . . . . . . . . . . . . 162 6.3.1 Kontexterfassung, -modellierung und -verwaltung . . . . . . . . . 163 6.3.2 Ablauf der dynamischen Adaption . . . . . . . . . . . . . . . . . 168 6.3.3 Dynamischer Austausch von Komponenten . . . . . . . . . . . . 170 6.4 Zusammenfassung und Diskussion . . . . . . . . . . . . . . . . . . . . . . 174 7 Umsetzung und Validierung der Konzepte 178 7.1 Realisierung der Modellierungsmittel . . . . . . . . . . . . . . . . . . . . 179 7.1.1 Komponentenbeschreibung in XML und OWL . . . . . . . . . . . 179 7.1.2 EMF-basiertes Kompositionsmodell . . . . . . . . . . . . . . . . . . 180 7.1.3 Modelltransformationen . . . . . . . . . . . . . . . . . . . . . . . . 182 7.1.4 Modellierungswerkzeug . . . . . . . . . . . . . . . . . . . . . . . . 183 7.2 Realisierung der Kompositions- und Laufzeitumgebung . . . . . . . . . . 185 7.2.1 Semantische Verwaltung und Discovery . . . . . . . . . . . . . . 185 7.2.2 Kompositions- bzw. Laufzeitumgebungen . . . . . . . . . . . . . . 192 7.2.3 Kontextverwaltung und Adaptionsmechanismen . . . . . . . . . 201 7.3 Validierung und Diskussion anhand der Beispielszenarien . . . . . . . . . 210 7.3.1 Reiseplanung mit TravelMash . . . . . . . . . . . . . . . . . . . . . 211 7.3.2 Aktienverwaltung mit StockMash . . . . . . . . . . . . . . . . . . . 214 7.3.3 Adaptive Touristeninformation mit TravelGuide . . . . . . . . . . . 216 7.3.4 Weitere Prototypen . . . . . . . . . . . . . . . . . . . . . . . . . . . 218 7.4 Zusammenfassung und Diskussion . . . . . . . . . . . . . . . . . . . . . . 219 8 Zusammenfassung, Diskussion und Ausblick 226 8.1 Zusammenfassung der Kapitel und ihrer Beiträge . . . . . . . . . . . . . 227 8.2 Diskussion und Bewertung . . . . . . . . . . . . . . . . . . . . . . . . . . 231 8.2.1 Wissenschaftliche Beiträge . . . . . . . . . . . . . . . . . . . . . . 231 8.2.2 Einschränkungen und Grenzen . . . . . . . . . . . . . . . . . . . . 236 8.3 Laufende und zukünftige Arbeiten . . . . . . . . . . . . . . . . . . . . . 238 Anhänge 242 A.1 Komponentenbeschreibung in SMCDL . . . . . . . . . . . . . . . . . . . 242 A.2 Komponentenmodell in Form der MCDO . . . . . . . . . . . . . . . . . . 243 A.3 Kompositionsmodell in EMF . . . . . . . . . . . . . . . . . . . . . . . . . . 244 Verzeichnis eigener Publikationen 246 Webreferenzen 249 Literaturverzeichnis 25

    KomBInoS - Modellgetriebene Entwicklung von multimodalen Dialogschnittstellen fĂĽr Smart Services

    Get PDF
    Diese Arbeit ist angesiedelt im Kontext der drei Forschungsgebiete Smart Service Welt, Modellgetriebene Softwareentwicklung und Intelligente Benutzerschnittstellen. Das Ziel der Arbeit war die Entwicklung eines ganzheitlichen Ansatzes zur effizienten Erstellung von multimodalen Dialogschnittstellen für Smart Services. Um dieses Ziel zu erreichen, wurde mit KomBInoS ein umfassendes Rahmenwerk zur modellgetriebenen Erstellung solcher Benutzerschnittstellen entwickelt. Das Rahmenwerk besteht aus: (1) einer Metamodell-Architektur, welche sowohl eine modellgetriebene Entwicklung als auch die Komposition von multimodalen Dialogschnittstellen für Smart Services erlaubt, (2) einem methodischen Vorgehen, welches aus aufeinander abgestimmten Modelltransformationen, möglichen Kompositionsschritten und manuellen Entwicklungstätigkeiten besteht, sowie (3) einer integrierten Werkzeugkette als Implementierung der Methode. Es wurde außerdem eine cloud-fähige Laufzeitumgebung zur mobilen Nutzung der so erstellten Benutzerschnittstellen entwickelt. Als Proof-of-Concept werden acht Beispielanwendungen und Demonstratoren aus fünf Forschungsprojekten vorgestellt. Zusätzlich zur Smart Service Welt fand und findet KomBInoS auch Anwendung im Bereich der Industrie 4.0.This work is located in the context of the three research areas Smart Service World, Model-Driven Software Development and Intelligent User Interfaces. The aim of the work was to develop a holistic approach for the efficient creation of multimodal dialogue interfaces for Smart Services. To achieve this goal, KomBInoS was developed as a comprehensive framework for the model-driven creation of such user interfaces. The framework consists of: (1) a metamodel architecture that allows both model-driven development and the composition of multimodal dialogue interfaces for Smart Services, (2) a methodical approach consisting of coordinated model transformations, possible compositional steps and manual development activities, as well as (3) an integrated tool chain as an implementation of the method. Furthermore, a cloud-enabled runtime environment was developed for mobile use of the user interfaces created in this way. As proof-of-concept, eight sample applications and demonstrators from five research projects will be presented. In addition to the Smart Service Welt, KomBInoS was and is also used in the field of industry 4.0

    Selbstbestimmung, Privatheit und Datenschutz

    Get PDF
    In diesem Open-Access-Sammelband werden die aktuelle Herausforderungen für Privatheit und Datenschutz aufgezeigt, die durch die zunehmende Digitalisierung entstehen. Die Beitragsautoren analysieren, wie diese durch Governancemechanismen adressiert werden können. Als Alternative zu einem rein profitorientierten Digitalkapitalismus bzw. Digitalautoritarismus wird für einen eigenständigen europäischen Weg beim Datenschutz argumentiert, der auf eine gemeinwohlorientierte Technikentwicklung abzielt. Insbesondere befassen sich die Beiträge mit den Möglichkeiten für die Stärkung der Selbstbestimmung in der Datenökonomie und mit algorithmischen Entscheidungssystemen

    Selbstbestimmung, Privatheit und Datenschutz

    Get PDF
    corecore