Chulalongkorn University Theses and Dissertations (Chula ETD)
Other Title (Parallel Title in Other Language of ETD)
Predicting code review results in open source projects on GitHub
Year (A.D.)
2018
Document Type
Thesis
First Advisor
พรศิริ หมื่นไชยศรี
Faculty/College
Faculty of Engineering (คณะวิศวกรรมศาสตร์)
Department (if any)
Department of Computer Engineering (ภาควิชาวิศวกรรมคอมพิวเตอร์)
Degree Name
วิทยาศาสตรมหาบัณฑิต
Degree Level
ปริญญาโท
Degree Discipline
วิศวกรรมคอมพิวเตอร์
DOI
10.58837/CHULA.THE.2018.1259
Abstract
กระบวนการรีวิวโค้ดบนกิตฮับ เป็นกระบวนการที่สำคัญกระบวนการหนึ่งในการทำงานบนกิตฮับ โดยนักพัฒนาซอฟต์แวร์จะทำการร้องขอการนำเข้าซอร์สโค้ดหลังจากทำการแก้ไขหรือเปลี่ยนแปลงซอร์สโค้ดเสร็จเรียบร้อยแล้ว ผู้ดูแลระบบจะเป็นผู้รีวิวซอร์สโค้ด โดยพิจารณาถึงคุณภาพ และรายละเอียดทั้งหมดของรายการร้องขอการนำเข้าซอร์สโค้ดนั้น ๆ จากการวิเคราะห์ผลการรีวิว พบว่ามีรายการร้องขอการนำเข้าซอร์สโค้ดจำนวนมาก ที่ไม่ผ่านการรีวิว เนื่องด้วยปัจจัยหลายประการ เช่น ความซับซ้อนของซอร์สโค้ด คุณภาพของซอร์สโค้ด รวมไปถึงจำนวนการเปลี่ยนแปลงไฟล์ เป็นต้น กระบวนการแก้ไขรายการร้องขอการนำเข้าซอร์สโค้ดที่ไม่ผ่านการรีวิวต้องใช้ความพยายาม และเวลาอย่างมากในการแก้ไข ซึ่งอาจส่งผลกระทบกับค่าใช้จ่ายของโครงการ หรือกำหนดการของโครงการได้ งานวิทยานิพนธ์นี้จึงออกแบบ แบบจำลองการทำนายผลการรีวิวโค้ดบนกิตฮับ โดยการวิเคราะห์ข้อมูลบนกิตฮับ กำหนดตัวแปรที่คาดว่าจะมีผลกระทบกับการรีวิวโค้ด รวมถึงการหาความสัมพันธ์ที่เกิดขึ้นบ่อยจากกฎความสัมพันธ์ จากนั้นทำการสร้างแบบจำลองการทำนายการรีวิวโค้ดบนกิตฮับด้วยวิธีการทางสถิติโลจิสติก และหลักการเรียนรู้ด้วยเครื่อง การวิเคราะห์โครงข่ายประสาทเทียมเพอร์เซปตรอนหลายชั้น ผลการทดลองแสดงสิบรายการร้องขอการนำเข้าซอร์สโค้ดที่พบบ่อยที่สุดในชุดข้อมูล และแบบจำลองการทำนายผลการรีวิวโค้ด โดยแบบจำลองที่ใช้ในการทำนายผลการรีวิวโค้ดที่ใช้การวิเคราะห์โลจิสติกในการวิเคราะห์ข้อมูลมีเปอร์เซ็นต์ความแม่นยำ 89.2307% และแบบจำลองที่ใช้การวิเคราะห์โครงข่ายประสาทเทียมเพอร์เซปตรอนหลายชั้น มีเปอร์เซ็นต์ความแม่นยำ 90.7692%
Other Abstract (Other language abstract of ETD)
Code review on GitHub is an important method for code contribution that will be submitted when the developers would like to merge their code changed from their local machine to the main repository. The reviewer will check the source code quality and all pull request details. The pull request status may be rejected due to several factors, such as code complexity, code quality, the number of changed files, etc. Fixing the rejected pull requests will take some extra effort and time which may affect the project cost and timeline. This thesis design the predicting code review results model by analyzing the data on GitHub, assign the related factors and also discover relationships among impact factors by using association rules in Data mining. The predicting code review results on GitHub is created by the logistic regression analysis in Statistical analysis and the multilayer perceptron in Machine learning. The results show ten associate rules of the source code file format with the related variables. The accuracy of predicting code review results model that used the logistic regression method is 89.2307%. For the multilayer perceptron in Machine learning is 90.7692%.
Creative Commons License
This work is licensed under a Creative Commons Attribution-NonCommercial-No Derivative Works 4.0 International License.
Recommended Citation
พู่พุฒ, ปานทิพย์, "การทำนายผลการรีวิวโค้ดในโครงการโอเพนซอร์สบนกิตฮับ" (2018). Chulalongkorn University Theses and Dissertations (Chula ETD). 3390.
https://digital.car.chula.ac.th/chulaetd/3390