12 research outputs found

    Assessing the Performance of Automated Model Extraction Rules

    Get PDF
    Automated Model Extraction Rules take as input requirements (in natural language) to generate domain models. Despite the existing work on these rules, there is a lack of evaluations in industrial settings. To address this gap, we conduct an evaluation in an industrial context, reporting the extraction rules that are triggered to create a model from requirements and their frequency. We also asses the performance in terms of recall, precision and F-measure of the generated model compared to the models created by domain experts of our industrial partner. Results enable us to identify new research directions to push forward automated model extraction rules: the inclusion of new knowledge sources as input for the extraction rules, and the development of specific experiments to evaluate the understanding of the generated models

    Automatic generation of business process models from user stories

    Get PDF
    In this paper, we propose an automated approach to extract business process models from requirements, which are presented as user stories. In agile software development, the user story is a simple description of the functionality of the software. It is presented from the user's point of view and is written in natural language. Acceptance criteria are a list of specifications on how a new software feature is expected to operate. Our approach analyzes a set of acceptance criteria accompanying the user story, in order, first, to automatically generate the components of the business model, and then to produce the business model as an activity diagram which is a unified modeling language (UML) behavioral diagram. We start with the use of natural language processing (NLP) techniques to extract the elements necessary to define the rules for retrieving artifacts from the business model. These rules are then developed in Prolog language and imported into Python code. The proposed approach was evaluated on a set of use cases using different performance measures. The results indicate that our method is capable of generating correct and accurate process models

    COMPARACIÓN DE MAPAS CONCEPTUALES BASADO EN ONTOLOGÍA Y LENGUAJE DE MODELADO UNIFICADO, PARA MEJORAR LA COMPRESIÓN DE LOS REQUERIMIENTOS EN LA ELABORACIÓN DEL PRODUCT BACKLOG DEL MARCO DE GESTIÓN ÁGIL SCRUM

    Get PDF
    En la actualidad las diferentes problemáticas que ocurren durante la fase de Ingeniería de requerimiento (IR) surgen en las distintas etapas de las mismas, tales retos son los más frecuentes que afrontan las industrias de desarrollo de software. Estas carencias tienen como punto de partida en el génesis de los proyectos de software, como consecuencias sé obtienen una baja calidad en la entrega del producto software, vacíos, proyectos detenidos. Esta tesis tiene como objetivo principal, suministrar una posible solución en la comprensión de los requerimientos de software, tal desafío tiene la gran tarea de afrontar la reducción de la interpretación en la enunciación de los requerimientos de software (RS), durante la etapa de análisis en la fase de la IR y así poder alcanzar una gran eficacia en los diferentes proyectos de software. Se procedió a analizar las diferentes técnicas de análisis de requerimiento, asimismo se resultó a recopilar información de las más usadas en las industrias de software, en los diferentes artículos de investigación (Besrour, Bin, et al., 2016)(Hurtado, 2011)(A. Toro, 2016)(G & Losavio, 2013), donde se pudo elegir a 2 técnicas representativas, las cuales son mapas conceptuales basados en ontología y lenguaje de modelado unificado, posteriormente implementarlo en un aporte practico. Los resultados obtenidos muestran un gran potencial de dichas técnicas en la comprensión y definición de los requerimientos de software, utilizando como métricas de evaluación a la IEEE 830 IEEE Std. 830, las cuales son requerimientos precisos y completos.Tesi

    Desarrollo de un proceso de creación y despliegue de microservicios a partir de requerimientos funcionales

    Get PDF
    El paulatino avance de las arquitecturas de software basadas en microservicios y la creciente relevancia de la ingeniería de requerimientos en el desarrollo de aplicaciones y sistemas web han generado la necesidad de automatizar el proceso de creación y despliegue de microservi- ci os. En este senti do, l a combi naci ón de técnicas de Procesa mi ento de Len guaj e Natural (PLN) con análisis de grafos y detección de comunidades se presenta como un enfoque poderoso para abordar desafíos en diversos campos, incluyendo la ingeniería de software y el diseño de arquitecturas basadas en microservicios. Asimismo, en los últimos tiempos, los modelos de lenguaje de inteligencia artificial, como ChatGPT, han experimentado una notable popular- idad y atención en diferentes ámbitos. Su capacidad para mejorar y generar texto existente ha despertado un gran interés entre investigadores, empresas y usuarios en general. Teniendo en cuenta este contexto, el siguiente trabajo de titulación propone un proceso para la identifi- cación y despliegue automatizado de microservicios, aprovechando las ventajas que ofrecen las técnicas de procesamiento de lenguaje natural y análisis de grafos. Se espera que este enfoque contribuya significativamente a mejorar y automatizar el desarrollo de aplicaciones basadas en microservicios.With the gradual advancement of microservices-based software architectures and the increas- ing relevance of requirements engineering in the development of applications and web sys - tems, there is a need for methods or processes that automate the creation and deployment of microservices. The combination of Natural Language Processing (NLP) techniques with graph analysis and community detection offers a powerful approach to address challenges in various fi el ds. In the real m of software engi neeri ng, this combi nati on has been expl ored to enh ance the design and deployment process of microservices-based architectures. Additionally, in recent times, language models of artificial intelligence, such as ChatGPT, have gained great popu - larity and attention in various domains. The ability to improve and generate existing text has sparked interest among researchers, companies, and users in general. In this context, the fol- lowing thesis work proposes a process for the identification and deployment of microservices, leveraging the advantages of natural language processing techniques and graph analysis. It is expected that this approach will contribute to improving and automating the development of microservices-based applications.0000-0002-2438-922

    Gherkin Specification Extension : uma linguagem de especificação de requisitos baseada em Gherkin

    Get PDF
    Orientador: Andrey Ricardo PimentelDissertação (mestrado) - Universidade Federal do Paraná, Setor de Ciências Exatas, Programa de Pós-Graduação em Informática. Defesa : Curitiba, 28/02/2019Inclui referências: p.68-72Área de concentração: Ciência da ComputaçãoResumo: O desenvolvimento de software e composto de varias fases, entre elas esta a fase de elicitacao, negociacao e validacao de requisitos. Nesta fase, geralmente utiliza-se linguagem natural para definir e negociar os requisitos do sistema que sera desenvolvido. Entretanto, as linguagens naturais podem ser ambiguas, dificultando o entendimento do requisito, e portanto a sua negociacao e validacao. Uma das tentativas de solucionar o problema da ambiguidade foi a criacao de linguagens de especificacao de requisitos. Algumas destas linguagens, como Z e Alneelain, utilizam metodos formais na definicao dos requisitos. O problema da utilizacao de metodos formais e que todos que lerao os requisitos devemter conhecimentos em metodos formais, fato que nem sempre e verdade, ja que alguns interessados pelo software, como clientes e analistas de negocios, podem nao ter este conhecimento. Outras linguagens, como i* e KAOS, utilizam elementos graficos para especificar um sistema. Este formato pode complicar o entendimento, pois diagramas grandes tem alta complexidade cognitiva. Para tentar solucionar este problema, e apresentado o Gherkin Specification Extension (GSE), uma extensao da linguagem Gherkin, que utiliza linguagem natural em conjunto de estruturas fixas para reduzir o problema da ambiguidade durante a especificacao de requisitos utilizando linguagem natural. O GSE foi estruturado com base em onze requisitos que definem sete secoes diferentes (Descricao, Grupo, Restricoes e qualidades, Relacionamento, Planejamento, Metricas e Notas). Este requisitos foram estudados de forma a identificar funcionalidades chave para melhorar a comunicacao entre diversos interessados no software, seja ele um desenvolvedor, gerente de projetos, cliente, usuario ou analista de negocios. A extensao foi validada quanto a sua aceitacao com pessoas com poucos conhecimentos em desenvolvimento de software, obtendo resultado positivos referente a qualidade da especificacao gerada e aceitacao da tecnologia. Para mensurar a aceitacao da tecnologia foi utilizado o modelo TAM (Technology Acceptance Model) em sua terceira versao. Palavras-chave: Linguagem, Especificacao, Requisitos.Abstract: Software development consists of several phases, including elicitation, negotiation and validation of requirements. At this stage, natural language is usually used to define and negotiate the system requirements that will be developed. However, natural languages can be ambiguous, making it difficult to understand the requirement, and therefore its negotiation and validation. One of the attempts to solve the ambiguity problem was the creation of requirements specification languages. Some of these languages, such as Z and Alneelain, use formal methods in defining requirements. The problem with using formal methods is that everyone who will read the requirements must have knowledge of formal methods, a fact that is not always true, as some software stakeholders, such as customers and business analysts, may not have this knowledge. Other languages, such as i * and KAOS, use graphics to specify a system. This format may complicate understanding, since very large diagrams generally have high cognitive complexity. In order to solve this problem, the Gherkin Specification Extension (GSE), an extension of the Gherkin language, is presented, which uses natural language in conjunction with fixed structures to reduce the problem of ambiguity during specification of requirements using natural language . The GSE was structured based on eleven requirements that define seven different sections (Description, Group, Constraints and Qualities, Relationship, Planning, Metrics and Notes). These requirements have been studied in order to identify key functionalities to improve communication among diverse stakeholders in the software, be it a developer, project manager, client, user or business analyst. The extension was validated for its acceptance with people with little knowledge in software development, obtaining positive results regarding the quality of the generated specification and acceptance of the technology. To measure the acceptance of the technology, the TAM (Technology Acceptance Model) model was used in its third version. Keywords: Language, Specification, Requirement

    Extracting conceptual models from user stories with Visual Narrator

    Get PDF
    Extracting conceptual models from natural language requirements can help identify dependencies, redundancies, and conflicts between requirements via a holistic and easy-to-understand view that is generated from lengthy textual specifications. Unfortunately, existing approaches never gained traction in practice, because they either require substantial human involvement or they deliver too low accuracy. In this paper, we propose an automated approach called Visual Narrator based on natural language processing that extracts conceptual models from user story requirements. We choose this notation because of its popularity among (agile) practitioners and its focus on the essential components of a requirement: Who? What? Why? Coupled with a careful selection and tuning of heuristics, we show how Visual Narrator enables generating conceptual models from user stories with high accuracy. Visual Narrator is part of the holistic Grimm method for user story collaboration that ranges from elicitation to the interactive visualization and analysis of requirements

    DataMock: An Agile Approach for Building Data Models from User Interface Mockups

    Get PDF
    In modern software development, much time is devoted and much attention is paid to the activity of data modeling and the translation of data models into databases. This has motivated the proposal of different approaches and tools to support this activity, such as semiautomatic approaches that generate data models from requirements artifacts using text analysis and sets of heuristics, among other techniques. However, these approaches still suffer from important limitations, including the lack of support for requirements traceability, the poor support for detecting and solving conflicts in domain-specific requirements, and the considerable effort required for manually checking the generated models. This paper introduces DataMock, an Agile approach that enables the iterative building of data models from requirements specifications, while supporting traceability and allowing inconsistencies detection in data requirements and specifications. The paper also describes how the approach effectively allows improving traceability and reducing errors and effort to build data models in comparison with traditional, state-of-the-art, data modeling approaches
    corecore