2,690 research outputs found
Using Word Embedding and Convolution Neural Network for Bug Triaging by Considering Design Flaws
Resolving bugs in the maintenance phase of software is a complicated task.
Bug assignment is one of the main tasks for resolving bugs. Some Bugs cannot be
fixed properly without making design decisions and have to be assigned to
designers, rather than programmers, to avoid emerging bad smells that may cause
subsequent bug reports. Hence, it is important to refer some bugs to the
designer to check the possible design flaws. Based on our best knowledge, there
are a few works that have considered referring bugs to designers. Hence, this
issue is considered in this work. In this paper, a dataset is created, and a
CNN-based model is proposed to predict the need for assigning a bug to a
designer by learning the peculiarities of bug reports effective in creating bad
smells in the code. The features of each bug are extracted from CNN based on
its textual features, such as a summary and description. The number of bad
samples added to it in the fixing process using the PMD tool determines the bug
tag. The summary and description of the new bug are given to the model and the
model predicts the need to refer to the designer. The accuracy of 75% (or more)
was achieved for datasets with a sufficient number of samples for deep
learning-based model training. A model is proposed to predict bug referrals to
the designer. The efficiency of the model in predicting referrals to the
designer at the time of receiving the bug report was demonstrated by testing
the model on 10 projects
A Survey of Learning-based Automated Program Repair
Automated program repair (APR) aims to fix software bugs automatically and
plays a crucial role in software development and maintenance. With the recent
advances in deep learning (DL), an increasing number of APR techniques have
been proposed to leverage neural networks to learn bug-fixing patterns from
massive open-source code repositories. Such learning-based techniques usually
treat APR as a neural machine translation (NMT) task, where buggy code snippets
(i.e., source language) are translated into fixed code snippets (i.e., target
language) automatically. Benefiting from the powerful capability of DL to learn
hidden relationships from previous bug-fixing datasets, learning-based APR
techniques have achieved remarkable performance. In this paper, we provide a
systematic survey to summarize the current state-of-the-art research in the
learning-based APR community. We illustrate the general workflow of
learning-based APR techniques and detail the crucial components, including
fault localization, patch generation, patch ranking, patch validation, and
patch correctness phases. We then discuss the widely-adopted datasets and
evaluation metrics and outline existing empirical studies. We discuss several
critical aspects of learning-based APR techniques, such as repair domains,
industrial deployment, and the open science issue. We highlight several
practical guidelines on applying DL techniques for future APR studies, such as
exploring explainable patch generation and utilizing code features. Overall,
our paper can help researchers gain a comprehensive understanding about the
achievements of the existing learning-based APR techniques and promote the
practical application of these techniques. Our artifacts are publicly available
at \url{https://github.com/QuanjunZhang/AwesomeLearningAPR}
SIT automation tool: failure use case automation and diagnosis
Study of systems to manage the performance and quality of service of wireless data networks. Work with optimization techniques and project management to solve complex networks issues.The scope of this thesis is the SIT (System Integration Testing) process which is the testing procedure executed in customer test environment before the software goes on production environment. The main objective for this thesis is no other than improving the current process step by step taking into account the automation, efficiency, missing checks and much more. This project is a kind of Industrial process to create a powerful testing tool which can allow the company to deliver quality adaptor products efficiently, do better in less time helping to reduce costs, as Adaptors are the most demanded product of MYCOM OSI portfolio. Take into account that business is not only generated when an Adaptor is delivered for first time but also when Vendors provide with new releases and new functionalities and operators needs to order an upgrade of the Adaptor to be able to monitor the new functionalities deployed on their network.El campo de aplicación en el que está centrado esta tesis es el SIT (System Integration Testing), proceso de testeo ejecutado en un servidor de testeo del cliente antes de desplegar el software el medio de producción. El objetivo principal de esta tesis no es otro que mejorar el proceso actual paso a paso teniendo en cuenta la automatización, eficiencia, la falta de verificaciones, entre otros. Este proyecto es una especie de proceso industrial para crear una aplicación potente de testeo que pueda permitir a la compañía entregar adaptadores de calidad con eficiencia, que hagan más en menos tiempo ayudando así a reducir costes. Los adaptadores son el producto más demandado del porfolio de MYCOM OSI. Hay que tener en cuenta que el negocio no se genera solamente cuando se entrega por primera vez el adaptador al cliente, sino que cuando los proveedores lanzan nuevas versiones con nuevas funcionalidades y los operadores necesitan encargar una mejora del adaptador para poder monitorizar las nuevas funcionalidades desplegadas en su red.El camp d'aplicació en que es basa aquesta tesi és el SIT (System Integration Testing), procés de testeig executat en un servidor de testeig del client abans de desplegar el software al mitjà de producció. L'objectiu principal d'aquesta tesi no és un altre que millorar el procés actual pas a pas tenint en compte l'automatització, l'eficiència, la falta de verificacions, d'entre altres. Aquest projecte és una mena de procés industrial per crear una aplicació potent de testeig que pugui permetre a la companyia lliurar adaptadors de qualitat amb eficiència, que facin més en menys temps ajudant així a reduir costos. Els adaptadors són el producte més demandat del porfolio de MYCOM OSI. Cal tenir en compte que el negoci no només es genera quan es lliura per primera vegada l'adaptador al client, sinó que quan els proveïdors llancen noves versions amb noves funcionalitats i els operadors necessiten encarregar una millora de l'adaptador per poder monitoritzar les noves funcionalitats desplegades a la seva xarxa
Large Language Models for Software Engineering: A Systematic Literature Review
Large Language Models (LLMs) have significantly impacted numerous domains,
notably including Software Engineering (SE). Nevertheless, a well-rounded
understanding of the application, effects, and possible limitations of LLMs
within SE is still in its early stages. To bridge this gap, our systematic
literature review takes a deep dive into the intersection of LLMs and SE, with
a particular focus on understanding how LLMs can be exploited in SE to optimize
processes and outcomes. Through a comprehensive review approach, we collect and
analyze a total of 229 research papers from 2017 to 2023 to answer four key
research questions (RQs). In RQ1, we categorize and provide a comparative
analysis of different LLMs that have been employed in SE tasks, laying out
their distinctive features and uses. For RQ2, we detail the methods involved in
data collection, preprocessing, and application in this realm, shedding light
on the critical role of robust, well-curated datasets for successful LLM
implementation. RQ3 allows us to examine the specific SE tasks where LLMs have
shown remarkable success, illuminating their practical contributions to the
field. Finally, RQ4 investigates the strategies employed to optimize and
evaluate the performance of LLMs in SE, as well as the common techniques
related to prompt optimization. Armed with insights drawn from addressing the
aforementioned RQs, we sketch a picture of the current state-of-the-art,
pinpointing trends, identifying gaps in existing research, and flagging
promising areas for future study
- …