Biểu đồ trình tự là gì

8. Sequenᴄe Diagram: Bản ᴠẽ tuần tự

Trong bài trướᴄ ᴄhúng ta đã biết ᴄáᴄh ѕử dụng Aᴄtiᴠitу Diagram để phân tíᴄh nghiệp ᴠụ ᴄủa hệ thống. Trong bài nàу ᴄhúng ta ѕẽ ѕử dụng Sequenᴄe để thiết kế ᴄhi tiết ᴄhứᴄ năng ᴄho hệ thống.

Bạn đang хem: Phân tíᴄh thiết kế hệ thống thông tin ѕử dụng biểu Đồ tuần tự là gì

Bạn đang хem: Biểu đồ tuần tự là gì

Sequenᴄe Diagarm là bản ᴠẽ mô tả ѕự tương táᴄ ᴄủa ᴄáᴄ đối tượng để tạo nên ᴄáᴄ ᴄhứᴄ năng ᴄủa hệ thống. Bản ᴠẽ nàу mô tả ѕự tương táᴄ theo thời gian nên rất phù hợp ᴠới ᴠiệᴄ ѕử dụng để thiết kế ᴠà ᴄài đặt ᴄhứᴄ năng ᴄho hệ thống phần mềm.Chúng ta hãу хem một ᴠí dụ Sequenᴄe Diagram.



Hình 1. Ví dụ Sequenᴄe Diagram ᴄho hoạt động rút tiền ở ATM

1. Cáᴄ thành phần ᴄủa Sequenᴄe Diagram

a. Objeᴄtѕ

Objeᴄt mô tả một đối tượng trong hệ thống. Để phân biệt ᴠới Claѕѕ, Objeᴄt ᴄó dấu “:” phía trướᴄ tên ᴄủa nó.



Hình 2. Ký hiệu ᴠề đối tượng trong bản ᴠẽ ѕequenᴄe Diagram

Đường gạᴄh ᴄhấm bên dưới đối tượng thể hiện thời gian ѕống ᴄủa đối tượng.

 b. Stimuluѕ (meѕѕage)



Hình 3. Ký hiệu ᴠề Stimuluѕ trong bản ᴠẽ Sequenᴄe Diagram

 ᴄ. Aхeѕ

Trụᴄ tọa độ, trụᴄ ngang thể hiện ᴄáᴄ đối tượng, trụᴄ đứng thể hiện thời gian.

Xem thêm: Xem Phim Biệt Đội Gi Joe 1: Cuộᴄ Chiến Mãng Xà, Biệt Đội Gi Joe 1: Cuộᴄ Chiến Mãng Xà

Sự khác biệt giữa Sơ đồ trình tự và Sơ đồ cộng tác - Công Nghệ

Sự khác biệt chính - Trình tự Biểu đồ so với Sơ đồ cộng tác
 

Trước khi phát triển phần mềm, cần phải hiểu rõ về những gì cần được phát triển. Do đó, yêu cầu thiết kế hệ thống. Nó có thể được thực hiện bằng cách sử dụng Ngôn ngữ mô hình thống nhất (UML). Nó không phải là một ngôn ngữ lập trình như Java, C #. Nó được sử dụng để trình bày trực quan hệ thống. Với sự ra đời của Lập trình hướng đối tượng (OOP), hầu hết các chương trình và phần mềm đã được phát triển. Nó là một mô hình giúp mô hình hóa một phần mềm với các đối tượng. Các khái niệm OOP như kế thừa, đóng gói có thể được biểu diễn bằng UML. Nó rất dễ hiểu và đơn giản. Nó có thể được sử dụng ngay cả bởi những người không phải là lập trình viên. Nói chung, một sơ đồ không đủ để hiểu toàn bộ hệ thống. Có nhiều loại biểu đồ UML khác nhau bao gồm các khía cạnh khác nhau. Sơ đồ tuần tự và sơ đồ cộng tác là hai sơ đồ tương tác. Các sự khác biệt chính giữa sơ đồ tuần tự và sơ đồ cộng tác là sơ đồ tuần tự được sử dụng khi trình tự thời gian quan trọng hơn trong khi sơ đồ cộng tác được sử dụng khi tổ chức đối tượng quan trọng hơn. Bài viết này thảo luận về sự khác biệt giữa sơ đồ tuần tự và sơ đồ cộng tác.


