กรุณาใช้ตัวระบุนี้เพื่ออ้างอิงหรือเชื่อมต่อรายการนี้:
http://kb.psu.ac.th/psukb/handle/2016/11618
ชื่อเรื่อง: | อิทธิพลของการทำรีแฟคทอริงต่อการตรวจทานโค้ดในโครงการซอฟต์แวร์โอเพนซอร์ส |
ชื่อเรื่องอื่นๆ: | Refactoring Influences in the Code Review for Open Source Software Projects |
ผู้แต่ง/ผู้ร่วมงาน: | อซีส นันทอมรพงศ์ อปัตตา ชัยสุตานนท์ College of Computing |
คำสำคัญ: | วิศวกรรมซอฟต์แวร์;ประสิทธิผลทางซอฟต์แวร์ |
วันที่เผยแพร่: | 2560 |
สำนักพิมพ์: | มหาวิทยาลัยสงขลานครินทร์ |
บทคัดย่อ: | Recently, the use of open source software (OSS) has been growing. The OSS users claim that OSS is reliable in perspective of functional correctness because it is either developed or improved by various experienced developers. Rather than focusing on all quality aspects, the OSS developers emphasize on software functionality based on software requirement specifications. This characteristic will impose the poor code quality, which possibly introduces code smell in software. The code smells represent design situations that can affect the software quality, such as usability and maintainability. The well-known practice that the software engineering community often used to mitigate code smells is refactoring. The goal of refactoring is to improve the software design and code structure without changing the software's functionality. Typically, the OSS developers perform the code review to recover the defects in modified code. Based on the literature review, there is no study investigating the refactoring suggestions received from the code review process. To better understand the code review process in OSS projects, the author would like to collect empirical evidence that the code reviewers advised the developers to remove the code smell by refactoring. In this research, the author would like to investigate the relationship between code review's comments and refactoring based on detected code smell. Additionally, the author would like to classify the groups of code smell existing in OSS projects by adopting the algorithm, called Latent Dirichlet Allocation. The author does examine two OSS projects, including OpenStack and WikiMedia, which are contributed by many developers and code reviewers. The results of this study show that the reviewer most rarely concerned about refactoring. There were few reviewes who were attempting to encourage developers to improve the code by refactoring methods. However, the trend of comments related to code smells is increasing. This evidence indicates a good sign that the reviewers concentrate on improving the quality of software by refactoring. The author believes that this research would increase the knowledge and empirical evidence about the quality of OSS projects. Finally, the author expects that this research would also help software developers realize on employing software engineering practices, such as refactoring on both the traditional software development and OSS development. |
Abstract(Thai): | ในปัจจุบันซอฟต์แวร์โอเพนซอร์สได้กลายมาเป็นตัวเลือกที่สำคัญในการนำ ซอฟต์แวร์ไปใช้งาน และมีแนวโน้มที่จะถูกนำไปใช้งานสูงขึ้น ซอฟต์แวร์โอเพนซอร์สค่อนข้างได้รับความน่าเชื่อถือในแง่ของความถูกต้องของการทำงาน (Functionality) เนื่องจากได้รับการพัฒนาและปรับปรุงจากนักพัฒนาซอฟต์แวร์ที่มีมุมมองและประสบการณ์ที่หลากหลาย แต่อาจจะมีข้อจำกัดในเรื่องคุณภาพบางประการ เพราะนักพัฒนาส่วนใหญ่จะมุ่งเน้นไปที่การพัฒนาการทำงานของระบบซอฟต์แวร์ให้ทำงานได้ตามต้องการ ทำให้คุณภาพของซอร์สโค้ดอาจจะไม่ดีเท่าที่ควร คุณลักษณะเหล่านี้มีแนวโน้มที่จะก่อให้เกิดร่องรอยของโค้ดที่ไม่ดี (Code Smell) ซึ่งเป็นสาเหตุที่ทำให้เกิดปัญหาในด้านคุณภาพซอฟต์แวร์ เช่น ความสามารถในการใช้งานและการบำรุงรักษา หลักการปฏิบัติอย่างหนึ่งในงานวิศวกรรมซอฟต์แวร์ที่สามารถลดปัญหาดังกล่าวลงได้ คือ การทำรีแฟคทอริง (Refactoring) การทำรีแฟคทอริงเป็นการปรับปรุงโครงสร้างโค้ดโดยไม่ทำให้การทำงานของซอฟต์แวร์เปลี่ยนแปลงไป โดยทั่วไปนักพัฒนาซอฟต์แวร์โครงการโอเพนซอร์สจะใช้วิธีการตรวจทานโค้ด (Code Review) ในการค้นหาข้อบกพร่องของซอร์สโค้ดที่ได้รับการปรับปรุงหรือแก้ไข จากการทบทวนวรรณกรรมที่เกี่ยวข้องกับการพัฒนาซอฟต์แวร์โอเพนซอร์ส ผู้วิจัยยังไม่พบการศึกษาการทำ รีแฟคทอริงจากผลของการตรวจทานโค้ด เพื่อเพิ่มความเข้าใจในกระบวนการตรวจทานโค้ดในโครงการโอเพนซอร์ส ผู้วิจัย มีความต้องการรวบรวมหลักฐานเชิงประจักษ์จากข้อเสนอแนะที่ผู้ตรวจทานโค้ดได้ระบุให้มีการทำ รีแฟคทอริงเพื่อแก้ไขร่องรอยของโค้ดที่ไม่ดีในโครงการโอเพนซอร์ส ในงานวิจัยนี้ผู้วิจัยทำการศึกษา ถึงความสัมพันธ์ระหว่างข้อเสนอแนะที่เกิดขึ้นในกระบวนการตรวจทานโค้ด และการทำรีแฟคทอริงจากร่องรอยโค้ดที่ไม่ดีในโครงการโอเพนซอร์ส นอกจากนี้ผู้วิจัยทำการจัดกลุ่มของร่องรอยโค้ดที่ไม่ดีซึ่งมักจะปรากฏในโครงการซอฟต์แวร์โอเพนซอร์ส โดยใช้อัลกอริทีม Latent Dirichlet Allocation มาประยุกต์ใช้ในการจัดกลุ่มร่องรอยโค้ดที่ไม่ดี ผู้วิจัยได้ทำการศึกษาการตรวจทานโค้ดจากข้อมูลในโครงการโอเพนซอร์ส 2 โครงการ ได้แก่ โครงการ OpenStack และ WikiMedia ซึ่งเป็นโครงการที่มีนักพัฒนาและผู้ตรวจทานโค้ดร่วมอยู่ในโครงการเป็นจำนวนมาก จากผลการวิจัยพบว่า ผู้ตรวจทานโค้ดส่วนใหญ่ไม่ค่อยให้ความสำคัญกับการทำ รีแฟคทอริง มีผู้ตรวจทานโค้ดแค่บางกลุ่มที่พยายามกระตุ้นในนักพัฒนาทำการปรับปรุงแก้ไขซอร์สโค้ดด้วยวิธีการทำรีแฟคทอริง โดยแนวโน้มของการให้คำแนะนำเกี่ยวกับร่องรอยโค้ดที่ไม่ดีมีอัตราที่เพิ่มสูงขึ้นเรื่อย ๆ ซึ่งสิ่งนี้อาจจะเป็นสัญญาณที่ดีว่าผู้ตรวจทานโค้ดเริ่มที่จะหันมาให้ความสนใจเกี่ยวกับการปรับปรุงคุณภาพของโค้ดด้วยวิธีการทำรีแฟคทอริง ผู้วิจัยเชื่อว่าผลที่ได้จากงานวิจัย นี้จะช่วยเพิ่มองค์ความรู้ใหม่ที่เกี่ยวกับการเพิ่มคุณภาพของซอฟต์แวร์ในโครงการซอฟต์แวร์โอเพนซอร์ส และเพิ่มหลักฐานเชิงประจักษ์ให้กับนักวิจัยด้านวิศวกรรมซอฟต์แวร์ ผู้วิจัยคาดหวังว่างานวิจัย นี้จะช่วยให้นักพัฒนาซอฟต์แวร์เห็นถึงความสำคัญของการนำวิธีการปฏิบัติทางด้านวิศวกรรมซอฟต์แวร์ เช่น การนำรีแฟคทอริงไปช่วยในการพัฒนาระบบซอฟต์แวร์ทั่วไป และซอฟต์แวร์โอเพนซอร์ส |
รายละเอียด: | วิทยานิพนธ์ (วท.ม. (เทคโนโลยีสารสนเทศ))--มหาวิทยาลัยสงขลานครินทร์, 2560 |
URI: | http://kb.psu.ac.th/psukb/handle/2016/11618 |
ปรากฏในกลุ่มข้อมูล: | 976 Thesis |
แฟ้มในรายการข้อมูลนี้:
แฟ้ม | รายละเอียด | ขนาด | รูปแบบ | |
---|---|---|---|---|
419499.pdf | 2.42 MB | Adobe PDF | ดู/เปิด |
รายการทั้งหมดในระบบคิดีได้รับการคุ้มครองลิขสิทธิ์ มีการสงวนสิทธิ์เว้นแต่ที่ระบุไว้เป็นอื่น