Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm luận án TS máy tính 624801

132 1 0
Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ Đào Thị Hường MỘT SỐ PHƯƠNG PHÁP KIỂM CHỨNG TÁI CẤU TRÚC PHẦN MỀM LUẬN ÁN TIẾN SỸ CÔNG NGHỆ THÔNG TIN Hà Nội - 2018 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com LỜI CAM ĐOAN Tôi xin cam đoan luận án “Một số phương pháp kiểm chứng tái cấu trúc phần mềm” cơng trình nghiên cứu riêng tơi Các số liệu, kết trình bày luận án hoàn toàn trung thực chưa công bố công trình khác Tơi trích dẫn đầy đủ tài liệu tham khảo, cơng trình nghiên cứu liên quan nước quốc tế Ngoại trừ tài liệu tham khảo này, luận án hồn tồn cơng việc riêng tơi Trong cơng trình khoa học công bố luận án, thể rõ ràng xác đóng góp đồng tác giả tơi đóng góp Luận án hồn thành thời gian tơi làm Nghiên cứu sinh Bộ môn Công nghệ phần mềm, Khoa Công nghệ Thông tin, Trường Đại học Công nghệ, Đại học Quốc gia Hà Nội Tác giả: Hà Nội: i LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ii LỜI CẢM ƠN Trước hết, muốn bày tỏ biết ơn đến PGS.TS Trương Ninh Thuận, cán hướng dẫn, người trực tiếp giảng dạy định hướng suốt thời gian học cao học, thực luận văn thạc sĩ luận án Thầy không hướng dẫn cho kiến thức học thuật mà cịn bảo cho tơi kinh nghiệm quý báu sống Một vinh dự lớn cho học tập, nghiên cứu hướng dẫn Thầy Tôi xin bày tỏ biết ơn sâu sắc đến Thầy Cô Bộ môn Công nghệ phần mềm giúp đỡ Thầy Cơ đóng góp hữu ích cho luận án Tôi xin trân trọng cảm ơn Khoa Công nghệ thơng tin, Phịng Đào tạo Ban giám hiệu trường Đại học Công nghệ tạo điều kiện thuận lợi cho tơi suốt q trình thực luận án Tôi bày tỏ biết ơn đến Ban giám hiệu Trường Đại học Hải Phòng tạo điều kiện thời gian tài cho tơi thực luận án Tôi muốn cảm ơn đến Ban chủ nhiệm, cán bộ, giảng viên Khoa Công nghệ thông tin - Trường Đại học Hải Phòng cổ vũ động viên sát cánh bên suốt trình nghiên cứu Một phần nghiên cứu thực khuôn khổ đề tài nghiên cứu khoa học số 102.03-2014.40 (Nafosted) Xin cảm ơn trao đổi trợ giúp thành viên đề tài Tôi muốn cảm ơn đến tất người bạn tơi, đến tồn thể Anh/Chị/Em NCS người ln chia sẻ, động viên tôi cần tơi ln ghi nhớ điều Cuối cùng, tơi xin bày tỏ lịng biết ơn vơ hạn cha mẹ, chồng, gia đình ln ủng hộ yêu thương cách vô điều kiện Nếu khơng có ủng hộ gia đình chồng tơi khơng thể hồn thành luận án Một lần xin trân trọng cảm ơn tất NCS Đào Thị Hường LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com iii TÓM TẮT Trong qúa trình phát triển hệ thống phần mềm, tái cấu trúc (refactoring) biết đến “như tiến trình cải thiện cấu trúc bên (internal structure) mà không làm ảnh hưởng đến hành vi bên (external behaviour) hệ thống” Tuy nhiên, hoạt động tái cấu trúc thực hệ thống phần mềm dễ phát sinh lỗi đặc biệt trường hợp người phát triển khơng tn thủ cách nghiêm ngặt quy trình tiêu chuẩn phát triển phần mềm Bởi vậy, tiến trình tái cấu trúc cần kiểm sốt cách chặt chẽ đồng thời phải đánh giá ảnh hưởng tiến trình đặc trưng chất lượng xem xét bảo tồn đặc tính quan trọng hệ thống phần mềm Luận án đề xuất số phương pháp bảo toàn ràng buộc hệ thống phần sau tiến trình tái cấu trúc Cụ thể, luận án quan tâm đến tiến trình tái cấu trúc áp dụng hệ thống hướng đối tượng với đặc trưng bất biến (invariants) hành vi (behaviors) Các đóng góp luận án tóm tắt sau: (i) Đề xuất phương pháp bảo toàn bất biến tái cấu trúc biểu đồ lớp UML Các phần tử biểu đồ lớp với ràng buộc bất biến hình thức hóa ký pháp tốn học Tái cấu trúc biểu đồ lớp thực thông qua phép toán Folding, Abstraction, Composition, Factoring Unfolding Luận án đề xuất luật tái cấu trúc (refactoring rules) cho phép toán đồng thời chứng minh đắn luật phương pháp toán học Tiến trình tái cấu trúc áp dụng phép tốn khẳng định bảo toàn bất biến lớp mơ hình ban đầu mơ hình tái cấu trúc (ii) Đề xuất phương pháp kiểm chứng bảo toàn hành vi tái cấu trúc hệ thống phần mềm cách áp dụng mẫu thiết kế Phần mềm ban đầu với ràng buộc hành vi (pre/post-conditions) kịch (scenarios) tham gia vào tiến trình tái cấu trúc hình thức hóa Hoạt động tái cấu trúc thực thi gây ảnh hưởng trực tiếp đến thành phần cấu tạo ràng buộc hành vi LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com iv Bởi vậy, ràng buộc hành vi tính tốn lại so sánh với với ràng buộc hệ thống ban đầu Chú ý rằng, đối tượng quan tâm đến khía cạnh bảo toàn hành vi kịch tham gia vào tiến trình tái cấu trúc Đóng góp chủ yếu luận án giải toán bảo toàn hành vi việc xây dựng định nghĩa biểu diễn hình thức khái niệm kịch sử dụng định nghĩa quy trình kiểm chứng đề xuất Bài tốn bảo tồn hành vi giải giai đoạn thiết kế cài đặt vòng đời phát triển phần mềm (iii) Xây dựng công cụ CVT (Consistency Validator Tool) hỗ trợ cho q trình kiểm chứng tính qn tái cấu trúc mơ hình phần mềm CVT nhận liệu đầu vào mơ hình với ràng buộc hành vi hệ thống trước sau tái cấu trúc Sau trình thực thi, CVT trả lại kết luận khả qn mơ hình Từ khóa: tái cấu trúc, bảo toàn bất biến, bảo toàn hành vi, kiểm chứng tính quán LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Mục lục Lời cam đoan i Lời cảm ơn ii Tóm tắt iii Mục lục v Danh mục từ viết tắt viii Danh mục bảng ix Danh mục hình vẽ x Danh mục đặc tả xii Chương MỞ ĐẦU 1.1 Đặt vấn đề 1.2 Nội dung nghiên cứu 1.3 Cấu trúc luận án 1 Chương KIẾN THỨC CƠ SỞ 2.1 Tái cấu trúc (refactoring) 2.2 Mơ hình hướng đối tượng 2.3 Ngơn ngữ mơ hình hóa thống UML 2.3.1 Biểu đồ lớp 2.3.2 Biểu đồ 2.4 Mẫu thiết kế 2.5 Ngôn ngữ ràng buộc đối tượng OCL (Object Constraint Language) 2.6 Ngôn ngữ đặc tả cho Java (Java Modeling Language - JML) 2.7 Logic vị từ bậc (First-Order Logic - FOL) 2.8 Kết chương 9 12 14 15 16 17 21 25 26 27 v LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Contents Chương PHƯƠNG PHÁP BẢO TOÀN BẤT BIẾN TRONG TÁI CẤU TRÚC 3.1 Giới thiệu 3.2 Các nghiên cứu liên quan 3.3 Tái cấu trúc biểu đồ lớp UML 3.3.1 Tái cấu trúc lớp với mối quan hệ phân cấp 3.3.2 Tái cấu trúc liên kết biểu đồ lớp 3.4 Phương pháp bảo toàn bất biến tái cấu trúc biểu đồ lớp UML 3.4.1 Quy trình kiểm tra bảo toàn bất biến tái cấu trúc biểu đồ lớp UML 3.4.2 Mơ hình hóa biểu đồ lớp UML 3.4.3 Khn mẫu biễu diễn phép tốn tái cấu trúc 3.4.4 Xây dựng luật tái cấu trúc 3.4.5 Chứng minh tính đắn luật tái cấu trúc 3.4.6 Kiểm chứng bảo toàn ràng buộc bất biến sau tái cấu trúc 3.5 Kết chương vi 28 28 30 33 33 35 36 37 38 42 43 54 58 59 Chương PHƯƠNG PHÁP KIỂM CHỨNG SỰ BẢO TOÀN HÀNH VI TRONG TÁI CẤU TRÚC 62 4.1 Giới thiệu 62 4.2 Các nghiên cứu liên quan 64 4.3 Phương pháp kiểm chứng bảo toàn hành vi tái cấu trúc hệ thống phần mềm 67 4.3.1 Quy trình kiểm chứng bảo tồn hành vi tái cấu trúc hệ thống phần mềm 67 4.3.2 Phương pháp kiểm chứng tính quán tái cấu trúc mơ hình phần mềm 69 4.3.3 Phương pháp kiểm chứng tính quán tái cấu trúc chương trình phần mềm 76 4.4 Áp dụng phương pháp kiểm chứng bảo toàn hành vi hệ thống điều khiển lưu lượng giao thông đường (ARTC) 77 4.4.1 Mô tả hệ thống ARTC 78 4.4.2 Một số hạn chế hệ thống ARTC trước tái cấu trúc 82 4.4.3 Xác định hành vi cần bảo toàn 84 4.4.4 Kiểm chứng tính qn tái cấu trúc mơ hình hệ thống ARTC 88 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Contents vii 4.4.5 Kiểm chứng tính quán tái cấu trúc chương trình phần mềm ARTC 4.5 Kết chương Chương CÔNG CỤ KIỂM CHỨNG 5.1 Giới thiệu 5.2 Xây dựng công cụ kiểm chứng CVT 5.2.1 Kiến trúc công cụ kiểm chứng CVT 5.2.2 Chuyển đổi biểu thức OCL sang công thức 5.3 Cài đặt thực nghiệm 5.4 Kết chương FOL 90 90 93 93 95 95 97 102 105 Chương KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 107 6.1 Các đóng góp luận án 107 6.2 Hướng phát triển 109 DANH MỤC CÁC CƠNG TRÌNH KHOA HỌC 113 TÀI LIỆU THAM KHẢO 114 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DANH MỤC CÁC TỪ VIẾT TẮT Từ viết tắt Dạng đầy đủ Diễn giải/Tạm dịch ATM Automated Teller Machine ARTC Adaptive Road Traffic Control Hệ thống điều khiển giao thông AST Abstract Syntax Tree Cây cú pháp trừu tượng CVT Consistency Validator Tool Cơng cụ kiểm chứng tính qn CD Class Diagram Biểu đồ lớp FOL First-Order Logic Logic vị từ bậc JML Java Modeling Language Ngôn ngữ đặc tả cho Java OCL Object Constraint Language Ngôn ngữ ràng buộc đối tượng OOM Object Oriented Modeling Mơ hình hóa hướng đối tượng SD Sequence Diagram Biểu đồ SMT Satisfiability Modulo Theories Tính khả thỏa lý thuyết mơđun UML Unified Modeling Language Ngơn ngữ mơ hình hóa thống XML eXtensible Markup Language Ngơn ngữ đánh dấu mở rộng Hệ thống rút tiền tự động viii LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DANH MỤC CÁC BẢNG 3.1 Khn mẫu biểu diễn phép tốn tái cấu trúc 43 5.1 Biểu thức OCL công thức FOL tương ứng 98 5.2 Các luật sản xuất R văn phạm phi ngữ cảnh G 99 5.3 Tập luật xây dựng AST từ văn phạm phi ngữ cảnh G 100 ix LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chương Cơng cụ kiểm chứng 105 Hình 5.5: Minh họa kết kiểm chứng trường hợp không quán 5.4 Kết chương Trong chương này, xây dựng cơng cụ CVT hỗ trợ kiểm tra tính qn tái cấu trúc mơ hình phần mềm Các mơ hình hệ thống trước sau tái cấu trúc biểu diễn mơ hình UML, hành vi cần kiểm chứng mô tả biểu thức OCL Công cụ CVT nhận tệp liệu đầu vào thành phần trả lại kết khả qn hai mơ hình phần mềm trước sau tái cấu trúc So với công cụ hỗ trợ tái cấu trúc trước đây, CVT thể tính đặc biệt ngữ cảnh Nó áp dụng vào tiến trình cụ thể kiểm chứng tính quán tái cấu trúc mơ hình phần mềm CVT đáp ứng cách chức công cụ kiểm chứng bao gồm Kiểm tra tính hợp lệ liệu Kiểm tra tính quán mặt hành vi Hơn nữa, CVT thực thêm chức chuyển đổi biểu thức OCL sang công thức FOL Cơng cụ CVT cho phép người dùng lựa chọn việc kiểm tra tính quán phần ràng buộc bất biến, tiền hậu điều kiện thực chế độ lô trả kết kiểm tra hai mô hình hệ thống tức thời LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chương Công cụ kiểm chứng 106 Hiện tại, phần mềm CVT dừng lại số chức biểu thức OCL cịn tạo lập cách thủ cơng, nghiên cứu quan tâm đến việc cải thiện chức năng, xem xét trình sản sinh biểu thức OCL cách tự động Kết nghiên cứu nêu công bố Kỷ yếu Hội nghị quốc tế lần thứ Knowledge and Systems Engineering - KSE 2017 (cơng trình khoa học số 3*) LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Chương KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 6.1 Các đóng góp luận án Tái cấu trúc kỹ thuật mạnh mẽ, sử dụng phổ biến hoạt động cải tiến chất lượng phần mềm (mở rộng, mô đun hóa, tái sử dụng, giảm độ phức tạp, tăng hiệu thực thi, v.v.) Tái cấu trúc giúp người phát triển có kiến trúc phần mềm chắn, tảng quan trọng cho giai đoạn phát triển phần mềm Ý tưởng tái cấu trúc phân bố lại lớp, thuộc tính phương thức xung quanh mối quan hệ phân cấp thành phần hệ thống Kiểm chứng quán tái cấu trúc hệ thống phần mềm toán mở mang tính chun biệt miền Giải tốn cần gắn liền với yếu tố đặc trưng miền ứng dụng mối quan tâm cụ thể nhà phát triển phần mềm Do đó, cần phải xử lý toán theo cách thực tế, với nguyên tắc kiểm tra chặt chẽ Đôi người phát triển phải tìm thỏa hiệp vấn đề chấp nhận nhược điểm việc khơng bảo tồn số ràng buộc mà điều khơng làm ảnh hưởng đến mục tiêu bảo tồn nói chung hệ thống phần mềm Sau thời gian nghiên cứu giải toán này, luận án có số đóng góp sau: 1) Đề xuất phương pháp bảo toàn bất biến lớp tái cấu trúc 107 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Kết luận 108 mơ hình phần mềm Luận án thực tái cấu trúc biểu đồ lớp UML thơng qua năm phép tốn liên quan đến quan hệ phân cấp kế thừa, cụ thể Folding, Abstraction, Composition, Factoring Unfolding Để giải toán này, luận án hình thức hóa biểu đồ lớp với ràng buộc bất biến ký pháp toán học Kế tiếp, luận án định nghĩa khn mẫu (template) để mơ tả phép tốn tái cấu trúc Cuối cùng, việc xây dựng luật tái cấu trúc phép toán, trình tái cấu trúc biểu đồ lớp tiến hành theo cách bảo toàn bất biến Luận án chứng minh tính đắn luật tái cấu trúc xây dựng, điều thể tính tin cậy phương pháp đề xuất 2) Đề xuất phương pháp kiểm chứng bảo toàn hành vi tái cấu trúc hệ thống phần mềm có sử dụng mẫu thiết kế Phương pháp đề xuất áp dụng giai đoạn thiết kế cài đặt chương trình phần mềm Quy trình kiểm chứng bao gồm bước sau đây: (i) đặc tả hệ thống thống với ràng buộc hành vi (bất biến, tiền/hậu điều kiện) phương pháp hình thức; (ii) tiến hành tái cấu trúc mẫu Strategy; (iii) tính tốn ràng buộc hành vi phiên tiến hóa sau tái cấu trúc (iv) Xây dựng tập luật quán sở lý thuyết cho trình kiểm chứng Chú ý rằng, luận án tập trung đề xuất sở lý thuyết để kiểm chứng tính bảo tồn mặt hành vi với đối tượng kịch (scenarios) tham gia vào tiến trình tái cấu trúc Hệ thống phần mềm coi quán với phiên tái cấu trúc kịch bảo toàn ràng buộc bất biến, tiền hậu điều kiện 3) Xây dựng công cụ CVT hỗ trợ kiểm chứng bảo toàn hành vi tái cấu trúc mơ hình phần mềm CVT nhận đầu vào mơ hình hệ thống trước sau tái cấu trúc với đặc tả hành vi chúng (bất biến, tiền hậu điều kiện) Sau q trình kiểm tra, CVT thơng báo khả qn hai mơ hình hệ thống Kiến trúc CVT bao gồm ba chức chính: (i) Kiểm tra tính hợp lệ ràng buộc OCL mơ hình, (ii) Chuyển đổi biểu thức OCL sang công thức FOL (iii) Thực kiểm tra 4) Đóng góp cuối luận án minh họa phương pháp đề xuất thơng qua mơ hình Hệ thống điều khiển giao thông đường ARTC LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Kết luận 109 Các ràng buộc hành vi kiểm chứng dựa sở lý thuyết Chương thực nghiệm Chương Kết kiểm chứng bảo toàn hành vi hai chương hoàn toàn tương thích Điều phần thể tính khả thi phương pháp đề xuất Các ràng buộc bất biến lớp hành vi hệ thống (tiền hậu điều kiện) đặc trưng hệ thống phần mềm Luận án giải tốn kiểm chứng tính qn tái cấu trúc hệ thống phần mềm bao phủ hai loại đặc trưng Một cách tuần tự, Chương 3, luận án đề xuất phương pháp bảo toàn bất biến lớp, Chương luận án tiếp tục giải toán kiểm chứng bảo tồn hành vi Thêm vào đó, để hồn thiện sở lý thuyết đề xuất, Chương luận án xây dựng công cụ hỗ trợ kiểm chứng cách tự động Như vậy, luận án xem xét tốn kiểm chứng tính qn tái cấu trúc hệ thống phần mềm nhiều khía cạnh, từ đóng góp lý thuyết đến minh chứng thực nghiệm xuyên suốt từ giai đoạn thiết cài đặt vòng đời phát triển phần mềm Có thể nói, đóng góp luận án có ý nghĩa việc bổ sung hoàn thiện kỹ thuật sử dụng lĩnh vực cải tiến chất lượng phần mềm Các kết luận án cơng bố cơng trình khoa học đăng tải tạp chí, hội nghị chuyên ngành nước quốc tế có phản biện 6.2 Hướng phát triển Luận án đề xuất phương pháp bảo toàn bất biến lớp hành vi hệ thống phần mềm tái cấu trúc Bước đầu, phương pháp đề xuất đạt số kết định Tuy nhiên, toán tương ứng chương luận án, cịn có nhiều hướng mở cần xem xét giải Một số hướng nghiên cứu luận án thực là: 1) Đối với tốn kiểm chứng tính bất biến tái cấu trúc mơ hình phần mềm Cần tiếp tục xem xét, giải vấn đề sau: – Hiện luận án xem xét trình bảo toàn bất biến biểu đồ lớp liên quan đến năm phép tốn có quan hệ phân cấp LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Kết luận 110 kế thừa Vì vậy, phương pháp đề xuất chưa có nhìn tổng qt giải vấn đề bảo tồn bất biến nói chung tiến trình tái cấu trúc bất kỳ; – Các phép toán giới thiệu cách rời rạc, nhiều ý nghĩa hơn nhà phát triển có xem xét kết hợp phép toán tạo chiến lược (strategy) tái cấu trúc, giải tình thực tế có tính phức tạp hơn; – Luận án mô tả biến đổi thành phần lớp ràng buộc nó, đồng thời liệt kê ảnh hưởng phép toán liên kết (associations) nghiên cứu trước Tuy nhiên luận án cần đưa ví dụ minh họa chi tiết cho biến đổi lớp liên kết 2) Đối với tốn kiểm chứng bảo tồn hành vi tái cấu trúc Cần tiếp tục xem xét, giải vấn đề sau: – Đối tượng nghiên cứu bảo toàn hành vi kịch (biểu đồ tuần tự), nghiên cứu quan tâm đến bảo toàn hành vi số loại biểu đồ khác UML biểu đồ ca sử dụng, biểu đồ trạng thái, biểu đồ hoạt động v.v.; – Nghiên cứu xây dựng case study với nhiều đặc tả hành vi phức tạp cần kiểm chứng Phương pháp đề xuất ý nghĩa đưa phản ví dụ minh họa cho phương pháp đề xuất; – Phần sở lý thuyết cịn có giả thiết mạnh, kịch ln coi hợp lệ để thực thi Cần phân tích q trình thực thi kịch cách chi tiết đưa điều kiện đầy đủ đáp ứng giả thiết này; – Kịch xem xét đơn giản, chưa có xuất yếu tố phức hợp (các phân đoạn rẽ nhánh, phân đoạn lựa chọn, v.v.) Luận án hướng tới nghiên cứu giải tốn bảo tồn hành vi kịch 3) Công cụ kiểm chứng CVT bao gồm ba chức (kiểm tra hợp lệ biểu thức OCL mơ hình, chuyển đổi biểu thức OCL sang công thức FOL, thực kiểm tra) Tuy nhiên, thấy giao diện CVT cịn đơn giản, việc tạo lập ràng buộc OCL LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Kết luận 111 tiến hành cách thủ cơng Do đó, nghiên cứu tiếp theo, luận án thực sản sinh biểu thức cách tự động từ mơ hình hướng đến kiểm chứng tính quán tái cấu trúc tất ràng buộc bất biến hành vi, từ giai đoạn thiết giai đoạn cài đặt vòng đời phát triển phần mềm LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com DANH MỤC CÁC CÔNG TRÌNH KHOA HỌC I CÁC CƠNG TRÌNH LIÊN QUAN ĐẾN LUẬN ÁN 1* Thi Huong Dao, Hong Anh Le, and Ninh Thuan Truong (2016) An approach to analyzing execution preservation in Java program refactoring International Conference on Context-Aware Systems and Applications, pp.101-110, Springer, 2016 2* Hong Anh Le, Thi Huong Dao, and Ninh Thuan Truong (2017) A Formal Approach to Checking Consistency in Software Refactoring Mobile Networks and Application, Vol.22.2, pp.356–366, Springer, 2017 (ISI indexed) 3* Thi Huong Dao, Thanh Binh Trinh, and Ninh Thuan Truong (2017) A Tool Support for Checking Consistency in Model Refactoring In Proc of the 9th International Conf on Knowledge and Systems Engineering, pp 108-113, Springer LNCS, 2017 4* Thi Huong Dao, Xuan Truong Nguyen, and Ninh Thuan Truong Preservation of Class Invariants in Refactoring UML Models (accepted by the Int’l Journal of Software Engineering and Knowledge Engineering - IJSEKE) (ISI indexed) II CÁC CÔNG TRÌNH KHÁC 5* Thi Huong Dao, Thanh Binh Trinh (2014) Verifying the Reliability of Web Services Transactions using Temporal Logic and NuSMV Information and Computer Science (NICS), 2014 1st National Foundation for Science and Technology Development Conference on, pp.43–51, IEEE, 2014 6* Thi Huong Dao, Van Khanh To, Ninh Thuan Truong, Quang Ton Chu and Viet Ha Nguyen (2015) Integrating and checking access permissions in object oriented models Information and Computer Science (NICS), 2015 2nd National Foundation for Science 112 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Danh mục cơng trình khoa học 113 and Technology Development Conference on, pp.49–53, IEEE, 2015 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com TÀI LIỆU THAM KHẢO [1] W Ahrendt, T Baar, B Beckert, R Bubel, M Giese, R Hăahnle, W Menzel, W Mostowski, A Roth, S Schlager, and et el The key tool Software & Systems Modeling, 4(1):32–54, 2005 [2] C Alexander A pattern language: towns, buildings, construction Oxford University Press, 1977 [3] C Alexander The timeless way of building, volume New York: Oxford University Press, 1979 [4] T Baar and S Markovi´c A graphical approach to prove the semantic preservation of UML/OCL refactoring rules In International Andrei Ershov Memorial Conference on Perspectives of System Informatics, pages 70–83 Springer, 2006 [5] M Balazinska, E Merlo, M Dagenais, B Lague, and K Kontogiannis Advanced clone-analysis to support object-oriented system refactoring In Reverse Engineering, 2000 Proceedings Seventh Working Conference on, pages 98–107 IEEE, 2000 [6] C Barrett, C L Conway, M Deters, L Hadarean, D Jovanovi´c, T King, A Reynolds, and C Tinelli Cvc4 In International Conference on Computer Aided Verification, pages 171–177 Springer, 2011 [7] B Beckert, U Keller, and P H Schmitt Translating the Object Constraint Language into first-order predicate logic In Proc of the VERIFY Workshop at Federated Logic Conferences (FLoC), pages 113– 123, 2002 [8] D A Bisztray Compositional verification of model-level refactorings based on graph transformations PhD thesis, University of Leicester, 2010 [9] G Booch, J Rumbaugh, and I Jacobson Unified Modeling Language User Guide, The (2nd Edition) (Addison-Wesley Object Technology Series) Addison-Wesley Professional, 2005 [10] P Bottoni, F Parisi-Presicce, and G Taentzer Coordinated distributed diagram transformation for software evolution Electronic Notes in Theoretical Computer Science, 72(4):59–70, 2003 114 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Tài liệu tham khảo 115 [11] B Bruegge and A Dutoit Object-Oriented Software Engineering Using UML, Patterns and Java-(Required), volume 2004 Prentice Hall Press, 2004 [12] J Cabot and M Gogolla Object constraint language (OCL): a definitive guide In Formal methods for model-driven engineering, pages 58–90 Springer, 2012 [13] P Chalin and F Rioux JML Runtime Assertion Checking: Improved Error Reporting and Efficiency Using Strong Validity In Proceedings of the 15th international symposium on Formal Methods, pages 246– 261 Springer-Verlag, 2008 URL http://dx.doi.org/10.1007/ 978-3-540-68237-0_18 [14] M Cinnéide and P Nixon Composite Refactorings for Java Programs In 2nd ECOOP Workshop on Formal Techniques for Java Programs, held in conjunction with European Conference on Object-Oriented Programming (ECOOP 2000), pages 129–135, 2000 [15] M Clavel, M Egea, and M A G de Dios The Pragmatics of OCL and Other Textual Specification Languages at MoDELS 2009 Electronic Communications of the EASST, 24, 2009 [16] D R Cok OpenJML: JML for Java by extending OpenJDK In NASA Formal Methods Symposium, pages 472–479 Springer, 2011 [17] D R Cok OpenJML: software verification for Java using JML, OpenJDK, and Eclipse arXiv preprint arXiv:1404.6608, pages 79–92, 2014 [18] T H Cormen Introduction to algorithms MIT press, 2009 [19] C Dania and M Clavel OCL2FOL+: Coping with Undefinedness OCL@ MoDELS, 1092:53–62, 2013 [20] C Dania and M Clavel OCL2MSFOL: a mapping to many-sorted firstorder logic for efficiently checking the satisfiability of OCL constraints In Proceedings of the ACM/IEEE 19th International Conference on Model Driven Engineering Languages and Systems, pages 65–75 ACM, 2016 [21] H A David, Peter F L., and Octavian P OCL 2.0: Implementing the Standard Technical report, University of Kent, Computing Laboratory, 2003 URL http://kar.kent.ac.uk/13888/ [22] L De Moura and N Bjørner Z3: An efficient SMT solver In International conference on Tools and Algorithms for the Construction and Analysis of Systems, pages 337–340 Springer, 2008 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Tài liệu tham khảo 116 [23] J Dong, S Yang, and K Zhang A model transformation approach for design pattern evolutions In Engineering of Computer Based Systems, 2006 ECBS 2006 13th Annual IEEE International Symposium and Workshop on, pages 10–pp IEEE, 2006 [24] A S Evans Reasoning with UML class diagrams In Industrial Strength Formal Specification Techniques, 1998 Proceedings 2nd IEEE Workshop on, pages 102–113 IEEE, 1998 [25] C Flanagan, K R M Leino, M Lillibridge, G Nelson, J B Saxe, and R Stata Extended static checking for Java SIGPLAN Not., 37: 234–245, 2002 URL http://doi.acm.org/10.1145/543552 512558 [26] A Folli and T Mens Refactoring of UML models using AGG Electronic Communications of the EASST, 8, 2008 [27] M Fowler, K Beck, J Brant, W Opdyke, and D Roberts Refactoring: Improving the design of existing programs Addison-Wesley Reading, 1999 [28] Erich G., John V., Ralph J., and Richard H Elements of Reusable Object-Oriented Software Addison-Wesley Professional Computing Series, 1994 [29] M Gogolla and M Richters Transformation rules for UML class diagrams In International Conference on the Unified Modeling Language, pages 92–106 Springer, 1998 [30] D Gupta, P Jalote, and G Barua A formal framework for on-line software version change Software Engineering, IEEE Transactions on, 22(2):120–131, 1996 [31] I Jacobson Object-oriented software engineering: a use case driven approach Pearson Education India, 1993 [32] C Jinhua LL (1) grammars and Sub-LL (1) grammars International Journal of Parallel Programming, 14(4):225–234, 1985 [33] Y Kataoka, T Imai, H Andou, and T Fukaya A quantitative evaluation of maintainability enhancement by refactoring In Software Maintenance, 2002 Proceedings International Conference on, pages 576–585 IEEE, 2002 [34] J Kerievsky Refactoring to patterns Pearson Deutschland GmbH, 2005 [35] A Kupin Design and development of program transformation tool PhD thesis, Master’s thesis, Department of CS (Informatik), University of Munich, 2000 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Tài liệu tham khảo 117 [36] G T Leavens Tutorial on JML, the java modeling language In Proceedings of the twenty-second IEEE/ACM international conference on Automated software engineering, pages 573–573 ACM, 2007 URL http://doi.acm.org/10.1145/1321631.1321747 [37] G T Leavens, E Poll, C Clifton, Y Cheon, C Ruby, D Cok, P Mă uller, J Kiniry, P Chalin, D M Zimmerman, and et el JML reference manual, 2008 [38] X Li, Z Liu, and J He Consistency checking of UML requirements In Engineering of Complex Computer Systems, 2005 ICECCS 2005 Proceedings 10th IEEE International Conference on, pages 411–420 IEEE, 2005 [39] C Marché, C Paulin-Mohring, and X Urbain The krakatoa tool for certificationof java/javacard programs annotated in jml The Journal of Logic and Algebraic Programming, 58(1):89–106, 2004 [40] S Markovic Model refactoring using transformations PhD thesis, University of Belgrade, Serbie et de nationalité serbe, 2008 [41] F Martin and S Kendall UML Distilled: A Brief Guide to the Standard Object Modeling Language Addison-Wesley, 2003 [42] T Matsumoto, T Sakunkonchak, H Saito, and M Fujita Verification of behavioral consistency in c by using symbolic simulation and program slicer In Model checking for dependable software-intensive systems workshop, pages 80–84, 2003 [43] T Mens and T Tourwé A survey of software refactoring Software Engineering, IEEE Transactions on, pages 126–139, 2004 [44] T Mens, S Demeyer, and D Janssens Formalising behaviour preserving program transformations In ICGT, pages 286–301 Springer, 2002 [45] T Mens, N Van Eetvelde, S Demeyer, and D Janssens Formalizing refactorings with graph transformations Journal of Software: Evolution and Process, 17(4):247–276, 2005 [46] T Mens, G Taentzer, and D Mă uller Challenges in model refactoring In Proc 1st Workshop on Refactoring Tools, University of Berlin, volume 98, pages 1–5, 2007 [47] B Meyer Object-oriented software construction, volume Prentice hall New York, 1988 [48] M Misbhauddin and M Alshayeb UML model refactoring: a systematic literature review Empirical Software Engineering, 20(1):206–251, 2015 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Tài liệu tham khảo 118 [49] E Murphy-Hill, C Parnin, and A Black How we refactor, and how we know it IEEE Transactions on Software Engineering, 38(1):5–18, 2012 [50] M Najafi, H Haghighi, and T Zohdi Nasab A Set of Refactoring Rules for UML-B Specifications Computing and Informatics, 35(2): 411–440, 2016 [51] V.E Niels and J Dirk A Hierarchical Program Representation for Refactoring Electronic Notes in Theoretical Computer Science, 82(7): 91 – 104, 2003 [52] W F Opdyke Refactoring: A program restructuring aid in designing object-oriented application frameworks PhD thesis, University of Illinois at Urbana-Champaign, 1992 [53] C Pereira, L Favre, and L Martinez Refactoring UML Class Diagram In Proceedings of 2004 Information Resources Management Association International Conference (IRMA 2004) New Orleans, USA, pages 506– 510, 2004 [54] I Porres Model refactorings as rule-based update transformations In International Conference on the Unified Modeling Language, pages 159– 174 Springer, 2003 [55] K Ranjini, A Kanthimathi, and Y Yasmine Design of adaptive road traffic control system through unified modeling Language International Journal of Computer Applications, 14(7):36–41, 2011 [56] H Rasch and H Wehrheim Checking consistency in UML diagrams: Classes and state machines Formal methods for open object-based distributed systems, pages 229–243, 2003 [57] D Roberts, J Brant, and R Johnson A refactoring tool for Smalltalk Urbana, 51:61801, 1997 [58] D B Roberts and R Johnson Practical analysis for refactoring University of Illinois at Urbana-Champaign, 1999 [59] J Rumbaugh, M Blaha, W Premerlani, F Eddy, and W Lorenson Object-oriented modelling and design, 1991 [60] J Rumbaugh, I Jacobson, and G Booch Unified Modeling Language Reference Manual, The (2nd Edition) Pearson Higher Education, 2004 [61] E Seidewitz UML 2.5: Specification simplification In Third Biannual Workshop on Eclipse Open Source Software and OMG Open Specifications, volume 82, 2012 [62] A Sheneamer and J Kalita A survey of software clone detection techniques International Journal of Computer Applications, 137(10):1–21, 2016 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com Tài liệu tham khảo 119 [63] R M Smullyan First-order logic Courier Corporation, 1995 [64] G Sunyé, D Pollet, Y Le Traon, and J Jézéquel Refactoring UML models In International Conference on the Unified Modeling Language, pages 134–148 Springer, 2001 [65] G Szo˝ke, C Nagy, R Ferenc, and T Gyimóthy A case study of refactoring large-scale industrial systems to efficiently improve source code quality In International Conference on Computational Science and Its Applications, pages 524–540 Springer, 2014 [66] L Tahvildari and K Kontogiannis A methodology for developing transformations using the maintainability soft-goal graph In Reverse Engineering, 2002 Proceedings Ninth Working Conference on, pages 77–86 IEEE, 2002 [67] J Vlissides, R Helm, R Johnson, and E Gamma Design patterns: Elements of reusable object-oriented software Reading: Addison-Wesley, 49 (120):11, 1995 [68] M P Ward and K H Bennett Formal methods to aid the evolution of software International Journal of Software Engineering and Knowledge Engineering, 5(01):25–47, 1995 [69] I White and C Rational Booch method of object-oriented analysis and design In Object analysis and design, pages 5–13 Wiley-QED Publishing, 1994 [70] J Whittle Transformations and software modeling languages: Automating transformations in UML In International Conference on the Unified Modeling Language, pages 227–242 Springer, 2002 [71] M Wimmer, S M Perez, F Jouault, and J Cabot A Catalogue of Refactorings for Model-to-Model Transformations Journal of Object Technology, pages 2:1–40, 2012 [72] Z Xing and E Stroulia Refactoring practice: How it is and how it should be supported-an eclipse case study In Software Maintenance, 2006 ICSM’06 22nd IEEE International Conference on, pages 458– 468 IEEE, 2006 [73] C Zhao, J Kong, and K Zhang Design pattern evolution and verification using graph transformation In System Sciences, 2007 HICSS 2007 40th Annual Hawaii International Conference on IEEE, 2007 LUAN VAN CHAT LUONG download : add luanvanchat@agmail.com ... tái cấu trúc) , v.v Hoặc họ tiến hành kiểm chứng tính quán giai đoạn khác (giữa thiết kế cài đặt, v.v.) tái cấu trúc Vì vây, mục tiêu luận án ? ?Một số phương pháp kiểm chứng tái cấu trúc phần mềm? ??... thiện chất lượng phần mềm cách tốt Đóng góp (iii) minh chứng cho khả thi phương pháp đề xuất thực tiễn 1.3 Cấu trúc luận án Luận án ? ?Một số phương pháp kiểm chứng tái cấu trúc phần mềm? ?? bao gồm chương... vi tái cấu trúc hệ thống phần mềm 67 4.3.1 Quy trình kiểm chứng bảo toàn hành vi tái cấu trúc hệ thống phần mềm 67 4.3.2 Phương pháp kiểm chứng tính qn tái cấu