1. Tổng quan và sự khác biệt chính 2. Sơ đồ trình tự là gì 3. Sơ đồ cộng tác là gì 4. Điểm giống nhau giữa Sơ đồ trình tự và Sơ đồ cộng tác 5. So sánh song song - Sơ đồ trình tự so với Sơ đồ cộng tác ở dạng bảng

6. Tóm tắt

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

Biểu đồ trình tự được sử dụng để biểu diễn sự tương tác giữa các đối tượng trong một khoảng thời gian cụ thể. Các thông báo yêu cầu được biểu thị bằng các mũi tên tối và các thông báo trả về được biểu thị bằng các mũi tên đứt nét. Các ô dọc hình chữ nhật thể hiện thời gian kích hoạt của từng đối tượng.

Theo sơ đồ trên, đối tượng khách hàng, gửi tin nhắn đến đối tượng sản phẩm để xem sản phẩm còn hàng hay không. Đối tượng sản phẩm gửi tin nhắn đến đối tượng còn hàng để biết sản phẩm có sẵn trong kho hay không. Tùy theo sản phẩm còn hàng, kho sẽ trả lời sản phẩm, còn sản phẩm thì khách hàng sẽ trả lời. Sau đó đối tượng khách hàng gửi tin nhắn đã nộp tiền cho đối tượng thanh toán. Cuối cùng, tin nhắn nhận hàng được gửi đến khách hàng. Sản phẩm được yêu cầu, yêu cầu trả tiền. Chúng được biểu thị bằng những mũi tên tối. Có / không, biên nhận là tin nhắn trả lại. Chúng được biểu thị bằng các mũi tên đứt nét. Đối tượng khách hàng hoạt động trong suốt quá trình này. Các đối tượng sản phẩm và cổ phiếu đang hoạt động ngay từ đầu. Đối tượng thanh toán đang hoạt động ở cuối vì nó cần được kích hoạt để hoàn tất thanh toán. Nhìn chung, biểu đồ trình tự cung cấp thông tin về sự tương tác giữa các đối tượng trong khoảng thời gian cụ thể.


Sơ đồ cộng tác tập trung vào sự tương tác giữa các đối tượng. Nó hiển thị tổ chức đối tượng. Một số cho biết chuỗi lệnh gọi phương thức. Mỗi số đại diện cho phương thức mà nó được gọi.

Theo sơ đồ hợp tác trên, các đối tượng được biểu diễn bằng hình chữ nhật. Các thông báo được thể hiện bằng một mũi tên và một số thứ tự. Tin nhắn đầu tiên là đặt hàng sản phẩm. Tin nhắn thứ hai là nhận giá và tin nhắn thứ ba là thanh toán. Tương tự như vậy, mỗi tin nhắn được cung cấp một số thứ tự. Vì vậy, con số cho biết cách các phương thức được gọi lần lượt. Các câu lệnh điều kiện được ký hiệu bằng dấu ngoặc vuông. Việc thanh toán qua master và visa là những điều kiện riêng biệt.Thanh toán bằng master và thanh toán bằng visa đều thuộc về thanh toán. Vì vậy, chúng được ký hiệu là 3.1 và 3.2.


  • Cả Sơ đồ trình tự và Sơ đồ cộng tác đều là sơ đồ tương tác trong UML.
  • Cả Sơ đồ Trình tự và Hợp tác đều mô tả các khía cạnh hành vi của hệ thống.
