Read this post in: de_DEen_USes_ESfr_FRhi_INid_IDjapl_PLpt_PTru_RUzh_CNzh_TW

Tất cả những gì bạn cần biết về sơ đồ trình tự: Hướng dẫn toàn diện

Giới thiệu

UMLSơ đồ trình tự là các sơ đồ tương tác mô tả chi tiết cách thức các thao tác được thực hiện. Chúng ghi lại tương tác giữa các đối tượng trong bối cảnh hợp tác. Sơ đồ trình tự tập trung vào thời gian và hiển thị thứ tự tương tác một cách trực quan bằng cách sử dụng trục đứng của sơ đồ để biểu diễn thời gian, các tin nhắn được gửi và lúc nào chúng được gửi.

Sơ đồ trình tự là gì?

Sơ đồ trình tự, còn được gọi là sơ đồ tuần tự, là một sơ đồ tương tác UML. Nó thể hiện sự hợp tác động giữa nhiều đối tượng bằng cách mô tả thứ tự theo thời gian mà các tin nhắn được gửi giữa chúng.

Trong UML, một đối tượng trong sơ đồ trình tự được vẽ dưới dạng hình chữ nhật chứa tên đối tượng, được gạch chân. Một đối tượng có thể được đặt tên theo một trong ba cách:

  • Tên đối tượng

  • Tên đối tượng và lớp của nó

  • Chỉ tên lớp (đối tượng ẩn danh)

Chỉnh sửa sơ đồ trình tự này

Các đối tượng trong sơ đồ trình tự

  1. Hiển thị thứ tự tương tác giữa các đối tượng: Mô hình hóa hành vi tương tác dưới dạng truyền tin nhắn, và hiển thị tương tác giữa các đối tượng một cách động bằng cách mô tả cách thức tin nhắn được gửi và nhận giữa chúng.

  2. Nhấn mạnh theo thời gian: So với các sơ đồ UML khác, sơ đồ trình tự nhấn mạnh hơn vào thứ tự theo thời gian của hành vi tương tác.

  3. Trực quan hóa tính đồng thời: Nó có thể mô tả trực quan quá trình đồng thời.

Các thành phần của sơ đồ trình tự

  1. Người dùng hệ thống: Các tác nhân hệ thống, có thể là con người, máy móc, các hệ thống khác, các hệ con; được sử dụng để biểu diễn trong sơ đồ trình tự theo thời gian.

  2. Đối tượng: Có ba cách đặt tên đối tượng:

    • Đối tượng có tên và lớp: Bao gồm tên đối tượng và tên lớp, ví dụ: đối tượng: lớp

    • Đối tượng ẩn danh: Chỉ hiển thị tên lớp, ví dụ: :khóa học

    • Chỉ đối tượng có tên: Hiển thị tên đối tượng nhưng không hiển thị tên lớp, ví dụ: giảng viên

    Ba phương pháp đặt tên đều có sẵn; hãy chọn phương pháp dễ hiểu nhất đối với những người đọc sơ đồ.

  3. Thứ tự của các đối tượng:

    • Thứ tự bên trái và bên phải của các đối tượng không quan trọng

    • Đặt các đối tượng có tương tác thường xuyên càng gần nhau càng tốt

    • Đặt đối tượng khởi tạo toàn bộ hoạt động tương tác ở đầu bên trái

Dây đời sống

Một đường nét đứt kéo dài xuống từ biểu tượng đối tượng trong sơ đồ tuần tự, cho biết đối tượng đã tồn tại bao lâu.

Vùng kiểm soát (Kích hoạt)

Cũng được gọi là khoảng thời gian kích hoạt, đây là ký hiệu cho khoảng thời gian mà đối tượng sẽ thực hiện thao tác tương ứng. Nó có thể được hiểu như một cặp dấu ngoặc { } trong ngữ nghĩa C; được biểu diễn bằng một hình chữ nhật nhỏ. Nó đại diện cho khoảng thời gian mà một phần tử đang thực hiện một thao tác. Phần trên và phần dưới của hình chữ nhật được căn chỉnh với thời điểm bắt đầu và thời điểm hoàn thành tương ứng.