Ngày đăng: 05/12/2022, 08:51

Hình ảnh liên quan

Hình 2.1: Tổng quan về các loại biểu đồ trong UML 2.5 - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 2.1.

Tổng quan về các loại biểu đồ trong UML 2.5 Xem tại trang 29 của tài liệu.
Hình 2.2: Minh họa biểu đồ lớp trong UML - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 2.2.

Minh họa biểu đồ lớp trong UML Xem tại trang 30 của tài liệu.
Hình 2.3: Minh họa biểu đồ tuần tự trong UML - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 2.3.

Minh họa biểu đồ tuần tự trong UML Xem tại trang 31 của tài liệu.
Hình 2.4: Một số mẫu thiết kế - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 2.4.

Một số mẫu thiết kế Xem tại trang 32 của tài liệu.
Hình 3.1: Tái cấu trúc biểu đồ lớp với quan hệ phân cấp trong kế thừa - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 3.1.

Tái cấu trúc biểu đồ lớp với quan hệ phân cấp trong kế thừa Xem tại trang 47 của tài liệu.
Hình 3.2: Sự biến đổi của các kết hợp trong tái cấu trúc biểu đồ lớp - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 3.2.

Sự biến đổi của các kết hợp trong tái cấu trúc biểu đồ lớp Xem tại trang 48 của tài liệu.
Hình 3.3: Quy trình kiểm tra sự bảo tồn bất biến trong tái cấu trúc biểu đồ lớp của UML. - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 3.3.

