Tải bản đầy đủ (.pdf) (11 trang)

DSpace at VNU: Nghiêncứuvề mô hình hóa và kiểm tra tiến trình nghiệpvụ

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (178.18 KB, 11 trang )

ĐẠ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, chỉ bảo cho em các kiến thức về kiểm chứng tiến trình nghiệp vụ,
và đã dành rất nhiều thời gian hướng dẫn em thực hiện luận văn này.
Em cũng xin được bày tỏ lòng biết ơn tới các 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 ý và tạo những điều kiện thuận lợi nhất cho
em trong quá trình học tập cũng như làm luận văn tại 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 ra đời mang lại nhiều lợi ích to lớn, nó cho phép các phần mềm tích
hợp lại với nhau dựa trên nền tảng, ngôn ngữ khác nhau. Ngôn ngữ thực thi tiến trình
nghiệp vụ BPEL ra đời cung cấp cách thức để tích hợp các dịch vụ Web lại với nhau thành
một dịch vụ Web mới. Việc tích hợp các dịch vụ Web thành một dịch vụ Web mới làm việc
theo đúng kịch bản nghiệp vụ luôn là nhiệm vụ 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. Nhưng việc kiểm chứng trực tiếp trên BPEL là không thể, vì
vậy cần chuyển đổi đặc tả BPEL sang dạng đặc tả có thể kiểm chứng trực tiếp.
Nội dung của luận văn trình bày về ngôn ngữ thực thi tiến trình nghiệp vụ
BPELvà kiểm chứng dịch vụ Web được định nghĩa bằng 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 của tiến trình BPEL để
kiểm tra tính thỏa mãn của LTS tương ứng. Nếu LTS thỏa mãn thuộc tính thì tiến trình
thỏa mãn yêu cầu, ngược lại thì tiến trình BPEL không thỏa mãn. Luận văn trình bày
các 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 về mô hình hóa và kiểm tra tiến trình nghiệp vụ
được trình bày trong luận văn là của riêng tôi. Những thông tin trích dẫn trong luận văn
của tôi đều được chỉ rõ nguồn gốc, và 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 .......................................................................................... 1
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ................................................................................... 1
NGUYỄN THỊ XOAN ......................................................................................................... 1
Ngành: Công nghệ thông tin................................................................................................. 1
LUẬN VĂN THẠC SĨ ......................................................................................................... 1
NGƯỜI HƯỚNG DẪN KHOA HỌC: PGS.TS. NGUYỄN VIỆT HÀ............................... 1
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 1. PHẦN MỞ ĐẦU ................................................................................................ 1
1.1. Lý do chọn đề tài ........................................................................................................ 1
1.2. Nội dung nghiên cứu .................................................................................................. 1
Chương 2. CÁC KIẾN THỨC CƠ BẢN ............................................................................. 3
2.1. Tổng quan về ngôn ngữ thực thi tiến trình nghiệp vụ BPEL (Business Process
Execution Language) ........................................................................................................ 3
2.1.2. Các hoạt động cơ bản trong tiến trình BPEL ....................................................... 5
2.1.2.3. Hoạt động quản lý lỗi và ngoại lệ ................................................................... 15
2.2. Hệ thống chuyển trạng thái được gán nhãn - LTS và 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 được 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 3. 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 4. 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ụ 1 ............................................................................................................... 32
4.2.2. Ví dụ 2 ............................................................................................................... 36
4.2.3. Ví dụ 3 ............................................................................................................... 39
Chương 5. 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

1

BPEL

Business Process Excuation Language

2

BPEL4WS

Business Process Excuation Language for Web Service

3

FSP

Finite State Processes

4


LTS

Labeled Transition System

5

LTSA

Labeled Transition System Analyser

6

XML

eXtensible Markup Language

7

WS-BPEL

Web Services Business Process Excuation Language

8

WSDL

Web Services Description Language

9


WSFL

Web Service Flow Language


vii
DANH MỤC CÁC BẢNG BIỂU
Bảng 2.1. Mô tả các hành động trong ngôn ngữ BPEL và ý nghĩa ........................... 5


viii
DANH MỤC HÌNH VẼ
Hình 2.1. Cấu trúc tiến trình BPEL cơ bản ............................................................... 4
Hình 2.2. Hệ thống chuyển trạng thái được 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 của hành động empty....................................................................... 22
Hình 3.2. LTS tương ứng của hành động invoke .................................................... 22
Hình 3.3. LTS tương ứng của hành động receive ................................................... 23
Hình 3.4. LTS của hành động reply ........................................................................ 24
Hình 3.5. LTS tương ứng của assign ....................................................................... 24
Hình 3.6. LTS của hành động sequence .................................................................. 25
Hình 3.7. LTS tương ứng của hành động if có 2 nhánh if và else .......................... 26
Hình 3.8. LTS tương ứng của hành động If chỉ có 1 nhánh if ................................ 26
Hình 3.9. LTS tương ứng của hành động While ..................................................... 27
Hình 3.10. LTS tương ứng của hành động pick ...................................................... 27
Hình 3.11. LTS tương ứng của hành động flow...................................................... 28
Hình 3.12. LTS tương ứng của hành động wait ...................................................... 29
Hình 3.13. LTS tương ứng của hành động exit ....................................................... 29
Hình 3.14.LTS tương ứng của hành động throw..................................................... 30

Hình 4.1. Tiến trình BPEL trên nền 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 năng lấy về ID của tiến trình được thực hiện
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 được sinh ra bởi tiến trình BPEL trong ví dụ 3.2.1 34
Hình 4.6. Chức năng compile và compose của công cụ LTSA .............................. 35
Hình 4.7. LTS của tiến trình COMPOSE1 khi không đạt đến trạng thái lỗi. ......... 36
Hình 4.8. LTS của tiến trình COMPOSE1 đạt đến trạng thái lỗi. ........................... 36
Hình 4.9. Tiến trình BPEL của hành động while. ................................................... 37


ix
Hình 4.10. Ký pháp FSP tương ứng của 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 quả ở trạng thái không có lỗi ................................................... 39
Hình 4.13.LTS kết quả ở trạng thái có lỗi ............................................................... 39
Hình 4.14.Tính diện tích của phần hình giới hạn .................................................... 40
Hình 4.15.Mô hình hoạt động của bài toán ............................................................. 40
Hình 4.16.Tiến trình BPEL mô tả bài 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ả bài toán tính diện tích 42
Hình 4.18. LTS tương ứng của bài toán tính diện tích ............................................ 42
Hình 4.19. LTS kết quả đạt đến trạng thái không lỗi .............................................. 43
Hình 4.20. LTS kết quả đạt đến trạng thái lỗi ......................................................... 43


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 các

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ỉ: />
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 chỉ như sau: />[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.



×