Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 55 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
55
Dung lượng
9,37 MB
Nội dung
ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ XOAN NGHIÊN CỨU VỀ MÔ HÌNH HÓA VÀ KIỂM TRA TIẾN TRÌNH NGHIỆP VỤ Ngành: Công nghệ thông tin Chuyên ngành: Kỹ thuật Phần mềm Mã số: 60480103 LUẬN VĂN THẠC SĨ NGÀNH: CÔNG NGHỆ THÔNG TIN NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS NGUYỄN VIỆT HÀ Hà Nội - 2015 i LỜI CẢM ƠN Trước hết, em xin gửi lời biết ơn sâu sắc đến PGS.TS Nguyễn Việt Hà, thầy định hướng nghiên cứu, bảo cho em kiến thức kiểm chứng tiến trình nghiệp vụ, dành nhiều thời gian hướng dẫn em thực luận văn Em xin bày tỏ lòng biết ơn tới thầy cô trongBộ 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 thường xuyên giúp đỡ, trao đổi, góp ý tạo điều kiện thuận lợi cho em trình học tập làm luận văn Trường Một lần nữa, em xin chân thành cảm ơn! Hà Nội, tháng 11 năm 2015 Học viên Nguyễn Thị Xoan ii TÓM TẮT Dịch vụ Web đời mang lại nhiều lợi ích to lớn, cho phép phần mềm tích hợp lại với dựa tảng, ngôn ngữ khác Ngôn ngữ thực thi tiến trình nghiệp vụ BPEL đời cung cấp cách thức để tích hợp dịch vụ Web lại với thành dịch vụ Web Việc tích hợp dịch vụ Web thành dịch vụ Web làm việc theo kịch nghiệp vụ nhiệm vụ quan trọng Nên yêu cầu phải kiểm tra tính đắn tiến trình BPEL Nhưng việc kiểm chứng trực tiếp BPEL không thể, cần chuyển đổi đặc tả BPEL sang dạng đặc tả kiểm chứng trực tiếp Nội dung luận văn trình bày ngôn ngữ thực thi tiến trình nghiệp vụ BPELvà kiểm chứng dịch vụ Web định nghĩa ngôn ngữ BPEL Cách chuyển đổi đặc tả BPEL sang ký pháp ký pháp FSP mô tả LTS tương ứng, để kiểm chứng LTS tương ứng Một thuộc tínhđại diện cho luồng thực thi công việc tiến trình BPEL để kiểm tra tính thỏa mãn LTS tương ứng Nếu LTS thỏa mãn thuộc tính tiến trình thỏa mãn yêu cầu, ngược lại tiến trình BPEL không thỏa mãn Luận văn trình bày ví dụ minh họa cho việc kiểm chứng tiến trình BPEL với công cụ tự động LTSA Từ khóa: BPEL, FSP,LTSA, kiểm chứng dịch vụ Web iii LỜI CAM ĐOAN Tôi xin cam đoan phần nghiên cứu mô hình hóa kiểm tra tiến trình nghiệp vụ trình bày luận văn riêng Những thông tin trích dẫn luận văn rõ nguồn gốc, có trích dẫn cụ thể, rõ ràng Hà Nội, tháng 11 năm 2015 Học viên Nguyễn Thị Xoan iv MỤC LỤC ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ NGUYỄN THỊ XOAN Ngành: Công nghệ thông tin LUẬN VĂN THẠC SĨ NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS NGUYỄN VIỆT HÀ LỜI CẢM ƠN i TÓM TẮT ii LỜI CAM ĐOAN iii DANH MỤC KÝ HIỆU VÀ CÁC TỪ VIẾT TẮT vi DANH MỤC CÁC BẢNG BIỂU .vii DANH MỤC HÌNH VẼ viii Chương PHẦN MỞ ĐẦU 1.1 Lý chọn đề tài 1.2 Nội dung nghiên cứu Chương CÁC KIẾN THỨC CƠ BẢN 2.1 Tổng quan ngôn ngữ thực thi tiến trình nghiệp vụ BPEL (Business Process Execution Language) 2.1.2 Các hoạt động tiến trình BPEL 2.1.2.3 Hoạt động quản lý lỗi ngoại lệ 15 2.2 Hệ thống chuyển trạng thái gán nhãn - LTS ký pháp tiến trình hữu hạn trạng thái - FSP 16 2.2.1 Hệ thống chuyển trạng thái gán nhãn - LTS 16 2.2.2 Ký pháp tiến trình hữu hạn trạng thái - Finite State Process(FSP) 19 Chương PHƯƠNG PHÁP CHUYỂN TỪ ĐẶC TẢ BPEL 21 SANG KÝ PHÁP FSP 21 3.1 Hành động empty 21 3.2 Hành động invoke 22 3.3 Hành động receive 23 v 3.4 Hành động reply 23 3.5 Hành động assign 24 3.6 Hành động sequence 25 3.7 Hành động if 25 3.8 Hành động while 27 3.9 Hành động pick 27 3.10 Hành động flow 28 3.11 Hành động wait 29 3.12 Hành động exit 29 3.13 Hành động throw 30 Chương KIỂM CHỨNG DỊCH VỤ WEB 31 4.1 Cài đặt chương trình 31 4.2 Các ví dụ minh họa cho việc kiểm chứng tiến trình BPEL 32 4.2.1 Ví dụ 32 4.2.2 Ví dụ 36 4.2.3 Ví dụ 39 Chương KẾT LUẬN 44 TÀI LIỆU THAM KHẢO 45 vi DANH MỤC KÝ HIỆU VÀ CÁC TỪ VIẾT TẮT TT Từ viết tắt Ý nghĩa BPEL Business Process Excuation Language BPEL4WS Business Process Excuation Language for Web Service FSP Finite State Processes LTS Labeled Transition System LTSA Labeled Transition System Analyser XML eXtensible Markup Language WS-BPEL Web Services Business Process Excuation Language WSDL Web Services Description Language WSFL Web Service Flow Language vii DANH MỤC CÁC BẢNG BIỂU Bảng 2.1 Mô tả hành động ngôn ngữ BPEL ý nghĩa viii DANH MỤC HÌNH VẼ Hình 2.1 Cấu trúc tiến trình BPEL Hình 2.2 Hệ thống chuyển trạng thái gán nhãn 16 Hình 2.3 LTS không đơn định 17 Hình 2.4 LTS đơn định 18 Hình 3.1 LTS hành động empty 22 Hình 3.2 LTS tương ứng hành động invoke 22 Hình 3.3 LTS tương ứng hành động receive 23 Hình 3.4 LTS hành động reply 24 Hình 3.5 LTS tương ứng assign 24 Hình 3.6 LTS hành động sequence 25 Hình 3.7 LTS tương ứng hành động if có nhánh if else 26 Hình 3.8 LTS tương ứng hành động If có nhánh if 26 Hình 3.9 LTS tương ứng hành động While 27 Hình 3.10 LTS tương ứng hành động pick 27 Hình 3.11 LTS tương ứng hành động flow 28 Hình 3.12 LTS tương ứng hành động wait 29 Hình 3.13 LTS tương ứng hành động exit 29 Hình 3.14.LTS tương ứng hành động throw 30 Hình 4.1 Tiến trình BPEL tảng Eclipse 31 Hình 4.2 Công cụ LTSA 32 Hình 4.3 Tiến trình BPEL mô tả chức lấy ID tiến trình thực trước 33 Hình 4.4 Phần chuyển đổi sang ký pháp FSP 34 Hình 4.5 LTS tương ứng với FSP sinh tiến trình BPEL ví dụ 3.2.1 34 Hình 4.6 Chức compile compose công cụ LTSA 35 Hình 4.7 LTS tiến trình COMPOSE1 không đạt đến trạng thái lỗi 36 Hình 4.8 LTS tiến trình COMPOSE1 đạt đến trạng thái lỗi 36 Hình 4.9 Tiến trình BPEL hành động while 37 ix Hình 4.10 Ký pháp FSP tương ứng hành động while 37 Hình 4.11 LTS tương ứng với hành động while 38 Hình 4.12 LTS kết trạng thái lỗi 39 Hình 4.13.LTS kết trạng thái có lỗi 39 Hình 4.14.Tính diện tích phần hình giới hạn 40 Hình 4.15.Mô hình hoạt động toán 40 Hình 4.16.Tiến trình BPEL mô tả toán tính diện tích 41 Hình 4.17 Ký pháp FSP tương ứng tiến trình BPEL mô tả toán tính diện tích 42 Hình 4.18 LTS tương ứng toán tính diện tích 42 Hình 4.19 LTS kết đạt đến trạng thái không lỗi 43 Hình 4.20 LTS kết đạt đến trạng thái lỗi 43 31 Chương KIỂM CHỨNG DỊCH VỤ WEB Chương xây dựng ví dụ để minh chứng cho việc kiểm chứng dịch vụ Web thông qua tiến trình BPEL Cụthể dùng công cụ LTSA [6] để kiểm chứng ví dụ tiến trình BPEL 4.1 Cài đặt chương trình Các ví dụ đặc tả ngôn ngữ thực thi tiến trình nghiệp vụ BPEL, nên để xây dựng ví dụ minh họa cho việc kiểm chứng tiến trình BPEL cần phải cài số chương trình sau: -Cài môi trường Java: Cài JDK 1.5 - Cài đặt môi trường Web Server: Cài apache-tomcat apache-ode vào thư mục cài đặt C:\Program Files\Apache Software Foundation - Trình thiết kế Eclipse BPEL Designer: sau cài đặt JDK môi trường WebService, sử dụng trình thiết kế Eclipse BPEL Designer để mô hình hóa tiến trình ngôn ngữ BPEL Ví dụ tiến trình BPEL thiết kế tảng Eclipse hình 4.1 Hình 4.1 Tiến trình BPEL tảng Eclipse - Công cụ kiểm chứng tự động LTSA [6]: công cụ giúp chuyển đổi tự động từ tiến trình BPEL sang ký pháp tiến trình hữu hạn trạng thái FSP Công cụ LTSA triển khai dạng modul tích hợp vào trình thiết kế Eclipse LTSA cho phép chuyển 32 tiến trình BPEL cách tự động sang ký pháp FSP Ký pháp FSP mô tả LTS tương ứng, việc kiểm chứng tiến trình BPEL lúc thực cách tự động Hình 4.2 Công cụ LTSA 4.2 Các ví dụ minh họa cho việc kiểm chứng tiến trình BPEL 4.2.1 Ví dụ Ví dụ dịch vụ Web có chức lấy ID tiến trình thực trước Dịch vụ gọi đến dịch vụ Pingpong để lấy ID tiến trình thực trước Tiến trình BPEL mô tả hình 4.3 Tiến trình nhận thông tin đầu vào qua hành độngreceiveInput Sau thông tin đầu vào nhận hành động receive, thông tin gửi đến hành động AssignInput, hành động AssignInput có nhiệm vụ gán giá trị biến đầu vào cho hành động InvokePingpong Kết nhận hành động InvokePingpong gán cho biến AssignOutput trả hành động replyOutput tiến trình Sau đặc tả dịch vụ tiến trình BPEL, để kiếm chứng tiến trình BPEL ta phải chuyển đổi tiến trình BPEL sang ký pháp FSP để kiểm chứng dịch vụ Web Việc chuyển đổi thực tự động công cụ LTSA tích hợp tảng eclipse (Hình 4.3) 33 Hình 4.3 Tiến trình BPEL mô tả chức lấy ID tiến trình thực trước Hình 3.0.1 Sử dụng công cụ LTSA tích hợp vào eclipse Phần chuyển đổi sang ký pháp FSP thể tab LTSA Editor sau: 34 Hình 4.4 Phần chuyển đổi sang ký pháp FSP Biểu diễn LTS tương ứng với FSP hình 3.6 Hình 4.5 LTS tương ứng với FSP sinh tiến trình BPEL ví dụ 3.2.1 Chức compile sử dụng để biên dịch phần ký pháp FSP sinh Chức compose sử dụng để kết hợp tiến trình sinh trình định nghĩa tiến trình BPEL thuộc tính kiểm tra 35 Hình 4.6 Chức compile compose công cụ LTSA Tiến trình sinh trình định nghĩa tiến BPEL có tên INVOKE_MAIN1 Tiến trình BPEL ví dụ phần 4.2.1 kiểm tra với kịch sau: receiveInput -> invokePingpong -> replyOutput Một thuộc tính p định nghĩa từ kịch sau: Property TEST_INVOKE = (client_reply_receive->client_reply_process -> END) Hợp tiến trình sinh trình định nghĩa tiến trình BPEL thuộc tính p tiến trình có tên COMPOSE1 khai báo sau: ||COMPOSE = (INVOKE_MAIN1 || TEST_INVOKE) Việc kiểm chứng tiến trình BPEL tương ứng với việc việc tra tiến trình COMPOSE1 Nếu tiến trình COMPOSE1 đến trạng thái -1 tương ứng với trạng thái lỗi Còn ngược lại tiến trình thỏa mãn yêu cầu toán đặt LTS thuộc tính TEST_INVOKE LTS phép chuyển đổi tiến trình BPEL thỏa mãn yêu cầu toán đặt hình 4.7 LTS thuộc tính TEST_INVOKE LTS phép chuyển đổi tiến trình BPEL đạt đến trạng thái -1 (đạt đến trạng thái lỗi) hình 4.8 36 Hình 4.7 LTS tiến trình COMPOSE1 không đạt đến trạng thái lỗi Hình 4.8 LTS tiến trình COMPOSE1 đạt đến trạng thái lỗi 4.2.2 Ví dụ Ví dụ kiểm chứng hành động while tiến trình BPEL Tiến trình BPEL hành động while hình 4.9 Sau hành động mô tả tiến trình BPEL, Công cụ LTSA sử dụng để chuyển đổi tự động từ BPEL sang ký pháp FSP hình 4.10: 37 Hình 4.9 Tiến trình BPEL hành động while Hình 4.10 Ký pháp FSP tương ứng hành động while 38 LTS tương ứng với FSP hành động while hình 4.11 sau: Hình 4.11 LTS tương ứng với hành động while Tiến trình sinh trình định nghĩa tiến BPEL có tên WHILE_MAIN1 Tiến trình BPEL ví dụ phần 4.2.2 kiểm tra với kịch sau: receiveInput -> replyOutput Một thuộc tính p định nghĩa từ kịch sau: property TEST_FOR_WHILE = (while_client_receive_process -> while_client_reply_process -> END) Hợp tiến trình sinh trình định nghĩa tiến trình BPEL thuộc tính p tiến trình có tên COMPOSE khai báo sau: ||COMPOSE = (WHILE_MAIN1|| TEST_FOR_WHILE) Việc kiểm chứng tiến trình BPEL tương ứng với việc việc tra tiến trình COMPOSE1 Nếu tiến trình COMPOSE1 đến trạng thái -1 tương ứng với trạng thái lỗi Còn ngược lại tiến trình thỏa mãn yêu cầu toán đặt LTS thuộc tính WHILE_MAIN LTS phép chuyển đổi tiến trình BPEL thỏa mãn yêu cầu toán đặt hình 4.12 39 LTS thuộc tính WHILE_MAIN1 LTS phép chuyển đổi tiến trình BPEL đạt đến trạng thái -1 (đạt đến trạng thái lỗi) hình 4.13 Hình 4.12 LTS kết trạng thái lỗi Hình 4.13.LTS kết trạng thái có lỗi Qua ví dụ cho thấy việc kiểm chứng tiến trình BPEL thực cách tự động thông qua công cụ LTSA 4.2.3 Ví dụ Bài toán đặt tính diện tích hình giới hạn hình chữ nhật bên hình ellipse bên Chúng ta tính diện tích phần hình đánh dấu màu đỏ hình 4.14 Để giải toán luận văn minh họa cách xây dựng tiến trình BPEL.Cách tính diện tích thực cách gọi ba dịch vụ Web từ bên 40 Hình 4.14.Tính diện tích phần hình giới hạn Dịch vụ Web tính diện tích hình chữ nhật có tên là: RectangleCalculator.wsdl Dịch vụ Web tính diện tích hình ellipse có tên là: EllipseCalculator.wsdl Dịch vụ Web cung cấp phép tính toán có tên là: SimpleComputation.wsdl Mô hình tổng quát toán mô tả hình 4.15 Hình 4.15.Mô hình hoạt động toán Tiến trình mô tả chức tính diện tích phần hình giới hạn hình chữ nhật bên hình ellipse bên Tiến trình BPEL toán mô tả hình 4.16 41 Hình 4.16.Tiến trình BPEL mô tả toán tính diện tích Tiến trình nhận thông tin đầu vào qua hành động receiveInput, hành động Assign có nhiệm vụ gán giá trị biến đầu vào cho hành động InvokeRectangleArea, InvokeDivideHeight, InvokeDivideLength Hành động Assign1 có nhiệm vụ gán giá trị đầu hai hành động InvokeDivideHeight, InvokeDivideLength làm giá trị đầu vào cho hành động InvokeEllipseArea Hành động Assign2 có nhiệm vụ gán giá trị cho biến đầu vào hành động InvokeSubtraction từ hành độngInvokeRectangleArea InvokeEllipseArea Kết nhận hành động InvokeSubtraction gán cho biến Assign3 nhận hành động replyOutput Các hành động 42 InvokeRectangleArea,InvokeEllipseArea, InvokeDivideHeight, InvokeDivideLength, InvokeSubtraction, sử dụng để gọi dịch vụ tính toán diện tích hình chữ nhật, diện tích hình Ellipse phép tính toán đơn giản Phần chuyển đổi sang ký pháp FSP thể tab LTSA Editor hình 4.17 sau: Hình 4.17 Ký pháp FSP tương ứng tiến trình BPEL mô tả toán tính diện tích LTS tương ứng tiến trình BPEL mô tả toán tính diện tích Hình 4.18 LTS tương ứng toán tính diện tích 43 Tiến trình BPEL tính diện tích phần hình giới hạn hình chữ nhật bên hình ellipse bên kiểm tra với kịch sau: InvokeRectangleArea -> replyOutput Tiến trình chuyển sang dạng ký pháp FSP sau: Property TEST_DIENTICH = -> areaservice_rectangleareapl_receive_area -> areaservice_client_reply_process -> END) Hợp tiến trình sinh trình định nghĩa tiến trình BPEL tính diện tích phần hình giới hạn AREASERVICE_MAIN1 tiến trình TEST_DIENTICH có tên COMPOSE khai báo sau: ||COMPOSE = (AREASERVICE_MAIN1|| TEST_DIENTICH) Việc kiểm chứng tiến trình BPEL tương ứng với việc việc tra tiến trình COMPOSE1 Nếu tiến trình COMPOSE1 đến trạng thái -1 tương ứng với trạng thái lỗi Còn ngược lại tiến trình thỏa mãn yêu cầu toán đặt LTS toán tính diện tích phần hình giới hạn hình chữ nhật hình ellipse đạt đến trạng thái lỗi sau: Hình 4.19 LTS kết đạt đến trạng thái không lỗi Giả sử hành động trả kết toán gọi trước hành động tính diện tích hình chữ nhật, việc kiểm tra tiến trình BPEL toán với thuộc tính TEST_DIENTICH trả LTS kết đạt tới trạng thái -1 Hình 4.20 LTS kết đạt đến trạng thái lỗi 44 Chương KẾT LUẬN Ngôn ngữ mô hình hóa tiến trình nghiệp vụ BPEL sử dụng để kết hợp dịch vụ Web tảng ngôn ngữ khác lại với thành dịch vụ Web lớn có chức phức tạp Trong trình kết hợp dịch vụ Web lại lỗi phần mềm điều không tránh khỏi, nên phần mềm thông thường khác tiến trình BPEL cần phải kiểm chứng để phát lỗi Nhưng việc kiểm chứng trực tiếp đặc tả BPEL thực nên cần phải chuyển đổi sang dạng ngôn ngữ, ký pháp khác kiểm chứng Ký pháp ký pháp FSP sử dụng để chuyển đổi từ đặc tả BPEL Ký pháp ký pháp FSP mô tả hệ thống chuyển trạng thái LTS tương ứng Việc kiểm chứng tiến trình BPEL lúc tương ứng với việc kiểm chứng tính thỏa mãn LTS chuyển đổi Một thuộc tính tương ứng với luồng thực thi tiến trình BPEL cung cấp để kiểm tra Nếu LTS chuyển đổi thỏa mãn thuộc tính kiểm tra tiến trình BPEL thỏa mãn ngược lại tiến trình BPEL không thỏa mãn Qua trình nghiên cứu tìm hiểu, em tìm hiểu ngôn ngữ thực thi tiến trình nghiệp vụ BPEL để định nghĩa tiến trình dịch vụ Web, trình chuyển đổi hoạt động có tiến trình BPEL sang ký pháp ký pháp FSP để tiến hành kiểm chứng tiến trình BPEL, trình chuyển đổi thực thông qua công cụ kiểm chứng tự động LTSA Trong luận văn, em trình bày công cụ kiểm chứng tự động LTSA, thông qua ví dụ để làm rõ cách kiểm chứng tiến trình BPEL công cụ kiểm chứng tự động LTSA Tuy nhiên luận văn hạn chế sau: luận văn chuyển đổi số hoạt động tiến BPEL sang FSP, việc kiểm chứng tính đắn tiến trình BPEL dừng lại mức độ ví dụ minh họa mà chưa áp dụng vào dịch vụ Web lớn thực tế 45 TÀI LIỆU THAM KHẢO Tiếng Việt [1] Nguyễn Sỹ Hiếu (2015), “Phương pháp chuyển đổi đặc tả sang LTS cho dịch vụ web”, Khóa luận tốt nghiệp, Trường Đại học Công nghệ - Đại học Quốc gia Hà Nội Tiếng Anh [2] OASIS, Web Services Business Process Execution Language Version 2.0 Ðịa chỉ: https://www.oasis-open.org/committees/download.php/10347/wsbpel- specification-draft-120204.htm [3] Dr Howard Foster (2006), “A Rigorous Approach To Engineering Web Service Compositions”, University of London [4] Franck van Breugel, Maria Koshkina, “Model and Verification of BPEL” Draft, September, 2006 [5] Jeff Magee,FSP Địa sau: http://www.doc.ic.ac.uk/~jnm/LTSdocumention/Action-refix.html [6] Howard Foster, Sebastian Uchitel, Jeff Magee, Jeff Kramer, “LTSA-WS: A Tool for Model-Based Verification of Web Service Compositions and Choreography”, The 28th International Conference on Software Engineering, 2006, pp 771-774 [7] P N Hung, N V Ha, T Aoki and T Katayama (2012), “On Optimization of Minimized Assumption Generation Method for Component-based Software Verification”, IEICE Trans on Fundamentals, Special Issue on Software Reliability Engineering, Vol E95-A, No.9, pp 1451-1460, Sep 2012 [...]... đổi từ tiến trình BPEL [1] Chính vì vậy luận văn của em có tên là: Nghiên cứu về mô hình hóa và kiểm tra tiến trình nghiệp vụ 1.2 Nội dung nghiên cứu Để giải quyết được các vấn đề nêu ra như trên thì luận văn cần giải quyết một số nội dung sau: - Luận văn tìm hiểu ngôn ngữ thực thi tiến trình nghiệp vụ BPEL để đặc tả dịch vụ Web thông qua các thành phần, các hành động có trong đặc tả BPEL - Trình. .. hoạt động theo mô tả của P nếu hành động đầu tiên xảy ra là b Lập chỉ mục cho các quy trình và hành động (indexed process and actions): Khi mô hình các tiến trình và hành động có có những trường hợp những tiến trình và hành động đó có rất nhiều giá trị Ta có thể gán nhãn cho các quy trình và hành động đó và lập chỉ mục cho chúng Tham số tiến trình (Process parameters): khi tiến trình và hành động có... BẢN 2.1 Tổng quan về ngôn ngữ thực thi tiến trình nghiệp vụ BPEL (Business Process Execution Language) Ngôn ngữ thực thi tiến trình nghiệp vụ BPEL được sử dụng để định nghĩa tiến trình nghiệp vụ của một dịch vụ Web Nó được dùng để hỗ trợ phát triển ứng dụng phức tạp lớn, đòi hỏi tổng hợp nhiều dịch vụ Web khác nhau Vào 7/2002 phiên bản BPEL 1.0 đầu tiên ra đời Phiên bản BPEL 1.1 ra đời vào năm 4/2003... [2] Trong quá trình tích hợp các dịch vụ Web thành dịch vụ Web mới làm việc theo đúng kịch bản nghiệp vụ luôn là yêu cầu quan trọng nên yêu cầu phải kiểm tra tính đúng đắn của tiến trình BPEL [4,5], nhưng việc kiểm chứng trực tiếp trên tiến trình BPEL là không thể thực hiện được Vì vậy tiến trình BPEL cần được chuyển sang dạng ngôn ngữ /ký pháp có thể kiểm chứng trực tiếp được Ký pháp tiến trình hữu hạn... thực thi tiến trình nghiệp vụ BPEL được sử dụng để định nghĩa các tiến trình nghiệp vụ thực thi trên dịch vụ Web Nó là ngôn ngữ dùng để hỗ trợ phát triển các ứng dụng phức tạp, lớn đòi hỏi phải tổng hợp nhiều dịch vụ Web khác nhau Một dịch vụ Web lớn với các chức năng phức tạp được tạo nên từ nhiều dịch vụ Web thành phần có thể được tạo ra thông qua việc định nghĩa tiến trình BPEL Trong quá trình phát... phải được kiểm tra và sửa lỗi Dịch vụ Web cũng cần phải được kiểm chứng để tìm và sửa lỗi Đối với phần mềm thông thường, việc kiểm tra được thực hiện trực tiếp trên mã nguồn thông qua các phương pháp kiểm thử Tuy nhiên việc kiếm chứng trực tiếp trên tiến trình BPEL là không khả thi Do vậy mà tiến trình BPEL cần phải được chuyển sang một dạng ngôn ngữ hoặc ký pháp có thể kiểm chứng trực tiếp được Và LTS... tự động LTS một cách dễ dàng Vậy nên để có thể kiểm chứng tự động được tiến trình BPEL thì việc chuyển đổi tiến trình BPEL sang ký pháp tiến trình hữu hạn trạng thái FSP biểu diễn cho LTS tương ứng và tiến hành kiểm chứng trên phần mềm chuyển đổi Nội dung chương này sẽ trình bày chi tiết cách chuyển một số hoạt động trong tiến trình BPEL sang ký pháp tiến trình hữu hạn trạng thái FSP 3.1 Hành động empty... xem tiến trình sử dụng dịch vụ nào 4 Hình 2.1 Cấu trúc tiến trình BPEL cơ bản : Fault-handlers dùng để xử lý các ngoại lệ phát sinh trong quá trình thực thi tiến trình : Khi công việc thực hiện xong, muốn báo cho tiến trình BPEL biết hành động đã thực hiện thì phần tử Compensation-handlers được sử dụng : Chứa các hành động trong tiến trình Ví dụ một tiến. .. Process(FSP) Ký pháp tiến trình hữu hạn trạng thái - Finite State Process (FSP) [5] được tạo ra để mô tả các mô hình tiến trình FSP có thể mô tả được những hành động, trạng thái của tiến trình LTS thường biểu diễn dưới dạng hình học Tuy nhiên với LTS có số lượng trạng thái nhiều thì biểu diễn bằng LTS trở nên phức tạp Do vậy ký pháp tiến trình hữu hạn trạng thái FSP được sử dụng để mô tả LTS, giúp biểu... Chương 4: Kiểm chứng dịch vụ Web Chương này xây dựng các ví dụ minh họa cho việc kiểm chứng tính đúng đắn của tiến trình BPEL với kịch bản, với công cụ giúp cho việc kiểm chứng tự động là LTSA Các ví dụ đưa ra được đặc tả bằng ngôn ngữ thực thi tiến trình nghiệp vụ BPEL Sử dụng công cụ LTSA để chuyển đổi tự động sang ký pháp FSP và tiến hành kiểm chứng Chương 5 Kết luận Chương này đưa ra kết luận về kết ... kiểm chứng tiến trình BPEL với công cụ tự động LTSA Từ khóa: BPEL, FSP,LTSA, kiểm chứng dịch vụ Web iii LỜI CAM ĐOAN Tôi xin cam đoan phần nghiên cứu mô hình hóa kiểm tra tiến trình nghiệp vụ. .. pháp kiểm chứng trực tiếp Ký pháp tiến trình hữu hạn trạng thái FSP sử dụng để chuyển đổi từ tiến trình BPEL [1] Chính luận văn em có tên là: Nghiên cứu mô hình hóa kiểm tra tiến trình nghiệp vụ ... chứng tiến trình BPEL 4.2.1 Ví dụ Ví dụ dịch vụ Web có chức lấy ID tiến trình thực trước Dịch vụ gọi đến dịch vụ Pingpong để lấy ID tiến trình thực trước Tiến trình BPEL mô tả hình 4.3 Tiến trình