Quy trình kiểm tra sự bảo tồn bất biến trong tái cấu trúc biểu đồ lớp của UML Xem tại trang 50 của tài liệu.
Hình 3.4: Một phần mơ hình hệ thống ATM đơn giản - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 3.4.

Một phần mơ hình hệ thống ATM đơn giản Xem tại trang 52 của tài liệu.
Hình 3.5: Phép tốn tái cấu trúc Folding - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 3.5.

Phép tốn tái cấu trúc Folding Xem tại trang 58 của tài liệu.
Hình 3.6: Phép toán tái cấu trúc Abstraction - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 3.6.

Phép toán tái cấu trúc Abstraction Xem tại trang 60 của tài liệu.
Hình 3.7: Phép toán tái cấu trúc Composition - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 3.7.

Phép toán tái cấu trúc Composition Xem tại trang 61 của tài liệu.
Hình 3.8: Phép toán tái cấu trúc Factoring - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 3.8.

Phép toán tái cấu trúc Factoring Xem tại trang 63 của tài liệu.
Hình 3.9: Phép tốn tái cấu trúc Unfolding - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 3.9.

Phép tốn tái cấu trúc Unfolding Xem tại trang 65 của tài liệu.
Hình 4.1: Quy trình kiểm chứng sự bảo tồn hành vi trong tái cấu trúc hệ thống phần mềm - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 4.1.

