Luận văn Thạc sĩ Hệ thống thông tin: Nghiên cứu giải pháp và công cụ hỗ trợ gợi ý sửa lỗi cho các chương trình java
Số trang: 59
Loại file: pdf
Dung lượng: 2.59 MB
Lượt xem: 11
Lượt tải: 0
Xem trước 6 trang đầu tiên của tài liệu này:
Thông tin tài liệu:
Luận văn được cấu trúc như sau: Chương 2 trình bày về các cơ sở lí thuyết hoặc công nghệ được sử dụng trong luận văn; Chương 3 mô tả chi tiết về các giải pháp giải quyết bài toán; Cách cài đặt công cụ và các kết quả thực nghiệm trên các ví dụ cụ thể được trình bày ở Chương 4; Cuối cùng là Chương 5 tổng kết và hướng nghiên cứu tiếp theo của luận văn.
Nội dung trích xuất từ tài liệu:
Luận văn Thạc sĩ Hệ thống thông tin: Nghiên cứu giải pháp và công cụ hỗ trợ gợi ý sửa lỗi cho các chương trình java ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Phan Thị MayNGHIÊN CỨU GIẢI PHÁP VÀ CÔNG CỤ HỖ TRỢGỢI Ý SỬA LỖI CHO CÁC CHƯƠNG TRÌNH JAVA LUẬN VĂN THẠC SĨ Ngành: Hệ thống thông tin HÀ NỘI – 2021 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Phan Thị MayNGHIÊN CỨU GIẢI PHÁP VÀ CÔNG CỤ HỖ TRỢGỢI Ý SỬA LỖI CHO CÁC CHƯƠNG TRÌNH JAVA LUẬN VĂN THẠC SĨ Ngành: Hệ thống thông tin Cán bộ hướng dẫn: PGS. TS. Phạm Ngọc Hùng HÀ NỘI – 2021 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ VIETNAM NATIONAL UNIVERSITY, HANOI UNIVERSITY OF ENGINEERING AND TECHNOLOGY Phan Thị May RESEARCH SOLUTIONS AND SUPPORT TOOLS TOSUGGEST FIXES FOR ERRORS IN JAVA PROGRAMS MASTER THESIS Information Systems Supervisor: Assoc. Prof. Pham Ngoc Hung LỜI CẢM ƠN HANOI - 2021 VIETNAM NATIONAL UNIVERSITY, HANOI UNIVERSITY OF ENGINEERING AND TECHNOLOGY LỜI CẢM ƠN Trước tiên tôi xin gửi lời cảm ơn chân thành và sâu sắc tới thầy giáo PGS. TS.Phạm Ngọc Hùng, người thầy định hướng cho tôi, đưa cho tôi những lời khuyên, độngviên tôi trong suốt quá trình học tập và làm luận văn. Thầy đã dạy cho tôi những bài họckinh nghiệm quý giá trong công việc, nghiên cứu và trong cuộc sống, tiếp thêm độnglực cho tôi, giúp tôi tự tin vào chính mình. Tôi cũng xin gửi lời cảm ơn chân thành tới các bạn trong phòng nghiên cứu R320,đặc biệt là sự hỗ trợ và động viên của bạn Nguyễn Thị Huyền và Phạm Khắc Ân. Nhờcó những chia sẻ và hỗ trợ của các bạn nên tôi đã tìm kiếm được những bài báo có giátrị trong nghiên cứu và làm chủ được công cụ. Tiếp theo tôi xin gửi lời cảm ơn tới các thầy cô trong trường Đại học Công nghệ,những người thầy tận tâm truyền đạt những kiến thức bổ ích giúp tôi tiếp tục đi xa hơntrong lĩnh vực công nghệ thông tin. Thời gian học tập tại Đại học Công nghệ tôi khôngchỉ học kiến thức mà còn học được rất nhiều bài học từ phương pháp, từ phong cách, từtriết lí sống và học tập của thầy cô. Những gì học được ở đây sẽ giúp ích tôi rất nhiềutrên con đường trở thành một giáo viên Tin học tốt. Tôi xin gửi lời cảm ơn tới Ban giám hiệu trường trung học phổ thông Yên Hòavà các đồng nghiệp trong cơ quan. Trong suốt thời gian tôi học thạc sĩ đã nhận được sựđộng viên, giúp đỡ và tạo điều kiện để việc học được thuận lợi nhất. Cuối cùng tôi xin được cảm ơn gia đình của tôi, những người đã hết sức hỗ trợ,lo chu toàn việc nhà để tôi yên tâm học tập. Gia đình cũng đã động viên tôi rất nhiều, lànguồn động lực tinh thần to lớn để tôi phấn đấu hoàn thiện bản thân. Xin chân thànhcảm ơn vì tất cả. i TÓM TẮTTóm tắt: Xuất phát từ thực tế dạy lập trình ở trường phổ thông học sinh thường hay mắclỗi nhưng do lớp học đông, giáo viên rất khó bao quát và sửa lỗi cho từng em. Vấn đềđặt ra là làm thế nào để hỗ trợ sửa lỗi cho học sinh trong quá trình học lập trình. Để giảiquyết vấn đề này học viên đi nghiên cứu các công cụ định vị lỗi và gợi ý sửa lỗi hiệncó. Trên cơ sở phù hợp với bài toán đặt ra đã lựa chọn hai công cụ mã nguồn mở Gzoltarvà JPlag để tích hợp với nhau, giúp giải quyết bài toán lõi. Công cụ Gzoltar sử dụngphương pháp định vị lỗi quang phổ để xác định vị trí lỗi. Tư tưởng chung là dựa trên độbao phủ của các ca kiểm thử trên mỗi câu lệnh của chương trình để tính ra điểm nghingờ của từng câu lệnh theo công thức quang phổ Ochiai. Điểm nghi ngờ càng cao thìcâu lệnh càng có khả năng lỗi, do đó giúp học sinh tập trung vào các câu lệnh lỗi thayvì sửa toàn bộ chương trình. Trong trường hợp học sinh được chỉ lỗi nhưng chưa sửađược, chương trình thì có thể gọi tới dịch vụ gợi ý sửa lỗi. Tư tưởng chính của việc gợiý sửa lỗi là tìm ra các chương trình đúng có độ tương đồng cao với chương trình lỗi đểđưa ra làm gợi ý. Việc so sánh và tìm ra chương trình đúng có độ tương đồng cao vớichương trình lỗi phải được thực hiện bằng phương pháp so sánh đặc biệt, phương phápTokenization. Phương pháp Tokenization tiến hành so sánh các Tokens, mã thông báođặc trưng cho câu lệnh, chứ không thực hiện so sánh từ với từ giữa các mã nguồn. Saukhi nhận được các gợi ý học sinh tiến hành sửa chữa và chạy lại chương trình đến khithu được chương trình đúng. Chương trình này được gắn nhãn và lưu vào bộ sưu tậptương ứng, làm căn cứ gợi ý cho các chương trình trong tương lai. ii ...
Nội dung trích xuất từ tài liệu:
Luận văn Thạc sĩ Hệ thống thông tin: Nghiên cứu giải pháp và công cụ hỗ trợ gợi ý sửa lỗi cho các chương trình java ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Phan Thị MayNGHIÊN CỨU GIẢI PHÁP VÀ CÔNG CỤ HỖ TRỢGỢI Ý SỬA LỖI CHO CÁC CHƯƠNG TRÌNH JAVA LUẬN VĂN THẠC SĨ Ngành: Hệ thống thông tin HÀ NỘI – 2021 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Phan Thị MayNGHIÊN CỨU GIẢI PHÁP VÀ CÔNG CỤ HỖ TRỢGỢI Ý SỬA LỖI CHO CÁC CHƯƠNG TRÌNH JAVA LUẬN VĂN THẠC SĨ Ngành: Hệ thống thông tin Cán bộ hướng dẫn: PGS. TS. Phạm Ngọc Hùng HÀ NỘI – 2021 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ VIETNAM NATIONAL UNIVERSITY, HANOI UNIVERSITY OF ENGINEERING AND TECHNOLOGY Phan Thị May RESEARCH SOLUTIONS AND SUPPORT TOOLS TOSUGGEST FIXES FOR ERRORS IN JAVA PROGRAMS MASTER THESIS Information Systems Supervisor: Assoc. Prof. Pham Ngoc Hung LỜI CẢM ƠN HANOI - 2021 VIETNAM NATIONAL UNIVERSITY, HANOI UNIVERSITY OF ENGINEERING AND TECHNOLOGY LỜI CẢM ƠN Trước tiên tôi xin gửi lời cảm ơn chân thành và sâu sắc tới thầy giáo PGS. TS.Phạm Ngọc Hùng, người thầy định hướng cho tôi, đưa cho tôi những lời khuyên, độngviên tôi trong suốt quá trình học tập và làm luận văn. Thầy đã dạy cho tôi những bài họckinh nghiệm quý giá trong công việc, nghiên cứu và trong cuộc sống, tiếp thêm độnglực cho tôi, giúp tôi tự tin vào chính mình. Tôi cũng xin gửi lời cảm ơn chân thành tới các bạn trong phòng nghiên cứu R320,đặc biệt là sự hỗ trợ và động viên của bạn Nguyễn Thị Huyền và Phạm Khắc Ân. Nhờcó những chia sẻ và hỗ trợ của các bạn nên tôi đã tìm kiếm được những bài báo có giátrị trong nghiên cứu và làm chủ được công cụ. Tiếp theo tôi xin gửi lời cảm ơn tới các thầy cô trong trường Đại học Công nghệ,những người thầy tận tâm truyền đạt những kiến thức bổ ích giúp tôi tiếp tục đi xa hơntrong lĩnh vực công nghệ thông tin. Thời gian học tập tại Đại học Công nghệ tôi khôngchỉ học kiến thức mà còn học được rất nhiều bài học từ phương pháp, từ phong cách, từtriết lí sống và học tập của thầy cô. Những gì học được ở đây sẽ giúp ích tôi rất nhiềutrên con đường trở thành một giáo viên Tin học tốt. Tôi xin gửi lời cảm ơn tới Ban giám hiệu trường trung học phổ thông Yên Hòavà các đồng nghiệp trong cơ quan. Trong suốt thời gian tôi học thạc sĩ đã nhận được sựđộng viên, giúp đỡ và tạo điều kiện để việc học được thuận lợi nhất. Cuối cùng tôi xin được cảm ơn gia đình của tôi, những người đã hết sức hỗ trợ,lo chu toàn việc nhà để tôi yên tâm học tập. Gia đình cũng đã động viên tôi rất nhiều, lànguồn động lực tinh thần to lớn để tôi phấn đấu hoàn thiện bản thân. Xin chân thànhcảm ơn vì tất cả. i TÓM TẮTTóm tắt: Xuất phát từ thực tế dạy lập trình ở trường phổ thông học sinh thường hay mắclỗi nhưng do lớp học đông, giáo viên rất khó bao quát và sửa lỗi cho từng em. Vấn đềđặt ra là làm thế nào để hỗ trợ sửa lỗi cho học sinh trong quá trình học lập trình. Để giảiquyết vấn đề này học viên đi nghiên cứu các công cụ định vị lỗi và gợi ý sửa lỗi hiệncó. Trên cơ sở phù hợp với bài toán đặt ra đã lựa chọn hai công cụ mã nguồn mở Gzoltarvà JPlag để tích hợp với nhau, giúp giải quyết bài toán lõi. Công cụ Gzoltar sử dụngphương pháp định vị lỗi quang phổ để xác định vị trí lỗi. Tư tưởng chung là dựa trên độbao phủ của các ca kiểm thử trên mỗi câu lệnh của chương trình để tính ra điểm nghingờ của từng câu lệnh theo công thức quang phổ Ochiai. Điểm nghi ngờ càng cao thìcâu lệnh càng có khả năng lỗi, do đó giúp học sinh tập trung vào các câu lệnh lỗi thayvì sửa toàn bộ chương trình. Trong trường hợp học sinh được chỉ lỗi nhưng chưa sửađược, chương trình thì có thể gọi tới dịch vụ gợi ý sửa lỗi. Tư tưởng chính của việc gợiý sửa lỗi là tìm ra các chương trình đúng có độ tương đồng cao với chương trình lỗi đểđưa ra làm gợi ý. Việc so sánh và tìm ra chương trình đúng có độ tương đồng cao vớichương trình lỗi phải được thực hiện bằng phương pháp so sánh đặc biệt, phương phápTokenization. Phương pháp Tokenization tiến hành so sánh các Tokens, mã thông báođặc trưng cho câu lệnh, chứ không thực hiện so sánh từ với từ giữa các mã nguồn. Saukhi nhận được các gợi ý học sinh tiến hành sửa chữa và chạy lại chương trình đến khithu được chương trình đúng. Chương trình này được gắn nhãn và lưu vào bộ sưu tậptương ứng, làm căn cứ gợi ý cho các chương trình trong tương lai. ii ...
Tìm kiếm theo từ khóa liên quan:
Luận văn Thạc sĩ Luận văn Thạc sĩ Hệ thống thông tin Hệ thống thông tin Chương trình java Phương pháp xác định vị trí lỗiGợi ý tài liệu liên quan:
-
Luận văn Thạc sĩ Kinh tế: Quản trị chất lượng dịch vụ khách sạn Mường Thanh Xa La
136 trang 363 5 0 -
97 trang 324 0 0
-
Bài tập thực hành môn Phân tích thiết kế hệ thống thông tin
6 trang 314 0 0 -
97 trang 300 0 0
-
Luận văn Thạc sĩ Khoa học máy tính: Tìm hiểu xây dựng thuật toán giấu tin mật và ứng dụng
76 trang 299 0 0 -
155 trang 272 0 0
-
115 trang 266 0 0
-
64 trang 258 0 0
-
26 trang 253 0 0
-
Bài thuyết trình Hệ thống thông tin trong bệnh viện
44 trang 241 0 0