Biểu đồ trình tự là một biểu diễn UML để trực quan hóa chuỗi các lệnh gọi trong hệ thống để thực hiện một chức năng cụ thể.Sơ đồ cộng tác là một biểu diễn UML để trực quan hóa tổ chức của các đối tượng và sự tương tác của chúng.
Đại diện
Biểu đồ trình tự biểu diễn chuỗi thông điệp truyền từ đối tượng này sang đối tượng khác.Sơ đồ cộng tác thể hiện tổ chức cấu trúc của hệ thống và các thông điệp được gửi và nhận.
Sử dụng
Nếu trình tự thời gian là quan trọng, có thể sử dụng sơ đồ trình tự.Nếu tổ chức đối tượng là quan trọng, thì sơ đồ cộng tác có thể được sử dụng.

Khi phát triển phần mềm, không thể bắt đầu phát triển trực tiếp. Nó được yêu cầu để hiểu hệ thống. UML được sử dụng để hiểu bằng hình ảnh về hệ thống. UML dễ dàng hơn các ngôn ngữ lập trình mục đích chung như Java, C ++, v.v. Có nhiều biểu đồ UML bao gồm các khía cạnh khác nhau. Hai trong số đó là sơ đồ tuần tự và sơ đồ cộng tác. Sự khác biệt giữa sơ đồ tuần tự và sơ đồ cộng tác là, sơ đồ trình tự được sử dụng khi trình tự thời gian quan trọng hơn trong khi sơ đồ cộng tác được sử dụng khi tổ chức đối tượng quan trọng hơn.

Biểu đồ trình tự mô tả sự trao đổi thông điệp giữa các đối tượng trình tự theo thời gian, thông điệp được gửi và nhận bởi các đối tượng đang hoạt động trong hệ thống. Biểu đồ trình tự được thể hiện theo hai trục:

(i) Trục dọctrên xuống chỉ thời gian xảy ra các sự kiện, hay sự truyền thông điệp, được biểu diễn bằng các đường thẳng đứng đứt nét bắt đầu từ đỉnh đến đáy của biểu đồ.

(ii) Trục ngangtừ trái qua phải là dãy các đối tượng tham gia vào việc trao đổi các thông điệp với nhau theo chiều ngang, có thể có cả các tác nhân.

Đối tượng được biểu diễn bằng hình chữ nhật trong đó có tên đối tượng cụ thể và/hoặc tên lớp cùng được gạch dưới (hoặc tên lớp được gạch dưới biểu diễn cho một đối tượng bất kỳ của lớp đó).

Biểu đồ trình tự được đọc từ trên xuống dưới, từ trái sang phải. Thứ tự các đối tượng trong biểu đồ phải được sắp xếp sao cho đơn giản nhất có thể để dễ quan sát. Thời gian thực hiện một thông điệp của một đối tượng, hay còn gọi là hoạt động của đối tượng được biểu diễn bằng hình chữ nhật hẹp dọc theo trục thẳng đứng của đối tượng đó.

MyComputer gửi một thông điệp print(aFile) tới :Printer được mô tả như hình 1.

Các thành phần cơ bản của biểu đồ trình tự

Mỗi thông điệp đều có tên gọi thể hiện được ý nghĩa của thông tin cần gửi và các tham số về dữ liệu liên quan. Thông thường đó là các lời gọi hàm. Khi định nghĩa các lớp sau này thì mỗi thông điệp nhận được sẽ trở thành một phương thức. Một đối tượng có thể gửi thông điệp tới chính nó. Những thông điệp này gọi là phản thân, nó chỉ ra rằng đối tượng gọi chính các thao tác của mình để thực hiện.

Tác nhân ngoài kích hoạt các đối tượng trong biểu đồ trình tự hoạt động, nhưng nó không phải là phần tử của biểu đồ loại này.

