4 research outputs found

    Rapid Prototyping of Topology Control Algorithms by Graph Transformation

    Get PDF
    Topology control algorithms are used to improve the energy efficiency (or other quality parameters) of wireless sensor networks. In this paper, we propose a model-driven rapid prototyping approach for the kTC topology control algorithm to enable the fast implementation and the evaluation of its different variants, and consequently, to accelerate the network quality experimentation cycle. In our approach, wireless sensor networks are described by graph-based models, and three variants of the kTC topology control algorithm are implemented by graph transformation, which are then executed on input network descriptions to derive modified topologies whose quality is then measured in several contexts to be able to assess the achieved network quality improvement

    Graph Transformation Model of a Triangulated Network of Mobile Units

    Get PDF
    A triangulated network of mobile units is modelled by means of a graph trans-formation system in which graph nodes are labelled with geometric coordinates and edges are labelled with distances. Nodes represent mobile units and edges represent wireless radio communication links between them. Under concurrency the model can describe interesting practical scenarios, for example swarms of taxis in an urban environment. The contribution features the enhancement of a graph transformation system by trigonometric calculations. By the way it is also shown that the classical negative edge condition has only limited applicability if a strict locality principle is assumed, and "vice versa" that there are reasonable modeling cases in which this locality principle itself fails to suffice

    A Framework for Model-Driven Development of Mobile Applications with Context Support

    Get PDF
    Model-driven development (MDD) of software systems has been a serious trend in different application domains over the last 15 years. While technologies, platforms, and architectural paradigms have changed several times since model-driven development processes were first introduced, their applicability and usefulness are discussed every time a new technological trend appears. Looking at the rapid market penetration of smartphones, software engineers are curious about how model-driven development technologies can deal with this novel and emergent domain of software engineering (SE). Indeed, software engineering of mobile applications provides many challenges that model-driven development can address. Model-driven development uses a platform independent model as a crucial artifact. Such a model usually follows a domain-specific modeling language and separates the business concerns from the technical concerns. These platform-independent models can be reused for generating native program code for several mobile software platforms. However, a major drawback of model-driven development is that infrastructure developers must provide a fairly sophisticated model-driven development infrastructure before mobile application developers can create mobile applications in a model-driven way. Hence, the first part of this thesis deals with designing a model-driven development infrastructure for mobile applications. We will follow a rigorous design process comprising a domain analysis, the design of a domain-specific modeling language, and the development of the corresponding model editors. To ensure that the code generators produce high-quality application code and the resulting mobile applications follow a proper architectural design, we will analyze several representative reference applications beforehand. Thus, the reader will get an insight into both the features of mobile applications and the steps that are required to design and implement a model-driven development infrastructure. As a result of the domain analysis and the analysis of the reference applications, we identified context-awareness as a further important feature of mobile applications. Current software engineering tools do not sufficiently support designing and implementing of context-aware mobile applications. Although these tools (e.g., middleware approaches) support the definition and the collection of contextual information, the adaptation of the mobile application must often be implemented by hand at a low abstraction level by the mobile application developers. Thus, the second part of this thesis demonstrates how context-aware mobile applications can be designed more easily by using a model-driven development approach. Techniques such as model transformation and model interpretation are used to adapt mobile applications to different contexts at design time or runtime. Moreover, model analysis and model-based simulation help mobile application developers to evaluate a designed mobile application (i.e., app model) prior to its generation and deployment with respected to certain contexts. We demonstrate the usefulness and applicability of the model-driven development infrastructure we developed by seven case examples. These showcases demonstrate the designing of mobile applications in different domains. We demonstrate the scalability of our model-driven development infrastructure with several performance tests, focusing on the generation time of mobile applications, as well as their runtime performance. Moreover, the usability was successfully evaluated during several hands-on training sessions by real mobile application developers with different skill levels

    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
    corecore