Danh mục

Lập mô hình với Java: Một cuốn sách bài tập về UML, Phần 2 Logic điều kiện trong các sơ đồ tuần tự

Số trang: 9      Loại file: pdf      Dung lượng: 216.68 KB      Lượt xem: 12      Lượt tải: 0    
tailieu_vip

Phí tải xuống: 2,000 VND Tải xuống file đầy đủ (9 trang) 0
Xem trước 2 trang đầu tiên của tài liệu này:

Thông tin tài liệu:

Granville Miller, Tác giả, TogetherSoft Tóm tắt: Ông xem xét vai trò của logic điều kiện trong việc lập sơ đồ tuần tự và thảo luận về lý do tại sao bạn có thể chọn đưa vào hay loại ra các điều kiện và các vòng lặp từ một sơ đồ. Granville cũng mô tả hai dạng sơ đồ tuần tự -- sơ đồ chung (generic) và sơ đồ cá thể (instance) -- và giải thích các ứng dụng tương ứng của chúng trong chu kỳ phát triển. Như tôi đã giải thích trong loạt bài chuyên mục nhập môn,...
Nội dung trích xuất từ tài liệu:
Lập mô hình với Java: Một cuốn sách bài tập về UML, Phần 2 Logic điều kiện trong các sơ đồ tuần tự Lập mô hình với Java: Một cuốn sách bài tập về UML, Phần 2 Logic điều kiện trong các sơ đồ tuần tự Granville Miller, Tác giả, TogetherSoft Tóm tắt: Ông xem xét vai trò của logic điều kiện trong việc lập sơ đồ tuần tự và thảo luận về lý do tại sao bạn có thể chọn đưa vào hay loại ra các điều kiện và các vòng lặp từ một sơ đồ. Granville cũng mô tả hai dạng sơ đồ tuần tự -- sơ đồ chung (generic) và sơ đồ cá thể (instance) -- và giải thích các ứng dụng tương ứng của chúng trong chu kỳ phát triển. Như tôi đã giải thích trong loạt bài chuyên mục nhập môn, việc lập sơ đồ tuần tự được sử dụng để mô tả hành vi bên trong của một hệ thống theo thời gian. Vì hành vi hệ thống là kết quả của các đối tượng gửi thông điệp cho nhau, các sơ đồ tuần tự vẽ ra đường đi của các thông điệp đó khi chúng chuyển từ đối tượng này đến đối tượng khác. Sau cùng, các sơ đồ tuần tự là các bản đồ tương tác. Trong bài viết trước, chúng ta đã tạo ra một bản đồ khá đơn giản, mặc dù chúng ta đã mô tả khá nhiều tương tác. Lần này, chúng ta sẽ đào sâu hơn một chút, bằng việc xem xét hai dạng sơ đồ tuần tự do UML định nghĩa. Hai dạng đó là sơ đồ chung và sơ đồ cá thể. Hãy bắt đầu bằng việc xem xét ứng dụng thích hợp của từng dạng. Hai kiểu sơ đồ tuần tự Các sơ đồ tuần tự được sử dụng để mô tả hai kiểu tương tác khác nhau giữa các đối tượng. Một kiểu tương tác là phải tương tác (must interaction), trong đó đối tượng A phải gửi một thông điệp cụ thể đến đối tượng B. Kiểu tương tác kia là có thể tương tác (may interaction), trong đó đối tượng A có thể (nhưng không buộc phải) gửi một thông điệp cụ thể đến đối tượng B. Hai dạng sơ đồ tuần tự mô tả hai kiểu tương tác khác nhau ấy. Dạng chung mô tả các tương tác phải làm và dạng cá thể mô tả các tương tác có thể làm. Dạng chung của sơ đồ tuần tự mô tả tương tác của các lớp như là kết quả của một kích thích tố ban đầu. Dạng chung cung cấp tư liệu cho toàn bộ các tương tác mà có thể bắt nguồn từ kích thích tố ban đầu. Cả điều kiện thành công lẫn điều kiện thất bại là một phần của kiểu sơ đồ này, cũng như các vòng lặp, các điều kiện, và các rẽ nhánh. Một sơ đồ tuần tự chung chỉ chứa tên lớp trong mỗi hộp dọc theo trục ngang, như thấy trong Hình 1. Ý tưởng ở đây là đối tượng đằng sau tương tác là ẩn danh và bất kỳ đối tượng nào của lớp đó có thể tham gia vào tương tác. Do đó, tất cả các tuyến đường phải được mô hình hoá tường minh. Trong một sơ đồ tuần tự chung, đối tượng A phải gửi một trong các thông điệp trong mô hình cho đối tượng B. Hình 1. Một sơ đồ tuần tự chung Dạng thứ hai sơ đồ tuần tự là dạng cá thể. Một sơ đồ tuần tự cá thể mô tả một sự trao đổi thông điệp đơn lẻ khả dĩ giữa hai cá thể. Một sơ đồ như vậy sẽ chứa một tên biến và kiểu lớp của nó trong hộp dọc theo trục ngang, như Hình 2. Dạng này không bao gồm các vòng lặp, các điều kiện, hoặc rẽ nhánh có trong dạng chung. Trong luồng điều khiển thực tế trong hệ thống, một số xác nhận nhất định thực hiện trong quá trình tương tác có thể có kết quả sai. Nếu một xác nhận là sai, bất kỳ thông điệp nào trong sơ đồ tuần tự cá thể đều vô giá trị và kịch bản sẽ không xảy ra. Sơ đồ tuần tự cá thể mô tả một kịch bản đơn lẻ mà có thể xảy ra hoặc không. Hình 2. Một sơ đồ tuần tự cá thể Các sơ đồ tuần tự cá thể là tốt nhất để lập mô hình các kịch bản riêng lẻ trong các giai đoạn phân tích của vòng đời phát triển phần mềm. Một sơ đồ tuần tự chung có thể mô hình hoá toàn bộ ca sử dụng bao gồm nhiều kịch bản. Các kiểu hành động khác -- chẳng hạn như mô hình hóa giao thức được sử dụng giữa các hệ thống con hoặc khung công tác với các quần thể của chúng -- có thể sử dụng một trong hai dạng, tùy thuộc vào các thành phần nằm ở đâu trong vòng đời phát triển phần mềm. Dạng chung thì gần với mã lệnh thực tế sẽ được sinh ra trong sản phẩm cuối hơn dạng cá thể. Đừng bỏ lỡ phần còn lại của loạt bài Một cuốn sách bài tập về UML Phần 1: Giới thiệu về các sơ đồ tuần tự (05.2001) Phần 3: Logic giao diện người dùng trong việc lập mô hình ca sử dụng (06.2001) Phần 4: Vai trò của tác nhân (06.2002) Chúng ta đã làm việc với dạng chung trong mục trước, và sẽ tiếp tục khám phá dạng đó ở đây. Lần này, chúng ta sẽ khám phá vai trò của logic điều kiện trong một sơ đồ tuần tự chung, bằng cách này mở rộng kiến thức của bạn về ký pháp UML. Logic điều kiện trong việc lập sơ đồ tuần tự Các sơ đồ tuần tự chung sử dụng logic điều kiện, có thể hữu ích cho việc mô tả luồng sự kiện trong suốt quá trình của một tương tác. Bạn sẽ sử dụng các mức độ chi tiết khác nhau khi lập sơ đồ, tùy thuộc vào bạn đang ở đâu trong vòng đời phát triển phần mềm. Khi phân tích, bạn có thể đồng ý gác lại các chi tiết khỏi các biểu thức điều kiện của bạn, nhưng ngược lại khi thiết kế bạn có thể phải đi tiếp đến mức đưa vào các đoạn mã sẽ sử dụng trong sản phẩm cuối. Dù bạn đang ở giai đoạn nào trong chu kỳ phát triển, sự tương ứng tự nhiên giữa các sơ đồ tuần tự và một ngôn ngữ hướng đối tượng như ngôn ngữ Java trở nên rõ ràng khi nói đến vẽ sơ đồ các biểu thức điều kiện. Ví dụ, hãy xem xét một ứng dụng ngân hàng cho phép các nhân viên thu ngân nhận tiền gửi vào. Như đã xác định rõ, ngoài nhiều thứ khác, rằng hệ thống phải ngăn chặn việc để nhân viên thu ngân ghi có một khoản âm vào một tài khoản, điều mà sẽ dẫn đến khấu trừ từ tài khoản đó. Do đó hệ thống phải có một cơ chế để kiểm tra rằng bất kỳ khoản nào đã được gõ nhập là số dương. Liệt kê 1 cho thấy biểu thức điều kiện đảm bảo tiền gửi vào là số dương. Liệt kê 1. Một phương thức với một biểu thức điều kiện \** This is a method in a Teller class **\ public void receiveDeposit(Account account, BigDecimal deposit) throws ImproperDepositException { // Check to ensure the deposit is positive (deposit.compareTo(new BigDecimal(0.0)) > 0) { account.credit(deposit); } else { throw new ImproperDepositException(); } } Trong giai ...

Tài liệu được xem nhiều:

Gợi ý tài liệu liên quan: