Detalhes bibliográficos
Ano de defesa: |
2017 |
Autor(a) principal: |
Pinheiro, Thiago Oliveira |
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=82670
|
Resumo: |
<div style="">A Engenharia de Software preconiza uma série de boas práticas para que o desenvolvimento e manutenção de software possa fluir de maneira organizada, a fim de melhorar a produtividade e a qualidade dos sistemas desenvolvidos. Entretanto devido ao imediatismo de resposta exigido por algumas organizações, muitas dessas práticas são ignoradas em prol de rápidas validações ou novas funcionalidades críticas que surgem a todo momento. A consequência deste ato pode ser muito grave, a ponto de comprometer o crescimento da própria organização. Embora este cenário não seja desejado, ele se repete com grande frequência em muitas organizações. Sendo assim, se faz necessário encontrar uma maneira de se trabalhar a distribuição de tarefas de modo eficaz, procurando responder de maneira rápida e continuar agregando valor à organização. Contudo, montar o planejamento de execução das tarefas de maneira eficiente é um esforço desafiador, pois é preciso analisar uma quantidade muito grande de possibilidades. Este cenário se torna mais desafiador quando a demanda por novas tarefas é constante. Deste modo, a Engenharia de Software Baseada em Busca surge como uma alternativa para solucionar o problema, aplicando técnicas de otimização baseada em busca. Este trabalho apresenta uma proposta para a solução do Problema de Agendamento em Projetos de Software, utilizando informações referentes à experiência do time envolvido e o nível de habilidades necessárias para a execução das tarefas, determinando a melhor distribuição de tarefas entre a equipe, a fim de minimizar o tempo total de execução em um determinado período. A proposta deste trabalho ainda apresenta um aspecto reativo, onde a busca pela solução deve se adaptar às mudanças ocorridas na instância estudada. Para tanto, uma formulação dinâmica foi elaborada para o referido problema e um Algoritmo Genético foi adaptado para geração das soluções. Considerando instâncias artificiais, a abordagem foi avaliada em vários cenários de execução diferentes. Demonstrou-se, empiricamente, que fazendo uso da representação de solução adotada neste trabalho, o reaproveitamento de soluções em uma abordagem dinâmica é notável em situações onde novas pessoas são adicionadas à instância estudada. Entretanto ao se adicionar um lote de novas tarefas, o reaproveitamento não apresenta ganhos significativos em relação a uma abordagem tradicional. </div><div style="">Palavras-chave: Evolução de Software. Alocação de Tarefas. Problemas de Otimização Dinâmicos. Algoritmos Genéticos. Problema de Agendamento em Projetos de Software. Engenharia de Software Baseada em Busca.</div> |