Trabalho de Conclusão de Curso de Graduação
Análise de aplicabilidade de search-based software engineering em gerência de requisitos em projetos de software
Fecha
2018-12-10Autor
Monteiro, Guilherme Bolzan
Institución
Resumen
The development of software involves a series of steps that aim to deliver the software functioning, fulfilling the needs of the client and within the budget and time frame for its development. The requirements phase has an objective to define specification of charac- teristics or properties of the system, as well as to define operating restrictions according to the client’s needs. Requirements prioritization is an important problem to Requirements Engineering, because it seeks to implement the requirements that will bring higher added value to the software being developed at each release. By having a document with all the requirements requested by the client, one of the roles of the Project Manager is to prioritize the requirements utilizing some criteria so that the most important requirements are deve- loped first. Search-Based Software Engineering - SBSE - has been successfully used to resolve complex problems related to Software Engineering. The SBSE technique has some positive points: it is a generic technique, robust and can be directly applied in the project under development. Therefore the requirements prioritization problem can be formulated as a search problem. This work proposes to utilize the techniques of multi-heuristic search: Hill Climbing and Genetic Algorithms, in order to make the requirements prioritization of a software based on a set of criteria or metrics. Lastly, it is proposed a tool that is been developed to support the use of the requirements prioritization approach. This tool receives as input a list containing the requirements, each one with its metrics filled, runs a search based algorithm on this input and generates as an output a list with the requirements clas- sified to be implemented to the next release. The validation of the tool was made with the realization of 50 tests, on what the algorithms showed efficiency in produce the best answer of the requisites prioritization problem.