• Aucun résultat trouvé

Esta questão de pesquisa é uma das principais dentro deste mapeamento. Ela busca identificar nos estudos primários, o que a aplicação de SNA em projetos traz de benefício e/ou limitação. Benefício está mais ligado ao efeito positivo que o projeto, ou os projetos, tiveram ao ter a aplicação da análise nas suas dimensões, e a partir delas, é possível identificar em detalhe como e com que objetivo SNA tem sido usado em projetos OSS. Desta forma, é possível inferir oportunidades de pesquisa e novas aplicações dentro do contexto desta pesquisa.

Os benefícios foram caracterizados em um processo de comparações constantes que é proposto por Glaser e Strauss (1967) (GLASER e STRAUSS, 1967; MILES e HUBERMAN, 1994; SEAMAN, 1999). Este processo tem a finalidade de

extrair dados qualitativos relevantes para a pesquisa a partir de marcações e codificações em trechos das pesquisas selecionadas. Desta forma as dimensões de projetos de cada estudo primário, apresentado na seção 4.3.1.1 serviram de suporte no momento da codificação e categorização. Então buscamos, dentro do objetivo da pesquisa, inferir causalidades entre as dimensões de modo que as similares foram categorizadas em uma categoria. Estas inferências são fáceis de notar pelos benefícios extraídos e apresentados.

Abaixo na Tabela 4.6 é possível conferir que foram elencados 17 benefícios da aplicação de SNA em projetos. Como limitações tiveram poucas, mais a partir da limitação das próprias pesquisa, iremos citá-los dentro dos benefícios correspondentes. Logo abaixo da Tabela 4.6 detalhamos cada um dos benefícios e citamos trechos dos estudos que fortalecem as categorias extraídas com evidências. É importante citar que os estudos podem apresentar mais de um benefício.

Dentre os benefícios listados, os mais encontrados são: “Visualizar, identificar e analisar a rede de comunicação/colaboração através de suas métricas e grafos” com 14 estudos e “Identificar o papel e/ou a importância de colaboradores do projeto” que refletem bastante as dimensões mais identificadas na seção 4.3.1.1 (colaboração, estrutura de time e comunicação).

Segue abaixo as evidências que respondem esta pergunta de pesquisa: Tabela 4.6: Mapeamento dos benefícios e limitações da aplicação de SNA em projetos

Benefício Referência Quantidade

Identificar fatores de colaboração e comunicação da equipe que afetam o sucesso e/ou fracasso do projeto

EP0001, EP0012, EP0016, EP0314, EP0510, EP0671

6

Visualizar, identificar e analisar a rede de comunicação/colaboração através de suas métricas e grafos

EP0005, EP0023, EP0059, EP0120, EP0150, EP0237, EP0459, EP0466, EP0486, EP0506, EP0513, EP0971, EP1116, EP1190

14

Identificar a relação entre colaboração e comunicação dos integrantes da equipe

EP1315, EP1316 2

Identificar formas de colaboração da equipe a partir da rede de comunicação

EP1486, EP1496 2

Entender a colaboração entre os desenvolvedores afim de entender

processos de qualidade e/ou desempenho da equipe

EP0022, EP0822, EP1391, EP0103, EP0403, EP0411, EP0512

7

Identificar a estrutura da equipe do projeto através da rede de Colaboração

EP0042, EP0514, EP0515, EP0578, EP1271, EP1398

6

Identificar o papel e/ou a importância de colaboradores do projeto

EP0158, EP0264, EP0612, EP0674, EP0705, EP0706,

EP1203, EP0269, EP0027, EP0473

Identificar a presença de alguns papeis no Projeto e relacioná-lo com seu sucesso e sua qualidade

EP0702, EP0769 2

Encontrar pessoas chaves no projeto a partir da análise da comunicação, bem como analisar as suas influências no desempenho da equipe, nos fatores de sucesso e/ou no fluxo de conhecimento

EP0658, EP0972, EP1269, EP1393

4

Identificar padrões na comunicação, colaboração ou na estrutura de equipe que podem afetar o desepenho da equipe e que podem ser fatores de sucesso para o projeto

EP0269, EP0980, EP1168, EP1291, EP1151, EP0278

6

Identificar e prever o desempenho da equipe EP0277 1

Analisar o desempenho da equipe e sua influência na comunicação

EP0481 1

Identificar padrões na Estrutura de Equipe que representam redes de Comunicação e Colaboração

EP0417, EP0525, EP0703, EP0707, EP0823

5

Identificar comunidades de colaboração que são mais propensas à inovação

EP0449 1

Ajudar sendo indicador de sucesso do projeto

EP0516 1

Ajudar a analisar os Riscos por meio das características de uma rede de Colaboração

EP0657 1