Mặt khác, trong khi Notes được sử dụng để chú thích cho các đối tượng trong biểu đồ trình tự thì Scripts được sử dụng để chú thích cho các thông điệp. Chúng được đặt bên trái của một hoạt động của đối tượng , ngang với mức thông điệp cần chú thích. Scripts được sử dụng để mô tả các điều kiện logic hoặc điều kiện lặp, ví dụ lệnh IF hay WHILE, v.v. trong quá trình trao đổi thông điệp. Scripts không hỗ trợ để tạo ra mã chương trình, nhưng nó giúp cho người phát triển hệ thống biết được những điều kiện cần phải tuân theo.

Chúng ta xét tiếp ca sử dụng “Gọi điện thoại”, trong đó có hai tác nhân là Caller (người gọi) và Callee (người nghe) . Hệ thống nhận được các sự kiện vào được ký hiệu là các lời gọi hàm: liftReceiver() (nhấc tai nghe), dialsPhoneNumber() (quay số), answerPhone() (trả lời điện thoại) và hangUp() (đặt tai nghe xuống, nhấc tay lên). Biểu đồ trình tự mô tả cho các hoạt động trên được xác định như sau:

Scripts trong biểu đồ trình tự

Các bước xây dựng biểu đồ trình tự

1. Xác định các tác nhân, các đối tượng tham gia vào ca sử dụng và vẽ chúng theo hàng ngang trên cùng theo đúng các ký hiệu,

2. Xác định những thông điệp (lời gọi hàm) mà tác nhân cần trao đổi với một đối tượng nào đó, hoặc giữa các đối tượng tương tác với nhau theo trình tự thời gian và vẽ lần lượt các hoạt động đó từ trên xuống theo thứ tự thực hiện trong thực tế. Cần xác định chính xác các loại thông điệp trao đổi giữa các đối tượng là đơn giản, đồng bộ hay dị bộ.

Chúng ta tiếp tục xây dựng một số biểu đồ trình tự mô tả các hành vi của hệ thống bán hàng HBH. Hành vi của hệ thống được thể hiện trong các biểu đồ trình tự thông qua sự tương tác của các đối tượng với nhau. Sự tương tác đó được thể hiện bằng các lời gọi hàm và sẽ được khai báo công khai (public) trong các lớp.

Biểu đồ mô tả hoạt động của người bán hàng và hệ thống

Như trong các kịch bản đã phân tích ở trên, sau khi chọn đủ hàng, người mua sẽ đưa giỏ (hoặc xe) hàng đến quầy để trả tiền. Người bán hàng phải nhập vào các thông tin và số lượng của mỗi mặt hàng. Những thông tin về mặt thường được xác định thông qua mã sản phẩm upc (thuộc lớp UPC – Universal Product Code). Vậy đối tượng :NguoiBan phải gửi đến cho :HeThong (một hệ thống bán hàng) thông điệp enterItems()(upc, n), để nhập vào mã sản phẩm upc và n đơn vị hàng cần mua. Khi đã nhập xong tất cả các mặt hàng của khách muốn mua thì phải báo cho hệ thống biết là đã nhập xong bằng cách nhấn nút Kết thúc, nghĩa là gửi cho hệ thống thông điệp endSale(). Hệ thống sẽ thông báo cho khách mua hàng biết tổng số tiền phải trả. Nếu khách hàng trả bằng tiền mặt thì :NguoiBan gửi tiếp đến cho :HeThong thông điệp makePayment(soTien).

Các hoạt động trên được mô tả trong biểu đồ trình tự như hình 3.

Biểu đồ trình tự mô tả sự tương tác giữa người bán và hệ thống

Biểu đồ trình tự mô tả ca sử dụng “Thanh toán tiền mặt”