Quy trình kiểm chứng sự bảo tồn hành vi trong tái cấu trúc hệ thống phần mềm Xem tại trang 81 của tài liệu.
Hình 4.2: Minh họa Kịch bảnS của mơ hình - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 4.2.

Minh họa Kịch bảnS của mơ hình Xem tại trang 86 của tài liệu.
Hình 4.3: Mơ hình hoạt động của hệ thống ARTC - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 4.3.

Mơ hình hoạt động của hệ thống ARTC Xem tại trang 91 của tài liệu.
Hình 4.4: Biểu đồ lớp của hệ thống ARTC trước tái cấu trúc hiệu). - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 4.4.

Biểu đồ lớp của hệ thống ARTC trước tái cấu trúc hiệu) Xem tại trang 93 của tài liệu.
Hình 4.5: Biểu đồ tuần tự của hệ thống ARTC trước tái cấu trúc LớpJunction mô tả địa chỉ vật lý của các điểm giao cắt và các thông tin về số lượng hướng trên điểm giao cắt này (ngã ba, ngã tư hay ngã năm, v.v.). - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 4.5.

Biểu đồ tuần tự của hệ thống ARTC trước tái cấu trúc LớpJunction mô tả địa chỉ vật lý của các điểm giao cắt và các thông tin về số lượng hướng trên điểm giao cắt này (ngã ba, ngã tư hay ngã năm, v.v.) Xem tại trang 94 của tài liệu.
mơ hình lớp sau tái cấu trúc được biểu diễn như Đặc tả 4.2. - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