Tin nhắn

Tin nhắn thường được phân loại thành ba loại:

  1. Tin nhắn đồng bộ: Người gửi tin nhắn chuyển quyền kiểm soát cho người nhận tin nhắn, sau đó dừng hoạt động và chờ người nhận tin nhắn từ bỏ hoặc trả lại quyền kiểm soát, điều này được dùng để chỉ sự đồng bộ.

  2. Tin nhắn bất đồng bộ: Người gửi tin nhắn truyền tín hiệu cho người nhận tin nhắn thông qua tin nhắn và sau đó tiếp tục hoạt động mà không chờ người nhận trả lại tin nhắn hoặc quyền kiểm soát. Người nhận và người gửi tin nhắn bất đồng bộ đang hoạt động song song.

  3. Tin nhắn trả về: Chỉ ra việc trả về từ một lời gọi thủ tục.

Tin nhắn tạo và hủy

Các thành viên không nhất thiết phải tồn tại trong suốt toàn bộ thời gian tương tác của sơ đồ tuần tự. Các thành viên có thể được tạo ra và hủy bỏ tùy theo các tin nhắn đang được truyền đi.

  • Tin nhắn tạo: Tạo đối tượng nhận. Người gửi đã tồn tại từ đầu tương tác sẽ được đặt ở đầu sơ đồ. Các đối tượng được tạo ra trong quá trình tương tác thông qua lời gọi hàm tạo sẽ tự động được đặt ở phía dưới sơ đồ.

  • Tin nhắn hủy: Hủy đối tượng nhận. Có những cách khác để chỉ ra rằng một đối tượng bị hủy trong quá trình tương tác. Chỉ khi hủy đối tượng được đặt thành ‘sau destructor’ thì bạn mới cần dùng destructor.

Tin nhắn không tức thời

Các tin nhắn thường được coi là tức thời, do đó thời gian để đến người nhận là không đáng kể. Các tin nhắn được vẽ dưới dạng mũi tên ngang. Để chỉ ra rằng mất một khoảng thời gian nhất định trước khi người nhận thực sự nhận được tin nhắn, một mũi tên xiên được sử dụng.

Các mảnh kết hợp

Một mảnh chuỗi được biểu diễn dưới dạng một hộp gọi là mảnh kết hợp, bao gồm một phần tương tác trong sơ đồ chuỗi. Toán tử mảnh (ở góc trên bên trái) cho biết loại mảnh.

Các mảnh tương tác cho phép bạn nhóm các tin nhắn liên quan trong sơ đồ chuỗi. Có sẵn nhiều loại mảnh được định nghĩa trước, cho phép bạn xác định kết quả thay thế, tin nhắn song song hoặc vòng lặp.

Các mảnh trong sơ đồ chuỗi là các khung hình chữ nhật được vẽ trên một phần của sơ đồ. Chúng đại diện cho cấu trúc điều kiện ảnh hưởng đến luồng tin nhắn. Các khung này được gọi là mảnh kết hợp trong tài liệu UML, và các hộp chứa được gọi là toán tử tương tác. Các khung được đánh nhãn ở góc trên bên trái. Nhãn này được gọi là toán tử tương tác trong UML.

Ví dụ – Tình huống đặt hàng

Một thành viên tàu muốn đặt hàng trực tuyến. Các mặt hàng đã đặt sẽ được gửi đến thành viên bằng xe chuyển phát nhanh hoặc thư thường, tùy thuộc vào trạng thái thành viên của cô ấy (VIP, thành viên thường). Nếu thành viên chọn tùy chọn thông báo trong đơn hàng, cửa hàng sẽ gửi thông báo xác nhận đến thành viên.

Chỉnh sửa sơ đồ chuỗi này

Một ví dụ khác: Đặt hàng