Khi đối tượng :HeThong nhận được yêu cầu thanh toán của khách hàng thông qua người bán, nghĩa là nó nhận được thông điệp makePayment(soTien)thì nó phải gửi cho một đối tượng mộtphiênbánhàng:PhienBanHang một yêu cầu tương tự. Đối tượng mộtphiên bán hànglại yêu cầu đối tượng tạo ra một đối tượng mộtlần thanhtoán:ThanhToan để thanh toán theo soTienmà khách đưa. Đối tượng mộtlần thanhtoángửi lại thông điệp balance()cho hệ thống :HeThongbiếtsốtiềndư(soTienkhách đưa trừ đi số tiền mua hàng) phải trả lại cho khách và để hiển thị (displayBalance()) lên màn hình, để người bán thông báo lại cho khách hàng khi khách trả tiền mặt. Biểu đồ trình tự mô tả dãy các hành động trao đổi giữa các đối tượng nêu trên được thiết lập như sau:

Biểu đồ trình tự mô tả ca sử dụng “Thanh toán (tiền mặt)”

Biểu đồ trình tự mô tả ca sử dụng “ Thanh toán bằng thẻ tín dụng”

Khi thanh toán tiền hàng, khách hàng có thể trả bằng thẻ tín dụng. Thẻ tín dụng được xác định thông qua soHieuThe (số hiệu thẻ) và hanSD (hạn sử dụng). Điều đó được thể hiện bằng việc gửi một thông điệp makeCreditPayment(soHieuThe, hanSD) cho hệ thống. Thông thường hệ thống phải gửi một yêu cầu kiểm duyệt thẻ requestApproval(yeuCau)) tới bộ phận kiểm duyệt thẻ tín dụng là tác nhân ngoài của hệ thống. Hệ thống sẽ dựa vào kết quả trả lời của bộ phận kiểm duyệt để thanh toán với khách hàng bằng cách trừ đi số tiền mua hàng trong thẻ tín dụng nếu nó hợp pháp, nghĩa là thực hiện handleCreditReply() (xử lý thẻ đã kiểm duyệt), dựa vào kết quả của bộ phận kiểm duyệt. Biểu đồ trình tự mô tả sự tương tác giữa người bán hàng, hệ thống và bộ phận kiểm duyệt thẻ KiemDuyet được thiết lập như sau:

Biểu đồ trình tự mô tả sự trao đổi giữa người bán, hệ thống và bộ phận kiểm duyệt

Tương tự như trên, chúng ta có thể tạo ra những biểu đồ trình tự cho các ca sử dụng khác của hệ thống.

Ở bài trước chúng ta đã xây dựng các lớp và tập trung chủ yếu vào việc phát hiện các thuộc tính của chúng. Khi đã xây dựng được các biểu đồ trạng thái và biểu đồ trình tự thì chúng ta đã hiểu hơn về sự tương tác giữa các đối tượng trong hệ thống. Chúng ta có thể dần dần xác định được hành vi ứng xử của các đối tượng, nghĩa là xác định các hàm thành phần của các lớp.

Nghiên cứu các biểu đồ trình tự chúng ta nhận thấy:

Khi có một thông điệp mgs() gửi đến cho một đối tượng thì lớp của đối tượng đó phải có hàm thành phần là msg().

Dựa vào nguyên lý nêu trên và căn cứ vào các biểu đồ trình tự ở hình 5-5, 5-6, 5-7, lớp HeThong sẽ có những hàm thành phần như sau:

Các thao tác của hệ thống được ghi nhận vào lớp có tên là HeThong

Khi xây dựng thêm biểu đồ trình tự cho ca sử dụng “Thanh toán bằng séc” thì những hàm như: makeCheckPayment(), handleCheckReply(), v.v sẽ được bổ sung thêm vào lớp HBH.

1. Để đơn gian, trong giai đoạn này chúng ta có thể bỏ qua các đối số của các hàm thành phần của các lớp.

2. Các hàm thành phần cũng có phạm vi truy cập giống như các thuộc tính trong các lớp đối tượng. Do vậy, người thiết kế có thể khai báo chúng là công khai (public), được bảo vệ (protected), sở hữu riêng (private) hay mặc định như đã nêu ở phần định nghĩa các thuộc tính .Tương tự, chúng ta bổ sung các hàm thành phần vào các lớp khác còn lại của HBH.

