Font Size: a A A

Research On Developer Team Expansion For Open Source Software Development Based On Developer Profiling

Posted on:2020-02-26Degree:MasterType:Thesis
Country:ChinaCandidate:L ZhaoFull Text:PDF
GTID:2428330575458322Subject:Computer Science and Technology
Abstract/Summary:PDF Full Text Request
In the process of team development,developer teams often face shortages of de-velopers or need to accelerate the development process,and it is inevitable to expand developer teams.In open source software communities,project contributors may shift frequently,which further intensifies the team expansion issue.However,seeking a suitable developer for an open source project from a large number of developers will consume unmeasurable human resources,thus a low-cost and automated approach that recommends suitable developers for open source projects is urgently required.We be-lieve that the matching degree of a candidate developer for software projects as well as existing team members should be considered in team expansion for open source soft-ware development,which in turn requires feature modeling of developers,software projects and existing developer teams.With the fact that online software communities such as developer Q&A sites and code hosting platforms have reserved massive devel-oper behavior information,we model developer features by analyzing and integrating that information.Additionally,we extract task features of projects from their textual descriptions,and we model developer team features based on the developer features.Finally,we build a neural network based model to learn the matching degree of a can-didate developer for software projects as well as existing team members.Specifically,the main contributions of this work include:· Developer profiling based on tag propagation and network representation learning.We build a heterogeneous network between developers based on developer IDs from developer Q&A sites and code hosting platforms,and then model developer features explicitly and implicitly on the network by means of tag propagation and network representation learning.The proposed approach reveals developer features in all respects in a comparatively complete way.· Software developer team expansion based on developer profiling.Based on the developer profiling,we design a neural network based model to reflect candidate developers',matching for software projects as well as the existing team members.Experimental results on a real-world dataset preliminarily verify the validity of the model.· The prototype system that assists decision-making of software developer team ex-pansion.Based on the above techniques and the GitHub community,we imple-ment a prototype system that assists decision-making of developer team expansion for open source softwares,which preliminarily verifies the feasibility of the above techniques.
Keywords/Search Tags:Software developer team expansion, developer profiling, tag propagation, network representation learning
PDF Full Text Request
Related items