Identificar a atração de colaboradores a projetos de mais sucesso

EP0780 1

Identificar relação entre projetos de sucesso e qualidade do código gerado

EP0780 1

Identificar fatores de colaboração e comunicação da equipe que afetam o sucesso e/ou fracasso do projeto

Os seis estudos primários [EP0001] [EP0012] [EP0016] [EP0314] [EP0510] [EP0671] desta categoria obtiveram o benefício de identificar alguns fatores, a partir da análise da rede de comunicação e/ou de colaboração da equipe, que afetam diretamente o sucesso do projeto. Neste sentido, SNA serve como uma potencial ferramenta para identificar a relação entre padrões de comunicação e colaboração da equipe com a saída do projeto.

Em relação a colaboração, SNA ajudou a confirmar que a colaboração repetida em projetos OSS entre integrantes que participaram de projetos de sucesso no passado, aumenta a chance de um novo sucesso em um outro projeto [EP0001] [EP0671]. Também ajudou a analisar o envolvimento e compromisso da equipe no projeto OSS e a relação com o resultado final dele [EP0314].

Em relação as redes de comunicação analisadas, é semelhante com as redes de colaboração. SNA ajudou na identificação de um padrão de comunicação, por meio

de suas métricas, que é um indicativo para um possível sucesso ou fracasso do projeto [EP0012] [EP0016]. Um estudo apenas [EP0510], apesar de ter tido o benefício de ter a visualização em forma de grafo, da rede de comunicação do projeto analisado, se surpreendeu em não conseguir identificar relação entre as métricas de SNA e o sucesso do projeto, indo ao contrário da tendência dos outros estudos.

As evidências que indicam este benefício e resultado da aplicação de SNA nestes estudos, [EP0001] [EP0012] [EP0016] [EP0314] [EP0510] [EP0671], são apresentados abaixo:

EP0001: “Based on activity percentile, previous ties are generally an indicator of past success and usually lead to future success. Intuitively, this makes sense. When a repeated developer-developer link appears, it tells us something about both projects linking the two developers. Generally, the previous project was successful on some level. The two developers likely worked together well. Since they decided to work together again, this means they probably expect the experience to be similar to previous experiences and again form a successful collaboration.”

EP0314: “SNA allows to measure the power of intra and external networks relationships in project success”

EP0012: “Based on the estimation results, we find significant effects of communication patterns on our project success measures. [...] Centralized projects are good for increasing development activity and attracting end users. The managers of OSS projects need to control the communication centrality within OSS projects. The hypotheses test results from H5 to H8 suggest that leadership centrality is important for the OSS projects. Leaders in the project play a crucial role in improving the performance of the project teams. However, leaders may participate in several projects simultaneously, which will disperse the effort of leaders in a single project.”

EP0016: “In this study, we investigated the impacts of the microblogging follower network on OSS project success. We take social network lens to develop theoretically driven hypotheses on how two network mechanisms affect project success on both market and technical facets. We statistically tested these hypotheses and capture the specific features of microblogging follower

network on project success. [...]Specific roles of preferential attachment, accumulated advantages and structural holes are identified. Finally, the implications are discussed to OSS project managers to better manage microblog communications techniques to achieve project success.”

EP0510: “Taking the perspective of open source communities as a form of work group, we studied various fundamental social network structural variables to determine their relationship with group success. Considering that these structural variables were critical success factors for various other types of work groups, we were surprised to find no evidence that they positively influenced success in open source groups.”

EP0671: “The abundance of presumably fruitful developer ties in Savannah indicates that the projects here were likely successful. This also likely indicates that the typical project on Savannah is more successful than the typical project at SourceForge or BerliOS.”

Visualizar, identificar e analisar a rede de comunicação /colaboração através de suas métricas e grafos

Quatorze estudos primários [EP0005] [EP0023] [EP0059] [EP0120] [EP0150] [EP0237] [EP0459] [EP0466] [EP0486] [EP0506] [EP0513] [EP0971] [EP1116] [EP1190] apresentaram como resultado e benefício da aplicação de SNA a visualização, identificação e análise da rede de comunicação/colaboração dos projetos. Alguns destes estudos foram aplicadas as métricas afim e analisar a equipe por meio da rede de comunicação, em sua maioria, através da lista de e-mails do projeto. Neste sentido é possível a identificação de pessoas chaves [EP0059] [EP0486] [EP1190] que coordenam e gerenciam o fluxo da informação, ou simplesmente compreender a rede de comunicação em diversos canais [EP1116]. O estudo EP0005 se aproveitou das métricas de SNA para analisar sua reação e robustez a dados incompletos e informações incorretas na rede.

O estudo EP0466 usou SNA para contribuir na identificação de desenvolvedores do núcleo dos projetos que colaboram na fase de refatoração de código e que influenciam a coordenação do projeto.

