Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos

Detalhes bibliográficos
Autor(a) principal: Santos, Vinicius Souza dos
Data de Publicação: 2014
Tipo de documento: Dissertação
Idioma: por
Título da fonte: Biblioteca Digital de Teses e Dissertações da UFPB
Texto Completo: https://repositorio.ufpb.br/jspui/handle/tede/6124
Resumo: Due to the current needs and high demand for software products with more quality, various approaches for software development have been proposed. Among such approaches, Software Product Line has emerged as a promising approach for improving software quality and reducing costs and development time due to its high capacity for promoting software reuse. As another promising approach, Distributed Software Development has been adopted by organizations as a consequence of globalization, making possible to find skilled software professionals and more attractive costs in organizations spread throughout the world. By adopting such approaches together, domain experts can be found in several outsourcing or even insourcing software development teams around the world. However, even adopting such approaches to improve the software quality, is not possible to guarantee the software quality if software development teams do not have the necessary and specific knowledge to implement each module. So, a key question arises: which teams are more technically qualified to develop each module identified in a software project? Considering only ten software development teams and ten software modules, it is possible to identify 1010 combinations of modules and teams, in other words, 10.000.000.000 possible arrangements. Clearly, this is a complex process to be done by project managers based on their experience, since a large number of combinations can be identified with a relatively small number of teams and software modules. Thus any ad-hoc decision making can be complex, inefficient and error-prone. In order to provide support for recommending qualified global software teams in Software Product Line projects, this dissertation presents a decision support approach that identifies a set of technically qualified software development teams for each software module. To achieve such a goal, the proposed approach is based on technical requirements of software modules and technical capabilities of software development teams. The proposed approach is structured in four stages. The first stage is intended to produce an artifact that represents the technical requirements expected to develop each software module. Based on such requirements, the second stage is intended to represent the technical capabilities of all candidate software development teams. Then, the third stage aims to define a policy that guides the selection of such teams. Finally, the fourth stage maps the information collected in earlier stages into a fuzzy logic algorithm and performs the selection of technically qualified teams. As output, for each software module, a recommendation is generated that indicates a set of candidate teams that have the most appropriate technical skills to implement the software module
id UFPB_001e2bc028ce6a5ee0790f85fb28dce1
oai_identifier_str oai:repositorio.ufpb.br:tede/6124
network_acronym_str UFPB
network_name_str Biblioteca Digital de Teses e Dissertações da UFPB
repository_id_str
spelling Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos SantosInformaticaAlocação de equipesSoftware distribuidoLogica fuzzyRepresentação de conhecimentoCIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAODue to the current needs and high demand for software products with more quality, various approaches for software development have been proposed. Among such approaches, Software Product Line has emerged as a promising approach for improving software quality and reducing costs and development time due to its high capacity for promoting software reuse. As another promising approach, Distributed Software Development has been adopted by organizations as a consequence of globalization, making possible to find skilled software professionals and more attractive costs in organizations spread throughout the world. By adopting such approaches together, domain experts can be found in several outsourcing or even insourcing software development teams around the world. However, even adopting such approaches to improve the software quality, is not possible to guarantee the software quality if software development teams do not have the necessary and specific knowledge to implement each module. So, a key question arises: which teams are more technically qualified to develop each module identified in a software project? Considering only ten software development teams and ten software modules, it is possible to identify 1010 combinations of modules and teams, in other words, 10.000.000.000 possible arrangements. Clearly, this is a complex process to be done by project managers based on their experience, since a large number of combinations can be identified with a relatively small number of teams and software modules. Thus any ad-hoc decision making can be complex, inefficient and error-prone. In order to provide support for recommending qualified global software teams in Software Product Line projects, this dissertation presents a decision support approach that identifies a set of technically qualified software development teams for each software module. To achieve such a goal, the proposed approach is based on technical requirements of software modules and technical capabilities of software development teams. The proposed approach is structured in four stages. The first stage is intended to produce an artifact that represents the technical requirements expected to develop each software module. Based on such requirements, the second stage is intended to represent the technical capabilities of all candidate software development teams. Then, the third stage aims to define a policy that guides the selection of such teams. Finally, the fourth stage maps the information collected in earlier stages into a fuzzy logic algorithm and performs the selection of technically qualified teams. As output, for each software module, a recommendation is generated that indicates a set of candidate teams that have the most appropriate technical skills to implement the software moduleCoordenação de Aperfeiçoamento de Pessoal de Nível Superior - CAPESDevido às necessidades atuais e grande demanda de produtos de software com cada vez mais qualidade, várias abordagens para desenvolvimento de software foram desenvolvidas. Entre estas, as Linhas de Produtos de Software surgiram como uma abordagem promissora para a melhoria da qualidade de software e redução de custos e prazos devido a sua alta capacidade de reúso. Outra abordagem promissora que tem sido adotada pelas organizações, como consequência da globalização, é o Desenvolvimento Distribuído de Software, pois a partir dela é possível encontrar mão de obra qualificada e custos mais atrativos em empresas espalhadas pelo mundo. Ao adotar conjuntamente essas abordagens, especialistas de domínio podem ser encontrados em várias equipes terceirizadas ou mesmo equipes de subsidiárias ou filiais de todo o mundo. Todavia, mesmo utilizando-se de abordagens que visam melhorar a qualidade dos produtos de software criados, não se pode garantir a qualidade dos mesmos se as equipes não possuírem os conhecimentos necessários e específicos para implementação dos diversos módulos de software. Assim, surge uma questão primordial: quais equipes são tecnicamente mais qualificadas para desenvolver cada módulo identificado num projeto de software? Considerando apenas dez equipes e dez módulos de software, é possível identificar 1010 combinações entre módulos e equipes, ou seja, 10.000.000.000 de arranjos possíveis. Claramente, esse é um processo complexo para ser realizado pelo gerente de projetos utilizando apenas sua experiência, uma vez que um grande número de combinações pode ser identificado com um número relativamente pequeno de equipes e módulos de software. Assim, qualquer decisão ad-hoc tomada pode ser complexa, ineficiente e sujeita a erros. A fim de fornecer suporte para escolha de equipes distribuídas de desenvolvimento de software, podendo inclusive o projeto estar integrado em um cenário de Linha de Produtos de Software, este trabalho apresenta uma abordagem de apoio à decisão que identifica um conjunto de equipes qualificadas tecnicamente para o desenvolvimento de cada módulo de software, baseado em requisitos técnicos dos módulos e capacidades técnicas das equipes. A abordagem proposta está estruturada em quatro etapas. A primeira tem a intenção de produzir um artefato que representa os requisitos técnicos esperados para desenvolver cada módulo de software. Com base em tais exigências, a segunda etapa tem por objetivo representar as capacidades técnicas de todas as equipes candidatas. Em seguida, a terceira etapa visa à definição de uma política que rege a seleção de equipes. Por fim, a quarta etapa cruza as informações coletadas nas fases anteriores em um algoritmo de lógica fuzzy e realiza a seleção das equipes. Como saída, para cada módulo de software é gerado uma recomendação que indica o conjunto de equipes candidatas que possuem as qualificações técnicas mais adequadas para implementar os módulos de softwares segundo a política de seleção adotadaUniversidade Federal da Paraí­baBRInformáticaPrograma de Pós-Graduação em InformáticaUFPBSilveira, Glêdson Elias dahttp://lattes.cnpq.br/5810209465098759Santos, Vinicius Souza dos2015-05-14T12:36:49Z2018-07-21T00:15:31Z2014-10-242018-07-21T00:15:31Z2014-02-11info:eu-repo/semantics/publishedVersioninfo:eu-repo/semantics/masterThesisapplication/pdfSANTOS, Vinicius Souza dos. Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos. 2014. 154 f. Dissertação (Mestrado em Informática) - Universidade Federal da Paraí­ba, João Pessoa, 2014.https://repositorio.ufpb.br/jspui/handle/tede/6124porinfo:eu-repo/semantics/openAccessreponame:Biblioteca Digital de Teses e Dissertações da UFPBinstname:Universidade Federal da Paraíba (UFPB)instacron:UFPB2018-09-06T01:28:06Zoai:repositorio.ufpb.br:tede/6124Biblioteca Digital de Teses e Dissertaçõeshttps://repositorio.ufpb.br/PUBhttp://tede.biblioteca.ufpb.br:8080/oai/requestdiretoria@ufpb.br|| diretoria@ufpb.bropendoar:2018-09-06T01:28:06Biblioteca Digital de Teses e Dissertações da UFPB - Universidade Federal da Paraíba (UFPB)false
dc.title.none.fl_str_mv Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos
title Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos
spellingShingle Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos
Santos, Vinicius Souza dos
Informatica
Alocação de equipes
Software distribuido
Logica fuzzy
Representação de conhecimento
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
title_short Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos
title_full Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos
title_fullStr Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos
title_full_unstemmed Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos
title_sort Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos
author Santos, Vinicius Souza dos
author_facet Santos, Vinicius Souza dos
author_role author
dc.contributor.none.fl_str_mv Silveira, Glêdson Elias da
http://lattes.cnpq.br/5810209465098759
dc.contributor.author.fl_str_mv Santos, Vinicius Souza dos
dc.subject.por.fl_str_mv Informatica
Alocação de equipes
Software distribuido
Logica fuzzy
Representação de conhecimento
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
topic Informatica
Alocação de equipes
Software distribuido
Logica fuzzy
Representação de conhecimento
CIENCIAS EXATAS E DA TERRA::CIENCIA DA COMPUTACAO
description Due to the current needs and high demand for software products with more quality, various approaches for software development have been proposed. Among such approaches, Software Product Line has emerged as a promising approach for improving software quality and reducing costs and development time due to its high capacity for promoting software reuse. As another promising approach, Distributed Software Development has been adopted by organizations as a consequence of globalization, making possible to find skilled software professionals and more attractive costs in organizations spread throughout the world. By adopting such approaches together, domain experts can be found in several outsourcing or even insourcing software development teams around the world. However, even adopting such approaches to improve the software quality, is not possible to guarantee the software quality if software development teams do not have the necessary and specific knowledge to implement each module. So, a key question arises: which teams are more technically qualified to develop each module identified in a software project? Considering only ten software development teams and ten software modules, it is possible to identify 1010 combinations of modules and teams, in other words, 10.000.000.000 possible arrangements. Clearly, this is a complex process to be done by project managers based on their experience, since a large number of combinations can be identified with a relatively small number of teams and software modules. Thus any ad-hoc decision making can be complex, inefficient and error-prone. In order to provide support for recommending qualified global software teams in Software Product Line projects, this dissertation presents a decision support approach that identifies a set of technically qualified software development teams for each software module. To achieve such a goal, the proposed approach is based on technical requirements of software modules and technical capabilities of software development teams. The proposed approach is structured in four stages. The first stage is intended to produce an artifact that represents the technical requirements expected to develop each software module. Based on such requirements, the second stage is intended to represent the technical capabilities of all candidate software development teams. Then, the third stage aims to define a policy that guides the selection of such teams. Finally, the fourth stage maps the information collected in earlier stages into a fuzzy logic algorithm and performs the selection of technically qualified teams. As output, for each software module, a recommendation is generated that indicates a set of candidate teams that have the most appropriate technical skills to implement the software module
publishDate 2014
dc.date.none.fl_str_mv 2014-10-24
2014-02-11
2015-05-14T12:36:49Z
2018-07-21T00:15:31Z
2018-07-21T00:15:31Z
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 SANTOS, Vinicius Souza dos. Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos. 2014. 154 f. Dissertação (Mestrado em Informática) - Universidade Federal da Paraí­ba, João Pessoa, 2014.
https://repositorio.ufpb.br/jspui/handle/tede/6124
identifier_str_mv SANTOS, Vinicius Souza dos. Uma Abordagem para Seleção de Equipes Tecnicamente Qualificadas para Implementação de Projetos de Software Vinicius Souza dos Santos. 2014. 154 f. Dissertação (Mestrado em Informática) - Universidade Federal da Paraí­ba, João Pessoa, 2014.
url https://repositorio.ufpb.br/jspui/handle/tede/6124
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 Federal da Paraí­ba
BR
Informática
Programa de Pós-Graduação em Informática
UFPB
publisher.none.fl_str_mv Universidade Federal da Paraí­ba
BR
Informática
Programa de Pós-Graduação em Informática
UFPB
dc.source.none.fl_str_mv reponame:Biblioteca Digital de Teses e Dissertações da UFPB
instname:Universidade Federal da Paraíba (UFPB)
instacron:UFPB
instname_str Universidade Federal da Paraíba (UFPB)
instacron_str UFPB
institution UFPB
reponame_str Biblioteca Digital de Teses e Dissertações da UFPB
collection Biblioteca Digital de Teses e Dissertações da UFPB
repository.name.fl_str_mv Biblioteca Digital de Teses e Dissertações da UFPB - Universidade Federal da Paraíba (UFPB)
repository.mail.fl_str_mv diretoria@ufpb.br|| diretoria@ufpb.br
_version_ 1801842904688230400