KIỂM CHỨNG GIAO DIỆN PHẦN mềm BẰNG PHƢƠNG PHÁP mô HÌNH hóa EVENT – b

67 243 0
KIỂM CHỨNG GIAO DIỆN PHẦN mềm BẰNG PHƢƠNG PHÁP mô HÌNH hóa EVENT – b

Đ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Ệ NGUYỄN XUÂN TRƢỜNG KIỂM CHỨNG GIAO DIỆN PHẦN MỀM BẰNG PHƢƠNG PHÁP MÔ HÌNH HÓA EVENT – B LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN HÀ NỘI, 2016 ĐẠI HỌC QUỐC GIA HÀ NỘI TRƢỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN XUÂN TRƢỜNG KIỂM CHỨNG GIAO DIỆN PHẦN MỀM BẰNG PHƢƠNG PHÁP MÔ HÌNH HÓA EVENT – B Ngành: Công nghệ thông tin Chuyên ngành: Kỹ thuật phần mềm Mã số: 60.48.01.03 LUẬN VĂN THẠC SĨ CÔNG NGHỆ THÔNG TIN NGƢỜI HƢỚNG DẪN KHOA HỌC: PGS.TS TRƢƠNG NINH THUẬN HÀ NỘI, 2016 LỜI CAM ĐOAN Tôi xin cam đoan toàn nội dung luận văn tìm hiểu, nghiên cứu, tham khảo tổng hợp từ nguồn tài liệu khác làm theo hướng dẫn người hướng dẫn khoa học Các nguồn tài liệu tham khảo, tổng hợp có nguồn gốc rõ ràng trích dẫn theo quy định Tôi xin chịu hoàn toàn trách nhiệm lời cam đoan Nếu có điều sai trái, xin chịu hình thức kỷ luật theo quy định Hà Nội, tháng 06 năm 2016 Ngƣời cam đoan Nguyễn Xuân Trường LỜI CẢM ƠN Em xin gửi lời cảm ơn chân thành đến thầy, cô 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ận tình dạy dỗ, truyền đạt cho chúng em nhiều kiến thức, kinh nghiệm quý báu suốt thời gian học tập trường Em xin gửi lời cảm ơn sâu sắc tới thầy PGS.TS Trương Ninh Thuận – Phó chủ nhiệm khoa công nghệ thông tin – Trường Đại học Công nghệ – ĐHQGHN tận tình bảo, hướng dẫn, định hướng cho em để em hoàn thành luận văn tốt nghiệp Cuối em xin cảm ơn gia đình, bạn bè, đồng nghiệp động viên ủng hộ tạo điều kiện tốt suốt trình học tập hoàn thành luận văn Với việc tìm hiểu nghiên cứu lĩnh vực, công cụ tương đối mẻ với kiến thức nhiều hạn chế, nên không tránh khỏi thiếu sót Em mong nhận ý kiến đóng góp quý báu thầy cô bạn để luận văn hoàn thiện Hà Nội, tháng 06 năm 2016 Học viên Nguyễn Xuân Trường MỤC LỤC MỤC LỤC DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT DANH MỤC CÁC BẢNG DANH MỤC CÁC HÌNH VẼ Chƣơng GIỚI THIỆU 1.1 Sự cần thiết đề tài 1.2 Nội dung nghiên cứu 1.3 Đóng góp đề tài 1.4 Cấu trúc luận văn Chƣơng TỔNG QUAN VỀ KIỂM CHỨNG GIAO DIỆN PHẦN MỀM VÀ PHƢƠNG PHÁP MÔ HÌNH HÓA EVENT-B 11 2.1 Giao diện người dùng 11 2.2 Các phương pháp kiểm chứng giao diện 12 2.2.1 Phương pháp tĩnh 14 2.2.2 Phương pháp động 14 2.3 Tổng quan Event-B 16 2.3.1 Context 17 2.3.2 Machine 18 2.3.3 Ký hiệu toán học Event-B 21 2.3.4 Tinh chỉnh 22 2.3.5 Mệnh đề chứng minh 23 2.3.6 Công cụ Rodin 24 Chƣơng KIỂM CHỨNG GIAO DIỆN PHẦN MỀM BẰNG PHƢƠNG PHÁP MÔ HÌNH HÓA EVENT-B 27 3.1 Phương pháp chung 27 3.2 Phương pháp chi tiết 28 3.3 Mô hình hóa giao diện phần mềm 31 3.4 Mệnh đề chứng minh 32 Chƣơng ÁP DỤNG PHƢƠNG PHÁP KIỂM CHỨNG GIAO DIỆN ỨNG DỤNG TRÊN THIẾT BỊ DI ĐỘNG VỚI EVENT-B 34 4.1 Tổng quan ứng dụng điện thoại di động 34 4.1.1 Các thành phần ứng dụng Android 35 4.1.2 Cơ chế quản lý Activity 35 4.2 Ứng dụng Note 38 4.2.1 Giới thiệu chung 38 4.2.2 Ứng dụng Note 38 4.3 Mô hình hóa kiểm chứng giao diện ứng dụng Note 44 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN 56 Kết luận 56 Hướng phát triển 57 PHỤ LỤC 58 A Đặc tả context Note_C ứng dụng Note 58 B Đặc tả machine Note_M ứng dụng Note 58 TÀI LIỆU THAM KHẢO 62 DANH MỤC KÝ HIỆU VÀ CHỮ VIẾT TẮT IDE Integrated Development Environment GUI Graphical User Interface POS Proof Obligations INV Invariant DLF Deadlock Freeness VAR Variant WD well-definedness DANH MỤC CÁC BẢNG Bảng 2.1 Các phép toán logic 21 Bảng 2.2 Luật chứng minh INV với kiện evt 24 Bảng 3.1 Chuyển đổi từ GUI tới Event-B 32 Bảng 4.1 Bảng CSDL ghi Note 38 Bảng 4.2 Mô tả cửa sổ giao diện MainActivity 39 Bảng 4.3 Mô tả sơ đối tượng cửa sổ giao diện CreateActivity 40 Bảng 4.4 Mô tả sơ đối tượng cửa sổ giao diện EditActivity 41 Bảng 4.5 Mô tả sơ đối tượng cửa sổ giao diện ViewActivity 43 DANH MỤC CÁC HÌNH VẼ Hình 2.1 Giao diện đồ họa người dùng 11 Hình 2.2 Giao diện dòng lệnh 12 Hình 2.3 Cấu trúc mối quan hệ thành phần mô hình EventB 17 Hình 2.4 Cấu trúc context 18 Hình 2.5 Ví dụ context Event-B 18 Hình 2.6 Cấu trúc machine Event-B 20 Hình 2.7 Cấu trúc Event Event-B 20 Hình 2.8 Ví dụ machine Event-B 20 Hình 2.9 Ví dụ Event Event-B 21 Hình 2.10 Ví dụ mối quan hệ Refinement Event-B 22 Hình 2.11 Sơ đồ định nghĩa kiện 23 Hình 2.12 Định nghĩa kiện evt 24 Hình 2.13 Giao diện đồ họa công cụ Rodin 25 Hình 2.14 Symbols View 36 Hình 2.15 Event-B Explorer 36 Hình 2.16 Menu bar 36 Hình 3.1 Quy trình kiểm chứng tổng quát 27 Hình 3.2 Quy trình kiểm chứng chi tiết 30 Hình 4.1 Cơ chế Back Stack 36 Hình 4.2 Activity State 37 Hình 4.3 MainActivity.XML 40 Hình 4.4 CreateActivit.XML 41 Hình 4.5 EditActivit.XML 42 Hình 4.6 ViewActivity.XML 43 Hình 4.7 Quy trình xây dựng Activity Diagram 44 Hình 4.8 Sơ đồ Activity Diagram 45 Hình 4.9 Quá trình mô hình hóa từ đặc tả vào Event-B 46 Hình 4.10 Context Note_C 47 Hình 4.11 Một phần machine Note_M 49 Hình 4.12 Event thoát ứng dụng 50 Hình 4.13 Event chọn chức Create 50 Hình 4.14 Event chọn chức Edit 50 Hình 4.15 Event chọn chức View 51 Hình 4.16 Event chọn chức Delete 51 Hình 4.17 Các Event đối tượng cửa sổ 51 Hình 4.18 Cửa sổ sinh kiểm chứng tự động 53 Hình 4.19 Bảng kết Statistics 53 Hình 4.20 Thông báo mệnh đề chưa chứng minh tự động 54 Hình 4.21 Cửa sổ Goal 54 Hình 4.22 Cửa sổ Statistics trường hợp lỗi 55 Hình 4.23 Cửa sổ Statistics trường hợp lỗi 55 49 MACHINE Note_M SEES Note_C VARIABLES Main_activity Edit_activity View_activity Create_activity Select INVARIANTS Main_activity ∈ S Edit_activity ∈ S View_activity ∈S Create_activity ∈ S Main_activity=active ∧ Create_activity=stop ∧ Edit_activity=stop ∧ View_activity=stop Main_activity=stop ∧ Create_activity=active ∧ Edit_activity=stop ∧ View_activity=stop Main_activity=stop ∧ Create_activity=stop ∧ Edit_activity=active ∧ View_activity=stop Main_activity=stop ∧ Create_activity=stop ∧ Edit_activity=stop ∧ View_activity=active Main_activity=start ⇒ (Create_activity=start) ∧ (Edit_activity=start) ∧ inv9 : (View_activity=start) ¬(Main_activity=start) ⇒¬(Create_activity=start) ∧ ¬(Edit_activity=start) ∧ inv10 : ¬(View_activity=start) inv11 : Select ∈ Menu inv1 inv2 inv3 inv4 inv5 inv6 inv7 inv8 : : : : : : : : EVENTS INITIALISATION ≙ STATUS ordinary BEGIN act1 : Main_activity ≔ start act2 : Edit_activity ≔ start act3 : View_activity ≔ start act4 : Create_activity ≔ start act5 : Select ≔ Null END Hình 4.11 Một phần machine Note_M 50  EVENT, ACTION  Event thoát ứng dụng thể Hình 4.12 BtnExit_Click ≙ STATUS ordinary WHEN grd1 :(BtnExit=TRUE)∧(Main_activity=active) THEN act1 :Main_activity≔killed act2 :Operator≔Exit act3 :Edit_activity≔killed act4 :Create_activity≔killed act5 :View_activity≔killed END Hình 4.12 Event thoát ứng dụng  Event chọn chức gọi cửa sổ Create thể Hình 4.13 Select_Create ≙ STATUS ordinary WHEN grd1 : (Main_activity=active) THEN act1 : Create_activity≔active act2 : Main_activity≔stop act3 : Select≔Create END Hình 4.13 Event chọn chức Create  Event chọn chức gọi cửa sổ Edit thể Hình 4.14 Select_Edit ≙ STATUS ordinary WHEN grd1 : Main_activity=active THEN act1 : Edit_activity≔active act2 : Main_activity≔stop act3 : Select≔Edit END Hình 4.14 Event chọn chức Edit 51  Event chọn chức gọi cửa sổ View thể Hình 4.15 Select_View ≙ STATUS ordinary WHEN grd1 : Main_activity=active THEN act1 : View_activity≔active act2 : Main_activity≔stop act3 : Select≔View END Hình 4.15 Event chọn chức View  Event chọn chức xóa chuyển cửa sổ Main thể Hình 4.16 Select_Delete ≙ STATUS ordinary WHEN grd1 : Main_activity=active THEN act1 : Operator≔Del act2 : Main_activity≔active END Hình 4.16 Event chọn chức Delete  Các kiện trên đối tượng cửa sổ thể Hình 4.17 Edit_Saveclick ≙ STATUS ordinary WHEN grd1 : Edit_activity=active ∧ Select=Edit ∧ BtnSave=TRUE THEN act1 : Operator≔Save act2 : Main_activity≔active act3 : Select≔Null act4 : Edit_activity≔stop act5 : BtnSave≔FALSE END 52 Edit_Canelclick ≙ STATUS ordinary WHEN grd1 : Edit_activity=active ∧ Select=Edit∧BtnCancel=TRUE THEN act1 : Operator≔Cancel act2 : Main_activity≔active act3 : Select≔Null act4 : Edit_activity≔stop act5 : BtnCancel≔FALSE END Create_Saveclick ≙ STATUS ordinary WHEN grd1 : Create_activity=active ∧ Select=Create ∧BtnSave=TRUE THEN act1 : Operator≔Save act2 : Main_activity≔active act3 : Select≔Null act4 : Create_activity≔stop act5 : BtnSave≔FALSE END Create_Cancelclick ≙ STATUS ordinary WHEN grd1 : Create_activity=active ∧ Select=Create∧BtnCancel=TRUE THEN act1 : Operator≔Save act2 : Main_activity≔active act3 : Create_activity≔stop act4 : Select≔Null act5 : BtnCancel≔FALSE END View_backclick ≙ STATUS ordinary WHEN grd1 : View_activity=active ∧ Select=View∧BtnBack=TRUE THEN act1 : Main_activity≔active act2 : View_activity≔stop act3 : Select≔Null act4 : BtnBack≔FALSE END Hình 4.17 Các Event đối tượng cửa sổ 53 Thực soạn thảo công cụ Rodin, sinh kiểm chứng tự động mệnh đề cần chứng minh Hình 4.18 minh họa việc sinh tự động Toàn mã lệnh trình bày chi tiết phần Phụ lục luận văn Hình 4.18 Cửa sổ sinh kiểm chứng tự động Kết trình sinh kiểm chứng tự động thể qua bảng Statistics, Hình 4.19 cho thấy toàn ràng buộc chứng minh đảm bảo mục tiêu thiết kế thứ tự giao diện đặt Hình 4.19 Bảng kết Statistics 54  Không phải lúc đặc tả thiết kế điều đắn không lỗi, giả sử trường hợp ứng dụng Note đặc tả thiết kế chức chọn lệnh chỉnh sửa thực đơn kiện đặc tả tương ứng lại chuyển tới cửa sổ khác View mà lại Edit mong muốn thiết kế Hình 4.20 Trong trường hợp công cụ Rodin xuất biểu tượng dấu “?” trước vị trí không chứng minh thể Hình 4.21 Hình 4.22, điều tương đương với vị trí đặc tả chưa thỏa đáng có lỗi dựa vào để người phát triển tìm xem xét để có cập nhật phù hợp Select_Edit ≙ STATUS ordinary WHEN grd1 : Main_activity=active THEN act1 : View_activity≔active act2 : Main_activity≔stop act3 : Select≔Edit END Hình 4.20 Sự kiện chọn chức chỉnh sửa Hình 4.21 Thông báo mệnh đề chưa chứng minh tự động 55 Hình 4.22 Cửa sổ Goal Hình 4.23 Cửa sổ Statistics trường hợp lỗi 56 KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN Kết luận Khi hệ thống tin học hoá ngày vào đời sống người vấn đề kiểm chứng xây dựng phần mềm nói chung giao diện người dùng phần mềm nói riêng đảm bảo yếu tố chất lượng ngày trở nên quan trọng việc phát triển phần mềm Trên sở luận văn tập trung vào nghiên cứu phương pháp kiểm chứng giao diện ứng dụng phương pháp mô hình hóa Event-B Giao diện đồ họa người dùng GUI giao diện phổ biến mà từ người dùng tương tác với hệ thống phần mềm Kiểm chứng giao diện người dùng thường công việc phức tạp không dễ dàng chất giao diện đồ họa không chứa đối tượng đồ họa mà có nhiều kiện điều khiển có kiện không mong muốn mà người kiểm chứng lường trước Thông qua việc kiểm chứng người phát triển phát sai sót để có khắc phục kịp thời đảm bảo có phần mềm chất lượng có giao diện dễ dùng Hiện nhiều phương pháp kiểm chứng giao diện người phát triển, phương pháp có ưu nhược điểm riêng Với khả mô hình hóa mạnh mẽ phương pháp mô hình hóa Event-B dựa ký pháp toán học kết hợp với công cụ mã nguồn mở Rodin hỗ trợ cho việc biên tập, tự động sinh kiểm chứng cách xác việc nghiên cứu, xây dựng phương pháp kiểm chứng mô hình hóa giao diện ứng dụng phần mềm với Event-B hướng thiết thực Luận văn tập trung vào tìm hiểu đặc điểm giao diện phần mềm, chế, đặc trưng, phương pháp kiểm chứng có Tập trung nghiên cứu phương pháp mô hình hóa Event-B công cụ kiểm chứng tự động Rodin, từ xây dựng quy trình tổng quát, xây dựng quy trình chi tiết, đưa mô hình giao diện người dùng trừu tượng, xây dựng tập luật chuyển đổi từ mô hình GUI trừu tượng sang 57 mô hình Event-B tổng quát, thực mô hình hóa kiểm chứng thứ tự xuất giao diện ứng dụng phần mềm Áp dụng vào kiểm chứng thứ tự xuất cửa sổ giao diện ứng dụng thiết bị di động Nghiên cứu bước đầu đưa phương pháp, mô hình tổng quát chung cho việc kiểm chứng giao diện phần mềm dừng lại việc kiểm chứng, phát lỗi thứ tự xuất cửa sổ giao diện giúp người phát triển có điều chỉnh phù hợp, chưa thể kiểm chứng ràng buộc thành phần khác giao diện, công việc chuyển đổi từ đặc tả vào mô hình từ mô hình vào công cụ rodin thủ công chưa thực cách tự động Hƣớng phát triển Từ quy trình, mô hình, phương pháp tổng quát xây dựng áp dụng kiểm chứng tự động ứng dụng cụ thể với công cụ Rodin Với nghiên cứu đạt luận văn nghiên cứu phát triển để xây dựng thêm, bổ sung thêm vào mô hình quy trình để áp dụng kiểm chứng không thứ tự xuất cửa sổ giao diện mà nhiều tiêu chí khác nhiều thành phần khác giao diện ứng dụng, áp dụng với nhiều loại giao diện ứng dụng không ứng dụng thiết bị di động mà giao diện Window Form giao diện Web 58 PHỤ LỤC A Đặc tả context Note_C ứng dụng Note CONTEXT Note_C SETS S Menu P CONSTANTS active stop pause killed Null start Create Edit View Delete None Exit Save Cancel Del AXIOMS axm1 : partition(S, {active}, {stop}, {pause}, {killed}, {start}) axm2 : partition(Menu,{Null},{Create}, {Edit}, {View}, {Delete}) axm3 : partition(P, {None}, {Exit}, {Save}, {Cancel}, {Del}) END B Đặc tả machine Note_M ứng dụng Note MACHINE Note_M SEES Note_C VARIABLES Main_activity Edit_activity View_activity Create_activity Select BtnExit BtnSave 59 BtnCancel Operator BtnBack INVARIANTS inv1 : Main_activity ∈ S inv2 : Edit_activity ∈ S inv3 : View_activity ∈S inv4 : Create_activity ∈ S inv5 : Main_activity=active⇒ Create_activity=stop ∧ Edit_activity=stop ∧ View_activity=stop inv6 : Create_activity=active⇒ Main_activity=stop ∧ Edit_activity=stop ∧ View_activity=stop inv7 : Edit_activity=active⇒ Main_activity=stop ∧ Create_activity=stop ∧ View_activity=stop inv8 : View_activity=active ⇒ Main_activity=stop ∧ Edit_activity=stop ∧ Create_activity=stop inv9 : Main_activity=start ⇒ (Create_activity=start) ∧ (Edit_activity=start) ∧ (View_activity=start) ¬(Main_activity=start) ⇒¬(Create_activity=start) ∧ ¬(Edit_activity=start) ∧ inv10 : ¬(View_activity=start) inv11 inv12 inv13 inv14 : : : : inv15 : Select ∈ Menu BtnExit ∈ BOOL BtnSave ∈ BOOL BtnCancel ∈ BOOL Main_activity=killed ⇒ (Create_activity=killed) ∧ (Edit_activity=killed) ∧ (View_activity=killed) Operator ∈ P BtnBack ∈ BOOL Select=Edit⇒Edit_activity=active Select=View⇒View_activity=active Select=Create⇒Create_activity=active inv16 : inv17 : inv18 : inv19 : inv20 : EVENTS INITIALISATION ≙ STATUS ordinary BEGIN act1 : Main_activity ≔ start act2 : Edit_activity ≔ start act3 : View_activity ≔ start act4 : Create_activity ≔ start act5 : Select ≔ Null act6 : BtnExit ≔ FALSE act7 : BtnSave ≔ FALSE act8 : BtnCancel ≔ FALSE act9 : Operator ≔ None act10 : BtnBack ≔ FALSE END BtnExit_Click ≙ STATUS ordinary WHEN grd1 : (BtnExit=TRUE)∧(Main_activity=active) THEN act1 : Main_activity≔killed act2 : Operator≔Exit act3 : Edit_activity≔killed act4 : Create_activity≔killed act5 : View_activity≔killed END 60 Select_Create ≙ STATUS ordinary WHEN grd1 : (Main_activity=active) THEN act1 : Create_activity≔active act2 : Main_activity≔stop act3 : Select≔Create END Select_Edit ≙ STATUS ordinary WHEN grd1 : Main_activity=active THEN act1 : Edit_activity≔active act2 : Main_activity≔stop act3 : Select≔Edit END Select_View ≙ STATUS ordinary WHEN grd1 : Main_activity=active THEN act1 : View_activity≔active act2 : Main_activity≔stop act3 : Select≔View END Select_Delete ≙ STATUS ordinary WHEN grd1 : Main_activity=active THEN act1 : Operator≔Del act2 : Main_activity≔active END Edit_Saveclick ≙ STATUS ordinary WHEN grd1 : Edit_activity=active ∧ Select=Edit ∧ BtnSave=TRUE THEN act1 : Operator≔Save act2 : Main_activity≔active act3 : Select≔Null act4 : Edit_activity≔stop act5 : BtnSave≔FALSE END 61 Edit_Canelclick ≙ STATUS ordinary WHEN grd1 : Edit_activity=active ∧ Select=Edit∧BtnCancel=TRUE THEN act1 : Operator≔Cancel act2 : Main_activity≔active act3 : Select≔Null act4 : Edit_activity≔stop act5 : BtnCancel≔FALSE END Create_Cancelclick ≙ STATUS ordinary WHEN grd1 : Create_activity=active ∧ Select=Create∧BtnCancel=TRUE THEN act1 : Operator≔Save act2 : Main_activity≔active act3 : Create_activity≔stop act4 : Select≔Null act5 : BtnCancel≔FALSE END View_backclick ≙ STATUS ordinary WHEN grd1 : View_activity=active ∧ Select=View∧BtnBack=TRUE THEN act1 : Main_activity≔active act2 : View_activity≔stop act3 : Select≔Null act4 : BtnBack≔FALSE END END 62 TÀI LIỆU THAM KHẢO [1] GUI Testing Techniques: A Survey Imran Ali Qureshi an AamerNadeem, International Journal of Future Computer and Communication, Vol 2, No 2, April 2013 [2] Cem Kaner, James Bach, Bret Pettichord, Lessons Learned in Software Testing A Context-Driven Approach, John Wiley & Sons, 2001 [3] [BEI90] Beizer, B., Software Testing Techniques, 2d ed., Van Nostrand Reinhold, 1990 [4] J.-R Abrial, Modeling in Event-B: System and Software Engi-neering Cambridge University Press, 2010 [5] A.F Memon, GUI testing pitfalls and process, Computer, University of Maryland, 2002 [6] D Jackson Software Abstractions: Logic, Language, and Analysis MIT Press, 2006 [7] Christophe M´etayer, Laurent Voisin, the Event-B Mathematical Language, 2007 [8] http://code.google.com/events/io/ [9] http://www.Event-B.org/ [10] http://www.android.com/ [11] http://o7planning.org/web/fe/default/vi/document/1283892/huong-danlap-trinh-android-voi-database-sqlite [12] http://android.vn/forums/ [...]... Tổng quan về kiểm < /b> chứng < /b> giao < /b> diện < /b> phần < /b> mềm < /b> và Phƣơng < /b> pháp < /b> mô < /b> hình < /b> hóa < /b> Event-< /b> B Giới thiệu một cách chi tiết về giao < /b> diện < /b> phần < /b> mềm < /b> cũng như các vấn đề về kiểm < /b> chứng < /b> giao < /b> diện < /b> phần < /b> mềm,< /b> các phương pháp < /b> kiểm < /b> chứng < /b> giao < /b> diện < /b> Bao gồm những kiến thức tổng quan về phương pháp < /b> mô < /b> hình < /b> hóa < /b> Event-< /b> B, mô < /b> tả cấu trúc của mô < /b> hình,< /b> các thành phần,< /b> giải thích ý nghĩa của các thành phần,< /b> cấu trúc của mệnh đề chứng < /b> minh... hình < /b> nhưng cũng có thể thay đổi nếu người dùng muốn Giao < /b> diện < /b> của EventB Explorer được mô < /b> tả trong Hình < /b> 2.15 [9] Hình < /b> 2.14 Symbols View Hình < /b> 2.15 Event-< /b> B Explorer Hình < /b> 2.16 Menu bar 27 Chƣơng 3 KIỂM CHỨNG GIAO < /b> DIỆN PHẦN MỀM B NG PHƢƠNG PHÁP MÔ HÌNH HÓA EVENT-< /b> B 3.1 Phƣơng < /b> pháp < /b> chung Giao < /b> diện < /b> phần < /b> mềm < /b> nói chung và giao < /b> diện < /b> của các ứng dụng trên thiết b di động nói riêng, thường thiết kế gồm các đối... sinh và kiểm < /b> chứng < /b> một cách tự động Nhận thấy được tầm quan trọng của việc kiểm < /b> chứng < /b> giao < /b> diện < /b> người dùng của phần < /b> mềm < /b> mà cụ thể là kiểm < /b> chứng < /b> thứ tự xuất hiện của các cửa sổ giao < /b> diện < /b> cùng với ưu điểm của phương pháp < /b> Event-< /b> B và công cụ Rodin, nên tác giả đã mạnh dạn đề xuất đề tài Kiểm < /b> chứng < /b> giao < /b> diện < /b> phần < /b> mềm < /b> b ng < /b> phƣơng < /b> pháp < /b> mô < /b> hình < /b> hóa < /b> Event < /b> – < /b> B nhằm nghiên cứu phương pháp < /b> kiểm < /b> chứng < /b> giao < /b> diện.< /b> .. Text Box, Combo Box, List Box, Radio Button/Option Button, Check Box/Tick Box, Report, … Sử dụng phương pháp < /b> mô < /b> hình < /b> hóa < /b> Event-< /b> B để mô < /b> hình < /b> hóa < /b> và kiểm < /b> chứng < /b> thứ tự xuất hiện của các cửa sổ giao < /b> sẽ giúp người phát triển hiểu rõ hơn, kiểm < /b> tra được tính đúng đắn và phát hiện ra những lỗi trên các cửa sổ giao < /b> diện < /b> không mong muốn Quy trình mô < /b> hình < /b> hóa < /b> và kiểm < /b> chứng < /b> giao < /b> diện < /b> tổng quát b ng < /b> phương pháp < /b> Event-< /b> B. .. xây dựng phương pháp < /b> kiểm < /b> chứng < /b> thứ tự xuất hiện của các cửa sổ giao < /b> diện < /b> phần < /b> mềm < /b> cho các ứng dụng trên thiết b di động 9 1.2 Nội dung nghiên cứu Đề tài tập trung vào việc nghiên cứu đặc điểm của giao < /b> diện < /b> phần < /b> mềm,< /b> các vấn đề liên quan tới kiểm < /b> chứng < /b> giao < /b> diện < /b> phần < /b> mềm,< /b> các phương pháp < /b> kiểm < /b> chứng < /b> giao < /b> diện < /b> Nghiên cứu mô < /b> hình,< /b> cấu trúc, ký pháp < /b> của phương pháp < /b> mô < /b> hình < /b> hóa < /b> Event-< /b> B Tìm hiểu nguyên... theo Phụ lục Trình b y một cách chi tiết về các mô < /b> hình < /b> trong Event-< /b> B của ứng dụng Note đã chuyển đổi và mô < /b> hình < /b> hóa < /b> 11 Chƣơng 2 TỔNG QUAN VỀ KIỂM CHỨNG GIAO < /b> DIỆN PHẦN MỀM VÀ PHƢƠNG PHÁP MÔ HÌNH HÓA EVENT-< /b> B 2.1 Giao < /b> diện < /b> ngƣời dùng Giao < /b> diện < /b> người dùng Graphical user interfaces (GUI) là giao < /b> diện < /b> đồ họa của chương trình cho phép người sử dụng giao < /b> tiếp với máy tính và các thiết b điện tử thông qua... giao < /b> diện < /b> cảm ứng GUI cung cấp cho người dùng một cách giao < /b> tiếp khác với các chương trình máy, biến các chương trình phức tạp trở nên b t mắt và dễ dùng hơn Một ví dụ minh họa về GUI thể hiện trong Hình < /b> 2.1 Hình < /b> 2.1 Giao < /b> diện < /b> đồ họa người dùng 12 Hình < /b> 2.2 Giao < /b> diện < /b> dòng lệnh 2.2 Các phƣơng < /b> pháp < /b> kiểm < /b> chứng < /b> giao < /b> diện < /b> Kiểm < /b> chứng < /b> giao < /b> diện < /b> là quá trình gồm nhiều kỹ thuật kiểm < /b> tra, kiểm < /b> thử giao < /b> diện < /b> phần.< /b> .. chiếu tương ứng từ mô < /b> hình < /b> trừu tượng vào trong Event-< /b> B Áp dụng vào kiểm < /b> chứng < /b> tự động thứ tự thực hiện của các cửa sổ giao < /b> diện < /b> của ứng dụng tạo ghi chú Note chạy trên hệ điều hành Android của thiết b di động 1.3 Đóng góp của đề tài Nghiên cứu đề xuất phương pháp < /b> để kiểm < /b> chứng < /b> giao < /b> diện < /b> người dùng phần < /b> mềm < /b> ở giai đoạn thiết kế b ng < /b> phương pháp < /b> mô < /b> hình < /b> hóa < /b> Event-< /b> B, đó chính là kiểm < /b> chứng < /b> sự tuân thủ... tổng quát cho thành phần < /b> trong mô < /b> hình < /b> giao < /b> diện < /b> vào Event-< /b> B kết quả của b ớc này sẽ được sử 29 dụng để làm khung tham chiếu và kết hợp với kết quả của b ớc số 4 để tạo ra một b n mô < /b> hình < /b> hóa < /b> đặc tả giao < /b> diện < /b> hoàn chỉnh trong Event-< /b> B Bước số 3 và số 4 tùy vào giao < /b> diện < /b> của mỗi ứng dụng cụ thể cần thể cần mô < /b> hình < /b> hóa < /b> cùng với b n đặc tả thiết kế kèm với những giả thuyết về giao < /b> diện < /b> và chức năng của... tiêu cần chứng < /b> minh Pos và thực hiện kiểm < /b> chứng < /b> tự động B ớc 7 từ kết quả thu được ở b ớc 6 sẽ kết hợp với biểu đồ hoạt động ban đầu đưa ra kết quả kiểm < /b> chứng < /b> để đánh giá sự vi phạm hay không các yêu cầu về giao < /b> diện < /b> đã đặt ra và từ đó để có những chỉnh sửa phù hợp 30 Hình < /b> 3.2 Quy trình kiểm < /b> chứng < /b> chi tiết 31 3.3 Mô < /b> hình < /b> hóa < /b> giao < /b> diện < /b> phần < /b> mềm < /b> Giao < /b> diện < /b> người sử dụng của một phần < /b> mềm < /b> nó bao gồm các ... Tổng quan kiểm chứng giao diện phần mềm Phƣơng pháp mô hình hóa Event- B Giới thiệu cách chi tiết giao diện phần mềm vấn đề kiểm chứng giao diện phần mềm, phương pháp kiểm chứng giao diện Bao gồm... Giao diện EventB Explorer mô tả Hình 2.15 [9] Hình 2.14 Symbols View Hình 2.15 Event- B Explorer Hình 2.16 Menu bar 27 Chƣơng KIỂM CHỨNG GIAO DIỆN PHẦN MỀM B NG PHƢƠNG PHÁP MÔ HÌNH HÓA EVENT- B. .. giao diện phần mềm phƣơng pháp mô hình hóa Event – B nhằm nghiên cứu phương pháp kiểm chứng giao diện chung tập trung vào xây dựng phương pháp kiểm chứng thứ tự xuất cửa sổ giao diện phần mềm

Ngày đăng: 16/12/2016, 14:49

Từ khóa liên quan

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

  • Đang cập nhật ...

Tài liệu liên quan