m.

ơ hình lớp sau tái cấu trúc được biểu diễn như Đặc tả 4.2 Xem tại trang 98 của tài liệu.
10 pre: (state= heavyTraffic) OR (state= lowTraffic) OR (state= highTraffic) OR (state = noTraffic) - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

10.

pre: (state= heavyTraffic) OR (state= lowTraffic) OR (state= highTraffic) OR (state = noTraffic) Xem tại trang 98 của tài liệu.
Hình 4.7: Biểu đồ tuần tự của hệ thống ARTC sau khi tái cấu trúc - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 4.7.

Biểu đồ tuần tự của hệ thống ARTC sau khi tái cấu trúc Xem tại trang 100 của tài liệu.
Đặc tả 4.6: Đặc tả trên kịch bản optimizeTraffic() của mơ hình tiến hóa. - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

c.

tả 4.6: Đặc tả trên kịch bản optimizeTraffic() của mơ hình tiến hóa Xem tại trang 102 của tài liệu.
Hình 5.1: Kiến trúc của công cụ CVT - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 5.1.

Kiến trúc của công cụ CVT Xem tại trang 109 của tài liệu.
Bảng 5.1: Biểu thức OCL và công thức FOL tương ứng - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Bảng 5.1.

Biểu thức OCL và công thức FOL tương ứng Xem tại trang 111 của tài liệu.
Bảng 5.2: Các luật sản xuấ tR của văn phạm phi ngữ cảnh G - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Bảng 5.2.

