357 research outputs found

    An analysis of the requirements traceability problem

    Get PDF
    In this paper1, we investigate and discuss the underlying nature of the requirements traceability problem. Our work is based on empirical studies, involving over 100 practitioners, and an evaluation of current support. We introduce the distinction between pre-requirements specification (pre-RS) traceability and post-requirements specification (post-RS) traceability, to demonstrate why an all-encompassing solution to the problem is unlikely, and to provide a framework through which to understand its multifaceted nature. We report how the majority of the problems attributed to poor requirements traceability are due to inadequate pre-RS traceability and show the fundamental need for improvements here. In the remainder of the paper, we present an analysis of the main barriers confronting such improvements in practice, identify relevant areas in which advances have been (or can be) made, and make recommendations for research

    Development of a system for example-driven software language engineering

    Get PDF
    Masteroppgave i informatikkINF399MAMN-PROGMAMN-IN

    Model-driven engineering for mobile robotic systems: a systematic mapping study

    Get PDF
    Mobile robots operate in various environments (e.g. aquatic, aerial, or terrestrial), they come in many diverse shapes and they are increasingly becoming parts of our lives. The successful engineering of mobile robotics systems demands the interdisciplinary collaboration of experts from different domains, such as mechanical and electrical engineering, artificial intelligence, and systems engineering. Research and industry have tried to tackle this heterogeneity by proposing a multitude of model-driven solutions to engineer the software of mobile robotics systems. However, there is no systematic study of the state of the art in model-driven engineering (MDE) for mobile robotics systems that could guide research or practitioners in finding model-driven solutions and tools to efficiently engineer mobile robotics systems. The paper is contributing to this direction by providing a map of software engineering research in MDE that investigates (1) which types of robots are supported by existing MDE approaches, (2) the types and characteristics of MRSs that are engineered using MDE approaches, (3) a description of how MDE approaches support the engineering of MRSs, (4) how existing MDE approaches are validated, and (5) how tools support existing MDE approaches. We also provide a replication package to assess, extend, and/or replicate the study. The results of this work and the highlighted challenges can guide researchers and practitioners from robotics and software engineering through the research landscape

    Applied novel software development methodology for process engineering application

    Get PDF
    Chemical processes are nonlinear continuous/discrete dynamic systems that are subject to considerable uncertainties and variations during their design and operation. These systems are designed to operate at an economically optimal steady-state. However, minor changes in process parameters’ values might cause deviations and elicit dynamic responses from processes. Controllability—defined as the ability of holding a process within a specified operating regime and the controllability assessment of each given process system—should be taken into account during the system design phase. This emphasises the necessity of effective software tools that could assist process engineers in their controllability evaluation. Although there are few multipurpose tools available for this task, developing software tools for controllability analysis is a tedious and sophisticated undertaking. It involves elaboration from multiple disciplines, and the requirements of controllability assessments are so vast that it is almost impossible to create general software that covers all controllability measures and cases. This thesis aims to systematically tackle the challenge of developing practical and high-quality software tools for controllability problems while reducing the required time and effort, regardless of the size and scale of the controllability problem. Domain-specific language (DSL) methodology is proposed for this purpose. DSLs are programming languages designed to address the programming problems of a specific domain. Therefore, well-designed DSLs are simple, easy to use and capable of solving any problem defined in their domains. Based on DSL methodology, this study proposes a four-element framework to partition the software system into decoupled elements, and discusses the design and implementation steps of each element as well as communication between elements. The superiority of the developed methodology based on DSL is compared with traditional programming techniques for controllability assessment of various case studies. Essentially, the major advantage of the proposed methodology is the performance of the software product. Performance measures used in this study are total time to develop (TD) the software tool and its modifiability. Total time and effort to implement and use the result products presents up to five times improvement. Moreover, the result product’s modifiability is assessed by applying modifications, which also demonstrates up to five times improvement. All measures are tested on continuous stirred-tank reaction (CSTR) and forced-circulation evaporator (FCE) case studies. In conclusion, this study significantly contributes to two fields. The first is DSL, since this thesis studies different types of DSLs and evaluates their applications in the controllability analysis. The second is the controllability evaluation, since this study examines a new methodology for software development in controllability assessment

    EVF: An Extensible and Expressive Visitor Framework for Programming Language Reuse

    Get PDF

    Model-driven engineering techniques and tools for machine learning-enabled IoT applications: A scoping review

    Get PDF
    This paper reviews the literature on model-driven engineering (MDE) tools and languages for the internet of things (IoT). Due to the abundance of big data in the IoT, data analytics and machine learning (DAML) techniques play a key role in providing smart IoT applications. In particular, since a significant portion of the IoT data is sequential time series data, such as sensor data, time series analysis techniques are required. Therefore, IoT modeling languages and tools are expected to support DAML methods, including time series analysis techniques, out of the box. In this paper, we study and classify prior work in the literature through the mentioned lens and following the scoping review approach. Hence, the key underlying research questions are what MDE approaches, tools, and languages have been proposed and which ones have supported DAML techniques at the modeling level and in the scope of smart IoT services.info:eu-repo/semantics/publishedVersio

    Towards Multilingual Programming Environments

    Get PDF
    Software projects consist of different kinds of artifacts: build files, configuration files, markup files, source code in different software languages, and so on. At the same time, however, most integrated development environments (IDEs) are focused on a single (programming) language. Even if a programming environment supports multiple languages (e.g., Eclipse), IDE features such as cross-referencing, refactoring, or debugging, do not often cross language boundaries. What would it mean for programming environment to be truly multilingual? In this short paper we sketch a vision of a system that integrates IDE support across language boundaries. We propose to build this system on a foundation of unified source code models and metaprogramming. Nevertheless, a number of important and hard research questions still need to be addressed
    • …
    corecore