CN107491299A - 面向多源软件开发数据融合的开发者画像建模方法 - Google Patents
面向多源软件开发数据融合的开发者画像建模方法 Download PDFInfo
- Publication number
- CN107491299A CN107491299A CN201710554338.5A CN201710554338A CN107491299A CN 107491299 A CN107491299 A CN 107491299A CN 201710554338 A CN201710554338 A CN 201710554338A CN 107491299 A CN107491299 A CN 107491299A
- Authority
- CN
- China
- Prior art keywords
- developer
- text
- code
- data
- api
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/30—Information retrieval; Database structures therefor; File system structures therefor of unstructured textual data
- G06F16/35—Clustering; Classification
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/30—Semantic analysis
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/30—Creation or generation of source code
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Databases & Information Systems (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Artificial Intelligence (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Computational Linguistics (AREA)
- General Health & Medical Sciences (AREA)
- Machine Translation (AREA)
Abstract
本发明涉及面向多源软件开发数据融合的开发者画像建模方法。本发明从GitHub中的README.md、代码文本和Stack Overflow中Answers中的代码文本、Answers中的描述文本提取特征和API,计算出特征的相似度和API的相似度,再计算两者的综合相似度,并排序,综合相似度大于某一个值(θ)时,即认为GitHub的developer1与Stack Overflow的developer2为同一用户,把属于同一用户的数据进行融合,分别将开发者的技能、活动、开发者与代码的关系、开发者与开发者之间的关系挖掘出来,用画像综合表示出来。本发明克服了无法为全面完成软件工程任务提供推荐的缺陷。本发明利用多源数据,开发者与代码结合,对开发者的画像进行建模。
Description
技术领域
本发明属于软件工程领域,特别涉及面向多源软件开发数据融合的开发者画像建模方法。
背景技术
在软件工程中有各种类型的软件开发与维护任务,如软件开发、测试等等,各个开发者的技能、经验等方面各有不同,所以如何给开发者分配合理的任务,是软件开发和维护领域的一大难题。对开发者进行画像建模,可以解决这一难题,然而,基于单源数据的开发者画像建模方法不能全面刻画开发者的画像,该方法存在数据稀疏性问题,导致开发者的技能提取不全面,也只能发现开发者在单一网站中的活动,与开发者之间的显式关系,而面向多源软件开发数据融合的开发者画像建模方法克服了该方法的缺陷,充分全面地对软件开发者进行画像建模。
在本发明作出之前,目前,已有一些技术用来对开发者画像建模,如Annie等人从开发知识、组织信息和通信网络三个方面对开发者的画像建模,同时阐述了开发者画像的潜在应用,个性化推荐和推荐开发者,另外还介绍了开发者画像的维护和存储。然而,这些技术只能片面的挖掘出开发者的专业知识、在同一组织中的职位、软件开发过程中的角色、与其他开发者在同一个工程中的交互信息,画像存在单一性,这类开发者画像在个性化推荐方面,用于对推荐的API方法的过滤,开发者感兴趣的软件界面的显示等,在推荐开发者这一方面,推荐开发者解决用户支持请求问题,帮助用户解决技术问题。由于软件工程的任务的类型不同,所以这些技术建立的开发者画像,无法为全面完成软件工程任务提供推荐。
发明内容
本发明的目的就在于克服上述缺陷,提出一种面向多源软件开发数据融合的开发者画像建模的方法。
本发明技术方法是:
一种面向多源软件开发数据融合的开发者画像建模方法,其特征在于如下步骤:
(1)收集GitHub中的数据,对GitHub的信息进行文本提取,提取所有项目中的README.md,将README.md进行自然语言处理,使用命名实体识别技术确定文本中的单词或者短语是否为特征,使用命名实体消歧技术确定特定单词或者短语所指的具体特征,提取到的单词或短语都为特征;对GitHub信息库中的信息进行文本提取,提取所有diff中的代码文本,使用文本信息预处理技术,如分词、词根还原、去掉停用词,提取代码文本中的API;
(2)收集Stack Overflow中的数据,对Stack Overflow的信息进行文本提取,提取Answers中的代码文本,使用文本信息预处理技术,如分词、词根还原、去掉停用词,提取代码文本中的API;对Stack Overflow的信息进行文本提取,提取Answers中的描述文本,对Answers中的描述文本进行自然语言处理,使用命名实体识别技术确定文本中的单词或者短语是否为特征,使用命名实体消歧技术确定特定单词或者短语所指的具体特征,提取到的单词或短语都为特征;
(3)经过步骤(1)后得到的特征和经过步骤(2)后得到的特征进行相似度计算;经过步骤1)后得到的API和经过步骤(2)后得到的API进行相似度计算;
(4)同一用户的数据进行融合,对步骤(3)中得到的特征相似度和API相似度再计算综合相似度,根据综合相似度值,判别用户的同一性;
(5)对融合后的数据进行自然语言处理,提取commit和Answers信息,LDA(LatentDirichlet Allocation)是一种文档主题生成模型,可利用LDA主题模型提取主题词,得到开发者的技能;
(6)对融合后的数据进行文本提取,提取commit,issue,questions,Answers等描述文本,利用LDA主题模型,按照日期提取主题词,得到开发者在某一天的活动;
(7)对融合后的数据进行文本提取,提取代码文本,使用文本信息预处理技术,如分词、词根还原、去掉停用词,提取代码文本中的AP I,建立开发者与代码的关系;
(8)对融合后的数据进行文本提取,提取commit,issue,questions,Answers等描述文本,利用文本处理提取开发者,组建软件开发者的网络关系,开发者建立关系边的类型有:参加过同一个项目,Stars,Following,Followers, 回答过同一个问题,对答案进行评论;
(9)将步骤(5)得到的技能、步骤(6)得到的活动、步骤(7)得到的开发者与代码之间的关系、步骤8)得到的开发者与开发者之间的关系结合起来,最终生成开发者画像。
本发明的优点和效果在于利用文本信息处理技术处理文本,结合多源数据,从diff和Answers中提取API,利用开发者这一实体,把两个网站中的数据融合,对融合后的数据利用LDA主题模型进行主题词提取,将开发者的自身技能、活动、开发者与开发者之间的关系、开发者与代码之间的关系这些特征捕捉到。具体说,主要有如下一些优点:
(1)开发者画像:本发明对开发者的画像进行建模。开发者画像是开发者的特征的个性化反映,开发者的特征包括静态特征和动态特征,静态特征指昵称、地理位置、邮箱、个人信息描述等,动态特征指开发者在GitHub上的commit、issue、评论等活动行为以及在Stack Overflow的提问、回答问题、评论等活动行为,开发者画像的好坏直接反应在推荐结果,把握住开发者特征,并设计出针对开发者个性化推荐算法,提升开发者的满意度,开发者画像的意义在于了解开发者,猜测开发者的真实需求和潜在需求,挖掘潜在的开发者群体,为后期的软件工程任务推荐合适的开发者,也为开发者推荐适合的软件工程任务。
(2)多源数据:本发明结合了两个网站上的信息,利用多源数据,充分全面地对开发者的画像进行建模。GitHub上能收集到开发者的commit数据,弥补了开发者在StackOverflow上只能收集到的Answers数据,使得开发者的技能充分体现;GitHub上能收集到开发者的commit,issue数据,弥补了开发者在Stack Overflow上只能收集到的questions,Answers等数据,使得开发者的活动;GitHub上能收集到开发者的Stars,Following,Followers等数据,弥补了开发者在Stack Overflow上只能收集到的共同回答过哪些问题、对哪些答案进行过评论数据,使得开发者与开发者之间的关系更清晰、更加紧密;GitHub上能收集到开发者的diff中的API数据,弥补了开发者在Stack Overflow上只能收集到的Answers中的API数据,使得开发者与代码之间的关系更加全面,从开发者编写、使用过的代码可以得出开发者擅长哪些编程语言。两个网站的数据融合之后,开发者的画像比单源数据建立的画像综合性更强,更加全面地反映了 开发者的特征。
(3)图关系:软件开发者的网络关系图展现了软件领域的开发者与开发者之间的关系,比如参加过同一个项目,Stars,Following,Followers,回答过同一个问题,对答案进行评论等,通过这种网络关系图,可以找到与各个开发者关联的开发者,然后利用开发者与开发者之间的边关系,给开发者推荐合适的软件工程任务时,也可以把相似的软件工程任务分配给与之相关联的开发者,这种图关系,扩大了开发者的社交范围,使得推荐的效果更显著。
(4)开发者与代码结合:开发者与代码的关系图展现了软件领域的开发者编写、使用过哪些API,与代码建立了关联关系,可以看出开发者擅长的编程语言,在软件开发和维护领域可以通过代码来推荐开发者,也可以给开发者推荐软件工程相关的代码任务。
本发明将多源软件数据融合起来,为开发者建立画像,将开发者的自身技能、活动、与其他开发者之间的关系、与代码之间的关系这些特征捕捉到,这样开发者的画像比单源数据建立的画像综合性更强,更加全面地反映了开发者的特征;另外,建立了开发者与代码间的关系,可获取开发者擅长的编程语言和完成过的代码,这样更有利于推荐软件工程相关的代码任务。
附图说明
图1——本发明流程示意图。
图2——本发明中Stars,Following,Followers三种关系截图。
图3——本发明中回答过同一个问题的开发者截图。
图4——本发明中对同一个答案进行过评论的开发者截图。
图5——本发明展现的软件开发者的网络关系图。
图6——开发者与代码的关系图。
图7——本发明展现的开发者画像图。
具体实施方式
本发明的技术思路是:
先将GitHub中的README.md、代码文本和Stack Overflow中Answers中的代码文本、Answers中的描述文本进行处理,提取出其中的特征和API,然后分别计算出特征的相似度和API的相似度,再计算两者的综合相似度,对综合相似度进 行排序,且综合相似度大于某一个值(θ)时,即认为GitHub的developer1与Stack Overflow的developer2为同一用户,接着把属于同一用户的数据进行融合。最后分别将开发者的技能、活动、开发者与代码的关系、开发者与开发者之间的关系挖掘出来,用画像综合表示出来。
下面具体说明本发明。
如图1所示,其步骤如下:
步骤1).收集GitHub中的数据,对GitHub的信息进行文本提取:将文本分解为所有项目中的README.md和diff中的代码文本两个文本。通过README.md,可以了解到开发者对某种编程概念、编程语言和编程工具的熟悉程度,README.md主要包含这些信息:软件可以做什么,该软件使用的技术的描述,如何重新创建开发环境你的步骤,熟悉他们拥有的库的大量信息。对所有diff中的代码文本,使用文本信息预处理技术:分词、词根还原、去掉停用词,提取其代码文本中的API。
表1 GitHub中的README.md文件信息表
例如,表1是GitHub中developer1的google-cloud-dotnet项目中的README.md文件,将README.md进行自然语言处理:使用命名实体识别技术确定文本中的单词或者短语使用命名实体识别技术确定文本中的单词或者短语是否为特征,使用命名实体消歧技术确定特定单词或者短语所指的具体特征,提取到的单词或短语都为特征,其中,加粗部分的单词或者短语(Google Cloud Libraries、.NET、libraries、Google Cloud Platform)即为使用两种技术后提取到的特征。
步骤2).收集Stack Overflow中的数据,对Stack Overflow的信息进行文本提取:将文本分解为Answers中的描述文本和代码文本。对Answers中的 代码文本使用文本信息预处理技术:分词、词根还原、去掉停用词,提取其代码文本中的API。
表2 Stack Overflow中Answers的描述文本信息表
如表2是Stack Overflow中developer2其中一个Answers的描述文本,对Answers中的描述文本进行自然语言处理:使用命名实体识别技术确定文本中的单词或者短语使用命名实体识别技术确定文本中的单词或者短语是否为特征,使用命名实体消歧技术确定特定单词或者短语所指的具体特征,提取到的单词或短语都为特征,其中,加粗部分的单词或者短语(program、Google Cloud、.NET 4.5、dotnet、.NET Core)即为使用两种技术后提取到的特征。
步骤3).经过步骤1)后得到的特征和经过步骤2)后得到的特征进行相似度计算,过程:特征→加权→生成向量空间模型后计算余弦。例如:两个开发者之间的特征Di和Dj之间的相似度Similarity1(Di,Dj),常用向量之间夹角的余弦值表示,公式为:
其中,Wki、Wkj分别表示特征Di和Dj第K个权值,1<=k<=N;
经过步骤1)后得到的API和经过步骤2)后得到的API进行相似度计 算,公式为:
其中,Similarity2代表GitHub中的diff中的API与Stack Overflow中Answers的代码文本中的API相似度值,|(API)g∪(API)s|代表developer1在GitHub和developer2在Stack Overflow之间共同API的数量,|(API)g∩(API)s|代表developer1在GitHub的API数量和developer2在Stack Overflow的API的数量的总和。
步骤4).将同一用户的数据进行融合:对步骤3)中得到的特征相似度和API相似度,再计算综合相似度。本发明中这样定义综合相似度的公式:Similarity=k1*Similarity1(Di,Dj)+k2*Similarity2,根据综合相似度值进行排名,若是排名第一的综合相似度值大于某一个值(θ)时,即认为developer1与developer2为同一用户。
步骤5).对步骤4)后的数据进行自然语言处理:提取出commit和Answers信息,LDA(Latent Dirichlet Allocation)是一种文档主题生成模型,可使用LDA模型对commit和Answers信息进行处理:从这两个领域分别提取出主题词,得到开发者的技能。例如:如图7中开发者技能部分列举了开发者Jon Skeet的C#、java、.net、linq、string、HTML、generics、DemoCode、nodatime、unconstrained-melody、protobuf-csharp-port、googleapis这些技能。
步骤6).对步骤4)后的数据进行文本提取:将文本分为commit,issue,questions,Answers三种描述文本,利用LDA主题模型对commit,issue,questions,Answers的描述文本进行处理:按照日期从这五个领域分别提取出主题词,得到开发者在某一天的活动。例如:如图7中列举了2017.6.6-2017.6.8这三天的开发者活动,开发者Jon Skeet在2017.6.8这一天有三种活动分别是①Opened 1pull request in repository②Reviewed 1pullrequest in 1 repository③Answered 2questions; 开发者Jon Skeet在2017.6.7这一天有四种活动分别是①Created 1 commit in 1 repository②Opened 1pull request in 1repository③Reviewed 4 pull request in 2 repositories④Answered 6 questions;开发者Jon Skeet在2017.6.6这一天有三种活动分别是①Created 7 commits in3repositories②Opened 5 other pull request in 1 repository③Answered 2questions)。
步骤7).对步骤4)后的数据进行文本提取:提取得到代码文本,再从代码文本中提取API,使用文本信息预处理技术:分词、词根还原、去掉停用词,提取其代码文本中的API,得到开发者写过或者使用过哪些API,从而建立了开发者与代码的关系。例如:如图6中,开发者d1编写过AdjustOffsets()、AdjustToSelectedTimeZone(),与开发者d2共同使过Dispose(),与开发者d3共同使用过InvokeMethod();开发者d3编写过AttributeMissing(),与开发者d1共同使用过AttributeUndefined()开发者d2编写过getAllSites(),与开发者d3共同使用过BlockTerminatesParagraph()。
步骤8).在步骤4)的基础上,提取commit,issue,questions,Answers等描述文本,利用文本处理提取开发者,组建软件开发者的网络关系,开发者建立关系边的类型有:参加过同一个项目,Stars,Following,Followers,例如:如图2,图中列举了开发者Jon Skeet与其它开发者的Stars、Following、Followers三种关系,Stars是开发者Jon Skeet关注的库,可以看出Jon Skeet关注了一个库;Following是Jon Skeet追随的开发者,可以看出JonSkeet就只追随一个开发者;Followers是Jon Skeet的追随者,可以看出有2.1k个开发者追随Jon Skeet;回答过同一个问题,例如:如图3,开发者Jon Skeet和开发者Servy回答过同一个问题;对答案进行评论,例如:如图4,开发者Jon Skeet、开发者Michael Borgwardt、开发者ohtrivier、开发者adam kim和开发者JessieArr都对问题的答案进行了评论,可以看到评论的具体内容等。通过这些开发者之间的边关系,构造出了软件开发者的网络关系图,如图5,开发者d1和开发者d2回答过同一个问题,这种关系是双向的, 开发者d1评论过开发者d3的答案,开发者d1是开发者d4的追随者,这种关系是Followers,这两种关系都是单向的;开发者d3关注了开发者d4的库,关系是Stars,这种关系是单向的,开发者d3和开发者d2参加过同一个项目,这种关系是双向的;开发者d4追随开发者d2,关系是Following,这种关系是单向的,开发者d4和开发者d5互相回答过问题,这种关系是双向的;开发者d5追随开发者d1,关系是Following,这种关系是单向的,开发者d5和开发者d2互相评论过答案,这种关系是双向的。
步骤9).最终生成的开发者画像,如图7,是开发者Jon Skeet的画像,画像内容包含开发者的技能、活动、与代码之间的关系、与开发者之间的关系,这些具体内容都以列表的形式表示,开发者技能部分列举了开发者Jon Skeet的C#、java、.net、linq、string、HTML、generics、DemoCode、nodatime、unconstrained-melody、protobuf-csharp-port、googleapis这些技能;开发者Jon Skeet在2017.6.8这一天有三种活动分别是①Opened1pull request in repository②Reviewed 1 pull request in 1 repository③Answered 2 questions;开发者Jon Skeet在2017.6.7这一天有四种活动分别是①Created1commit in 1 repository②Opened1 pull request in 1 repository③Reviewed 4pullrequest in 2 repositories④Answered 6 questions;开发者Jon Skeet在2017.6.6这一天有三种活动分别是①Created 7 commits in 3 repositories②Opened 5 other pullrequest in 1 repository③Answered 2 questions;与代码之间的关系部分,开发者JonSkeet编写、使用过Dispose()、AdjustToSelectedTimeZone()、TimeSpanDetectStandardOffset()、AdjustOffsets()、PopulateTimeZones()、InvokeMethod()这些API;与开发者之间的关系部分,开发者DanielLip、开发者apomene等和开发者Jon Skeet回答同一个问题,开发者tomskeet18追随(Following)开发者Jon Skeet,开发者Lukepothier、开发者Adtyn等是开发者JonSkeet的追随者(Followers),开发者Chrisdunelm、开发者lantalarico等和开发者Jon Skeet参加过同一个项目,开发者Freewind和开发者Ahamed等接受过开发者Jon Skeet的答案,开发者Gareth和开发者MrMoose等评论过开发者Jon Skeet的答案。
Claims (1)
1.面向多源软件开发数据融合的开发者画像建模方法,其特征在于如下步骤:
步骤1).收集GitHub中的数据,对GitHub的信息进行文本提取,提取所有项目中的README.md,将README.md进行自然语言处理,使用命名实体识别技术确定文本中的单词或者短语是否为特征,使用命名实体消歧技术确定特定单词或者短语所指的具体特征,提取到的单词或短语都为特征;对GitHub信息库中的信息进行文本提取,提取所有diff中的代码文本,使用文本信息预处理技术,如分词、词根还原、去掉停用词,提取代码文本中的API;
步骤2).收集Stack Overflow中的数据,对Stack Overflow的信息进行文本提取,提取Answers中的代码文本,使用文本信息预处理技术,如分词、词根还原、去掉停用词,提取代码文本中的API;对Stack Overflow的信息进行文本提取,提取Answers中的描述文本,对Answers中的描述文本进行自然语言处理,使用命名实体识别技术确定文本中的单词或者短语是否为特征,使用命名实体消歧技术确定特定单词或者短语所指的具体特征,提取到的单词或短语都为特征;
步骤3).经过步骤1)后得到的特征和经过步骤2)后得到的特征进行相似度计算;经过步骤1)后得到的API和经过步骤2)后得到的API进行相似度计算;
步骤4).同一用户的数据进行融合,对步骤3)中得到的特征相似度和API相似度再计算综合相似度,根据综合相似度值,判别用户的同一性。
步骤5).对融合后的数据进行自然语言处理,提取commit和Answers信息,LDA(LatentDirichlet All ocation)是一种文档主题生成模型,可利用LDA主题模型提取主题词,得到开发者的技能;
步骤6).对融合后的数据进行文本提取,提取commit,issue,questions,Answers等描述文本,利用LDA主题模型,按照日期提取主题词,得到开发者在某一天的活动;
步骤7).对融合后的数据进行文本提取,提取代码文本,使用文本信息预处理技术,如分词、词根还原、去掉停用词,提取代码文本中的API,建立开发者与代码的关系;
步骤8).对融合后的数据进行文本提取,提取commit,issue,questions,Answers等描述文本,利用文本处理提取开发者,组建软件开发者的网络关系,开发者建立关系边的类型有:参加过同一个项目,Stars,Following,Followers,回答过同一个问题,对答案进行评论;
步骤9)将步骤5)得到的技能、步骤6)得到的活动、步骤7)得到的开发者与代码之间的关系、步骤8)得到的开发者与开发者之间的关系结合起来,最终生成开发者画像。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710554338.5A CN107491299B (zh) | 2017-07-04 | 2017-07-04 | 面向多源软件开发数据融合的开发者画像建模方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710554338.5A CN107491299B (zh) | 2017-07-04 | 2017-07-04 | 面向多源软件开发数据融合的开发者画像建模方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107491299A true CN107491299A (zh) | 2017-12-19 |
CN107491299B CN107491299B (zh) | 2021-09-10 |
Family
ID=60644617
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710554338.5A Active CN107491299B (zh) | 2017-07-04 | 2017-07-04 | 面向多源软件开发数据融合的开发者画像建模方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107491299B (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108171485A (zh) * | 2018-02-01 | 2018-06-15 | 中国人民解放军国防科技大学 | 一种基于软件关联库的跨项目审查者推荐方法 |
CN108549979A (zh) * | 2018-04-02 | 2018-09-18 | 南京大学 | 一种基于精确化嵌入表示的开源软件开发团队扩展方法 |
CN109299473A (zh) * | 2018-11-15 | 2019-02-01 | 扬州大学 | 一种基于开发者画像的软件工程任务推荐方法 |
CN109948710A (zh) * | 2019-03-21 | 2019-06-28 | 杭州电子科技大学 | 基于api相似度的微服务识别方法 |
CN110727842A (zh) * | 2019-08-27 | 2020-01-24 | 河南大学 | 基于辅助性知识的Web服务开发者按需推荐方法及系统 |
CN112115376A (zh) * | 2020-08-31 | 2020-12-22 | 南京航空航天大学 | 一种面向开源社区开发者的画像构建方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103744788A (zh) * | 2014-01-22 | 2014-04-23 | 扬州大学 | 基于多源软件数据分析的特征定位方法 |
US20140325490A1 (en) * | 2013-04-25 | 2014-10-30 | Hewlett-Packard Development Company, L.P. | Classifying Source Code Using an Expertise Model |
CN104778323A (zh) * | 2015-04-15 | 2015-07-15 | 浙江大学 | 集成多源性能分析数据的复杂装备作业流程仿真方法 |
CN105117398A (zh) * | 2015-06-25 | 2015-12-02 | 扬州大学 | 一种基于众包的软件开发问题自动应答方法 |
CN105389329A (zh) * | 2015-09-21 | 2016-03-09 | 中国人民解放军国防科学技术大学 | 一种基于群体评论的开源软件推荐方法 |
CN105446734A (zh) * | 2015-10-14 | 2016-03-30 | 扬州大学 | 一种基于软件开发历史开发人员网络关系构建方法 |
CN105913323A (zh) * | 2016-05-06 | 2016-08-31 | 浙江大学 | 一种GitHub开源社区的PullRequest评审者推荐方法 |
CN106126736A (zh) * | 2016-06-30 | 2016-11-16 | 扬州大学 | 面向软件安全性bug修复的软件开发者个性化推荐方法 |
CN106407113A (zh) * | 2016-09-09 | 2017-02-15 | 扬州大学 | 一种基于Stack Overflow和commit库的bug定位方法 |
-
2017
- 2017-07-04 CN CN201710554338.5A patent/CN107491299B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20140325490A1 (en) * | 2013-04-25 | 2014-10-30 | Hewlett-Packard Development Company, L.P. | Classifying Source Code Using an Expertise Model |
CN103744788A (zh) * | 2014-01-22 | 2014-04-23 | 扬州大学 | 基于多源软件数据分析的特征定位方法 |
CN104778323A (zh) * | 2015-04-15 | 2015-07-15 | 浙江大学 | 集成多源性能分析数据的复杂装备作业流程仿真方法 |
CN105117398A (zh) * | 2015-06-25 | 2015-12-02 | 扬州大学 | 一种基于众包的软件开发问题自动应答方法 |
CN105389329A (zh) * | 2015-09-21 | 2016-03-09 | 中国人民解放军国防科学技术大学 | 一种基于群体评论的开源软件推荐方法 |
CN105446734A (zh) * | 2015-10-14 | 2016-03-30 | 扬州大学 | 一种基于软件开发历史开发人员网络关系构建方法 |
CN105913323A (zh) * | 2016-05-06 | 2016-08-31 | 浙江大学 | 一种GitHub开源社区的PullRequest评审者推荐方法 |
CN106126736A (zh) * | 2016-06-30 | 2016-11-16 | 扬州大学 | 面向软件安全性bug修复的软件开发者个性化推荐方法 |
CN106407113A (zh) * | 2016-09-09 | 2017-02-15 | 扬州大学 | 一种基于Stack Overflow和commit库的bug定位方法 |
Non-Patent Citations (3)
Title |
---|
HUI YANG等: "DR_ PSF: Enhancing Developer Recommendation", 《2016 IEEE 40TH ANNUAL COMPUTER SOFTWARE AND APPLICATIONS CONFERENCE》 * |
HUI YANG等: "recommending developers with supplementary information for issue request resolution", 《2016 IEEE/ACM 38TH IEEE INTERNATIONAL CONFERENCE ON SOFTWARE ENGINEERING COMPANION》 * |
杨程: "基于多维特征的开源项目个性化推荐方法", 《软件学报》 * |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108171485A (zh) * | 2018-02-01 | 2018-06-15 | 中国人民解放军国防科技大学 | 一种基于软件关联库的跨项目审查者推荐方法 |
CN108549979A (zh) * | 2018-04-02 | 2018-09-18 | 南京大学 | 一种基于精确化嵌入表示的开源软件开发团队扩展方法 |
CN109299473A (zh) * | 2018-11-15 | 2019-02-01 | 扬州大学 | 一种基于开发者画像的软件工程任务推荐方法 |
CN109299473B (zh) * | 2018-11-15 | 2024-01-09 | 扬州大学 | 一种基于开发者画像的软件工程任务推荐方法 |
CN109948710A (zh) * | 2019-03-21 | 2019-06-28 | 杭州电子科技大学 | 基于api相似度的微服务识别方法 |
CN110727842A (zh) * | 2019-08-27 | 2020-01-24 | 河南大学 | 基于辅助性知识的Web服务开发者按需推荐方法及系统 |
CN110727842B (zh) * | 2019-08-27 | 2022-10-04 | 河南大学 | 基于辅助性知识的Web服务开发者按需推荐方法及系统 |
CN112115376A (zh) * | 2020-08-31 | 2020-12-22 | 南京航空航天大学 | 一种面向开源社区开发者的画像构建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN107491299B (zh) | 2021-09-10 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hong et al. | Metagpt: Meta programming for multi-agent collaborative framework | |
CN107491299A (zh) | 面向多源软件开发数据融合的开发者画像建模方法 | |
CN107368468B (zh) | 一种运维知识图谱的生成方法及系统 | |
US20170017635A1 (en) | Natural language processing system and method | |
WO2016199160A2 (en) | Language processing and knowledge building system | |
Car | USING decision models to enable better irrigation Decision Support Systems | |
US20230359825A1 (en) | Knowledge graph entities from text | |
Quiroz Flores et al. | Variation in the timing of Covid-19 communication across universities in the UK | |
Peters | Design and implementation of a chatbot in the context of customer support | |
Chopra et al. | DeepABM: scalable, efficient and differentiable agent-based simulations via graph neural networks | |
Isa et al. | An ontological approach for creating a brassware craft knowledge base | |
Yan et al. | Two Diverging roads: a semantic network analysis of chinese social connection (“guanxi”) on Twitter | |
Vossen et al. | KYOTO: an open platform for mining facts | |
Fukazawa et al. | Automatic modeling of user's real world activities from the web for semantic IR | |
Asha et al. | Implication and advantages of machine learning-based chatbots in diverse disciplines | |
Alp et al. | Covid-19 and vaccine tweet analysis | |
Madsen et al. | Concept modeling vs. data modeling in practice | |
Sadiq et al. | Intelligent hiring with resume parser and ranking using natural language processing and machine learning | |
WO2022211730A1 (en) | Machine learning methods and systems for assessing product concepts | |
Sartini | Connecting works of art within the semantic web of symbolic meanings | |
Råmunddal | Is Church Development ‘Natural’?: A Critical and Constructive Analysis of Christian A. Schwarz’s Biotic Church Growth Theory | |
Aboucaya | Collaborative systems for large-scale online citizen participation | |
Rao et al. | Election Result Prediction Using Twitter Analysis | |
Nolte | Text to Process Model: Automating Process Model Creation from Text | |
Gachechiladze et al. | Anger and its direction in apache jira developer comments |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |