Bùi Duy Hải


Ngôn ngữ ràng buộc đối tượng (OCL)



tải về 0.58 Mb.
trang2/4
Chuyển đổi dữ liệu20.05.2018
Kích0.58 Mb.
#38988
1   2   3   4

Ngôn ngữ ràng buộc đối tượng (OCL)


OCL (Object constraint language) là ngôn ngữ xây dựng mô hình phần mềm được định nghĩa như một chuẩn thêm vào UML cho phân tích và thiết kế hướng đối tượng . Các biểu thức viết trong OCL phụ thuộc vào các kiểu lớp, giao diện, …) được định nghĩa trong các biểu đồ UML.

Các biểu thức viết trong OCL thêm các thông tin quan trọng cho các mô hình hướng đối tượng. Các thông tin này thường khôn thể biểu diễn trong biểu đồ. Trong UML phiên bản 1.1 các thông tin này được giới hạn bởi các ràng buộc, mỗi ràng buộc được định nghĩa như một hạn chế về giá trị nhận được( một hay nhiều) của mộ hệ thống hay mô hình hướng đối tượng. Trong UML phiên bản 2, một mô hình có thể chứa nhiều thông tin thêm hơn là chỉ có ràng buộc. Tất cả các công việc như định nghĩa truy vấn, các giá trị tham chiếu, các quy tăc nghiệp vụ hay các điều kiện trạng thái được viết bằng biểu thức trong một mô hình. OCL là ngôn ngữ chuẩn trong đó các biểu thức được viết một cách rõ ràng dễ hiểu.



Một mô hình thường có những thiếu sót do những hạn chế của các biểu đồ. Một biểu đồ đơn giản không thể biểu diễn hết các phát biểu đặc tả.

Hình 2: Mô hình UML không biểu diễn hết đặc tả

Trong mô hình, quan hệ giữa lớp Flight và lớp Person , phía lớp Person có bản số là 0…* tức là số khách hang là không giới hạn. Trong thực thế số khách hàng bị giới hạn bởi số ghế mà máy bay có, và giới hạn này không thể biểu diễn trong biểu đồ. Trong ví dụ này có một cách chỉ định ràng buộc về bản số thể hiện là thêm vào biểu đồ ràng buộc OCL sau:

context Flight



inv: passengers->size() <= plane.numberOfSeats.


    1. tải về 0.58 Mb.

      Chia sẻ với bạn bè của bạn:
1   2   3   4




Cơ sở dữ liệu được bảo vệ bởi bản quyền ©hocday.com 2024
được sử dụng cho việc quản lý

    Quê hương