System.ArgumentOutOfRangeException: 索引和長度必須引用該字符串內的位置。 參數名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技術實現步驟摘要】
本申請涉及軟件開發,特別是涉及一種開源軟件開發機器人對開發者情感影響的分析方法和裝置。
技術介紹
1、隨著開源開發的不斷繁榮,越來越多的開發者參與到開源社區中,這使得無數開源項目涌現,并激勵起貢獻者大規模參與,以及持續不斷的高質量貢獻。然而,項目規模的擴大也給軟件維護帶來了挑戰,在許多開源項目開發任務中,開發人員可能面臨代碼審查、錯誤分類、提供指導、運行集成或性能測試、設置和維護計算基礎設施,或隨時待命以對生產問題作出反應。針對開源項目開發流程中繁雜的日常任務,越來越多的開發人員嘗試在他們的項目中使用軟件開發機器人。作為一種自動化工具,軟件開發機器人有著為開發者提供服務的交互式智能接口,將開發人員從繁雜的日常任務中解放出來,它可以幫助開發者簽署貢獻者許可協議、代碼審查、代碼依賴項更新、管理issues和pull?requests等,并通過評論與開發者產生交互,通知開發者與項目相關事宜,提供缺陷分析報告、代碼測試報告等。
2、開發者的情緒在開發過程中十分重要,因為它們可能會影響項目進展,開發者的情緒受各種因素影響,比如軟件漏洞、缺陷修復速度、代碼提交時間、與其他評論者的交互等。我們越了解開發者的情緒,就越能在開發過程中為開發者提供更好的解決方法,從而更好地支持開發者高質量、高效率的開發。
3、軟件開發機器人作為一種輔助開發者工作的工具,其在項目中的應用是否會影響開發者的情緒,不同種類的軟件開發機器人對開發者的情緒是否有不同的影響,目前缺乏對這一過程的評估方法。其次,開發者對軟件開發機器人的反饋情感是如何的,
4、因此,如何定量評估不同種類的軟件開發機器人的應用對開發者情感帶來的影響以及開發者對軟件開發機器人的情感反饋,幫助開發者選擇適合項目的軟件開發機器人,并且合理優化軟件開發機器人成為了一個亟待解決的問題。
技術實現思路
1、基于此,有必要針對上述技術問題,提供一種開源軟件開發機器人對開發者情感影響的分析方法和裝置。該方法利用情感分析的方法,對開發者在開源項目中的評論內容計算情感分數,定量分析軟件開發機器人的應用對開發者情感帶來的影響,以及開發者對軟件機器人的情感反饋,從而更好的對軟件機器人進行優化,幫助開發者合理的選擇適合項目的軟件開發輔助機器人。
2、一種開源軟件開發機器人對開發者情感影響的分析方法,所述方法包括:
3、獲取開源項目數據集,并提取所述開源項目數據集中所有issues和pullrequests的基本信息;
4、根據issues和pull?requests基本信息,獲取所有用戶的評論,將評論的基本信息存入數據集,所述評論的基本信息包括id、評論者、評論者用戶類型、評論內容、評論時間。
5、對所述評論者用戶類型進行用戶類別檢測,確定用戶類型,所述用戶類型為:開發者或軟件開發機器人。
6、根據用戶類型、用戶名、所述評論內容對所述軟件開發機器人進行分類,得到軟件開發機器人的分類結果。
7、對所述評論內容進行數據預處理,并對預處理后的評論內容進行文本情感分析,得到每條評論的情感極性和情感分數。
8、根據預設標準對所述開源項目數據集中的評論進行劃分。
9、根據劃分后的評論和所述軟件開發機器人的分類結果,對所述評論的情感極性和情感分數進行統計分析,得到分析結果。
10、根據所述分析結果對軟件開發機器人的優化給出建議,并向用戶推薦軟件開發機器人。
11、在其中一個實施例中,獲取開源項目數據集,并提取所述開源項目數據集中所有issues和pull?requests的基本信息,包括:
12、采用github?api爬取開源項目數據集,從開源項目數據集中選擇滿足預設條件的存儲庫,并將開源項目的所有者、創建時間、描述、主題等基本信息存入數據集。
13、采用github?api爬取開源項目數據集中所有issues和pull?requests的基本信息,并將所述基本信息存入數據集,所述基本信息包括id、評論者、評論者用戶類型、評論內容、評論時間。
14、在其中一個實施例中,根據用戶類型、用戶名、所述評論內容對所述軟件開發機器人進行分類,得到軟件開發機器人的分類結果,包括:
15、從所述評論內容中提取出軟件開發機器人用戶的評論。
16、根據軟件開發機器人用戶的評論內容的不同,將軟件開發機器人的評論分為五種類型,所述五種類型包括:通知、問候、報告、軟件開發機器人使用指導、請求信息。
17、在其中一個實施例中,所述評論內容包括:用戶撰寫的文本評論、其他評論的引用、超鏈接以及文件名。
18、對所述評論內容進行數據預處理,并對預處理后的評論內容進行文本情感分析,得到每條評論的情感極性和情感分數,包括:
19、采用字符串匹配的方式將原始評論內容中的用撰寫的文本評論和其他評論的引用進行預處理。
20、對預處理后的評論內容進行文本情感分析,得到每條評論的情感極性和情感分數。
21、在其中一個實施例中,對預處理后的評論內容進行文本情感分析,得到每條評論的情感極性和情感分數,包括:
22、采用sentistrength分析預處理后的評論內容的情感極性與情感分數,得到每條評論的情感極性和情感分數。
23、在其中一個實施例中,根據預設標準對所述開源項目數據集中的評論進行劃分,步驟中所述預設標準為包括:是否由軟件機器人創建,是否有軟件機器人參與評論,評論中包含關鍵詞bot或軟件機器人用戶名。
24、在其中一個實施例中,根據劃分后的評論和所述軟件開發機器人的分類結果,對所述評論的情感極性和情感分數進行統計分析,得到分析結果,包括:
25、根據每條評論的情感極性和情感分數,統計由軟件機器人提出的、由開發者提出的、有軟件機器人參與評論的、沒有軟件機器人參與評論的issues和pull?requests下所有開發者評論的情感分數,將結果用百分比表示,并制作圖表。
26、按照所述軟件開發機器人的分類結果,統計不同種類軟件機器人提出的、參與評論的issues和pull?requests下所有開發者評論的情感分數,將結果制作圖表。
27、檢索所有包含軟件機器人用戶名或關鍵詞“bot”的開發者評論,根據每條評論的情感極性和情感分數,將積極、中立、消極情緒用百分比表示,并制作圖表。
28、一種開源軟件開本文檔來自技高網...
【技術保護點】
1.一種開源軟件開發機器人對開發者情感影響的分析方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,獲取開源項目數據集,并提取所述開源項目數據集中所有Issues和Pull?Requests的基本信息,包括:
3.根據權利要求1所述的方法,其特征在于,根據用戶類型、用戶名、所述評論內容對所述軟件開發機器人進行分類,得到軟件開發機器人的分類結果,包括:
4.根據權利要求1所述的方法,其特征在于,所述評論內容包括:用戶撰寫的文本評論、其他評論的引用、超鏈接以及文件名;
5.根據權利要求1所述的方法,其特征在于,對預處理后的評論內容進行文本情感分析,得到每條評論的情感極性和情感分數,包括:
6.根據權利要求1所述的方法,其特征在于,根據預設標準對所述開源項目數據集中的評論進行劃分,步驟中所述預設標準為包括:是否由軟件機器人創建,是否有軟件機器人參與評論,評論中包含關鍵詞bot或軟件機器人用戶名。
7.根據權利要求6所述的方法,其特征在于,根據劃分后的評論和所述軟件開發機器人的分類結果,對所述
8.一種開源軟件開發機器人對開發者情感影響的分析裝置,其特征在于,所述裝置包括:
...【技術特征摘要】
1.一種開源軟件開發機器人對開發者情感影響的分析方法,其特征在于,所述方法包括:
2.根據權利要求1所述的方法,其特征在于,獲取開源項目數據集,并提取所述開源項目數據集中所有issues和pull?requests的基本信息,包括:
3.根據權利要求1所述的方法,其特征在于,根據用戶類型、用戶名、所述評論內容對所述軟件開發機器人進行分類,得到軟件開發機器人的分類結果,包括:
4.根據權利要求1所述的方法,其特征在于,所述評論內容包括:用戶撰寫的文本評論、其他評論的引用、超鏈接以及文件名;
5.根據權利要求1所述的方法,其...
【專利技術屬性】
技術研發人員:王濤,高安澤,鄔小軍,張洋,余躍,楊程,
申請(專利權)人:中國人民解放軍國防科技大學,
類型:發明
國別省市:
還沒有人留言評論。發表了對其他瀏覽者有用的留言會獲得科技券。