Các luật sản xuấ tR của văn phạm phi ngữ cảnh G Xem tại trang 112 của tài liệu.
Bảng 5.3: Tập các luật xây dựng cây AST từ văn phạm phi ngữ cảnhG - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Bảng 5.3.

Tập các luật xây dựng cây AST từ văn phạm phi ngữ cảnhG Xem tại trang 113 của tài liệu.
Hình 5.2: Giao diện người dùng của CVT - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 5.2.

Giao diện người dùng của CVT Xem tại trang 115 của tài liệu.
Hình 5.3: Công thức FOL dạng tiền tố tương ứng với biểu thức OCL - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 5.3.

Công thức FOL dạng tiền tố tương ứng với biểu thức OCL Xem tại trang 116 của tài liệu.
Trong hình 5.2 còn có một số nút chức năng cơ bản bao gồm Check Inva- Inva-riants,Check Pre-conditions,Check Post-conditionsvà Total Consistency. - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

rong.

hình 5.2 còn có một số nút chức năng cơ bản bao gồm Check Inva- Inva-riants,Check Pre-conditions,Check Post-conditionsvà Total Consistency Xem tại trang 117 của tài liệu.
Hình 5.5: Minh họa kết quả kiểm chứng trong trường hợp không nhất quán - Luận án tiến sĩ một số phương pháp kiểm chứng tái cấu trúc phần mềm   luận án TS  máy tính  624801

Hình 5.5.

Minh họa kết quả kiểm chứng trong trường hợp không nhất quán Xem tại trang 118 của tài liệu.

Tài liệu cùng người dùng

Tài liệu liên quan