1. 4 Cấu trúc khóa luận
4.1 Biểu diễn giao thức
Một giao thức trên các đối tượng là việc gọi tuần tự các phương thức trong biểu đồ trình tự theo quy tắc được chỉ ra từ trước. Trong phạm vi khóa luận này, tôi chỉ diễn tả cách biểu diễn giao thức các giao thức cơ bản như ABn AnBm, (A*B)n. Trong đó, A,B là các giao thức còn m,n là số lần A,B được gọi trong chương trình. [5] đã kiểm chứng được các giao thức (AB)n, (A*B)n trên biểu đồ trình tự, xong chưa xử lý với precondition và postcondition. Trong phạm vi bài khóa luận tôi sẽ trình bày việc xử lý các giao thức được định nghĩa ở trên biểu đồ tuần tự, bên cạnh đó sử lý triệt để hơn các ràng buộc precondition và postcondition cho tất cả các giao thức. Trong bài khóa luận, tôi đề cập hai cách để biểu diễn giao thức:
- Biểu diễn trên biểu đồ tuần tự: Bằng cách sử dụng hai vòng lặp, là một thành phần trong combindedFragment để miêu tả giao thức trên. Bằng cách mô tả này, ta có thể mô tả hầu hết tất cả các giao thức cơ bản. Trong ví dụ dưới đây, một vòng lặp thể hiện việc gọi m lần giao thức Message2 và một vòng lặp thể hiện gọi n lần giao thức
Message4.
39
- Biểu diễn giao thức bằng biểu thức : Việc biểu diễn bằng biểu thức giúp cho việc thực hiện quá trình kiểm tra giao thức một cách nhanh chóng. Giao thức AnBm được biểu diễn bằng biểu thức [A]n[B]m.
Ví dụ : [void message2()]m [void message4()]n như trong hình vẽ. Như trong định nghĩa trên thì phương thức void message2() sẽ được gọi m lần và phương thức void message4() sẽ được gọi n lần trong mã nguồn chương trình.