Như đã thấy ở trên, biểu đồ trình tự mới chỉ cho chúng ta biết tên của những nhiệm vụ mà mỗi đối tượng cần phải thực hiện khi nhận được một thông điệp, nhưng chưa mô tả cách thực hiện những công việc đó như thế nào. Để hiểu rõ hơn về những hành vi của các đối tượng và để hỗ trợ cho thiết kế và cài đặt các lớp sau này, chúng ta cần xây dựng các hợp đồng (Contract) hay các đặc tả cho những hoạt động (thao tác, hàm) đã xác định được. Hợp đồng cho các hoạt động của hệ thống mô tả về sự thay đổi trạng thái mà khi bắt đầu thì phải thoả mãn tiền điều kiện (pre-conditions) và sau đó, khi kết thúc sẽ thoả mãn hậu điều kiện (post-conditions). Những hợp đồng này có thể lưu ở những tệp khác nhau và được gán vào biểu đồ tương ứng.

  • Pre-conditions: là những điều kiện mà trạng thái của hệ thống được giả thiết là thoả mãn trước khi thực hiện một thao tác, một hàm.
  • Post-conditions: là những điều kiện mà trạng thái của hệ thống phải thoả mãn sau khi thực hiện xong một thao tác, một hàm.

Một cách hình thức, hợp đồng cho hoạt động Op() có thể viết theo bộ ba của Hoare:

{Pre-conditions} Op() {Post-conditions}

Thể hiện rằng: nếu hoạt động Op() bắt đầu từ trạng thái thoả mãn Pre-conditions thì sau khi kết thúc thực hiện hệ thống sẽ ở trạng thái thoả mãn Post-conditions.

Pre-condition và Post-condition là những mệnh đề boolean (mệnh đề điều kiện logic).

Hãy xét thao tác enterItems()(upc: UPC, soHang: Int) của lớp HBH.

  • Pre-conditions: Hệ mã chuẩn các sản phẩm toàn cầu UPC được biết trước đối với hệ thống.
  • Post-conditions: bao gồm những điều kiện sau:

+ Nếu mặt hàng nhập vào là đầu tiên thì phải tạo ra một đối tượng mới là phienBanHang của lớp PhienBanHang và kết hợp nó vào hệ thống HBH.

+ Tạo ra một đối tượng dongBanHang của lớp DongBanHang cho mặt hàng vừa nhập vào và gán dongBanHang.soLuong = soHang (đối số của hàm),

+ dongBanHang được liên kết với MoTaMatHang dựa vào mã upc.

Ngoài Pre-conditions và Post-coditions, chúng có thể bổ sung thêm mô tả tóm tắt về trách nhiệm, kiểu, lớp nào, tham chiếu tới những chức năng nào, chú thích, những ngoại lệ và kết quả, v.v. [17].

Chúng ta có thể xây dựng các hợp đồng cho các qui trình xử lý thông tin như sau:

1. Từ các biểu đồ trình tự, xác định các thao tác, hàm, hoạt động của các lớp trong hệ thống,

2. Với mỗi thao tác trên hãy xây dựng một hợp đồng,

3. Mô tả tóm tắt những trách nhiệm chính mà hệ thống phải thực hiện khi thực thi thao tác này.

4. Trong Post-condition phải nêu được các trạng thái của các đối tượng sau khi kết thúc thao tác.

5. Để mô tả Post-conditions, hãy căn cứ vào:

+ Việc tạo lập, huỷ bỏ các đối tượng

+ Những thay đổi của các thuộc tính

+ Thiết lập hay huỷ bỏ các mối liên kết giữa các đối tượng.

Đặc tả các thao tác (hàm thành phần) của lớp HBH. Sau đây chúng ta xét một số đặc tả các hàm theo các hợp đồng chính.

