Exportação concluída — 

Seleção de requisitos de software utilizando métodos meta-heurísticos

Detalhes bibliográficos
Autor(a) principal: Basniak, Rodrigo
Data de Publicação: 2019
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
Texto Completo: http://repositorio.utfpr.edu.br/jspui/handle/1/4656
Resumo: The software requirements selection is an important step in any software development software and bad decisions can cause the project to fail. This makes reasearches on techniques to aid the professionals on the decision making process also be important. One existing approach is to model the problem as an optimization problem an solve it using meta-heristic thecniques. A systematic literature review was done to help identify the problems existent in this research field. The review found that the proposed solutions interpret the problem as a binary problem and simplifies it removing all interdependencies that exists between the requirements and use randomly generated datasets. Just a few researches take the full set of interdependencies in account and when they do they use repair operators to fix invalid solutions. With a goal of proposing a more robust solution, the problem that is inherently binary, is treated as a continuous space problem and with all interdependencies between the requirements. Meta-heuristic techniques are then used to solve the requirements selection problem with the help of a new solution encoding, developed to solve exactly this type of problem. With this approach the search space surface gets smoother and the meta-heuristic techniques can find better solutions. Three algorithms were selected to solve the problem: differential evolution, particle swarm optimization and genetic algorithms. Results obtained with experiments using the proposed encoding were compared to the results obtained using the traditional binary encoding. The proposed technique is superior to the traditional one when the interdependencies between the requirements are considered, since in projects with more than 32 requirements the traditional approach can’t even find any valid solutions. The projects used in this paper were generated based on three real world software development projects. All these data were made publicly available together with a prototype software tool to run the algorithms developed in this paper. Using the proposed encoding the three algorithms performed similarly when comparing the quality of theirs results but, the differential evolution algorithmwas superior when observing the number of fitness evaluations needed to find the best solutions.
id UTFPR-12_fc7f8dc82d9c60621952e279b4f367c4
oai_identifier_str oai:repositorio.utfpr.edu.br:1/4656
network_acronym_str UTFPR-12
network_name_str Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
repository_id_str
spelling Seleção de requisitos de software utilizando métodos meta-heurísticosSoftware requirements selection using meta-heuristic methodsHeurísticaSoftware - DesenvolvimentoProcesso decisórioModelos matemáticosInteligência coletivaAlgorítmos genéticosComputação evolutivaOtimização matemáticaOtimização combinatóriaSolução de problemasMétodos de simulaçãoComputaçãoHeuristicComputer software - DevelopmentDecision makingMathematical modelsSwarm intelligenceGenetic algorithmsEvolutionary computationMathematical optimizationCombinatorial optimizationProblem solvingSimulation methodsComputer scienceCNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARECiência Da ComputaçãoThe software requirements selection is an important step in any software development software and bad decisions can cause the project to fail. This makes reasearches on techniques to aid the professionals on the decision making process also be important. One existing approach is to model the problem as an optimization problem an solve it using meta-heristic thecniques. A systematic literature review was done to help identify the problems existent in this research field. The review found that the proposed solutions interpret the problem as a binary problem and simplifies it removing all interdependencies that exists between the requirements and use randomly generated datasets. Just a few researches take the full set of interdependencies in account and when they do they use repair operators to fix invalid solutions. With a goal of proposing a more robust solution, the problem that is inherently binary, is treated as a continuous space problem and with all interdependencies between the requirements. Meta-heuristic techniques are then used to solve the requirements selection problem with the help of a new solution encoding, developed to solve exactly this type of problem. With this approach the search space surface gets smoother and the meta-heuristic techniques can find better solutions. Three algorithms were selected to solve the problem: differential evolution, particle swarm optimization and genetic algorithms. Results obtained with experiments using the proposed encoding were compared to the results obtained using the traditional binary encoding. The proposed technique is superior to the traditional one when the interdependencies between the requirements are considered, since in projects with more than 32 requirements the traditional approach can’t even find any valid solutions. The projects used in this paper were generated based on three real world software development projects. All these data were made publicly available together with a prototype software tool to run the algorithms developed in this paper. Using the proposed encoding the three algorithms performed similarly when comparing the quality of theirs results but, the differential evolution algorithmwas superior when observing the number of fitness evaluations needed to find the best solutions.A seleção de requisitos de software é muito importante para qualquer projeto de software e decisões ruins nesta etapa podem atrapalhar ou até mesmo impedir seu sucesso. Isto faz com que estudos sobre a aplicação de técnicas para auxiliar na tomada de decisão na seleção de requisitos também sejam importantes. Uma das abordagens utilizadas na literatura é modelar a seleção de requisitos como um problema de otimização e utilizar métodos meta-heurísticos para resolvê-lo. Um mapeamento sistemático de literatura foi realizado com o objetivo de identificar os problemas existentes nas soluções já propostas e as lacunas desta área de pesquisa. Este mapeamento constatou que as soluções propostas tratam o problema de forma binária e simplificado, ignorando as interdependências entre os requisitos e utilizando dados de problemas gerados aleatoriamente. Poucos trabalhos consideram todos os tipos de interdependências existentes entre os requisitos e quando o fazem, a solução é utilizar operadores de reparação. Com o intuito de propor uma solução mais robusta, o problema que é inerentemente binário, é tratado como um problema de variáveis contínuas e com interdependências entre os requisitos. Técnicas meta-heurísticas são utilizadas para a encontrar a solução e com auxílio de uma codificação desenvolvida especificamente para o problema de seleção de requisitos com interdependências. Desta forma, a superfície do espaço de busca fica mais suave e as meta-heurísticas conseguem chegar nas melhores soluções mais facilmente. Três algoritmos foram selecionados para o estudo: otimização por enxame de partículas, evolução diferencial e algoritmos genéticos. Experimentos foram realizados com a codificação proposta e com uma codificação binária, que é mais comum na literatura. Os resultados mostram que a abordagem proposta é superior à tradicional quando são consideradas as interdependências entre os requisitos, pois em projetos com mais 32 requisitos a abordagem tradicional não consegue resolver os problemas utilizados neste trabalho. Os dados dos problemas foram gerados a partir de projetos reais de desenvolvimento de software e foram disponibilizados publicamente, juntamente com uma ferramenta protótipo para execução dos algoritmos. Com a codificação proposta, os três algoritmos tiveram uma performance parecida em relação à qualidade dos resultados, mas o algoritmo de evolução diferencial se mostrou superior em relação ao número de avaliações da função de fitness.Universidade Tecnológica Federal do ParanáCuritibaBrasilPrograma de Pós-Graduação em Computação AplicadaUTFPREmer, Maria Claudia Figueiredo Pereirahttp://lattes.cnpq.br/8275326076771841Bastos, Laudelino Cordeirohttp://lattes.cnpq.br/1231141260610815Seca Neto, Adolfo Gustavo Serrahttps://orcid.org/0000-0002-0260-5922http://lattes.cnpq.br/0071119715272492Lopes, Heitor Silvériohttp://lattes.cnpq.br/4045818083957064Bastos, Laudelino Cordeirohttp://lattes.cnpq.br/1231141260610815Vergilio, Silvia Reginahttp://lattes.cnpq.br/0401470121643212Basniak, Rodrigo2020-01-27T21:39:51Z2020-01-27T21:39:51Z2019-06-27info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfBASNIAK, Rodrigo. Seleção de requisitos de software utilizando métodos meta-heurísticos. 2019. Dissertação (Mestrado em Computação Aplicada) - Universidade Tecnológica Federal do Paraná, Curitiba, 2019.http://repositorio.utfpr.edu.br/jspui/handle/1/4656porinfo:eu-repo/semantics/openAccessreponame:Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))instname:Universidade Tecnológica Federal do Paraná (UTFPR)instacron:UTFPR2020-01-28T06:00:46Zoai:repositorio.utfpr.edu.br:1/4656Repositório InstitucionalPUBhttp://repositorio.utfpr.edu.br:8080/oai/requestriut@utfpr.edu.br || sibi@utfpr.edu.bropendoar:2020-01-28T06:00:46Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) - Universidade Tecnológica Federal do Paraná (UTFPR)false
dc.title.none.fl_str_mv Seleção de requisitos de software utilizando métodos meta-heurísticos
Software requirements selection using meta-heuristic methods
title Seleção de requisitos de software utilizando métodos meta-heurísticos
spellingShingle Seleção de requisitos de software utilizando métodos meta-heurísticos
Basniak, Rodrigo
Heurística
Software - Desenvolvimento
Processo decisório
Modelos matemáticos
Inteligência coletiva
Algorítmos genéticos
Computação evolutiva
Otimização matemática
Otimização combinatória
Solução de problemas
Métodos de simulação
Computação
Heuristic
Computer software - Development
Decision making
Mathematical models
Swarm intelligence
Genetic algorithms
Evolutionary computation
Mathematical optimization
Combinatorial optimization
Problem solving
Simulation methods
Computer science
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE
Ciência Da Computação
title_short Seleção de requisitos de software utilizando métodos meta-heurísticos
title_full Seleção de requisitos de software utilizando métodos meta-heurísticos
title_fullStr Seleção de requisitos de software utilizando métodos meta-heurísticos
title_full_unstemmed Seleção de requisitos de software utilizando métodos meta-heurísticos
title_sort Seleção de requisitos de software utilizando métodos meta-heurísticos
author Basniak, Rodrigo
author_facet Basniak, Rodrigo
author_role author
dc.contributor.none.fl_str_mv Emer, Maria Claudia Figueiredo Pereira
http://lattes.cnpq.br/8275326076771841
Bastos, Laudelino Cordeiro
http://lattes.cnpq.br/1231141260610815
Seca Neto, Adolfo Gustavo Serra
https://orcid.org/0000-0002-0260-5922
http://lattes.cnpq.br/0071119715272492
Lopes, Heitor Silvério
http://lattes.cnpq.br/4045818083957064
Bastos, Laudelino Cordeiro
http://lattes.cnpq.br/1231141260610815
Vergilio, Silvia Regina
http://lattes.cnpq.br/0401470121643212
dc.contributor.author.fl_str_mv Basniak, Rodrigo
dc.subject.por.fl_str_mv Heurística
Software - Desenvolvimento
Processo decisório
Modelos matemáticos
Inteligência coletiva
Algorítmos genéticos
Computação evolutiva
Otimização matemática
Otimização combinatória
Solução de problemas
Métodos de simulação
Computação
Heuristic
Computer software - Development
Decision making
Mathematical models
Swarm intelligence
Genetic algorithms
Evolutionary computation
Mathematical optimization
Combinatorial optimization
Problem solving
Simulation methods
Computer science
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE
Ciência Da Computação
topic Heurística
Software - Desenvolvimento
Processo decisório
Modelos matemáticos
Inteligência coletiva
Algorítmos genéticos
Computação evolutiva
Otimização matemática
Otimização combinatória
Solução de problemas
Métodos de simulação
Computação
Heuristic
Computer software - Development
Decision making
Mathematical models
Swarm intelligence
Genetic algorithms
Evolutionary computation
Mathematical optimization
Combinatorial optimization
Problem solving
Simulation methods
Computer science
CNPQ::CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO::METODOLOGIA E TECNICAS DA COMPUTACAO::ENGENHARIA DE SOFTWARE
Ciência Da Computação
description The software requirements selection is an important step in any software development software and bad decisions can cause the project to fail. This makes reasearches on techniques to aid the professionals on the decision making process also be important. One existing approach is to model the problem as an optimization problem an solve it using meta-heristic thecniques. A systematic literature review was done to help identify the problems existent in this research field. The review found that the proposed solutions interpret the problem as a binary problem and simplifies it removing all interdependencies that exists between the requirements and use randomly generated datasets. Just a few researches take the full set of interdependencies in account and when they do they use repair operators to fix invalid solutions. With a goal of proposing a more robust solution, the problem that is inherently binary, is treated as a continuous space problem and with all interdependencies between the requirements. Meta-heuristic techniques are then used to solve the requirements selection problem with the help of a new solution encoding, developed to solve exactly this type of problem. With this approach the search space surface gets smoother and the meta-heuristic techniques can find better solutions. Three algorithms were selected to solve the problem: differential evolution, particle swarm optimization and genetic algorithms. Results obtained with experiments using the proposed encoding were compared to the results obtained using the traditional binary encoding. The proposed technique is superior to the traditional one when the interdependencies between the requirements are considered, since in projects with more than 32 requirements the traditional approach can’t even find any valid solutions. The projects used in this paper were generated based on three real world software development projects. All these data were made publicly available together with a prototype software tool to run the algorithms developed in this paper. Using the proposed encoding the three algorithms performed similarly when comparing the quality of theirs results but, the differential evolution algorithmwas superior when observing the number of fitness evaluations needed to find the best solutions.
publishDate 2019
dc.date.none.fl_str_mv 2019-06-27
2020-01-27T21:39:51Z
2020-01-27T21:39:51Z
dc.type.status.fl_str_mv info:eu-repo/semantics/publishedVersion
dc.type.driver.fl_str_mv info:eu-repo/semantics/masterThesis
format masterThesis
status_str publishedVersion
dc.identifier.uri.fl_str_mv BASNIAK, Rodrigo. Seleção de requisitos de software utilizando métodos meta-heurísticos. 2019. Dissertação (Mestrado em Computação Aplicada) - Universidade Tecnológica Federal do Paraná, Curitiba, 2019.
http://repositorio.utfpr.edu.br/jspui/handle/1/4656
identifier_str_mv BASNIAK, Rodrigo. Seleção de requisitos de software utilizando métodos meta-heurísticos. 2019. Dissertação (Mestrado em Computação Aplicada) - Universidade Tecnológica Federal do Paraná, Curitiba, 2019.
url http://repositorio.utfpr.edu.br/jspui/handle/1/4656
dc.language.iso.fl_str_mv por
language por
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.publisher.none.fl_str_mv Universidade Tecnológica Federal do Paraná
Curitiba
Brasil
Programa de Pós-Graduação em Computação Aplicada
UTFPR
publisher.none.fl_str_mv Universidade Tecnológica Federal do Paraná
Curitiba
Brasil
Programa de Pós-Graduação em Computação Aplicada
UTFPR
dc.source.none.fl_str_mv reponame:Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
instname:Universidade Tecnológica Federal do Paraná (UTFPR)
instacron:UTFPR
instname_str Universidade Tecnológica Federal do Paraná (UTFPR)
instacron_str UTFPR
institution UTFPR
reponame_str Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
collection Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT))
repository.name.fl_str_mv Repositório Institucional da UTFPR (da Universidade Tecnológica Federal do Paraná (RIUT)) - Universidade Tecnológica Federal do Paraná (UTFPR)
repository.mail.fl_str_mv riut@utfpr.edu.br || sibi@utfpr.edu.br
_version_ 1850497856690978816