Sơ đồ chuỗi là một sơ đồ hai chiều với trục ngang biểu diễn các đối tượng và trục dọc biểu diễn thời gian, nơi các tin nhắn được truyền theo chiều ngang giữa các đối tượng và được sắp xếp theo chiều dọc theo thứ tự thời gian. Ví dụ minh họa một sơ đồ chuỗi với ba đối tượng tham gia: Khách hàng, Đơn hàng và Kho hàng.

  1. Bước 1 và 2: Khách hàng tạo một đơn hàng.

  2. Bước 3: Khách hàng thêm các mặt hàng vào đơn hàng.

  3. Bước 4, 5: Mỗi mặt hàng được kiểm tra tính sẵn có trong kho.

  4. Bước 6, 7, 8: Nếu sản phẩm có sẵn, nó sẽ được thêm vào đơn hàng.

  5. Bước 9: Trả về

  6. Bước 10, 11: Lưu và hủy đơn hàng

Chỉnh sửa sơ đồ chuỗi này

Các mảnh kết hợp thường được sử dụng

Các loại mảnh bao gồm ref, assert, loop, break, alt, opt và neg, ref, sd.

Toán tử Ý nghĩa
alt Nhiều mảnh thay thế: chỉ có một phần có điều kiện đúng mới được thực thi.
opt Tùy chọn: phần này chỉ được thực thi nếu điều kiện được cung cấp là đúng. Tương đương với alt chỉ có một nhánh.
par Song song: mỗi phần được thực thi song song.
loop Vòng lặp: phần này có thể được thực thi nhiều lần, và điều kiện bảo vệ chỉ ra cơ sở lặp lại.
critical Vùng nghiêm trọng: phần này chỉ có thể có một luồng thực thi tại một thời điểm.
neg Tiêu cực: phần này hiển thị một tương tác không hợp lệ.
ref Tham chiếu: tham chiếu đến một tương tác được định nghĩa trên sơ đồ khác. Khung được vẽ để bao phủ các đường đời tham gia vào tương tác. Bạn có thể định nghĩa tham số và giá trị trả về.
sd Sơ đồ tuần tự: được dùng để bao quanh toàn bộ sơ đồ tuần tự.

Lưu ý quan trọng:

  • Có thể kết hợp các khung để ghi lại, ví dụ như vòng lặp hoặc nhánh.

  • Từ khóa phần kết hợp: alt, opt, break, par, seq, strict, neg, critical, ignore, consider, assert và loop.

  • Các ràng buộc thường được dùng để hiển thị các ràng buộc về thời gian trên các tin nhắn. Chúng có thể áp dụng cho thời gian của một tin nhắn hoặc khoảng thời gian giữa các tin nhắn.

Ví dụ về các phần kết hợp

1. Lựa chọn (Alt)

Một phần thay thế cung cấp nhiều phần thay thế được bảo vệ (tách biệt bởi các toán tử tương tác), tức là dùng để xác định các lựa chọn loại trừ lẫn nhau giữa hai hoặc nhiều chuỗi tin nhắn, tương đương với if..else… cổ điển.

Chỉnh sửa sơ đồ trình tự này

2. Tùy chọn (Opt)

Chứa một chuỗi các trường hợp xảy ra hoặc không xảy ra có thể, điều này có nghĩa là một đoạn tùy chọn chỉ được thực thi nếu một điều kiện bảo vệ nào đó là đúng:

Chỉnh sửa sơ đồ trình tự này

3. Vòng lặp (Loop)

Một vòng lặp cho phép một đoạn được lặp lại cho đến khi một điều kiện bảo vệ nào đó trở thành sai:

Chỉnh sửa sơ đồ trình tự này

4. Thoát

Một lệnh thoát cho phép thoát khỏi vòng lặp bao quanh khi một điều kiện bảo vệ nào đó trở thành đúng:

Chỉnh sửa sơ đồ trình tự này