1. Hợp đồng để nhập các thông tin về các mặt hàng

Hợp đồng

Tên gọi: enterItems()(upc: UPC, soLuong: Int)
Trách nhiệm: Nhập lần lượt cácthôngtinvề những mặt hàng mà khách đã chọn mua và đưa chúng vào phiên bán hàng. Hiển thị các thông tin mô tả và giá bán của từng mặt hàng.
Kiểu lớp: System (Hệ thống)
Tham chiếu tói: R1.1, R1.3, R1.9 và ca sử dụng Bán hàng
Chú ý: Sử dụng phương pháp truy nhập nhanh vào CSDL
Ngoại lệ: Nếu upckhông hợp lệ thì thông báo lỗi
Kết quả( Output ):
Pre-conditions: UPC được biết trước
Post-conditions: + Nếu mặt hàng nhập vào là đầu tiên thì phải tạo ra một đối tượng phienBanHangcủa lớp PhienBanHangvà kết hợp nó vào hệ thống HBH,+ Tạo ra một đối tượng dongBanHang của lớp dongBanHangcho mặt hàng vừa nhập vào và gán dongBanHang.soLuong=soHang(đối số của hàm),+ dongBanHangđược liên kết với MoTaMatHangdựa vào mã upc.

2. Hợp đồng về việc kết thúc nhập hàng

Hợp đồng

Tên gọi: endSale()()
Trách nhiệm: Ghi nhận những mặt hàng đã được nhập. Hiển thị tổng số tiền bán hàng.
Kiểu lớp: System (Hệ thống)
Tham chiếu tóiư R1.2, và ca sử dụng Bánhàng
Chú ý:
Ngoại lệ: Nếu phiên bán hàng không thực hiện được thì có lỗi
Kết quả ( O utput ):
Pre-conditions: UPC được biết trước
Post-conditions: PhienBanHang.ketThucnhận giá trị true.
Lớp PhienBanHang từ hình 4-14 sẽ được bổ sung thêm thuộc tính ketThuc khi phân tích ca sử dụng “Thanh toán”. Thuộc tính này có kiểu logic và sẽ nhận giá trị true khi kết thúc việc nhập dữ liệu thành công và bắt đầu thực hiện thu tiền của khách hàng.

3. Hợp đồng thực hiện thu tiền mặt

Hợp đồng

Tên gọi: makePayment(soTien: DVT), trong đó DVT là lớp các loại tiền
Trách nhiệm: Ghi nhận các thông tin liên quan đến việc thanhtoán, tính số tiền dưcần trả lại cho khách.
Kiểu lớp: System (Hệ thống)
Tham chiếu tới: R2.1, và ca sử dụng Bánhàng
Chú ý:
Ngoại lệ : Nếu phiên bán hàng không kết thúc thì có lỗiNếu soTien nhỏ hơn tongSoTien thì cũng có lỗi
Kết quả ( O utpu t ):
Pre-conditions:
Post-conditions: + Một đối tượng thanhToanđược tạo lập,+ số tiền dư là soTien-ThanhToan.tongSoTien+ thanhToanđược liên kết với phienBanHangđã được tạo lập ở hợp đồng 1. để thực hiện việc cập nhật những mặt hàng đã bán, tổng số tiền, v.v.

Tương tự, hãy xây dựng các hợp đồng cho những thao tác còn lại của các lớp.

Đối với những ca sử dụng có nhiều đối tượng tham gia thì biểu đồ trình tựlà khá phức tạp, do vậy nó không thích hợp. Muốn hiểu rõ hoạt động của các đối tượng thì tốt nhất là nên phân tách những ca sử dụng phức hợp thành các ca sử dụng tương đối đơn giản, dễ hiểu và mô tả được bằng biểu đồ trình tự một cách đơn giản hơn.

Video liên quan

Chủ đề