Làm thế nào để bao gồm các điều kiện trong sơ đồ trình tự UML?


12

Tôi thích vẽ sơ đồ trình tự UML để hiển thị chuỗi hành động và tương tác của các phần khác nhau trong hệ thống của tôi (tôi nghĩ chúng được gọi là diễn viên).

Tuy nhiên, tôi cần bao gồm các if then elsetuyên bố ở đây. Tôi có làm gì sai không? Tôi có thể sử dụng điều kiện nếu các câu lệnh trong sơ đồ trình tự UML của mình không? Làm sao?

Câu trả lời:


18

Như trong nhiều loại sơ đồ UML, bạn có thể sử dụng các bộ bảo vệ để biểu thị một điều kiện. Một người bảo vệ là một biểu thức boolean mà bạn có thể viết qua một chuyển đổi.

Đây là một hình ảnh với một ví dụ: nhập mô tả hình ảnh ở đây

Lưu ý điều kiện "[pastDueBalance = 0]".

Bạn cũng có thể sử dụng các đoạn kết hợp cho logic điều kiện phức tạp hơn. Xem bài viết msDN tốt đẹp này để biết thêm thông tin.


4

Có bốn khả năng tôi biết (với sức mạnh ngày càng tăng):

  1. Đơn giản nhất chỉ là sử dụng các vệ sĩ , đó là các biểu thức boolean miễn phí đơn giản, có tác dụng phụ.
  2. Với các đoạn kết hợp (xem ví dụ trang 54), bạn có thể nhóm các nhóm thông báo lại với nhau để hiển thị luồng có điều kiện trong sơ đồ trình tự (các lựa chọn thay thế, tùy chọn, vòng lặp)
  3. Mạnh mẽ hơn nhiều là Ngôn ngữ ràng buộc đối tượng (OCL) , có thể định lượng bổ sung (cho tất cả, tồn tại) và cung cấp một ngôn ngữ Hợp đồng chính thức (DesignBy-) (gần như biểu cảm như logic thứ tự đầy đủ đầu tiên).
  4. Cách mạnh mẽ nhất là thể hiện ràng buộc của bạn bằng cách sử dụng Ngôn ngữ hành động UML từ UML có thể thực thi (xUML) phù hợp với ngữ nghĩa hành động UML.

Sự lựa chọn của tôi sẽ là thứ ít mạnh nhất mà vẫn đủ rõ ràng cho những gì bạn muốn làm. Chẳng hạn, các hành động trong 4. có thể có tác dụng phụ, khiến chúng dễ vỡ hơn nhiều so với OCL.


2

Mặc dù sơ đồ trình tự là hoàn hảo cho mô tả của bạn, hãy đảm bảo kiểm tra Sơ đồ hoạt động.

Khi bạn muốn hiển thị chi tiết nội bộ (bao gồm các quy tắc chi tiết), Sơ đồ hoạt động là những gì bạn muốn sử dụng. Các sơ đồ hoạt động đơn giản tập trung vào chuỗi các hoạt động và quy tắc và rất kém trong việc thể hiện trách nhiệm của Diễn viên, tuy nhiên, bạn có thể sử dụng các làn bơi để thực hiện các trách nhiệm của từng diễn viên. Mỗi làn đường sẽ bao gồm các hoạt động mà một diễn viên chịu trách nhiệm.

Các liên kết này thảo luận về sơ đồ hoạt động với các làn bơi:

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.