Planejamento de releases de software através da aplicação de técnicas de busca multiobjetivas

Detalhes bibliográficos
Ano de defesa: 2011
Autor(a) principal: Brasil, Márcia Maria Albuquerque
Orientador(a): Não Informado pela instituição
Banca de defesa: Não Informado pela instituição
Tipo de documento: Dissertação
Tipo de acesso: Acesso aberto
Idioma: por
Instituição de defesa: Universidade Estadual do Ceará
Programa de Pós-Graduação: Não Informado pela instituição
Departamento: Não Informado pela instituição
País: Não Informado pela instituição
Palavras-chave em Português:
Link de acesso: https://siduece.uece.br/siduece/trabalhoAcademicoPublico.jsf?id=69684
Resumo: O Planejamento de Releases é uma importante e complexa atividade no desenvolvimento de Software que envolve diversos aspectos relacionados a decidir quais funcionalidades serão desenvolvidas e disponibilizadas a cada release do sistema. Um planejamento adequado deve satisfazer às necessidades dos clientes e demais stakeholders, assim como deve respeitar às restrições existentes e níveis de informação disponíveis. Técnicas de Otimização, notadamente as metaheurísticas, têm sido aplicadas com sucesso na resolução de problemas difíceis da Engenharia de Software, incluindo o problema do Planejamento de Releases de Software, e deram origem à recente área de pesquisa denominada Search-Based Software Engineering (ou Otimização em Engenharia de Software). Nesse contexto e, considerando a importância e dificuldade de realização dessa tarefa, esta Dissertação apresenta uma abordagem semi-automatizada, baseada em otimização multiobjetivo, para o Planejamento de Releases de Software visando auxiliar gerentes em um planejamento mais eficaz. A abordagem leva em consideração importantes fatores presentes no contexto de projetos reais, tais como satisfação de clientes, valor de negócio, gerenciamento de riscos, interdependências entre requisitos e recursos disponíveis. A abordagem proposta é composta por quatro estratégias, onde cada uma executa o planejamento de acordo com o nível de informação disponível a respeito do número de releases. Desta forma, é possível trabalhar com apenas um release – onde é feita uma seleção e priorização dos requisitos; com um número prédeterminado de releases – na qual os requisitos são alocados em releases conforme a preferência dos clientes; com um número indeterminado de releases – onde é determinado o número ideal de releases; ou ainda, com um número esperado de releases – o número de releases não é conhecido inicialmente, mas representa uma expectativa entre os clientes. Experimentos foram conduzidos para avaliar a viabilidade da abordagem proposta. Assim, importantes metaheurísticas multiobjetivas baseadas em algoritmos genéticos foram aplicadas na resolução de instâncias artificiais do problema. O comportamento dos algoritmos foi analisado e comparado através de métricas de desempenho. Palavras–Chave: Planejamento de releases de software. Otimização em engenharia de software. Engenharia de requisitos. Otimização multiobjetivo. Algoritmos genéticos.