Biểu đồ tuần tự giao dịch rút tiền từ máy ATM

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Kiểm tra ràng buộc thời gian sử dụng phương pháp AOP (Trang 62 - 64)

Sau khi đã đăng nhập, người dùng yêu cầu rút tiền với số lượng xác định, yêu cầu này được gửi đến đối tượng ATM, nó thực hiện đồng thời việc kiểm tra số tiền trong máy ATM ( CheckBalanceATM() ) với việc gửi yêu cầu tới đối tượng BANK yêu cầu kiểm tra số tiền trong tài khoản có đủ không qua phương thức CheckBalanceAccount(int Amount). Đến khi cả 2 thao tác trên : kiểm tra số tiền trên máy ATM và kiểm tra số dư tài khoản

thực hiện xong và trả về kết quả cho đối tượng ATM, nó sẽ giao tiếp với khách hàng, đưa ra thông báo số dư không đủ, hoặc ngược lại sẽ giao tiền cho khách hàng và trả lại thẻ.

Ràng buộc về thời gian thực hiện được đặt trong thuộc tính Constraint của mỗi Message, với thời gian thực hiện các giao dịch của máy ATM hiện nay, thường xảy ra trong vài giây đến vài chục giây.

Các thuộc tính gồm: tên phương thức, tham số đầu vào, kiểu giá trị trả về, Stereotype,… chúng ta chủ yếu dùng 3 thuộc tính đầu, và để cho tiện trong việc đọc dữ liệu từ file xml, tôi đã viết theo qui cách tên đầy đủ cho message vào thuộc tính message, như vậy khi đọc xml sẽ chỉ cần đọc tag message thì lấy được dữ liệu về message, và sẽ cần xử lý xâu đọc được để tách ra tên phương thức, đối số và kiểu trả về.

Hình 5.6. Các thuộc tính cho Message

Ở đây, chúng ta sẽ cần thực hiện theo một qui ước nhỏ về viết tên phương thức để thống nhất trong khi cài đặt và việc sinh mã Aspect, đó là : viết đầy đủ, nếu không có đối số thì sẽ viết (void).

5.2.2 chương trình sinh mã Aspect từ đặc tả UML

Dựa vào các phân tích ở trên , tôi đã cài đặt chương trình sinh tự động mã aspect cho kiểm tra ràng buộc thời gian.

Một phần của tài liệu (LUẬN VĂN THẠC SĨ) Kiểm tra ràng buộc thời gian sử dụng phương pháp AOP (Trang 62 - 64)

Tải bản đầy đủ (PDF)

(76 trang)