122 research outputs found

    Model analytics and management

    Get PDF

    Model analytics and management

    Get PDF

    Knowledge-based Biomedical Data Science 2019

    Full text link
    Knowledge-based biomedical data science (KBDS) involves the design and implementation of computer systems that act as if they knew about biomedicine. Such systems depend on formally represented knowledge in computer systems, often in the form of knowledge graphs. Here we survey the progress in the last year in systems that use formally represented knowledge to address data science problems in both clinical and biological domains, as well as on approaches for creating knowledge graphs. Major themes include the relationships between knowledge graphs and machine learning, the use of natural language processing, and the expansion of knowledge-based approaches to novel domains, such as Chinese Traditional Medicine and biodiversity.Comment: Manuscript 43 pages with 3 tables; Supplemental material 43 pages with 3 table

    Comparative evaluation of NLP approaches for requirements formalisation

    Get PDF
    Many approaches have been proposed for the automated formalisation of software requirements from semi-formal or informal requirements documents. However this research field lacks established case studies upon which different approaches can be compared, and there is also a lack of accepted criteria for comparing the results of formalisation approaches. As a consequence, it is difficult to determine which approaches are more appropriate for different kinds of formalisation task. In this paper we define benchmark case studies and a framework for comparative evaluation of requirements formalisation approaches, thus contributing to improving the rigour of this research field. We apply the approach to compare four example requirements formalisation methods

    Few-shot prompt learning for automating model completion

    Full text link
    Les modĂ©lisateurs rencontrent souvent des dĂ©fis ou des difficultĂ©s lorsqu’il s’agit de concevoir un modĂšle logiciel particulier. Dans cette thĂšse, nous avons explorĂ© diffĂ©rentes voies et examinĂ© diffĂ©rentes approches pour rĂ©soudre cette problĂ©matique. Nous proposons enfin une approche simple mais novatrice qui amĂ©liore la complĂ©tion des activitĂ©s de modĂ©lisation de domaines. Cette approche exploite la puissance des modĂšles de langage de grande taille en utilisant l’apprentissage par seulement quelques exemples, Ă©liminant ainsi la nĂ©cessitĂ© d’un apprentissage profond ou d’un ajustement fin (fine tuning) sur des ensembles de donnĂ©es rares dans ce domaine. L’un des points forts de notre approche est sa polyvalence, car elle peut s’intĂ©grer fa cilement Ă  de nombreuses activitĂ©s de modĂ©lisation, fournissant un aide prĂ©cieux et des recommendations aux modĂ©lisateurs. De plus, nous avons menĂ© une Ă©tude utilisateur pour Ă©valuer l’utilitĂ© de cette mĂ©thode et la valeur de l’assistance en modĂ©lisation; nous avons cherchĂ© Ă  savoir si l’effort investi dans l’assistance en modĂ©lisation vaut la peine en recueillant les commentaires des concepteurs de modĂšles logiciels.Modelers often encounter challenges or difficulties when it comes to designing a particular software model. Throughout this thesis, we have explored various paths and examined different approaches to address this issue. We finally propose a simple yet novel approach enhancing completion in domain modeling activities. This approach leverages the power of large language models by utilizing few-shot prompt learning, eliminating the need for extensive training or fine-tuning on scarce datasets in this field. One of the notable strengths of our approach lies in its versatility, as it can be seamlessly integrated into various modeling activities, providing valuable support and recommendations to software modelers. Additionally, we conducted a user study to evaluate the usefulness of this approach and determine the value of providing assistance in modeling; we aimed to determine if the effort invested in modeling assistance is worthwhile by gathering feedback from software modelers

    Natural Language Processing for Requirements Formalization: How to Derive New Approaches?

    Full text link
    It is a long-standing desire of industry and research to automate the software development and testing process as much as possible. In this process, requirements engineering (RE) plays a fundamental role for all other steps that build on it. Model-based design and testing methods have been developed to handle the growing complexity and variability of software systems. However, major effort is still required to create specification models from a large set of functional requirements provided in natural language. Numerous approaches based on natural language processing (NLP) have been proposed in the literature to generate requirements models using mainly syntactic properties. Recent advances in NLP show that semantic quantities can also be identified and used to provide better assistance in the requirements formalization process. In this work, we present and discuss principal ideas and state-of-the-art methodologies from the field of NLP in order to guide the readers on how to create a set of rules and methods for the semi-automated formalization of requirements according to their specific use case and needs. We discuss two different approaches in detail and highlight the iterative development of rule sets. The requirements models are represented in a human- and machine-readable format in the form of pseudocode. The presented methods are demonstrated on two industrial use cases from the automotive and railway domains. It shows that using current pre-trained NLP models requires less effort to create a set of rules and can be easily adapted to specific use cases and domains. In addition, findings and shortcomings of this research area are highlighted and an outlook on possible future developments is given.Comment: 26 pages, 7 figure

    Access to recorded interviews: A research agenda

    Get PDF
    Recorded interviews form a rich basis for scholarly inquiry. Examples include oral histories, community memory projects, and interviews conducted for broadcast media. Emerging technologies offer the potential to radically transform the way in which recorded interviews are made accessible, but this vision will demand substantial investments from a broad range of research communities. This article reviews the present state of practice for making recorded interviews available and the state-of-the-art for key component technologies. A large number of important research issues are identified, and from that set of issues, a coherent research agenda is proposed

    A Model-Driven Architecture based Evolution Method and Its Application in An Electronic Learning System

    Get PDF
    Software products have been racing against aging problem for most of their lifecycles, and evolution is the most effective and efficient solution to this problem. Model-Driven Architecture (MDA) is a new technique for software product for evolving development and reengineering methods. The main steps for MDA are to establish models in different levels and phases, therefore to solve the challenges of requirement and technology change. However, there is only a standard established by Object Management Group (OMG) but without a formal method and approach. Presently, MDA is widely researched in both industrial and research areas, however, there is still without a smooth approach to realise it especially in electronic learning (e-learning) system due to the following reasons: (1) models’ transformations are hard to realise because of lack of tools, (2) most of existing mature research results are working for business and government services but not education area, and (3) most of existing model-driven researches are based on Model-Driven Development (MDD) but not MDA because of OMG standard’s preciseness. Hence, it is worth to investigate an MDA-based method and approach to improve the existing software development approach for e-learning system. Due to the features of MDA actuality, a MDA-based evolution method and approach is proposed in this thesis. The fundamental theories of this research are OMG’s MDA standard and education pedagogical knowledge. Unified Modelling Language (UML) and Unified Modelling Language Profile are hired to represent the information of software system from different aspects. This study can be divided into three main parts: MDA-based evolution method and approach research, Platform-Independent Model (PIM) to Platform-Specific Model (PSM) transformation development, and MDA-based electronic learning system evolution. Top-down approach is explored to develop models for e-learning system. A transformation approach is developed to generate Computation Independent Model (CIM), Platform-Independent Model (PIM), and Platform-Specific Model (PSM); while a set of transformation rules are defined following MDA standard to support PSM’ s generation. In addition, proposed method is applied in an e-learning system as a case study with the prototype rules support. In the end, conclusions are drawn based on analysis and further research directions are discussed as well. The kernel contributions are the proposed transformation rules and its application in electronic learning system

    Toward Multilevel Textual Requirements Traceability Using Model-Driven Engineering and Information Retrieval

    Get PDF
    International audienceIn complex industrial projects, textual information remains the main vector of information at the project level. Consequently, requirements are scattered throughout multiple documents expressing different levels of requirements and different kinds of requirements. Formalizing this information and tracing different relationships among documents and organizing this environment present a challenging question. Domain-specific modeling and traceability modeling are Model-Driven Engineering (MDE) techniques that could address various aspects of requirements formalization. Text-based high level requirements can be formalized as document concepts can be gathered and represented. Still, relationships cannot always be determined using sole MDE approaches and, as a consequence, relationships and traceability issue remains. Information retrieval (IR) approaches have already proved to work in an efficient way on large text corpora for requirements traceability analysis but do only consider similarity aspects of flatten documents, losing their organization and hierarchy. This paper aims to introduce how a combined use of both MDE and IR can lead to improved requirements organization and traceability while handling textual ambiguous requirements documents.Dans les projets industriels complexes, le texte reste le principal vecteur d'information au niveau du projet. Les exigences sur le futur systĂšme sont ainsi dissĂ©minĂ©es Ă  travers de nombreux documents qui expriment diffĂ©rents niveaux d'exigences et diffĂ©rentes sortes d'exigences. Formaliser cette information et tracer les relations entre ces documents et organiser un un tel environnement reprĂ©sente un dĂ©fi important. La modĂ©lisation d'un domaine ou de la traçabilitĂ© dans ce domaine sont des contributions de l'ingĂ©nierie dirigĂ©e par les modĂšles (IDM) pour formaliser de tels ensembles. Des exigences textuelles de haut niveau peuvent ĂȘtre formalisĂ©es tandis que les documents qui les contiennent peuvent ĂȘtre importĂ©s et analysĂ©s. Cependant, les relations de traçabilitĂ©, elles, ne peuvent pas forcĂ©ment ĂȘtre acquises Ă  travers ces seules techniques provenant de l'IDM. D'un autre cĂŽtĂ©, les techniques de recherche d'information (RI) ont dĂ©jĂ  dĂ©montrĂ© leur efficacitĂ© sur de larges collections de textes pour la traçabilitĂ© des exigences mais ne considĂšrent que des versions "planes" des documents, perdant toute la hiĂ©rarchie et l'organisation de ceux ci. Cet article vise Ă  introduire l'utilisation combinĂ© de l'IDM et de la RI afin d'amĂ©liorer les aspects structurels et traçabilitĂ© de ces collections de documents d'exigences

    Développement sans rupture de systÚmes complexes : une approche basée multi-exigences

    Get PDF
    Prouver qu'un systĂšme satisfait Ă  ses exigences est un dĂ©fi important de l'ingĂ©nierie des exigences. D'une part, les approches formelles fournissent un moyen d'exprimer les exigences mathĂ©matiquement et de prouver qu'un systĂšme satisfait ses exigences. Cependant, si la formalisation offre des possibilitĂ©s supplĂ©mentaires telles que la vĂ©rification, voire la validation, elle s'avĂšre souvent trop difficile Ă  utiliser en pratique par les acteurs impliquĂ©s dans le dĂ©veloppement des systĂšmes. D'autre part, dans la plupart des cas, les exigences sont Ă©crites et parfois tracĂ©es en langage naturel Ă  des fins de communication et de comprĂ©hension mutuelle. De plus, cela reste le cas tout au long du processus de dĂ©veloppement. Ainsi, il est nĂ©cessaire de considĂ©rer le besoin de s'adresser Ă  toutes ces parties prenantes pendant le processus de dĂ©veloppement. L'objectif principal de cette thĂšse est de fournir une mĂ©thodologie sans rupture qui permet de bĂ©nĂ©ficier de la formalisation des exigences tout en Ă©tant comprĂ©hensible par toutes les parties prenantes. Nous proposons une approche qui considĂšre les exigences comme des parties du code du systĂšme, ce qui, en tant que tel, contribue Ă  amĂ©liorer l'Ă©valuation de la qualitĂ©. De plus, l'intĂ©gration des exigences dans le code garantit un dĂ©veloppement sans rupture. Ces contributions visent trois avantages principaux. PremiĂšrement, il n'est pas nĂ©cessaire de passer d'un outil ou d'un environnement Ă  un autre : un cadre unique prend en charge le dĂ©veloppement de l'analyse Ă  la mise en Ɠuvre. DeuxiĂšmement, les changements et la rĂ©versibilitĂ© deviennent un phĂ©nomĂšne rĂ©gulier, directement pris en charge par la mĂ©thode, le langage et les outils, ce qui facilite les allers-retours. Enfin, les diffĂ©rents niveaux d'abstraction restent dans le cadre du paradigme orientĂ© objet. Nous appliquons cette vision au processus de dĂ©veloppement lui-mĂȘme avec les mĂȘmes avantages attendus. Le cycle de vie du dĂ©veloppement peut alors bĂ©nĂ©ficier de cette forte intĂ©gration des exigences dans le code. Ces artefacts aident au dĂ©veloppement du logiciel en fournissant un support et des lignes directrices pour l'analyse ou l'aide Ă  la dĂ©cision et en renforçant la qualitĂ© du logiciel. En outre, la rĂ©utilisabilitĂ©, l'Ă©volutivitĂ© et la maintenabilitĂ© sont amĂ©liorĂ©es. La traçabilitĂ© entre les exigences et le code permet une analyse d'impact facile lorsque l'un de ces artefacts Ă©volue. Cependant, si ce paradigme est familier aux dĂ©veloppeurs et mĂȘme si nous faisons un effort d'expressivitĂ©, il ne s'adresse pas aux autres parties prenantes qui ont l'habitude de travailler avec d'autres outils. Puisque nous souhaitons Ă©galement que des non-experts utilisent notre approche pour valider des systĂšmes dans la premiĂšre phase de leur dĂ©veloppement, nous proposons un langage spĂ©cifique au domaine : (i) proche du langage naturel et (ii) basĂ© sur une sĂ©mantique formelle. En utilisant les techniques de l'ingĂ©nierie dirigĂ©e par les modĂšles, ce langage permet de combler le fossĂ© entre les diffĂ©rents acteurs impliquĂ©s dans un projet (compte tenu de leurs diffĂ©rentes expĂ©riences) et entre les exigences et le code. Nous avons enfin consacrĂ© un effort de recherche Ă  la dĂ©finition des relations entre les exigences. Nous fournissons leurs dĂ©finitions formelles et leurs propriĂ©tĂ©s sur la propagation de l'Ă©tat de satisfaction. Ces dĂ©finitions peuvent aider les ingĂ©nieurs Ă  vĂ©rifier les exigences (en vĂ©rifiant la validitĂ© de la sĂ©mantique des relations entre deux exigences) et Ă  vĂ©rifier la conformitĂ© du systĂšme (grĂące Ă  la propagation de la satisfaction). Ce travail est une Ă©tape vers l'introduction de la sĂ©mantique formelle dans la traçabilitĂ©, permettant d'analyser automatiquement les exigences et d'utiliser leurs relations pour vĂ©rifier l'implĂ©mentation correspondante du systĂšme.Proving that a system satisfies its requirements is an important challenge of Requirements Engineering. On the one hand, formal approaches provide a way to express requirements mathematically and prove that a system satisfies its requirements. However, if formalization offers additional possibilities such as verification, or even validation, it often proves to be too difficult to use in practice by the stakeholders involved in the development of systems. On the other hand, in most cases, requirements are written and sometimes traced in Natural Language for communication and mutual understanding purposes. Moreover, this remains during the whole development process. Thus, it is necessary to consider the need to address all these stakeholders during the development process. The main objective of this thesis is to provide a seamless methodology that allows benefiting from the formalization of requirements while being understandable by all stakeholders. We propose an approach that considers requirements as parts of the system's code, which, as such, contributes to improving quality assessment. In addition, integrating the requirements into the code guarantees a seamless development. The contributions target three main benefits. First, there is no need to switch from one tool or environment to another: a single framework supports the development from analysis to implementation. Second, changes and reversibility become a regular occurrence, directly supported by the method, language, and tools, facilitating round-trips. Third, the different levels of abstraction remain inside the object-oriented paradigm. We apply this vision to the development process itself with the same expected advantages. The development life-cycle can then benefit from this strong integration of requirements into the code. These artifacts help in software development by providing support and guidelines for analysis or decision support and reinforcing the software quality. Besides, reusability, evolutivity, and maintainability are enhanced. Traceability between requirements and code allows an easy impact analysis when any of these artifacts evolve. However, if this paradigm is familiar to developers and even if we put an effort in providing expressivity, they are not addressed to other stakeholders that used to work with several tools. Since we also want non-experts to use our approach to validate systems in the early stage of their development, we propose a Domain-Specific Language: (i) close to natural language and (ii) based on formal semantics. Using Model-Driven Engineering techniques, this language bridges the gap between the several stakeholders involved in a project (considering their different backgrounds) and between the requirements and the code. We finally put a research effort into defining relationships between requirements. We provide their formal definitions and properties on the propagation of the satisfaction state. These definitions can help engineers verify requirements (by checking the validity of the semantics of the relationships between two requirements) and verify the system compliance (thanks to satisfaction propagation). This work is a step towards introducing formal semantics into traceability, making it possible to automatically analyze requirements and use their relationships to verify the corresponding implementation of the system
    • 

    corecore