Mục tiêu của nghiên cứu này giới thiệu một phương pháp mới nhằm cải tiến việc thực thi dò tìm những báo cáo lỗi trùng nhau với độ chính xác tốt hơn so với những phương pháp nghiên cứu đã được công bố trước đó.
QT6.2/KHCN1-BM17 TRƢỜNG ĐẠI HỌC TRÀ VINH HỘI ĐỒNG KHOA HỌC ISO 9001 : 2008 BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƢỜNG CẢI TIẾN VIỆC THỰC THI DỊ TÌM NHỮNG BÁO CÁO LỖI TRÙNG NHAU SỬ DỤNG THÔNG TIN CENTROID CLASS MỞ RỘNG Chủ nhiệm đề tài: ThS NHAN MINH PHÚC Chức danh: Giảng viên Đơn vị: Khoa Kỹ thuật Công nghệ Trà Vinh, ngày 06 tháng 08 năm 2017 TRƢỜNG ĐẠI HỌC TRÀ VINH HỘI ĐỒNG KHOA HỌC ISO 9001 : 2008 BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƢỜNG CẢI TIẾN VIỆC THỰC THI DỊ TÌM NHỮNG BÁO CÁO LỖI TRÙNG NHAU SỬ DỤNG THÔNG TIN CENTROID CLASS MỞ RỘNG Xác nhận quan chủ quản Chủ nhiệm đề tài (Ký, đóng dấu, ghi rõ họ tên) (Ký, ghi rõ họ tên) Nhan Minh Phúc Trà Vinh, ngày 06 tháng 08 năm 2017 TÓM TẮT Trong việc bảo trì phần mềm, báo cáo lỗi đóng vai trò quan trọng xác gói phần mềm Thật khơng may, vấn đề báo cáo lỗi trùng lại xảy ra, lý có nhiều báo cáo lỗi đƣợc gửi đến dự án phần mềm khác nhau, dẫn đến nhiều báo cáo lỗi bị trùng nhau, việc xử lý thƣờng tốn nhiều thời gian chi phí vấn đề bảo trì phần mềm.Trong nghiên cứu s giới thiệu phƣơng pháp dò tìm dựa vào thơng tin centroid lớp mở rộng (Extended Class Centroid Information (ECCI)) để cải tiến việc thực thi dò tìm Phƣơng pháp đƣợc mở rộng từ phƣơng pháp trƣớc sử dụng centroid mà không xem xét đến tác động hai lớp bên inner inter Ngoài phƣơng pháp cải tiến việc sử dụng normalized cosine trƣớc cho việc xác định giống hai báo cáo lỗi denormalized cosine Hiệu phƣơng pháp ECCI đƣợc minh chứng thông qua việc thực nghiệm với ba dự án mã nguồn mở là: SVN, Argo UML Apache Kết thực nghiệm cho thấy phƣơng pháp ECCI cho kết dò tìm tốt phƣơng pháp khác khoảng 10% tất trƣờng hợp đƣợc so sánh In software maintenance, bug reports play an important role for the correctness of software packages Unfortunately, a duplicate bug report problem arises because there are too many duplicate bug reports in various software projects Processing duplicate bug reports is thus time-consuming and has high cost of software maintenance In this research introduces a detection scheme based on the extended class centroid information (ECCI) to enhance the detection performance This method is extended from the previous one which used only centroid method without considering the effects of both inner and inter class Besides, this method also improved the use of normalized cosine previously for identifying the similarity between two bug reports by denormalized cosine.The effectiveness of ECCI is verified in an empirical study with three open-source projects, SVN, Argo UML, and Apache The experimental results show that ECCI outperforms other detection schemes by about 10% in all cases MỤC LỤC Nội dung Trang LỜI CẢM ƠN PHẦN MỞ ĐẦU Tính cấp thiết đề tài Tổng quan nghiên cứu 2.1 Tình hình nghiên cứu nƣớc 2.2 Tình hình nghiên cứu ngồi nƣớc 10 Mục tiêu 13 Đối tƣợng, phạm vi phƣơng pháp nghiên cứu 14 Đối tƣợng, địa điểm thời gian nghiên cứu 14 a Quy mô nghiên cứu 15 b Phƣơng pháp nghiên cứu 15 CHƢƠNG 1: QUY TRÌNH XỬ LÝ LỖI VÀ RÚT TRÍCH ĐẶC ĐIỂM TỪ FILE BÁO CÁO LỖI 16 Quy trình xử lý báo cáo lỗi 16 Vấn đề dò tìm lỗi trùng 18 CHƢƠNG 2: PHƢƠNG PHÁP DỊ TÌM BÁO CÁO LỖI 20 Phƣơng pháp dò tìm lỗi trùng 20 2.1 Tổng quan xử lý dò tìm lỗi 20 2.2 Xử lý ngôn ngữ tự nhiên 21 2.3 Tính trọng lƣợng đ c điểm lớp báo cáo lỗi 21 2.4 Centroids vàECCI centroids 23 CHƢƠNG 3: KẾT QUẢ THỰC NGHIỆM 25 3.1 Môi trƣờng thực nghiệm 25 3.2 Những nhân tố tác động đến phƣơng pháp ECCI 25 Trọng lƣợng đ c điểm lớp 25 Tham số b 27 Denormalized cosine measure 31 So sánh phƣơng pháp ECCI với phƣơng pháp khác 32 PHẦN KẾT LUẬN 34 Kết đề tài thảo luận 34 Kiến nghị 34 TÀI LIỆU THAM KHẢO 35 DANH MỤC BẢNG BIỂU Tên bảng Số trang Bảng 1: cơng thức tính trọng lƣợng bên lớp inner 22 Bảng 2: Thông tin datasets dự án nguồn mở 25 DANH MỤC CÁC BIỂU ĐỒ, SƠ ĐỒ, HÌNH ẢNH Tên biểu đồ Số trang Hình 1: Mơ hình báo cáo lỗi 16 Hình 2: Ví dụ thơng tin báo cáo lỗi 17 Hình 3: ví dụ báo cáo lỗi trùng SVN 18 Hình 4: Mơ hình xử lý báo cáo lỗi trùng theo ECCI 20 Hình 5: Mơ hình centroid 23 Hình 6: Denormalize cosine 23 Hình 7: So sánh loại đ c điểm trọng lƣợng từ 27 Hình 8: Tìm giá trị tốt cho tham số b 29 Hình 9: Tìm giá trị tốt cho tham số d h SVN 30 Hình 10: Kết so sánh hiệu Denormalized nomalized cosine 32 Hình 11: So sách phƣơng pháp ECCI với phƣơng pháp khác 33 LỜI CẢM ƠN Nghiên cứu đƣợc tài trợ từ nguồn kinh phí Nghiên cứu Khoa học Trƣờng Đại học Trà Vinh Tôi xin chân thành cảm ơn Ban Giám Hiệu, Phòng, Khoa, Bộ mơn tạo điều kiện cho thực nghiên cứu Ngồi tơi biết ơn đồng nghiệp ủng hộ hỗ trợ cho trình thực nghiên cứu đề tài PHẦN MỞ ĐẦU Tính cấp thiết đề tài Hiện số lƣợng ngƣời sử dụng kho phần mềm mã nguồn mở nhiều, trình sử dụng, có phát sinh lỗi, ngƣời dùng s gởi thông báo lỗi đến hệ thống xử lý lỗi, số ngƣời sử dụng phần mềm mã nguồn mở ngày nhiều nên số lỗi đƣợc gởi đến hệ thống xử lý lỗi ngày lớn Khi s có báo cáo lỗi ngƣời dùng gởi đến với nội dung lỗi, dẫn đến nội dung báo cáo lỗi trùng nhau, với số lƣợng lớn báo cáo lỗi đƣợc gởi đến, s khó khăn để xác định, báo cáo lỗi trùng để tránh việc xử lý lại báo cáo lỗi xử lý Theo thống kê Mozilla từ tháng 5/2003 đến tháng 4/2008 có đến 420.000 báo cáo lỗi ngƣời dùng gởi, có tới 30% báo cáo lỗi bị trùng Tƣơng tự với Eclipse, từ 10/2001 đến 4/2008 có 225.000 báo cáo lỗi đƣợc gởi ngƣời dùng, 20% đƣợc thống kê báo cáo lỗi trùng Để lọc báo cáo lỗi trùng ngƣời dùng gởi đến, theo nhƣ thống kế đƣợc báo cáo Runeson, Alexandersson Nyhol trung bình ngƣời phải 30 phút để tìm báo cáo lỗi trùng nhau, điều làm lãng phí thời thời gian cơng sức, với số lƣợng ngày tăng từ báo cáo lỗi gởi đến, việc xác định báo cáo lỗi trùng khó khăn hơn, nhiều thời gian công sức Từ thực trạng cho thấy tầm quan trọng việc đƣa giải pháp việc xử lý báo cáo lỗi trùng cần thiết cấp bách, việc nhận biết báo cáo lỗi trùng đóng vai trò quan trọng mang lại nhiều lợi ích: thứ nhất, tiết kiệm đƣợc thời gian công sức ngƣời cho việc phân tích lỗi Thứ hai, thông tin chứa báo cáo lỗi trùng hữu ích cho việc tìm, xử lý lỗi, tính cấp thiết cần triển khai nghiên cứu khoa học cho đề tài để xử lý báo cáo lỗi trùng kho phần mềm mã nguồn mở Tổng quan nghiên cứu 2.1 Tình hình nghiên cứu nƣớc Ở Việt Nam năm qua có nhiều cơng trình nghiên cứu lĩnh vực xử lý ngơn ngữ tự nhiên, đ c biệt xử lý ngôn ngữ tiếng Việt, nhiên hầu hết nghiên cứu nƣớc chƣa thấy có cơng trình nghiên cứu vấn đề xử lý ngôn ngữ tiếng anh liên quan đến báo cáo lỗi, vấn đề nghiên cứu mới, đƣợc cơng bố tạp chí ngồi nƣớc từ 2005 Do tình hình nghiên cứu nƣớc hạn chế Một số cơng trình nghiên cứu nƣớc có liên quan đến lĩnh vực nghiên cứu liệt kê nhƣ sau: Nguyễn Linh Giang, Nguyễn Mạnh Hiển, “Phân loại văn tiếng Việt với phân loại vecto hỗ trợ SVM” Tạp chí CNTT&TT, tháng năm 2006 Nguyễn Linh Giang, Nguyễn Duy Hải, “Mơ hình thống kê hình vị tiếng Việt ứng dụng”, Chun san “Các cơng trình nghiên cứu, triển khai Công nghệ Thông tin Viễn thơng, Tạp chí Buu Viễn thơng, số 1, tháng 71999, trang 61-67 1999 Huỳnh Quyết Thắng, Ðinh Thị Thu Phƣơng, “Tiếp cận phƣơng pháp học không giám sát học có giám sát với tốn phân lớp văn tiếng Việt đề xuất cải tiến công thức tính độ liên quan hai văn mơ hình vectơ”, kỷ yếu Hội thảo ICT.rda’04, trang 251-261, Hà Nội 2005 Ðỗ Phúc, “Nghiên cứu ứng dụng tập phổ biến luật kết hợp vào toán phân loại van tiếng Việt có xem xét ngữ nghĩa”, Tạp chí phát triển KH&CN, tập 9, số 2, pp 23-32, nam 2006 Trần Cao Đệ, Phạm Nguyên Khang, “phân loại văn với máy học Vector hỗ trợ định”, trang 52-63, Tạp chí Khoa học, Đại học Cần Thơ Ngồi có số cơng trình nghiên khác đƣợc nêu tài liệu tham khảo thuyết minh đề tài Tuy nhiên chƣa có đề tài đề cập đến việc nghiên cứu báo cáo lỗi trùng kho phần mềm mở, đề tài mới, chƣa đƣợc nghiên cứu rộng rải Việt Nam 2.2 Tình hình nghiên cứu ngồi nƣớc Trên giới có nhiều cơng trình nghiên cứu liên quan đến lĩnh vực này, cụ thể bắt đầu năm 2005, Lyndon Hiew cơng bố cơng trình nghiên cứu có tên “Coping with an Open Bug Repository” sử dụng xử lý ngôn ngữ tự nhiên cho kỹ thuật phân cụm tăng trƣởng dựa vào centroid, kết đạt đƣợc việc dò tìm báo cáo lỗi trùng xác chiếm 30%50% Năm 2008, Wang et al cơng bố cơng trình mang tên “An Approach to Detecting Duplicate Bug Reports using Natural Language and Execution Informa tion ”, sử dụng kỹ thuật xử lý ngôn ngữ tự nhiên kết hợp với thông tin thực thi ngƣời dùng, kết đạt đƣợc tỷ lệ dò tìm báo cáo lỗi trùng chiếm 67%-93% for Firefox Năm 2010, Sureka Jalote công bố công trình mang tên “Detecting Duplicate Bug Report using Character N 10 Gram-based Features”, sử dụng data mining, với kỹ thuật n-gram cho kho phần mềm Eclipse, nhiên kết đạt đƣợc tỷ lệ dò tìm báo cáo lỗi trùng chiếm 40% Năm 2014, cơng trình đƣợc công bố mang tên “Duplicate Bug Report Detection Using Clustering”, sử dụng kỹ thuật phân cụm, phƣơng pháp đạt tỷ lệ xác 24% Ngồi ra, nhiều cơng trình nghiên cứu khác liên quan đến lĩnh vực đƣợc liệt kê số bên dƣới Mỗi cơng trình nghiên cứu đƣa kỹ thuật, phƣơng pháp có cách tiếp cận khác việc dò tìm báo cáo lỗi trùng Tuy nhiên kết đạt đƣợc thách thức, điều làm cho việc ứng dụng thực tế chƣa đáp ứng đƣợc Một số cơng trình đƣợc liệt kê cụ thể bên dƣới: John Anvik, Lyndon Hiew, and Gail C Murphy, “Coping with an Open Bug Repository,” in Proceedings of the 2005 OOPSLA Workshop on Eclipse Technology eXchange (eclipse ’05), 2005, pp 35–39 Nicolas Bettenburg, Sascha Just, Adrian Schroă ter, Cathrin Weiss, Rahul Premraj, and Thomas Zimmermann, “What Makes a Good Bug Report?” in Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of Software Engineering (SIGSOFT ’08/FSE16), 2008, pp 308–318 Nicolas Bettenburg, Rahul Premraj, Thomas Zimmermann, and Sunghun Kim, “Duplicate Bug Reports Considered Harmful Really?” in Proceedings of the 24th IEEE International Conference on Software Maintenance (ICSM 2008), 2008, pp 337–345 Yguarata˜ Cerqueira Cavalcanti, Paulo Anselmo da Mota Silveira Neto, Euardo Santana de Almeida, Daniel Lucre´dio, Carlos Eduardo Albuquerque da Cunha, and Silvio Romero de Lemos Meira, “One Step More to Understand the Bug Report Duplication Problem”, in Proceedings of the 24th Brazilian Symposium on Software Engineering (SBES’10), 2010, pp 148–157 Yguarata˜ Cerqueira Cavalcanti, Eduardo Santana de Almeida, Carlos Eduardo Al buquerque da Cunha, Daniel Lucre´dio, and Silvio Romero de Lemos Meira, “An Initial Study on the Bug Report Duplication Problem”, in Proceedings of the 14th European Conference on Software Maintenance and Reengineering, 2010, pp 264–267 11 CFC, xem xét đến số báo cáo lỗi chứa mức độ xuất thƣờng xuyên từ bên lớp.Công thức log xem xét mức độ giống nhƣ IDF (inverse document frequency) truyền thống.ECCI đƣợc cải tiến từ CFC sở dựa vào [5], mức độ thƣờng xuyên từ tfijkcủa ti báo cáo lỗi dk, thuộc lớp Cjđƣợc tính nhƣ sau: Trong số lần xuất titrong báo cáo lỗi dkho c lớp Cj, d tham số điều chỉnh tránh cho mẫu số 0, h tham số ảnh hƣởng đến chiều dài báo cáo lỗi, dl chiều dài báo cáo lỗi dk ho c tổng chiều dài lớp Cj, dlavg trung bình chiều dài báo cáo lỗi Nếu ti∈dk, dlavg đƣợc tính nhƣ sau: ∑ ∈ ∑ ∈ Trong |Cn|là số báo cáo lỗi Cn Nếu ti∈Cj nhƣng ti∉dk, : ∑ ∈ Trong C tổng số lớp,d h hai tham số, nằm khoảng giá trị tùy theo tập Bảng 1: cơng thức tính trọng lượng liệu.Tuy nhiên nghiên cứu bên lớp inner xác định 0.3≤d ≤0.8 1.5≤h≤20.0 để tìm giá trị tốt Tên công thức Chức cho d h a) Chỉ số tác động bên t EXP-DF (CFC) rong lớp Inner Với việc mở rộng thông tin dựa vào lớp, bốn cơng thức để tính số tác động bên lớp Inner đƣợc giới thiệu, đƣợc tiến hành thực nghiệm để tìm cơng thức tốt Bảng TF EXP-TF EXP-TF-DF 22 cho thấy bốn cơng thức dùng để tính trọng lƣợng bên lớp Inner b)Chỉ số tác động bên lớp Inter Để tăng cƣờng độ xác việc phân loại báo cáo lỗi số bên lớp Iinter, trƣờng hợp sử dụng theo phƣơng pháp CFC: ( ) Nếu từ ti xuất tất lớp, , |C| = , Nếu từ tixuất lớp, Trong trƣờng hợp này, ti có phân biệt tốt lớp báocáo lỗi trùng 2.4 Centroids vàECCI centroids Phƣơng pháp [2] sử dụng mơ hình Báo cáo lỗi khơng gian vector cho cụm báo cáo lỗi A centroid Trong phƣơng pháp này, Centro báo cáo lỗi trùng Báo cáo lỗi id nhóm đƣợc xem nhƣ cụm, B vector centroid trung bình cộng Báo cáo lỗi báo cáo lỗi nhóm C nhƣ hình 5,khi đƣợc xem nhƣ Hình 5: Mơ hình centroid báo cáo lỗi mới, có nghĩa Figure 9Hình 5: Mơ hình centroid báo cáo đƣợc gửi đến, s đƣợc so sánh với vector centroid cụm có kho lỗi thay cho việc so sánh với báo cáo lỗi Trong centroid mở rộng sử dụng phƣơng pháp ECCI sử dụng giống centroid này, nhiên điểm khác biệt sử dụng lớp, xem xét đến lớp inner inter nhƣ đề cập phần 3.1.2 3.1.3 bên Hình 6: Denormalize cosine centroid Điều giúp cải thiện đƣợc việc so sánh xác hai báo cáo lỗi ECCI centroids (EC) thành phần quan trọng hỗ trợ việc tìm giống báo cáo lỗi, trung bình cộng vector báo cáo lỗi lớp Cj: 23 ⃗⃗⃗⃗⃗⃗ ∑ ∈ 2.5 Tính giống gi a báo cáo lỗi với denormalized cosine Trong bƣớc s tiến hành xác định giống báo cáo lỗi, có báo cáo lỗi đƣợc gửi đến, s đƣợc tính tốn để xác định ch ng hay có trùng lắp với báo cáo tồn trƣớc hay chƣa Phƣơng pháp truyền thống sử dụng cosise similaritytruyền thống nhƣ sau: ( ) | | ⃗⃗⃗ Tuy nhiên, với cosine similarity khơng xem xét tác động liệu , mà cho thấy khác hai báo cáo lỗi , Vì vậyECCI sử dụng denormalized cosine [5] để xem xét thay đổi centroid khác lớp, điều giúp cải thiện việc dò tìm trùng báo cáo lỗi Hình cho thấy cách tính sử dụng denormalize cosine 2.6 Sắp xếp báo cáo lỗi trùng Khi có báo cáo đƣợc gửi đến, báo cáo s đƣợc thực kiểm tra so sánh xem có trùng với báo cáo đƣợc gởi trƣớc khơng? Do phƣơng pháp ECCI sử dụng thơng tin centroid lớp mở rộng, báo cáo lỗi đƣợc gửi đến s đƣợc tính xếp theo giá trị giống từ cao xuống thấp theo danh sách top 20 24 CHƢƠNG 3: KẾT QUẢ THỰC NGHIỆM 3.1 Môi trƣờng thực nghiệm Bảng 2: Thông tin datasets dự án nguồn mở Mô tả Ngôn ng Loại phần mềm Kho chứa lỗi Thời gian thu thập Số báo cáo lỗi Số báo cáo lỗi trùng ArgoUML Java UML Tool Tigris 02/200005/2007 4,613 755 Apache C HTTP Server Bugzilla 01/200102/2007 2,771 614 SVN C SCM tool Tigris 03/200105/2007 2,296 313 Phƣơng pháp ECCI tiến hành thực nghiệm với kho báo cáo lỗi dự án phần mềm mở Argo UML, Apache, SVN Thống kê chi tiết kho phần mềm đƣợc mô tả bảng 2.Để đánh giá phƣơng pháp dò tìm ECCI, đơn vị đo lƣờng gọi recall rate đƣợc sử dụng, đƣợc tính dựa báo cáo lỗi có thểđƣợc dò tìm danh sách báo cáo lỗi trùng nhau, phƣơng pháp đƣợc sử dụng phổ biến việc đánh giá kết tìm báo cáo lỗi trùng nhau, đƣợc định nghĩa nhƣ sau: 3.2 Nh ng nh n tố tác động đến phƣơng pháp ECCI Trong phần nàymuốn thảo luận nhân tố ảnh hƣởng đến phƣơng pháp ECCI Thứ cơng thức đƣợc chọn cho việc tính trọng lƣợng đ c điểm lớp Thứ hai thứ ba liên quan đến việc xác định giá trị tốt cho tham số b, d, h Cuối cơng thức tính giống hai báo cáo lỗi sử dụng denormalized cosine Trọng lƣợng đặc điểm lớp Trong phần trƣớc giới thiệu bốn công thức khác cho việc tính trọng lƣợng từ, báo cáo lỗi dựa vào lớp bao gồm: EXPDF,TF,EXP-TF, EXP-TF-DF.Khi tiến hành thực nghiệm để tìm cơng thức tốt cho việc tính trọng lƣợng đ c điểm lớp,qua quan sát kết thực nghiệm cho thấy EXP-TF-DF cho kết tốt bốn công thức 25 Lý EXP-TF-DF cho kết tốt giải thích hỗ trợ nhiều cho thông tin từ dựa vào lớp, điều giải thích lý CFC cho kết khơng tốt khơng xem xét tác động từ thƣơng xuyên xuất báo cáo lỗi dựa vào lớp Hình cho thấy vƣợt trội phƣơng a) Kết thực nghiệm SVN b) Kết thực nghiệm Argo UML 26 pháp EXP-TF-DF c) Kết thực nghiệm Apache Hình 7: So sánh loại đặc điểm trọng lượng từ Figure 13Hình 7: So sánh loại đặc điểm trọng lƣợng từ Tham số b Tham số b đóng vai trò quan trọng EXP-TF-DF, việc thực nghiệm để tìm giá trị tốt cho tham số b cần thiết để tìm giá trị b tốt ECCI Kết thực nghiệm cho thấy giá trị b khơng có thay đổi nhiều b lớn 50, trừ dự án SVN có tác động nhỏ nhƣng khơng đáng kể Do ECCI sử dụng b=50 cho thực nghiệm lại Tuy nhiên giá trị b s có thay đổi tùy liệu thực nghiệm Hình cho thấy kết thực nghiệm tham số b 27 a) Kết thực nghiệm SVN b) Kết thực nghiệm Argo UML 28 c) Kết thực nghiệm Apache Hình 8: Tìm giá trị tốt cho tham số b Tham số d h Tham số d h có ảnh hƣởng trực tiếp đến EXP-TF-DF, việc xác định giá trị tốt cho d h góp phần quan trọng phƣơng pháp a) Kết SVN 29 ECCI Do việc thực nghiệm đƣợc tiến hành để thấy ảnh hƣởng d h EXP-TF-DF, với 0.3 Do có nhiều kết hợp giá trị d h, báo trình bày vài trƣờng hợp để minh họa để tìm giá trị tốt cho d h Từ kết thực nghiệm nhƣ hình xác định đƣợc giá trị tốt cho d h với d=0.3, h=1.5 Tuy nhiên giá trị thay đổi tùy theo tập liệu khác b) Kết Argo UML c) Kết Apache Hình 9: Tìm giá trị tốt cho tham số d và h SVN 30 Denormalized cosine measure Trong CFC, việc tính độ giống báo cáo lỗi sử dụng denormalized cosine measure Để thấy r hiệu so với cách truyền thống sử dụng nomalized cosine, việc thực nghiệm đƣợc tiến hành để so sánh hai phƣơng pháp Quan sát kết thực nghiệm cho thấy phƣơng pháp denormalized cosine cho kết tốt phƣơng pháp normalized cosine ba dự án Hình 10a đến 10c thể kết so sánh hai loại đo lƣờng a) Kết SVN b) Kết Argo UML 31 c) Kết Apache Hình 10: Kết so sánh hiệu Denormalized nomalized cosine Figure 18Hình 10: Kết so sánh hiệu gi a Denormalized nomalized cosine So sánh phƣơng pháp ECCI với phƣơng pháp hác Để thấy hiệu ECCI với số phƣơng pháp dò tìm trùng đƣợc công bố trƣớc Cụ thể phƣơng pháp Hiew [2], Chen[3], Du [4], CFC[5], thực nghiệm tiến hành để so sánh, kết so sánh đƣợc thấy nhƣ hình 11a đến 11c Từ kết thực nghiệm, thấy phƣơng pháp ECCI cho kết dò tìm tốt so với phƣơng pháp khác Điều a) Kết SVN 32 cho thấy hiệu ECCI, xem xét yếu tố liên quan đến thông tin lớp dựa vào centroid, việc tính trọng số từ báo cáo lỗi, nhƣ hiệu cách dùng phƣơng pháp denormalized cosine b) Kết Argo UML c) Kết SVN Hình 11: So sách phương pháp ECCI với phương pháp khác Figure 20Hình 11: So sách phƣơng pháp ECCI với phƣơng pháp hác 33 PHẦN KẾT LUẬN Kết đề tài thảo luận Việc dò tìm trùng báo cáo lỗi vấn đề quan trọng việc bảo trì phần mềm năm gần Trong báo giới thiệu phƣơng pháp dò tìm dựa vào thơng tin centroid lớp mở rộng (ECCI) để cải tiến việc thực thi dò tìm báo cáo lỗi trùng Kết thực nghiệm từ ba dự án mã nguồn mở cho thấy phƣơng pháp mang lại hiệu cao việc dò tìm báo cáo lỗi trùng nhau, đ c biệt so sánh với phƣơng pháp đƣợc giới thiệu trƣớc đây, phƣơng pháp ECCI cho kết tốt hiệu việc dò tìm báo cáo lỗi trùng khoảng 10% so với phƣơng pháp trƣớc Kiến nghị Đề tài nghiên cứu bƣớc đầu để nghiên cứu ứng dụng nghiên cứu thử nghiệm văn tiếng việt, có liên quan đến việc kiểm tra đạo văn sinh viên việc làm báo cáo đồ án, hay luận văn tốt nghiệp Tuy nhiên vấn đề đòi hỏi cần nhóm nghiên cứu chun sâu với tâm cao, phƣơng pháp quản lý đồ án, báo cáo, luận văn sinh viên phải đƣợc quản lý online tập trung, thực đƣợc 34 TÀI LIỆU THAM KHẢO [1] Vincent Boisselle, Bram Adams MCIS, Polytechnique Montreal, Québec, “The Impact of Cross-Distribution Bug Duplicates, Empirical Study on Debian and Ubuntu”, IEEE 15th International Working Conference on Source Code Analysis and Manipulation (SCAM),2015, page 131-140 [2] Lyndon Hiew, “Assisted Detection of Duplicate Bug Reports,” Master Thesis, The University of British Columbia, May2006 [3] Zhi-Hao Chen, “Duplicate Detection on Bug Reports using N-Gram Features and Cluster Shrinkage”, Master Thesis,Yuan Ze University, Jul.2011 [4] Hung Hsueh Du, “A study of Duplication Detection Methods for Bug Reports based On BM25 Feature Weighting,” MasterThesis,Yuan Ze University, Nov.2011 [5] Hu Guan,JingyuZhou,andMinyiGuo,“AClass-Feature-Centroid Classifier for Text Categorization” in Proceedings of the18th International Conference on World Wide Web (WWW2009), 2009, pp.201–210 [6] Eui-Hong Hanand George Karypis, “Centroid-Based Document Classification: Analysis and Experimental Results,” in Proceedings of the Fourth European Conference on Principles of Data Mining and Knowledge Discovery (PKDD’00), 2000, pp.424–431 [7] StephenE.Robertson, Steve Walker, Susan Jones, Micheline HancockBeaulieu, and Mike Gatford, “OkapiatTREC-3,” in Proceedings of the Third Text Retrieval Conference(TREC-3),1994,pp.109–126 [8] Xiao yan Zhang, TingWang, Xiao bo Liang, Feng Ao, and YanLi, “A Class-based Feature Weighting Method for Text Classification,” Journal of Computational Information System, vol.3, pp.965–972, 2012 [9] Xiao yin Wang, Lu Zhang, Tao Xie, John Anvik, and Jiasu Sun, “An Approach to DetectingDuplicate Bug Reports using Natural Language and Execution Information,” in Proceedings of the 30th International Conference on Software Engineering (ICSE ’08), 2008, pp 461–470 [10] Akihiro Tsuruda, Yuki Manabe, Masayoshi Aritsugi, "Can We Detect Bug Report Duplication with Unfinished Bug Reports?", Software Engineering Conference (APSEC) 2015 Asia-Pacific, pp 151-158, 2015, ISSN 1530-1362 35 [11] Chao-Yuan Lee, Dan-Dan Hu, Zhong-Yi Feng, Cheng-Zen Yang, "Mining Temporal Information to Improve Duplication Detection on Bug Reports", Advanced Applied Informatics (IIAI-AAI) 2015 IIAI 4th International Congress on, pp 551-555, 2015 [12] Chengnian Sun, David Lo, Xiaoyin Wang, Jing Jiang, and Siau-Cheng Khoo, “Discriminative model approach towards accurate duplicate bug report retrieval” In ICSE 2010: Proceedings of the 32nd international conference on Software Engineering, Cape Town, South Africa, 2010 IEEE Computer Society 36 ... ĐẠI HỌC TRÀ VINH HỘI ĐỒNG KHOA HỌC ISO 9001 : 2008 BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƢỜNG CẢI TIẾN VIỆC THỰC THI DỊ TÌM NHỮNG BÁO CÁO LỖI TRÙNG NHAU SỬ DỤNG THÔNG TIN CENTROID CLASS. .. nghiên cứu cải tiến việc thực thi dò tìm báo cáo lỗi trùng sử dụng thông tin centroid class mở rộng , giới thi u phƣơng pháp nghiên cứu phƣơng pháp đề xuất kỹ thuật xử lý nhằm cải thi n dò tìm. .. recall rate đƣợc sử dụng, đƣợc tính dựa báo cáo lỗi có thểđƣợc dò tìm danh sách báo cáo lỗi trùng nhau, phƣơng pháp đƣợc sử dụng phổ biến việc đánh giá kết tìm báo cáo lỗi trùng nhau, đƣợc định