帳號:guest(3.136.18.93)          離開系統
字體大小: 字級放大   字級縮小   預設字形  

詳目顯示

以作者查詢圖書館館藏以作者查詢臺灣博碩士論文系統以作者查詢全國書目
作者(中文):李泓其
作者(外文):Li, Hong-Qi
論文名稱(中文):探索模組相依網絡與共同提交者網絡:以了解程式模組在生態系統中是否將被停止維護
論文名稱(外文):Understanding Abandonment in Software Module Ecosystems: Exploring Dependency and Co-committer Network Information
指導教授(中文):雷松亞
指導教授(外文):Ray, Soumya
口試委員(中文):林福仁
王俊程
口試委員(外文):LIN, FU-REN
WANG, JYUN-CHENG
學位類別:碩士
校院名稱:國立清華大學
系所名稱:服務科學研究所
學號:105078516
出版年(民國):107
畢業學年度:106
語文別:英文
論文頁數:63
中文關鍵詞:模組停止維護相依網絡共同提交者網絡GitHubRubyGems資料探勘
外文關鍵詞:Module AbandonmentDependency NetworkCo-committer NetworkGitHubRubyGemsData Mining
相關次數:
  • 推薦推薦:0
  • 點閱點閱:58
  • 評分評分:*****
  • 下載下載:6
  • 收藏收藏:0
模組代表一組被打包好並能執行特定作業的程式碼,程式開發者可以使用模組中的功能與邏輯去實踐自己的軟體。當模組停止維護時,會導致那些使用它的應用程式與模組們也面臨潛在的危險,因此當開程式發者在選擇模組時,會避免選擇那些在未來將有可能停止維護的模組們。在的研究中,我們以Ruby程式語言為例,想幫助程式開發者們能更準確地分辨在未來可能被停止維護的模組們並且找出與停止維護相關的因子。在預測中,我們不只用了GitHub中模組開發端的資料與RubyGems中模組需求端的資料;我們更用了相依網絡與共同提交者網絡中的資料來一同預測模組的停止維護。透過了網絡中的資料,此研究能夠探索更佳的預測模型與了解網絡資料中與停止維護相關的因子。
Modules are packaged libraries of code. Developers can use import modules into their code to use its function and logic. Abandonment of module could cause several problems on those application and other modules depend on it. Developers try to avoid adopting a module that might be abandoned in near future. In this study, we want to help developers, who in the Ruby language ecosystem, identify module abandonment more precisely and discover important factors related abandonment for module maintainers could instantly reaction about it. To make the more precise prediction, we not only use both production and consumption side data of module from GitHub, RubyGems, and BestGems but extract information from dependency and co-committer network to predict abandonment of module. We discover an effective model for predicting module abandonment and find the network factors related to it.
Chapter 1 Introduction 1
Chapter 2 Module Ecosystems and Abandonment 6
2.1 Module Ecosystems 6
2.2 Abandonment 8
2.3 Previous Research 10
2.4 Established Gems Versus 1YO Gems 10
Chapter 3 Theory Building 12
3.1. Non-relational Information About Gems 12
3.2. Relational Network Information 13
3.1.1 Dependency Network 15
3.1.2 Co-committer Network 18
3.3. Established Gems V.S 1YO Gems 20
3.4. Predictive and Inferential Value of Network Information 21
Chapter 4 Data Collection and Preprocessing 22
4.1 Data Collection 22
4.1.1 Collecting data 22
4.1.2 Build Dependency Network 24
4.1.3 Build Co-committer Network 25
4.2 Preprocessing Data 27
4.2.1 Preprocessing Non-relational Data About Gems 27
4.2.2 Preprocessing Relational Network About Gems 30
Chapter 5 Analysis and Results 32
5.1 Overview of Data Analysis 32
5.1.1. Predictive Methods 32
5.1.2. Inferential Methods 36
5.2 Predicting Abandonment of Established Gems 37
5.2.1 Predictive Value of Network 38
5.2.2 Inferential Value of Network 39
5.3 Predicting Abandonment of 1YO Gems 41
5.3.1 Predictive Value of Network 41
5.3.2 Inferential Value of Network 42
Chapter 6 Discussion 43
6.1. Theoretical implication 44
6.1.1 Theoretical Implication of Predicting Abandonment of Established Gems 44
6.1.2 Theoretical Implication of Predicting Abandonment of 1YO Gems 46
6.2. Practical Implications 48
6.3. Limitations 49
6.4. Future Work 50
Reference 51
Appendix A 53
Appendix B 57
Appendix C 61
Appendix D 62

Bonacich, P. (2007). Some unique properties of eigenvector centrality. Social Networks, 29(4), 555–564.
Davis, J., & Goadrich, M. (2006). The relationship between Precision-Recall and ROC curves. In Proceedings of the 23rd international conference on Machine learning - ICML ’06. https://doi.org/10.1145/1143844.1143874
Fawcett, T. (2006). An introduction to ROC analysis. Pattern Recognition Letters, 27(8), 861–874.
Freeman, L. C. (1977). A Set of Measures of Centrality Based on Betweenness. Sociometry, 40(1), 35.
Hauge, Ø., Cruzes, D. S., Conradi, R., Velle, K. S., & Skarpenes, T. A. (2010). Risks and Risk Mitigation in Open Source Software Adoption: Bridging the Gap between Literature and Practice. In IFIP Advances in Information and Communication Technology (pp. 105–118).
Jorgensen, N. (2001). Putting it all in the trunk: incremental software development in the FreeBSD open source project. Information Systems Journal, 11(4), 321–336.
Kumar, S. (2015). Using Social Network Analysis to Inform Management of Open Source Software Development. In 2015 48th Hawaii International Conference on System Sciences. https://doi.org/10.1109/hicss.2015.609
Page, L., Brin, S., Motwani, R., & Winograd, T. (1999). The PageRank Citation Ranking: Bringing Order to the Web. Retrieved from http://ilpubs.stanford.edu:8090/422/1/1999-66.pdf
Thung, F., Bissyande, T. F., Lo, D., & Jiang, L. (2013). Network Structure of Social Coding in GitHub. In 2013 17th European Conference on Software Maintenance and Reengineering. https://doi.org/10.1109/csmr.2013.41
Xu, J., Christley, S., & Madey, G. (2006). Application of Social Network Analysis to the Study of Open Source Software. In The Economics of Open Source Software Development (pp. 247–269).
Zakas, N. C. (2015, December 25). Why I'm not using your open source project [Web log post]. Retrieved June 29, 2016, from https://www.nczonline.net/blog/2015/12/why-im-not-using-your-open-source-project/
 
 
 
 
第一頁 上一頁 下一頁 最後一頁 top
* *