Em relação a rede de colaboração, SNA ajudou a representar o trabalho da equipe em formato de grafo. Desta forma é possível ter uma representação gráfica da

equipe de forma realista, apesar de suas [EP0023] [EP0459]. A representação da equipe em formato de grafo também beneficiou e ajudou estudos a identificar padrões de comportamento no momento que um integrante da equipe faz um novo laço [EP0120]. Da mesma forma ajudou na observação, em formato de rede, da colaboração nas equipes de OSS, podendo assim identificar relações fortes e fracas, e núcleos de colaboração dentro da equipe [EP0150] [EP0506]. No estudo EP0237, SNA ajudou a entender melhor a contribuição individual dos participantes de OSS no processo de correção de bugs, enquanto no estudo EP0971, SNA ajudou a relacionar e identificar características entre colaboração na indústria e projetos OSS visualizando e identificando informações dos projetos ainda não identificadas antes com outros tipos de análise.

As evidências que indicam este benefício e resultado da aplicação de SNA nestes estudos, [EP0005] [EP0023] [EP0059] [EP0120] [EP0150] [EP0237] [EP0459] [EP0466] [EP0486] [EP0506] [EP0513] [EP0971] [EP1116] [EP1190] são apresentados abaixo:

EP0005: “In this work we seek to quantitatively ascertain the effect of the above two presented concerns on typical SNA analyses on email networks of three OSS projects: Apache [8], Perl [9], and MySQL [10]. [...] We have shown that a set of measures of social network analysis are robust to noise in network data” EP0023: “The objective of this research is to evaluate the validity of SNA metrics by corroborating developer networks with the perceptions of developers of the projects involved. Our results indicate more support for researchers’ assumptions on what developer networks represent. In each case, however, not every notion was fully supported by developer responses. [...] Overall, the developer network ought to be treated as an approximation in future applications of social network analysis. Nevertheless, the developer network is, in general, supported by developer perceptions.”

EP0059: "The measures we extracted from the networks contributed to identifying the most prominent actors in the communities, who play a major role in team coordination and information management and sharing."

EP0120: “The evolving developer network is effective to reveal the dynamic collaboration pattern of developers. The different positions to which developers

belong at each time interval reflect the collaborative tendency of developers.” EP0150: “On the upper right side of the OSS collaboration network one can recognize a cluster of closely collaborating software developers within this project which is indicated by the dark tone of the edges.”

EP0237: “We find that individual problem solving behavior is activated by the interaction between local configurations of network ties, the level of experience of problem solvers, and the level of difficulty of problems [...] ...we believe that explaining individual participation in open productions remains an important general issue because it may help to improve our understanding of voluntary contribution to the provision of public goods.”

EP0459: “Since visualization capabilities are clearly useful in terms of enabling improved situation awareness. So the produced graphs help members of teams to get a better realtime visualization of the inter-person cooperation in their projects.”

EP0466: “We analyzed the development mailing list of an open source project called jackrabbit using nonparametrical statistical tests and social network analysis and found out that while a refactoring is being performed, software developers who are central to the project engage in additional communication with their colleagues. We are not able to classify this effect as either negative or positive, but these results suggest the need to carefully plan refactorings in order to avoid an overload to core software developers in the project.”

EP0486: “...results show that core developers in this project communicate more on development related issues than on user related issues, and that they with some fluctuation on average contribute to about one third of the development related correspondence”

EP0506: “We see a significant contrast between projects with distributed development patterns, versus those that are more centralized. Looking at centralized examples, we find that the visual hub corresponds to project creators or maintainers.”

EP0513: “The cluster analysis shows that the evaluation network is more connected than the collaboration network. This implies evaluation network may capture important social links among different clusters of OSS developers

missed by collaboration networks.”

EP0971: “All in all, this paper demonstrates that the techniques from the social networks analysis field can be of great interest for the study and characterisation of any kind of network and with particular interest in the study of how the software industry can interact with the FLOSS community entering the development of projects.”

EP1116: “Communication centralization dynamics vary in different venues, suggesting that communication in these venues may be proxies for different kinds of relationships. Researchers should therefore be cautious in using single venues to characterize projects”

EP1190: “Apache core communication network in terms of their network centrality scores [...] This suggests that a small number of prominent individuals are influencing communication patterns for the project. [...] Our analysis also reveals that communications within the project are driven by a few prominent developers in one sub-group who are centrally located in the network.”

Identificar a relação entre colaboração e comunicação dos integrantes da equipe