Các lệnh thoát thường được dùng để mô hình hóa xử lý ngoại lệ. Ví dụ sơ đồ trình tự này sử dụng một đoạn kết hợp thoát vì nó coi điều kiện balance < amount là một ngoại lệ thay vì một luồng thay thế. Để đọc ví dụ này, chúng ta bắt đầu từ góc trên bên trái của sơ đồ trình tự và đọc xuống dưới. Khi trình tự đến giá trị trả về “balance”, nó kiểm tra xem số dư có nhỏ hơn số tiền hay không. Nếu số dư không nhỏ hơn số tiền, tin nhắn tiếp theo được gửi là tin nhắn addDebitTransaction, và trình tự tiếp tục như bình thường.

5. Song song

Một đoạn song song cho phép nhiều tương tác chạy đồng thời:

Chỉnh sửa sơ đồ trình tự này

Khung

Một khung cung cấp cách để đóng gói một sơ đồ trình tự.

Chỉnh sửa sơ đồ trình tự này

Tham chiếu (Ref)

Một khung có thể được tham chiếu trong một sơ đồ trình tự khác:

Chỉnh sửa sơ đồ trình tự này

Các giao thức

Chỉnh sửa sơ đồ trình tự này

Sự hợp tác

Chỉnh sửa sơ đồ trình tự này

Các tình huống

Chỉnh sửa sơ đồ trình tự này

Tín hiệu và tiếp nhận

Một người đấu giá phát sóng một mức giá đề xuất cho một món hàng đến một căn phòng chật kín những người tham gia đấu giá lo lắng. Khi một người tham gia nghe thấy đề xuất, họ quyết định chấp nhận mức giá đó hay không.

Trong một cuộc đấu giá tự động, người đấu giá sẽ phát sóng đề xuất như thế nào? Một đối tượng có thể có các thao tác được chỉ định sẽ tự động được gọi nếu nhận được một số loại tín hiệu phát sóng nhất định. Những phương thức này được gọi là tiếp nhận. Tín hiệu là một loại lớp đặc biệt. Tên của tiếp nhận thường trùng với tên của tín hiệu. Các tiếp nhận được hiển thị trong một ngăn riêng biệt:

Chỉnh sửa sơ đồ trình tự này

Trong sơ đồ tuần tự, chúng ta có thể biểu diễn một tín hiệu như một tín hiệu bất đồng bộ, và việc nhận như một lời gọi thực thi:

Chỉnh sửa sơ đồ tuần tự này

Quan trọng

Chỉnh sửa sơ đồ tuần tự này

Các loại khối khác

  • Chặt chẽ

  • Xác nhận

  • Xem xét

  • Bỏ qua

  • Vùng

  • Phủ định

Tóm tắt ký hiệu sơ đồ tuần tự

Mô tả ký hiệu Biểu diễn trực quan
Nhân vật

  • một loại vai trò do một thực thể thực hiện khi tương tác với chủ thể (ví dụ: bằng cách trao đổi tín hiệu và dữ liệu)
  • bên ngoài chủ thể (tức là, theo nghĩa một thể hiện của nhân vật không phải là một phần của thể hiện tương ứng với chủ thể của nó).
  • biểu diễn các vai trò do người dùng, phần cứng bên ngoài hoặc các chủ thể khác thực hiện.

Lưu ý rằng:

  • Một nhân vật không nhất thiết phải đại diện cho một thực thể vật lý cụ thể mà chỉ đơn thuần là một vai trò cụ thể của một thực thể nào đó
  • Một người có thể đảm nhận vai trò của nhiều nhân vật khác nhau và ngược lại, một nhân vật cụ thể có thể do nhiều người khác nhau đảm nhận.
UML Sequence Diagram: Actor example
Dây sống

  • Một dây sống biểu diễn một thành viên riêng lẻ trong tương tác.
UML Sequence Diagram: Lifeline example
Kích hoạt

  • Một hình chữ nhật mỏng trên dây sống biểu diễn khoảng thời gian mà một thành phần đang thực hiện một thao tác.
  • Phần trên và phần dưới của hình chữ nhật được căn chỉnh tương ứng với thời điểm khởi đầu và thời điểm hoàn thành
