528,997 research outputs found

    Automated model-based testing based on an agnostic-platform modeling language

    Get PDF
    Currently multiple Domain Specific Languages (DSLs) are used for model-driven software development, in some specific domains. Software development methods, such as agile development, are test-centered, and their application in model-based frameworks requires model support for test development. We introduce a specific language to define generic test models, which can be automatically transformed into executable tests for particular testing platforms. The resulting test models represent the test plan for applications also built according to a model-based approach. The approach presented here includes some customisations for the application of the developed languages and transformation tools for some specific testing platforms. These languages and tools have been integrated with some specific DSL designed for software development

    A Framework for Model-based Testing of Integrated Modular Avionics

    Get PDF
    In modern aircraft, electronics and control systems are designed based on the Integrated Modular Avionics (IMA) system architecture. While this has numerous advantages (reduction of weight, reduced power and fuel consumption, reduction of development cost and certification effort), the IMA platform also adds an additional layer of complexity. Due to the safety-critical nature of many avionics functions careful and accurate verification and testing are imperative. This thesis describes results achieved from research on model-based testing of IMA systems, in part obtained during the European research project SCARLETT. It presents a complete framework which enables IMA domain experts to design and run model-based tests on bare module, configured module, and application level in a standardised test environment. The first part of this thesis provides background information on the relevant topics: the IMA concept, domain-specific languages, model-based testing, and the TTCN-3 standard. The second part introduces the IMA Test Modelling Language (ITML) framework and its components. It describes a tailored TTCN-3 test environment with appropriate adapters and codecs. Based on MetaEdit and its meta-metamodel GOPPRR, it defines the three variants of the domain-specific language ITML, each with its abstract and concrete syntax as well as static and dynamic semantics. The process of test procedure generation from ITML models is explained in detail. Furthermore, the design and implementation of a universal Test Agent is shown. A dedicated communication protocol for controlling the agent is defined as well. The third part provides an evaluation of the framework. It shows usage scenarios in the SCARLETT project, gives a comparison to related tools and approaches, and explains the advantages of using the ITML framework for an IMA domain expert. The final part presents several example ITML models. It also provides reference material like XML schemata, framework source code, and model validators

    Exploring Domain Specific Approaches to Software Model Checking

    Get PDF
    Model checking has proven to be an effective technology for verification and debugging in hardware domains and more recently in software domains. The major challenges in the application of model checking to software systems are: the mapping of software executables to model checker's input language and the intrinsic complexity of the ever growing software systems. This thesis explores the domain specific model checking approaches to large systems in order to optimize the state space storage for specific domains. Bogor [Bogor 2003] is an extensible, customizable, and highly modular model checking framework that supports general as well as domain specific software model checking. As a part of the thesis, domain specific extensions to Bogor's input language, called Bandera Intermediate Representation (BIR), were implemented by providing a plugin for Eclipse [Eclipse 2004]. Eclipse is a universal platform for tool integration and its plugin development environment facilitates addition of new plugins to the existing ones. Eclipse's extension mechanism is exploited by Bogor. Bogor was installed as an Eclipse plugin and with the help of Eclipse's Plugin Development Environment (PDE), new data types were integrated with the existing Bogor framework. Two case studies ('postfix calculator' using stack extension and 'resource allocation' using multiset extension) were investigated. Various metrics such as number of states, transitions, and maximum depth were analyzed. The complexity of the test cases was increased gradually to test the extensions for feasibility and scalability. The thesis also involves a comprehensive study of some of the well-known model checkers and their features, degree of automation, and input languages. It was observed that customizing the model checker as per domain specifications helped in achieving space reduction. The space reduction is prominent, especially in large domains where it contributes towards state space explosion solution. Although development of extensions is achievable, it requires a working knowledge of Eclipse and specific knowledge of model checking. In conclusion, a domain specific approach for software model checking was demonstrated to be a promising technology. Language extensions to BIR were successfully built and tested for accuracy and scalability.Computer Science Departmen

    Test-driven Language Derivation with Graph Transformation-Based Dynamic Meta Modeling

    Get PDF
    Deriving a new language L_B from an already existing one L_A is a typical task in domain-specific language engineering. Here, besides adjusting L_A's syntax, the language engineer has to modify the semantics of L_A to derive L_B's semantics. Particularly, in case of behavioral modeling languages, this is a difficult and error-prone task, as changing the behavior of language elements or adding behavior for new elements might have undesired side effects. Therefore, we propose a test-driven language derivation process. In a first step, the language engineer creates example models containing the changed or newly added elements in different contexts. For each of these models, the language engineer also precisely describes the expected behavior. In a second step, each example model and its description of behavior is transformed into an executable test case. Finally, these test cases are used when deriving the actual semantics of L_B - at any time, the language engineer can run the tests to verify whether the changes he performed on L_A's semantics indeed produce the desired behavior. In this paper, we illustrate the approach using our graph transformation-based semantics specification technique Dynamic Meta Modeling. This is once more an example where the graph transformation approach shows its strengths and appropriateness to support software engineering tasks as, e.g., model transformations, software specifications, or tool development

    Synchronising Wisdom and Implementation: A Formal ODD Approach to Expressing Insights on Bullying

    Get PDF
    Paper IV and V is excluded from the dissertation until it is published.The Social Simulation methodology, a mix of traditionally unassociated fields, utilises computer models to describe, understand, predict, and reflect on social phenomena. The model creation process typically requires the integration of knowledge insights from academic and non-academic knowledge holders. To ensure model quality, different processes are established in an effort to verify the alignment of knowledge insights and their implementation in the simulation model by the modelling team. However, due to a lack of technical skills, knowledge holders, who may not fully understand the model code, often perform these verification checks indirectly, for example by evaluating conceptual model descriptions. Initially motivated to create quality models of social conflict, this dissertation approaches the model quality challenge with a Domain Specific Modelling (DSM) approach. The objective was to develop a DSM tool using the Design Methodology, supplemented by a case study to provide first-hand experience with the quality challenge. Based on our project requirements, we selected University bullying as the case study subject. The Design Methodology included the problem exploration, the identification of a DSM solution, the selection of a domain and programming language for the DSM tool, the agile development of the domain language aspects with test models, and a final evaluation using the case study model.acceptedVersio
    corecore