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

DSpace at VNU: Nghiên cứu và xây dựng công cụ hỗ trợ mô hình hóa hệ thống Triggers bằng Event - B

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 (278.68 KB, 3 trang )

Nghiên cứu và xây dựng công cụ hỗ trợ mô
hình hóa hệ thống Triggers bằng Event - B
Nông Thị Oanh
Trường Đại học Công nghệ. Đại học Quốc gia Hà Nội
Luận văn ThS. Công nghệ thông tin : 60 48 05
Người hướng dẫn : PGS.TS. Trương Ninh Thuận
Năm bảo vệ: 2013
53 tr .
Abstract. Nghiên cứu các luật chuyển đổi giữa hệ thống cơ sở dữ liệu (CSDL) triggers
và mô hình Event-B. Xây dựng công cụ hỗ trợ mô hình hoá bán tự động hệ thống
triggers từ pha thiết kế. Các thành phần Event-B của hệ thống triggers được lưu dưới
dạng XML, có thể sử dụng cho quá trình kiểm chứng tính đúng đắn của mô hình trên
nền tảng Rodin..
Keywords. Hệ thống thông tin; Cơ sở dữ liệu; Mô hình hóa hệ thống

Content.
Triggers là các luật hoạt động trong hệ thống cơ sở dữ liệu thương mại như
Orcacle, SyBase,…được hình thành trong cấu trúc Event - Condition -Action (ECA).
Triggers được sử dụng thường xuyên và rộng rãi trong hệ thống cơ sở dữ liệu của
nhiều ứng dụng để thực hiện các thao tác tự động và đảm bảo tính ràng buộc toàn vẹn.
Trong một số cơ sở dữ liệu thương mại, triggers có hai loại: triggers DML và triggers
hệ thống. Triggers DML được kích hoạt khi các sự kiện DELETING, UPDATING,
INSERTING xuất hiện, còn triggers hệ thống giống như thủ tục lưu trữ có chứa các
đoạn mã PL/SQL. Các đoạn mã này con người có thể đọc được và không có ngữ nghĩa
hình thức. Vì vậy, chúng ta chỉ có thể kiểm chứng nếu trigger kết thúc hoặc xung đột
với tính ràng buộc toàn vẹn sau khi thi hành nó hoặc kiểm tra từng bước một. Do đó
mô hình hoá triggers bằng các phương pháp hình thức là hết sức cần thiết. Một số công
trình đã cố gắng giải quyết vấn đề này bằng cách áp dụng các giải thuật tìm kiếm tính
dừng hoặc kiểm chứng mô hình [4], [5]. Tuy nhiên, hầu hết các kết quả đều tập trung
vào tính chất dừng, trong khi một số ít giải quyết cả hai tính dừng và ràng buộc toàn
vẹn của hệ thống cơ sở dữ liệu. Hơn nữa, các phương pháp tiếp cận dường như rất




