Xây hoàn thiện biểu đồ lớp mức thiết kế bằng cách xác định thêm các phương thức dựa vào biểu đồ tuần tự, ví dụ dựa vào biểu đồ tuần tự Use case Quản lý sách trên, Lớp Ct[r]
(1)Bài tập thực hành 03:
THỰC HÀNH XÂY DỰNG BIỂU ĐỒ TƢƠNG TÁC THEO THỜI GIAN - SEQUENCE DIAGRAM VÀ BIỂU ĐỒ LỚP CHI TIẾT
Mục tiêu:
- Trình bày thành phần biểu đồ tương tác theo thời gian Sequence
Diagram(biểu đồ tuần tự)
- Xây dựng biểu đồ
- Xây dựng biểu đồ lớp chi tiết dựa vào biểu đồ biểu đồ lớp mức
phân tích
- Sử dụng thành thạo phần mềm để biểu diễn biểu đồ
2 Biểu đồ - Sequence Diagram 2.1 Khái niệm:
Sequence Diagarm vẽ mô tả tương tác đối tượng để tạo nên chức hệ thống Bản vẽ mô tả tương tác theo thời gian nên phù hợp với việc sử dụng để thiết kế cài đặt chức cho hệ thống phần mềm
(2)2.2 Các thành phần Sequence Diagram
Objects:
Object mô tả đối tượng hệ thống Để phân biệt với Class, Object có dấu “:” phía trước tên Ký hiệu đối tượng vẽ sequence Diagram:
Đường gạch chấm bên đối tượng thể thời gian sống đối tượng Stimulus (message)
Stimulus thể thông điệp từ đối tượng tương tác với đối tượng khác Ký hiệu Stimulus vẽ Sequence Diagram
Axes
Trục tọa độ, trục ngang thể đối tượng, trục đứng thể thời gian
Chúng ta, dễ dàng nhận thấy đối tượng tương tác với theo bước để hình thành nên chức hệ thống
2.3 Ứng dụng Sequence Diagram
Thiết kế chức
Kiểm chứng bổ sung method cho Class Sử dụng việc coding chức
2.4 Xây dựng Sequence Diagram
Để xây dựng Sequence Diagram thực bước sau:
Bƣớc 1: Xác định chức cần thiết kế Bạn dựa vào Use Case Diagram để xác định xem chức cần thiết kế
Bƣớc 2: Dựa vào Activity Diagram để xác định bước thực theo nghiệp vụ
Bƣớc 3: Đối chiếu với Class Diagram để xác định lớp hệ thống tham gia vào nghiệp vụ
Bƣớc 4: Vẽ Sequence Diagarm
Bƣớc 5: Cập nhật lại vẽ Class Diagram
(3)
Bài tập Thực hành xây dựng Sequence Diagarm cho hệ thống eCommerce
Bước 1: Xác định Use Case cần thiết kế
Tương tự Activity Diagram, cần xác định Use Case mà cần sử dụng sequence Diagram để thiết kế chi tiết
Xem xét vẽ Use Case Diagram vẽ 3, thấy Use Case sau cần thiết kế:
Xem sản phẩm theo chủng loại Thêm sản phẩm theo nhà cung cấp Thêm giỏ hàng
Chat
Quản lý đơn hàng Thanh toán
Theo dõi chuyển hàng Đăng nhập
Tiếp theo, thiết kế cho chức “Xem sản phẩm theo chủng loại”
Bước 2: Xem Activity Diagram cho Use Case xác định bước sau:
Người dùng chọn loại sản phẩm
Hệ thống lọc lấy loại sản phẩm tương ứng, sau lấy giá, lấy khuyến hiển thị lên hình
Người dùng xem sản phẩm
Bước 3: Đối chiếu với Class Diagram ta xác định đối tượng thực sau:
Ngƣời dùng: chọn loại sản phẩm qua giao diện
Giao diện: lấy danh sách sản phẩm tương ứng từ Products
Giao diện: lấy giá sản phẩm từ Class Prices Promotion Amount từ lớp Promotions
Giao diện: tổng hợp danh sách hiển thị Ngƣời dùng: Xem sản phẩm
Bước 4: Vẽ sequence Diagram
(4)Xác định đối tƣợng tham gia vào vẽ
Các bước thực Use Case sau:
Guest gửi yêu cầu xem sản phẩm lên giao diện kèm theo chủng loại
GUI system: gửi yêu cầu lấy danh sách sản phẩm tương ứng với chủng loại
cho lớp sản phẩm nhận lại danh sách
GUI system: gửi yêu cầu lấy Giá cho sản phẩm từ Prices
GUI system: gửi yêu cầu lấy khuyến cho sản phẩm từ Promotions
nhận lại kết
GUI system: ghép lại danh sách hiển thị lên browser trả cho Guest
Thể lên vẽ sau:
(5)
Bước 5: Kiểm tra cập nhật vẽ Class Diagram
Chúng ta nhận thấy để thực vẽ cần bổ sung phương thức cho lớp sau:
Products class: bổ sung phương thức GetProductInfo(Product Type): trả thơng tin sản phẩm có loại truyền vào Việc đối tượng lớp Products hồn tồn làm họ có thuộc tính ProductType nên họ trả thơng tin
Prices: bổ sung phương thức GetPrice(ProductID): UnitPrice Sau lấy ProductID từ Products, GUI gọi phương thức để lấy giá sản phẩm từ lớp giá Các đối tượng từ lớp Prices hoàn toàn đáp ứng điều
Promotions: tương tự bổ sung phương thức GetPromotion(ProductID)
GUI System(View Product Page): bổ sung phương thức
DisplayProductList(List of product) để hiển thị danh sách lên sản phẩm Ngồi
ra, bạn cần có thêm phương thức ViewProductbyType(ProductType) để mơ tả hoạt động người dùng kích chọn
Như vậy, thấy phương thức thực đối tượng lớp nên thiết kế khả thi Bổ sung phương thức vào Class tương ứng có vẽ Class Diagram sau:
Class Diagram sau bổ sung phƣơng thức
(6)Bài tập Thực vẽ biểu đồ sau cho hệ thống Quản lý thƣ viện
Yêu cầu:
- Xây dựng biểu đồ cho Use case quản lý sách - Xây dựng biểu đồ cho Use case thêm đầu sách
- Xây dựng biểu đồ lớp chi tiết Use case quản lý sách
Hướng dẫn thực hiện:
1 Biểu đồ cho Use case quản lý sách
Phân tích tốn:
Bƣớc 1: Kiểm tra lại Use case quản lý sách, biểu đồ phân rã Use case quản lý sách, kịch Use case
Bƣớc 2: Xác định rõ kiểu đối tượng tham gia (giao diện, điều kiện hay thực thể) dựa vào biểu đồ lớp phân tích Use case đối tượng Actor thực
Bƣớc 3: Căn vào kịch Use case, xây dựng biểu đồ cho luồng luồng phụ, xác thơng điệp gửi đối tượng, thời gian xử lý thông điệp
Bƣớc 4: Xây dựng biểu đồ
(7)2 Xây dựng biểu đồ cộng tác cho chức đăng nhập
Trên biểu đồ chức đăng nhập nhấn F5 để chuyển tự động từ biểu đồ sang biểu đồ cộng tác
3 Xây dựng biểu đồ lớp chi tiết:
Xây hoàn thiện biểu đồ lớp mức thiết kế cách xác định thêm phương thức dựa vào biểu đồ tuần tự, ví dụ dựa vào biểu đồ Use case Quản lý sách trên, Lớp Ctr_QuanLySach có thêm phương thức LayChuyenNganh, LayVeDauSach, thơng điệp gửi đến lớp Ctr_QuanLySach
(8)Tương tự sau hoàn thành biểu đồ cho Use case phân rã khác, xác định thêm phương thức cho biểu đồ lớp chi tiết
Các tập tự làm
1 Xây dựng biểu đồ cho Use case hệ thống quản lý thự viện
2 Bổ sung phương thức từ biểu đồ lớp biểu đồ lớp mức phân tích