UML Sequence Diagram: Activation example
Tin nhắn gọi

  • Một tin nhắn xác định một loại giao tiếp cụ thể giữa các dây sống trong một tương tác.
  • Tin nhắn gọi là một loại tin nhắn biểu diễn lời gọi thực thi thao tác của dây sống đích.
UML Sequence Diagram: Call message example
Tin nhắn trả về

  • Một thông điệp xác định một loại giao tiếp cụ thể giữa các đường đời trong một tương tác.
  • Thông điệp trả về là một loại thông điệp đại diện cho việc truyền thông tin trở lại người gọi của thông điệp trước tương ứng.
UML Sequence Diagram: Return message example
Thông điệp Tự thân

  • Một thông điệp xác định một loại giao tiếp cụ thể giữa các đường đời trong một tương tác.
  • Thông điệp tự thân là một loại thông điệp đại diện cho việc gọi thông điệp từ cùng một đường đời.
UML Sequence Diagram: Self message example
Thông điệp Đệ quy

  • Một thông điệp xác định một loại giao tiếp cụ thể giữa các đường đời trong một tương tác.
  • Thông điệp đệ quy là một loại thông điệp đại diện cho việc gọi thông điệp từ cùng một đường đời. Mục tiêu của nó trỏ đến một hoạt động nằm trên hoạt động nơi thông điệp được gọi.
UML Sequence Diagram: Recursive message example
Thông điệp Tạo

  • Một thông điệp xác định một loại giao tiếp cụ thể giữa các đường đời trong một tương tác.
  • Thông điệp tạo là một loại thông điệp đại diện cho việc khởi tạo (đường đời đích).
UML Sequence Diagram: Create message example
Thông điệp Xóa

  • Một thông điệp xác định một loại giao tiếp cụ thể giữa các đường đời trong một tương tác.
  • Thông điệp hủy là một loại thông điệp đại diện cho yêu cầu hủy vòng đời của đường đời đích.
UML Sequence Diagram: Destroy message example
Thông điệp Khoảng thời gian

  • Một thông điệp xác định một loại giao tiếp cụ thể giữa các đường đời trong một tương tác.
  • Thông điệp khoảng thời gian hiển thị khoảng cách giữa hai thời điểm trong quá trình gọi thông điệp.
UML Sequence Diagram: Duration message example
Ghi chú
Một ghi chú (bình luận) cho phép gắn các nhận xét khác nhau vào các thành phần. Một bình luận không mang ý nghĩa ngữ nghĩa, nhưng có thể chứa thông tin hữu ích cho người mô hình hóa.

Tạo sơ đồ tuần tự được hỗ trợ bởi AI

Visual Paradigm cung cấp hỗ trợ mạnh mẽ được hỗ trợ bởi AI cho các sơ đồ tuần tự UML, tập trung vào việc chuyển đổi mô tả bằng ngôn ngữ tự nhiên thành các mô hình tương tác chi tiết và có cấu trúc vững chắc. Các công cụ của nó cho phép bạn bỏ qua việc vẽ thủ công, chuyển trực tiếp từ một kịch bản dựa trên văn bản sang sơ đồ chuyên nghiệp chỉ trong vài giây.

Tính năng chính của sơ đồ tuần tự được hỗ trợ bởi AI

  • Tạo ngôn ngữ tự nhiên: Bạn có thể nhập một lời nhắc đơn giản như “một người dùng đăng nhập vào một trang web,” và AI sẽ tự động xác định các bên tham gia (đường đời), luồng thông điệp và chuỗi kích hoạt.

  • Tự động hóa logic phức tạp: AI thông minh xử lý các ký hiệu UML nâng cao như các đoạn thay thế (alt), các đoạn tùy chọn (opt) và vòng lặp dựa trên mô tả văn bản logic điều kiện của bạn.

  • Công cụ tinh chỉnh AI: Ứng dụng chuyên biệt này chuyển đổi mã tương tác đơn giản hoặc lời nhắc cấp cao thành bản vẽ chi tiết MVC (Mô hình – Giao diện – Điều khiển). Nó tự động phân tích một tình huống thành các lớp kiến trúc phù hợp như thành phần Giao diện, Điều khiển và Mô hình.

  • Chỉnh sửa theo cuộc trò chuyện: Thông qua “Trợ lý trò chuyện AI của Visual Paradigm, bạn có thể tinh chỉnh sơ đồ một cách lặp lại bằng các lệnh như “Thêm trạng thái đặt lại” hoặc “Đổi tên Người dùng thành Khách hàng”.

  • Phân tích thiết kế thông minh: Bạn có thể yêu cầu AI đánh giá sơ đồ của mình, chẳng hạn như phát hiện các cuộc gọi đồng bộ cần chuyển thành bất đồng bộ để cải thiện hiệu suất hệ thống.