phức tạp mà chúng ta không thể áp dụng vào trong phát triển cơ sở dữ liệu.
Phương pháp B [6] là phương pháp phát triển phần mềm hình thức, ban đầu được
J.-R. Abrial viết. Ký hiệu của phương pháp B dựa trên lý thuyết tập hợp, phép thay thế
tổng quát và logic bậc nhất. Event – B [7] được kế thừa từ phương pháp B, phù hợp
hơn cho phát triển hệ thống phân tán và phản hồi lớn. Phát triển phần mềm trong Event
– B bắt đầu bằng mô tả các yêu cầu của hệ thống ở mức trừu tượng và sau đó làm mịn
chúng qua các bước để đạt được sự mô tả hệ thống chi tiết của hệ thống để có thể
chuyển đổi sang mã nguồn. Tính nhất quán của mỗi mô hình và mối quan hệ giữa mô
hình trừu tượng và mô hình làm mịn thu được bằng chứng minh hình thức. Các công
cụ hỗ trợ được cung cấp cho đặc tả Event – B và chứng minh trong nền tảng Rodin.
Từ yêu cầu kiểm chứng các triggers và ưu điểm của Event-B, việc phát triển các
công cụ phần mềm hỗ trợ quá trình mô hình hoá bằng Event-B có ý nghĩa thực tiễn
quan trọng trong qui trình phát triển các ứng dụng cơ sở dữ liệu. Trên cơ sở những
phân tích trên, được sự định hướng và chỉ bảo của PGS.TS Trương Ninh Thuận, tôi đã
lựa chọn đề tài: “Nghiên cứu và xây dựng công cụ hỗ trợ mô hình hóa hệ thống
triggers bằng Event-B” làm luận văn tốt nghiệp của mình.
Trong luận văn này, chúng tôi dựa vào một cách tiếp cận hình thức hóa hệ thống
trigger cơ sở dữ liệu bằng phương pháp chứng minh Event – B [5]. Ý tưởng tiếp cận
này được xuất phát từ sự tương quan giữa cấu trúc của sự kiện Event – B và ECA. Đầu
tiên, chúng tôi chuyển đổi hệ thống cơ sở dữ liệu sang mô hình Event – B. Bước tiếp
theo chúng tôi đưa mô hình tiếp cận thực tế bằng cách sử dụng nền tảng Rodin để kiểm
chứng thuộc tính là tính dừng và các ràng buộc khác dựa trên công cụ chứng minh tự
động. Ưu điểm của cách tiếp cận này là hệ thống cơ sở dữ liệu thực bao gồm các
trigger và các ràng buộc được mô hình hóa dễ dàng bằng cụm từ diễn tả logic trong
Event – B như INVARIANTS và EVENTS. Do đó, tính đúng đắn của hệ thống có thể
được chứng minh bằng phương pháp hình thức. Điều đó đặc biệt quan trọng cho các
nhà phát triển cơ sở dữ liệu khi mà biết chắc chắn hệ thống trigger tránh được các vấn
đề nghiêm trọng ở thời gian thiết kế. Hơn nữa, cách tiếp cận gần với thực tế mà chúng

tôi có thể triển khai một công cụ theo ý tưởng chính để chuyển đổi mô hình cơ sở dữ
liệu từ Event – B sang nền tảng Rodin tự động (hoặc tự động một phần). Luận văn
gồm một số nội dung chính như sau:
Chương 1: Tổng quan về Trigger trong cơ sở dữ liệu - nội dung được trình
bày trong chương bao gồm: khái niệm, cách tạo trigger, các thành phần của trigger,
phân loại trigger.
Chương 2: Ngôn ngữ Event-B - trình bày về cấu trúc của mô hình Event-B gồm


Máy, Ngữ cảnh, sự kiện của Event-B.
Chương 3: Mô hình hóa và kiểm chứng hệ thống trigger bằng Event-B –
trình bày về các định nghĩa được ánh xạ sang các khái niệm của Event-B, các luật
chuyển đổi giữa hệ thống trigger sang mô hình Event-B; đưa ra cách tiếp cận chi tiết,
mô hình hóa hệ thống trigger cụ thể trong ví dụ 3.4 và giới thiệu những thông tin và
các nghiên cứu liên quan đến công việc cho đến nay.
Chương 4: Xây dựng công cụ hỗ trợ mô hình hóa hệ thống trigger bằng
Event-B – trình bày về chức năng, giao diện và hướng dẫn sử dụng chương trình.

TÀI LIỆU THAM KHẢO
1. Choi, E.-H., Tsuchiya, T., Kikuno, T., “Model checking active database rules”.
Technical report, AIST CVS, Osaka University, Japan (2006)
2. Ghazi, T., Huth, M., “An Abstraction-Based Analysis of Rule Systems for Active
Database Management Systems”. Technical report, Kansas State University, Technical
Report KSU-CIS-98-6, p.15 (April 1998)
3. Hong Anh Le and Ninh Thuan Truong, “Modeling and Verifying DML Triggers
Using Event-B”, 5th ACCIDS, 2013.
4. Lee, S.-Y., Ling, T.-W., “Are your trigger rules correct?” In: Proceedings of the 9th
International Workshop on Database and Expert Systems Applications, DEXA 1998,
p. 837. IEEE Computer Society, Washington, DC (1998)
5. Lee, S.-Y., Ling, T.-W., “Verify Updating Trigger Correctness”. In: Bench-Capon,

T.J.M., Soda, G., Tjoa, A.M. (1999)
6. B method web site (2012),
7. Event-b and the rodin platform (2012),
8. Oracle7 Server Concepts Manual (2012), />


×