5 research outputs found

    Toma de decisiones científica en la ingeniería de software mediante inteligencia computacional y análisis de datos

    Get PDF
    La adopción de herramientas formales que complementen la experiencia y el buen juicio en las distintas actividades de un proceso de desarrollo de software todavía es un pendiente dentro la industria del software. La falta de conocimientos respecto de enfoques realistas para resolver problemas de la IS y la falta de herramientas software que auxilien a los tomadores de decisiones utilizando tales enfoques son dos carencias que pueden explicar las dificultades en esta adopción. Las líneas de investigación aquí propuestas tienden a suplir ambas. Para esta tarea se propone la utilización de tanto técnicas comprendidas en lo que se conoce como Inteligencia Computacional (IC), dentro de las cuales se encuentran la teoría de conjuntos difusos, las redes neuronales y la computación evolutiva, como también de herramientas de la Ciencia de Datos, incluyendo técnicas de aprendizaje automático, estadísticas y visualización de datos, entre otros. Estas técnicas son capaces de brindar la flexibilidad necesaria para crear métodos y modelos que sean tolerantes a la imprecisión, la falta de información y la aproximación, características que le son propias a los contextos de decisión en la IS.Eje: Ingeniería de Software.Red de Universidades con Carreras en Informátic

    Toma de decisiones multicriterio en problemas de la ingeniería de software utilizando computación blanda

    Get PDF
    La Ingeniería de Software (IS) como la aplicación de un enfoque sistemático, disciplinado y cuantificable al desarrollo, operación y mantenimiento de software. Sin embargo, la adopción de herramientas formales que complementen la experiencia y el buen juicio en las distintas actividades de un proceso de desarrollo de software todavía es un pendiente dentro la industria del software, particularmente en la Argentina. Dos carencias que pueden explicar esto son, por un lado, la falta de conocimientos respecto de enfoques realistas para resolver problemas relativos a la IS, y por otro, la falta de herramientas software que auxilien a los tomadores de decisiones utilizando tales enfoques. Las líneas de investigación aquí propuestas tienden a suplir ambas carencias. Para esta tarea se propone la utilización de técnicas comprendidas en lo que se conoce como computación blanda (soft computing), dentro de las cuales se encuentran la Teoría de Conjuntos Difusos, las Redenes Neuronales y los métodos de Búsqueda Heurística y Metaheurística. La soft computing es capaz de brindar la flexibilidad necesaria para crear métodos y modelos que sean tolerantes a la imprecisión, la falta de información y la aproximación, características que le son propias a los contextos de decisión en la IS.Eje: Ingeniería de Software.Red de Universidades con Carreras en Informátic

    Search-based crash reproduction using behavioural model seeding

    Get PDF
    Search-based crash reproduction approaches assist developers during debugging by generating a test case which reproduces a crash given its stack trace. One of the fundamental steps of this approach is creating objects needed to trigger the crash. One way to overcome this limitation is seeding: using information about the application during the search process. With seeding, the existing usages of classes can be used in the search process to produce realistic sequences of method calls which create the required objects. In this study, we introduce behavioral model seeding: a new seeding method which learns class usages from both the system under test and existing test cases. Learned usages are then synthesized in a behavioral model (state machine). Then, this model serves to guide the evolutionary process. To assess behavioral model-seeding, we evaluate it against test-seeding (the state-of-the-art technique for seeding realistic objects) and no-seeding (without seeding any class usage). For this evaluation, we use a benchmark of 124 hard-to-reproduce crashes stemming from six open-source projects. Our results indicate that behavioral model-seeding outperforms both test seeding and no-seeding by a minimum of 6% without any notable negative impact on efficiency

    LASSO – an observatorium for the dynamic selection, analysis and comparison of software

    Full text link
    Mining software repositories at the scale of 'big code' (i.e., big data) is a challenging activity. As well as finding a suitable software corpus and making it programmatically accessible through an index or database, researchers and practitioners have to establish an efficient analysis infrastructure and precisely define the metrics and data extraction approaches to be applied. Moreover, for analysis results to be generalisable, these tasks have to be applied at a large enough scale to have statistical significance, and if they are to be repeatable, the artefacts need to be carefully maintained and curated over time. Today, however, a lot of this work is still performed by human beings on a case-by-case basis, with the level of effort involved often having a significant negative impact on the generalisability and repeatability of studies, and thus on their overall scientific value. The general purpose, 'code mining' repositories and infrastructures that have emerged in recent years represent a significant step forward because they automate many software mining tasks at an ultra-large scale and allow researchers and practitioners to focus on defining the questions they would like to explore at an abstract level. However, they are currently limited to static analysis and data extraction techniques, and thus cannot support (i.e., help automate) any studies which involve the execution of software systems. This includes experimental validations of techniques and tools that hypothesise about the behaviour (i.e., semantics) of software, or data analysis and extraction techniques that aim to measure dynamic properties of software. In this thesis a platform called LASSO (Large-Scale Software Observatorium) is introduced that overcomes this limitation by automating the collection of dynamic (i.e., execution-based) information about software alongside static information. It features a single, ultra-large scale corpus of executable software systems created by amalgamating existing Open Source software repositories and a dedicated DSL for defining abstract selection and analysis pipelines. Its key innovations are integrated capabilities for searching for selecting software systems based on their exhibited behaviour and an 'arena' that allows their responses to software tests to be compared in a purely data-driven way. We call the platform a 'software observatorium' since it is a place where the behaviour of large numbers of software systems can be observed, analysed and compared

    XXIII Edición del Workshop de Investigadores en Ciencias de la Computación : Libro de actas

    Get PDF
    Compilación de las ponencias presentadas en el XXIII Workshop de Investigadores en Ciencias de la Computación (WICC), llevado a cabo en Chilecito (La Rioja) en abril de 2021.Red de Universidades con Carreras en Informátic
    corecore