Apenas dois estudos obtiveram benefício do uso de SNA de identificar a relação entre padrões de colaboração e padrões de comunicação de integrantes das equipes de projeto. O EP1315, a partir da análise, concluiu que quanto maior colaboração de um desenvolvedor no projeto, maior o papel dele na comunicação do mesmo. E o EP1316 usou SNA através de uma rede de comunicação para identificar a diferença entre a participação dos desenvolvedores e dos não desenvolvedores. Desta forma identificou que havia relação entre comunicação e colaboração. Quem mais participava na comunicação era o grupo dos desenvolvedores, que mais colaboravam. As evidências que indicam este benefício e resultado da aplicação de SNA nestes estudos, [EP1315] [EP1316] são apresentados abaixo:

EP1315: “Social network measures such as in-degree, out-degree (normalized by the number of developers) and betweenness indicate that developers who actually commit changes, play much more significant roles in the email community than non-developers.”

an order of magnitude over non-developers. This indicates that developers hold positions of high status in the social network of contributors by multiple measures. [...] Our results indicate that developers hold higher levels of status in the social network than non-developers.”

Identificar formas de colaboração da equipe a partir da rede de comunicação

Dois estudos tiveram como benefício identificar formas de colaboração a partir da rede de comunicação da equipe do projeto [EP1486] [EP1496]. No estudo EP1496 a visualização de uma rede de comunicação de equipes, criada por técnicas de SNA, facilita a compreensão das formas de colaboração das equipes. Já o estudo EP1486 teve como resultado a descoberta de núcleos de contribuidores, como colaboram e quem mais colabora no projeto. Este resultado foi retirado a partir da análise de redes multidimensionais de comunicação e de colaboração.

As evidências que indicam este benefício e resultado da aplicação de SNA nestes estudos, [EP1486] [EP1496] são apresentados abaixo:

EP1486: “Oren, for instance (see Figure 4), is a major contributor to the mailing list and talks to a large subset of the project members in 2002. While this seems to make him a core contributor, the hybrid network reveals that 1) he does not write code and 2) most of his messages are in the “code discussion” category. He therefore looks more like a “philosopher” – his messages are fairly lengthy pieces discussing details of how certain things work or should work in Python. [...] The hybrid network is also useful to identify other important roles. For example, clicking on the documentation-related modules reveals the chief documenter for the project in 2002: Fdrake. [...] Oren, for instance (see Figure 4), is a major contributor to the mailing list and talks to a large subset of the project members in 2002. While this seems to make him a core contributor, the hybrid network reveals that 1) he does not write code and 2) most of his messages are in the “code discussion” category. He therefore looks more like a “philosopher” – his messages are fairly lengthy pieces discussing details of how certain things work or should work in Python.”

EP1496: “In those case studies we found examples of social behavior which we related to events in the project’s development. The ability to visualize a large, evolving social network is of great use to software engineering researchers and

open source project participants. Our system allows them to make sense of the complex dynamics of evolving networks and see features that would otherwise remain unnoticed.”

Entender a colaboração entre os desenvolvedores afim de entender processos de qualidade e/ou desempenho da equipe

Sete estudos primários [EP0022] [EP0103] [EP0403] [EP0411] [EP0512] [EP0822] [EP1391] obtiveram o melhor entendimento da colaboração entre os desenvolvedores a fim de entender processos de qualidade e/ou até mesmo entender o desempenho da equipe. Se entende como processos de qualidade, atividades que visam a melhoria do código gerado ou até mesmo do processo de desenvolvimento. Por exemplo, o estudo EP0022 usou SNA para entender o relacionamento dos integrantes (seus papéis, atividades e estrutura) da equipe no processo de peer review de código. No estudo EP0103, SNA contribui para achar casos de testes similares ajudando a categorizá-los. Outros estudos obtiveram a análise da relação da estrutura da equipe e da rede de comunicação com a qualidade do produto final gerado [EP0403] [EP0411] [EP0512]. De forma geral o objetivo destes estudos era buscar alternativas para melhorar a qualidade do produto gerado.

Dois estudos trataram da associação de fatores da colaboração que afetam o desempenho da equipe. A aplicação de SNA no estudo EP0822 ajudou a perceber que a estrutura de colaboração está associada com melhor ou pior qualidade e desempenho. E o estudo EP1391, SNA ajudou a identificar que a repetida colaboração dos membros da equipe, tanto diretamente como indiretamente, influenciam o desempenho positivamente.

EP0022: “Our preliminary results shed light on how contributors work and communicate together and how their activities can affect whole projects in peer review processes. Our findings gave us hints about the relationships among member roles, their activities and the network structure”

EP0103: “In this work, we are suggesting to create a social network of test cases based on their coverage information to show the relationship between them. This network will be used later to categorize test cases based on how they cover the System Under Test [...] The result shows that our methodology is effective and can be used to automatically place the test classes into proper test

packages without losing dependency quality. The automatic way of packaging