Please use this identifier to cite or link to this item: http://hdl.handle.net/20.500.11960/4477
Title: Abordagens ao desenvolvimento de software usando ferramentas de inteligência artificial
Authors: Ribeiro, Jorge
Cruz, António Miguel
Brito, Mozart Teixeira de
Keywords: Inteligência artificial
Desenvolvimento de software
Aprendizagem automática
Geração de código
Modelos de linguagem de grande escala
Artificial intelligence
Software development
Machine learning
Code generation
Large language models
Issue Date: 15-May-2025
Abstract: O presente estudo investiga a interseção entre Desenvolvimento de Software (DS) e Inteligência Artificial (IA), explorando as transformações que a IA tem promovido nas práticas e metodologias tradicionais da engenharia de software. Com o avanço de modelos de Aprendizagem Automática (ML) e Processamento de Linguagem Natural (NLP). Diversas ferramentas e técnicas têm sido desenvolvidas para otimizar processos, como a geração automática de código, a automação de testes, a refatoração assistida e a manutenção preditiva. A pesquisa adota uma abordagem baseada no Design Science Research (DSR) para analisar o impacto da IA no ciclo de vida do software, desde a conceção até à implementação e manutenção. A revisão da literatura e o estudo do estado da arte permitiram identificar as principais abordagens utilizadas para integrar IA no desenvolvimento de software, bem como as vantagens e desafios dessa integração. Entre os aspetos analisados, destaca-se a utilização de Modelos de Linguagem de Grande Escala (LLMs), como o GitHub Copilot, e frameworks de geração automática de código, que demonstram um impacto significativo na produtividade dos programadores. Além disso, ferramentas baseadas em IA apresentam desafios relacionados à interpretabilidade dos modelos, fiabilidade do código gerado e adaptação das equipas de desenvolvimento. Os resultados obtidos demonstram que a integração entre IA e DS representa uma evolução no setor tecnológico, abrindo novas oportunidades para a automação de tarefas complexas e a melhoria da eficiência dos processos de engenharia de software. No entanto, a investigação também revela a necessidade de desenvolver mecanismos robustos de validação, segurança e mitigação de riscos associados à dependência de modelos preditivos. O trabalho conclui que, embora a IA apresente benefícios substanciais no contexto do desenvolvimento de software, a sua aplicação requer estratégias que garantam a qualidade do software e a adaptabilidade das equipas ao novo paradigma tecnológico.
This study investigates the intersection between Software Development (SD) and Artificial Intelligence (AI), exploring the transformations that AI has introduced in traditional software engineering methodologies and practices. With the advancement of Machine Learning (ML) models and Natural Language Processing (NLP) techniques. Various tools and methods have been developed to optimize processes such as automatic code generation, test automation, assisted refactoring, and predictive maintenance. This research adopts a Design Science Research (DSR) approach to analyze the impact of AI across the software lifecycle, from design to implementation and maintenance. The literature review and state-of-the-art analysis identified the primary approaches used to integrate AI into software development, as well as the benefits and challenges associated with this integration. Among the key aspects analyzed, the study highlights the use of Large Language Models (LLMs), such as GitHub Copilot, and AI-powered code generation frameworks, which have shown a significant impact on developer productivity. Furthermore, AI-driven tools present challenges related to model interpretability, reliability of generated code, and adaptation of development teams. The findings demonstrate that AI-SD integration represents a significant evolution in the technology sector, opening new opportunities for automating complex tasks and enhancing software engineering efficiency. However, the study also reveals the need to develop robust validation, security, and risk mitigation mechanisms to address the dependency on predictive models. The research concludes that, while AI offers substantial benefits in software development, its application requires strategies to ensure software quality and adaptability of development teams to the evolving technological landscape.
Description: Mestrado em Engenharia Informática na Escola Superior de Tecnologia e Gestão do Instituto Politécnico de Viana do Castelo
URI: http://hdl.handle.net/20.500.11960/4477
Appears in Collections:ESTG - Dissertações de mestrado

Files in This Item:
File Description SizeFormat 
Mozart_Brito.pdf4.24 MBAdobe PDFView/Open


Items in DSpace are protected by copyright, with all rights reserved, unless otherwise indicated.