A study on prompt engineering for software engineering data : ChatGPT integration into software engineering metric generation tool
Autor(a) principal: | |
---|---|
Data de Publicação: | 2024 |
Tipo de documento: | Trabalho de conclusão de curso |
Idioma: | eng |
Título da fonte: | Repositório Institucional da UFRGS |
Texto Completo: | http://hdl.handle.net/10183/273014 |
Resumo: | Com o avanço constante da tecnologia e a contínua transformação digital, a inteligência artificial tem se tornado cada vez mais presente em diversos aspectos de nossas vidas. O ChatGPT é baseado na arquitetura GPT (Generative Pre-trained Transformer), e é um exemplo de sistema que pode ser treinado em uma variedade de tópicos e áreas de conhecimento, o que permite que ele gere respostas precisas e úteis em uma variedade de situações. Este trabalho visa investigar como integrar o ChatGPT (e como usá-lo de maneira mais eficaz) à uma suíte de ferramentas de análise de código que usa métricas e indicadores sobre code smells e qualidade de código – a DR-Tools Suite. O objetivo é que tal integração produza orientações para o engenheiro de software em relação à qualidade do código ou até mesmo algum nível de automação em apoio a seu trabalho de refatoração. O trabalho resume as características principais das tecnologias envolvidas, desenvolve a engenharia de prompt para o trabalho, apresenta a abordagem de integração e alguns exemplos de uso, e finalmente discute os resultados obtidos. Por fim, apresenta melhores práticas para a engenharia de prompt, avalia os potenciais das tecnologias e o propõe potenciais avanços em futuras pesquisas. |
id |
UFRGS-2_cc5a55417ed513371a1c52e1c1542284 |
---|---|
oai_identifier_str |
oai:www.lume.ufrgs.br:10183/273014 |
network_acronym_str |
UFRGS-2 |
network_name_str |
Repositório Institucional da UFRGS |
repository_id_str |
|
spelling |
Rosa, Glauber de SouzaPimenta, Marcelo SoaresLacerda, Guilherme Silva de2024-03-07T05:02:31Z2024http://hdl.handle.net/10183/273014001197802Com o avanço constante da tecnologia e a contínua transformação digital, a inteligência artificial tem se tornado cada vez mais presente em diversos aspectos de nossas vidas. O ChatGPT é baseado na arquitetura GPT (Generative Pre-trained Transformer), e é um exemplo de sistema que pode ser treinado em uma variedade de tópicos e áreas de conhecimento, o que permite que ele gere respostas precisas e úteis em uma variedade de situações. Este trabalho visa investigar como integrar o ChatGPT (e como usá-lo de maneira mais eficaz) à uma suíte de ferramentas de análise de código que usa métricas e indicadores sobre code smells e qualidade de código – a DR-Tools Suite. O objetivo é que tal integração produza orientações para o engenheiro de software em relação à qualidade do código ou até mesmo algum nível de automação em apoio a seu trabalho de refatoração. O trabalho resume as características principais das tecnologias envolvidas, desenvolve a engenharia de prompt para o trabalho, apresenta a abordagem de integração e alguns exemplos de uso, e finalmente discute os resultados obtidos. Por fim, apresenta melhores práticas para a engenharia de prompt, avalia os potenciais das tecnologias e o propõe potenciais avanços em futuras pesquisas.With constant innovation in technology and continuous digital transformation, Artificial Intelligence is becoming more present in different aspects of our lives. The ChatGPT is based on the GPT (Generative Pre-trained Transformer) architecture and is a good example of a system that can be trained in a variety of topics and knowledge areas, what allows it to generate precise and useful answers on multiple situations. This project aims to investigate how to integrate ChatGPT (and how to use it in the most effective way) into a code analyzer and smells detection tool suite – the DR-Tools Suite. The intention is that this integration provides guidance to the software engineer in relation to the code quality and even some automation to his/her refactoring job. This work summarizes the characteristics of the main technologies involved, presents the integration approach and some use cases, and finally discusses the results achieved. It concludes by presenting best practices for prompt engineering, evaluating the potential of the technologies, and proposing potential future research.application/pdfengEngenharia de softwareInteligência artificialChatGPTInteração homem-computadorRefactoringLarge language model (LLM)A study on prompt engineering for software engineering data : ChatGPT integration into software engineering metric generation toolEstudo sobre engenharia de prompt para dados de engenharia de software : integração do ChatGPT com uma ferramenta de geração de métricas de engenharia de softwareinfo:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/bachelorThesisUniversidade Federal do Rio Grande do SulInstituto de InformáticaPorto Alegre, BR-RS2024Ciência da Computação: Ênfase em Engenharia da Computação: Bachareladograduaçãoinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UFRGSinstname:Universidade Federal do Rio Grande do Sul (UFRGS)instacron:UFRGSTEXT001197802.pdf.txt001197802.pdf.txtExtracted Texttext/plain523738http://www.lume.ufrgs.br/bitstream/10183/273014/2/001197802.pdf.txte06c4b07c4987ed02b7c312fa2f26553MD52ORIGINAL001197802.pdfTexto completo (inglês)application/pdf9272196http://www.lume.ufrgs.br/bitstream/10183/273014/1/001197802.pdf86a8e03d78e135f4acabbeb471dde83dMD5110183/2730142024-03-08 05:01:16.313393oai:www.lume.ufrgs.br:10183/273014Repositório de PublicaçõesPUBhttps://lume.ufrgs.br/oai/requestopendoar:2024-03-08T08:01:16Repositório Institucional da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS)false |
dc.title.pt_BR.fl_str_mv |
A study on prompt engineering for software engineering data : ChatGPT integration into software engineering metric generation tool |
dc.title.alternative.pt.fl_str_mv |
Estudo sobre engenharia de prompt para dados de engenharia de software : integração do ChatGPT com uma ferramenta de geração de métricas de engenharia de software |
title |
A study on prompt engineering for software engineering data : ChatGPT integration into software engineering metric generation tool |
spellingShingle |
A study on prompt engineering for software engineering data : ChatGPT integration into software engineering metric generation tool Rosa, Glauber de Souza Engenharia de software Inteligência artificial ChatGPT Interação homem-computador Refactoring Large language model (LLM) |
title_short |
A study on prompt engineering for software engineering data : ChatGPT integration into software engineering metric generation tool |
title_full |
A study on prompt engineering for software engineering data : ChatGPT integration into software engineering metric generation tool |
title_fullStr |
A study on prompt engineering for software engineering data : ChatGPT integration into software engineering metric generation tool |
title_full_unstemmed |
A study on prompt engineering for software engineering data : ChatGPT integration into software engineering metric generation tool |
title_sort |
A study on prompt engineering for software engineering data : ChatGPT integration into software engineering metric generation tool |
author |
Rosa, Glauber de Souza |
author_facet |
Rosa, Glauber de Souza |
author_role |
author |
dc.contributor.author.fl_str_mv |
Rosa, Glauber de Souza |
dc.contributor.advisor1.fl_str_mv |
Pimenta, Marcelo Soares |
dc.contributor.advisor-co1.fl_str_mv |
Lacerda, Guilherme Silva de |
contributor_str_mv |
Pimenta, Marcelo Soares Lacerda, Guilherme Silva de |
dc.subject.por.fl_str_mv |
Engenharia de software Inteligência artificial ChatGPT Interação homem-computador |
topic |
Engenharia de software Inteligência artificial ChatGPT Interação homem-computador Refactoring Large language model (LLM) |
dc.subject.eng.fl_str_mv |
Refactoring Large language model (LLM) |
description |
Com o avanço constante da tecnologia e a contínua transformação digital, a inteligência artificial tem se tornado cada vez mais presente em diversos aspectos de nossas vidas. O ChatGPT é baseado na arquitetura GPT (Generative Pre-trained Transformer), e é um exemplo de sistema que pode ser treinado em uma variedade de tópicos e áreas de conhecimento, o que permite que ele gere respostas precisas e úteis em uma variedade de situações. Este trabalho visa investigar como integrar o ChatGPT (e como usá-lo de maneira mais eficaz) à uma suíte de ferramentas de análise de código que usa métricas e indicadores sobre code smells e qualidade de código – a DR-Tools Suite. O objetivo é que tal integração produza orientações para o engenheiro de software em relação à qualidade do código ou até mesmo algum nível de automação em apoio a seu trabalho de refatoração. O trabalho resume as características principais das tecnologias envolvidas, desenvolve a engenharia de prompt para o trabalho, apresenta a abordagem de integração e alguns exemplos de uso, e finalmente discute os resultados obtidos. Por fim, apresenta melhores práticas para a engenharia de prompt, avalia os potenciais das tecnologias e o propõe potenciais avanços em futuras pesquisas. |
publishDate |
2024 |
dc.date.accessioned.fl_str_mv |
2024-03-07T05:02:31Z |
dc.date.issued.fl_str_mv |
2024 |
dc.type.status.fl_str_mv |
info:eu-repo/semantics/publishedVersion |
dc.type.driver.fl_str_mv |
info:eu-repo/semantics/bachelorThesis |
format |
bachelorThesis |
status_str |
publishedVersion |
dc.identifier.uri.fl_str_mv |
http://hdl.handle.net/10183/273014 |
dc.identifier.nrb.pt_BR.fl_str_mv |
001197802 |
url |
http://hdl.handle.net/10183/273014 |
identifier_str_mv |
001197802 |
dc.language.iso.fl_str_mv |
eng |
language |
eng |
dc.rights.driver.fl_str_mv |
info:eu-repo/semantics/openAccess |
eu_rights_str_mv |
openAccess |
dc.format.none.fl_str_mv |
application/pdf |
dc.source.none.fl_str_mv |
reponame:Repositório Institucional da UFRGS instname:Universidade Federal do Rio Grande do Sul (UFRGS) instacron:UFRGS |
instname_str |
Universidade Federal do Rio Grande do Sul (UFRGS) |
instacron_str |
UFRGS |
institution |
UFRGS |
reponame_str |
Repositório Institucional da UFRGS |
collection |
Repositório Institucional da UFRGS |
bitstream.url.fl_str_mv |
http://www.lume.ufrgs.br/bitstream/10183/273014/2/001197802.pdf.txt http://www.lume.ufrgs.br/bitstream/10183/273014/1/001197802.pdf |
bitstream.checksum.fl_str_mv |
e06c4b07c4987ed02b7c312fa2f26553 86a8e03d78e135f4acabbeb471dde83d |
bitstream.checksumAlgorithm.fl_str_mv |
MD5 MD5 |
repository.name.fl_str_mv |
Repositório Institucional da UFRGS - Universidade Federal do Rio Grande do Sul (UFRGS) |
repository.mail.fl_str_mv |
|
_version_ |
1815447360432504832 |