Ecosystem và Tích hợp

  • Truy cập đa nền tảng: Tạo sơ đồ bằng cách sử dụng Trợ lý trò chuyện AI hoặc Visual Paradigm Online, sau đó nhập chúng vào Ứng dụng Visual Paradigm Desktop để thực hiện mô hình hóa nâng cao và kỹ thuật mã hóa.

  • Tự động hóa tài liệu: AI có thể tạo tóm tắt dự án, mô hình hành vi chi tiết và tài liệu kiến trúc MVC trực tiếp từ sơ đồ trình tự của bạn.

  • Sự phối hợp giữa các mô hình: AI của Visual Paradigm có thể kết nối các loại sơ đồ khác nhau, chẳng hạn như chuyển đổi một Use Case cấp cao thành sơ đồ Hoạt động hoặc Sơ đồ Trình tự chi tiết với phân tích bước được hướng dẫn.


  1. Tài liệu tham khảo
  2. Sơ đồ Trình tự UML: Hướng dẫn toàn diện về mô hình hóa tương tác bằng AI: Hướng dẫn toàn diện về việc sử dụng AI để mô hình hóa sơ đồ trình tự UML và các tương tác
  3. Làm thế nào để chuyển đổi yêu cầu thành sơ đồ bằng trợ lý trò chuyện AI: Học cách chuyển đổi các yêu cầu văn bản thành sơ đồ trực quan bằng công nghệ trợ lý trò chuyện AI
  4. Công cụ miễn phí tinh chỉnh sơ đồ trình tự AI: Truy cập công cụ được hỗ trợ AI của Visual Paradigm để tinh chỉnh và nâng cao sơ đồ trình tự
  5. Công cụ tinh chỉnh sơ đồ trình tự AI – Visual Paradigm: Tính năng chuyên nghiệp cho việc tạo và tinh chỉnh sơ đồ trình tự hỗ trợ AI
  6. Trợ lý trò chuyện AI của Visual Paradigm: Trợ lý trò chuyện AI tương tác để tạo và chỉnh sửa sơ đồ UML thông qua ngôn ngữ tự nhiên
  7. Tính năng Trợ lý trò chuyện AI – Visual Paradigm: Tổng quan về khả năng của trợ lý trò chuyện AI trong việc tạo sơ đồ và mô hình hóa
  8. Hướng dẫn sơ đồ trình tự AI của Visual Paradigm: Video hướng dẫn minh họa việc tạo sơ đồ trình tự được hỗ trợ AI
  9. Bài đánh giá toàn diện: Các tính năng tạo sơ đồ bằng AI của Visual Paradigm: Bài đánh giá chi tiết về khả năng tạo sơ đồ bằng AI của Visual Paradigm
  10. Video minh họa tính năng AI của Visual Paradigm: Video minh họa các tính năng AI trong Visual Paradigm
  11. Hướng dẫn AI của Visual Paradigm: Hướng dẫn giới thiệu khả năng AI trong Visual Paradigm
  12. Cách hệ sinh thái được hỗ trợ bởi AI của Visual Paradigm biến đổi phát triển UML: Phân tích cách AI biến đổi quy trình làm việc phát triển UML trong Visual Paradigm