16 research outputs found

    Entwicklung und Gegenüberstellung von Methoden zur automatisierten Verifikation von ausführbaren Systemspezifikationen

    Get PDF
    Für die Entwicklung komplexer eingebetteter Systeme werden Techniken eingesetzt, die eine frühe Validierung der zu entwickelnden Systeme in Bezug auf funktionale Aspekte ermöglichen. Diese Techniken greifen in der Regel auf ausführbare Spezifikationsmodelle zurück. Eingebettete Systeme stellen meist auch Echtzeitsysteme dar. Dabei sind funktionale Anforderungen in der Regel zeitvariant, also zustandsabhängig und besitzen zeitliche Randbedingungen, so dass zeitliche und funktionale Aspekte gemeinsam betrachtet werden müssen. Für die Modellierung solcher ausführbaren Spezifikationen ist der Discrete-Event Formalismus besonders geeignet, da er eine vergleichsweise abstrakte parametrisierbare Beschreibung, unabhängig von Implementierungsdetails, ermöglicht. Für den systematischen Einsatz solcher Discrete-Event Modelle als ausführbare Spezifikationen, werden Methoden und Techniken zur Verifikation benötigt, um eine möglichst frühe Fehlererkennung bei der Systementwicklung zu ermöglichen.Gegenstand der Arbeit ist die Entwicklung und Gegenüberstellung von Methoden, die eine automatisierte Verifikation zeitbeschränkter funktionaler Eigenschaften in ausführbaren Spezifikation ermöglichen. Solche Methoden stehen für komplexe Multi-Domänen Modelle, wie sie in der Arbeit betrachtet werden, noch nicht zur Verfügung. Bei den Betrachtungen werden insbesondere die Spezifika der zugrunde liegenden Modelle und Eigenschaften sowie die möglichst automatisierte Anwendbarkeit der Verifikationsmethoden berücksichtigt.Ausgehend von grundlegenden Erwägungen werden zwei Anwendungsszenarien entwickelt, wobei im ersten Fall die vollständige formale Verifikation im Vordergrund steht und im zweiten Fall eine dynamische Überprüfung der Eigenschaften während der szenariobasierten Simulation favorisiert wird. Für die formale Verifikation wird ein Transformation-basierter Ansatz entwickelt, der eine Transformation des Verifikationsproblems in eine mathematische Beschreibung realisiert. Für die dynamische Überprüfung der Eigenschaften wird ein Assertion-basierter Ansatz benutzt, bei dem die geforderten Eigenschaften als temporallogische Formeln notiert werden. Es werden zur Prüfung der Eigenschaften unterschiedliche Techniken zur algorithmischen Auswertung bzw. zur symbolischen Cosimulation entwickelt.Beide Ansätze sind prototypisch für die Entwicklungsumgebung MLDesigner realisiert worden. Ausgehend von den Ergebnissen der Validierung werden Abschätzungen für das weitere Potential der Ansätze abgeleitet. Abschließend werden die Ansätze vergleichend gegenübergestellt und bewertet

    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

    Systematic modeling and analysis of distributed automation systems

    Get PDF
    Aufgrund der verbesserten Leistungsfähigkeit und der sinkenden Kosten von Kleinrechnern werden Steuerungseinheiten heute überwiegend dezentral in Verbünden organisiert. Zwar bieten solche verteilten Systeme die notwendige Flexibilität, um die steigenden Anforderungen erfüllen zu können, sie bringen aber auch viele Herausforderungen mit sich. Während der Entwicklungsprozess verteilter Automatisierungssysteme mittels einer durchgängigen Werkzeugkette unterstützt wird, erfolgen die Analysetätigkeiten zumeist isoliert und fokussiert auf eine konkrete Problemstellung innerhalb einer Lebenszyklusphase. Schwerpunkt der vorliegenden Arbeit ist daher eine Vorgehensweise zur systematischen und vereinheitlichten Analyse von verteilten Automatisierungssystemen. Die Anwendung der erarbeiteten Methodik erfolgt mittels strukturierter Modellierung und Modellausführung am Beispiel eines verteilten Gebäudeautomatisierungssystems. Ein wesentlicher Bestandteil des Vorgehens ist die Bereitstellung einer verständlichen und gleichzeitig detaillierten Beschreibung des zu analysierenden Systems über ein Systemmodell. Das Modell dient der Wissensrepräsentation und stellt die Basis für nachfolgende Analysen zur Ermittlung (nicht-)funktionaler Eigenschaften dar, indem es das Fundament weiterführender Analysemodelle skizziert. Die ausführbaren Modelle werden im weiteren Verlauf der Arbeit vorgestellt und mathematisch beschrieben. Die nach deren Ausführung der Modelle gewonnenen Analyseergebnisse werden dargestellt und zur Wissensanreicherung in das wissensbeschreibende Systemmodell zurückgeführt. Nichtfunktionale Eigenschaften wurden u.a. mit Hilfe von Simulationsmodellen am Beispiel folgender Problemstellungen aus der Entwurfsphase analysiert: • Eine mögliche Degradation der Signalqualität eines maximal ausgedehnten Bitübertragungssystems wurde untersucht und bewertet. • Die durch physikalisch bedingte Kommunikationsprozesse zwischen verteilten Gerätekomponenten und durch Zyklusübergänge zwischen verteilten Programmkomponenten verursachten Verzögerungszeiten wurden bestimmt. Weiterhin wurden für zwei Beispielsysteme die Eigenschaften der Beobachtbarkeit und der Steuerbarkeit ermittelt, wodurch die Grundlage für eine abschließende Online-Analyse geschaffen wurde. Eine Petrinetzumgebung, die eine direkte Anbindung an ein Realsystem erlaubt und damit eine Testausführung während der Inbetriebnahme bzw. eine Laufzeitanalyse im operativen Betrieb des Systems ermöglicht, wird vorgestellt.Today’s control systems are organized more and more in a decentralized way due to the improved performance properties and the declining costs of microprocessors. Distributed systems offer the flexibility to handle constantly increasing requirements. However, they also pose new challenges. A connected chain of tools supports the development process of a distributed automation system, while the analysis steps are performed separately. Thus, each analysis step focus only on one concrete problem within only one phase of the system live cycle. Therefore, the focus of the present work is on an approach for a systematic and unified analysis concept of distributed automation systems. The proposed concept is exemplary applied to a distributed building automation system by structured modeling and model execution. The essential part of the concept is the development of a system model, which provides an understandable and at once a detailed description of the system to be analyzed. The system model is useful for knowledge representation and provides the basis for the development of executable models by their mathematically description. The executable models can be used in further analysis processes. With their execution some identified (non-)functional characteristics were established for a distributed building automation system. Within the meaning of an accumulation of knowledge, the analysis results will be added to the system model. For the following typical problems, listed in relation to the development phase of a distributed automation system, some non-functional properties were analyzed by means of simulation models: • The signal distortion in maximum expanded physical layer systems was examined and evaluated. • The delay due to communication processes between distributed hardware devices and cycle transitions between distributed application programs were determined. Furthermore, the observability and controllability of two example systems are analyzed. Both properties are relevant to the preparation of a concept for an online analysis. For the final online analysis a framework is presented, which allows a direct connection of an Petri net with a real automation system. Based on this framework, an execution of a test case in the phase of the commissioning phase or a monitoring of runtimes during operation phase is possible
    corecore