Bài giảng Phân tích thiết kế hướng đối tượng - Chương 4: Phân tích và thiết kế hệ thống ở trạng thái động - Lê Thị Minh Nguyên

• Không cần phải vẽ tất cả các loại biểu đồ động cho tất cả các loại hệ thống. Mặc dù vậy, trong một số trường hợp khác nhau chúng ta nhất thiết phải cần đến một số loại biểu đồ động nhất định. • Biểu đồ tuần tự và biểu đồ cộng tác rất hữu dụng trong việc chỉ ra sự cộng tác giữa các đối tượng, nhưng chúng lại không hữu dụng khi muốn miêu tả ứng xử chính xác của một đối tượng • Biểu đồ trạng thái được sử dụng để thể hiện ứng xử chính xác của một đối tượng • Biểu đồ hoạt động được sử dụng để thể hiện lối ứng xử xuyên suốt nhiều Use case

pdf11 trang | Chia sẻ: huongthu9 | Lượt xem: 579 | Lượt tải: 0download
Bạn đang xem nội dung tài liệu Bài giảng Phân tích thiết kế hướng đối tượng - Chương 4: Phân tích và thiết kế hệ thống ở trạng thái động - Lê Thị Minh Nguyên, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
8/30/2017 1 Chương 4. Phân tích và thiết kế hệ thống ở trạng thái động GV: Lê Thị Minh Nguyện Email: nguyenltm@huflit.edu.vn Phân tích thiết kế hướng đối tượng 1 Nội dung 1. Sự cần thiết có mô hình động (Dynamic model) 2. Các thành phần của mô hình động 3. Ưu điểm của mô hình động Phân tích thiết kế hướng đối tượng 2 1. Sự cần thiết có mô hình động • Mô hình đối tượng định nghĩa hệ thống theo khái niệm các thành phần tĩnh. • Mô hình đối tượng miêu tả ứng xử mang tính cấu trúc và chức năng của các lớp. • Mô hình động cần thể hiện sự thay đổi xảy ra trong hệ thống dọc theo thời gian chạy. • Đối tượng được tạo ra một lần, nhưng các thuộc tính của chúng chỉ dần dần từng bước nhận được giá trị. • Mô hình động là yếu tố hết sức cần thiết để miêu tả ứng xử của một đối tượng khi đưa ra các yêu cầu hoặc thực thi các tác vụ. Phân tích thiết kế hướng đối tượng 3 2. Các thành phần của mô hình động Phân tích thiết kế hướng đối tượng 4 8/30/2017 2 3. Ưu điểm của mô hình động • Mô hình động đóng một vai trò vô cùng quan trọng trong những trường hợp như: • Các hệ thống mang tính tương tác cao • Hệ thống có sử dụng các trang thiết bị ngoại vi có thể gọi nên các ứng xử của hệ thống. • Một mô hình động tập trung vào các chuỗi tương tác (biểu đồ cộng tác) và vào yếu tố thời gian của các sự kiện (biểu đồ tuần tự). Phân tích thiết kế hướng đối tượng 5 3. Ưu điểm của mô hình động Phân tích thiết kế hướng đối tượng 6 Biểu đồ tuần tự (Sequence diagram) • Biểu đồ tuần tự minh họa các đối tượng tương tác với nhau ra sao. Chúng tập trung vào các chuỗi thông điệp, có nghĩa là các thông điệp được gửi và nhận giữa một loạt các đối tượng như thế nào. • Biểu đồ tuần tự có hai trục: trục nằm dọc chỉ thời gian, trục nằm ngang chỉ ra một tập hợp các đối tượng. Phân tích thiết kế hướng đối tượng 7 Biểu đồ tuần tự (Sequence diagram) • Các thành phần trong lược đồ tuần tự • Tác nhân (actor) • Đối tượng (object) • Đường sống của đối tượng (lifeline) • Kích hoạt hành vi (execution occurrence) • Thông điệp (message) • Thông điệp có điều kiện (guard condition) • Kết thúc hoạt động của đối tượng (object destruction) Phân tích thiết kế hướng đối tượng 8 8/30/2017 3 Biểu đồ tuần tự (Sequence diagram) Phân tích thiết kế hướng đối tượng 9 • Các thành phần trong lược đồ • Tác nhân (actor) • Là con người hoặc hệ thống bên ngoài • Tham gia vào quy trình với chức năng gởi/nhận thông điệp • Ký hiệu: Biểu đồ tuần tự (Sequence diagram) Phân tích thiết kế hướng đối tượng 10 • Các thành phần trong lược đồ • Đối tượng (object) • Tham gia vào quy trình với chức năng gởi/nhận thông điệp • Ký hiệu: Boundary: lớp biên giao diện. Chúng có thể là form, report giao diện với phần cứng như máy in Entity: Lớp thực thể. Là lưu trữ thông tin sẽ ghi vào bộ nhớ ngoài. Thông thường phải tạo ra bảng data cho lớp này . Mỗi thuộc tính trong thực thể thường là một trường trong csdl. Control: có trách nhiệm điều phối hoạt đọng của lớp khác.Thông thường mỗi uc có một lớp điều khiển riêng Biểu đồ tuần tự (Sequence diagram) Phân tích thiết kế hướng đối tượng 11 Entity Boundary Control Entity X X Boundary X Control X X X Được phép tương tác Biểu đồ tuần tự (Sequence diagram) Phân tích thiết kế hướng đối tượng 12 • Các thành phần trong lược đồ tuần tự • Đường sống của đối tượng(lifeline) • Thể hiện vòng đời của đối tượng trong suốt quá trình tương tác • Nếu trên đường sống của đối tượng điểm dừng X, thì đối tượng không còn tương tác với đối tượng khác • Ký hiệu: 8/30/2017 4 Biểu đồ tuần tự (Sequence diagram) Phân tích thiết kế hướng đối tượng 13 • Các thành phần trong lược đồ tuần tự • Kết thúc hoạt động của đối tượng • Thể hiện kết thúc chu kỳ sống của một đối tượng, nghĩa là đối tượng không còn tham gia vào qui trình tương tác. • Ký hiệu: X Biểu đồ tuần tự (Sequence diagram) Phân tích thiết kế hướng đối tượng 14 • Các thành phần trong lược đồ tuần tự • Kích hoạt thực thi • Thể hiện khi một đối tượng gởi hay nhận một thông điệp • Được đặc dọc theo đường sống của đối tượng • Ký hiệu: Biểu đồ tuần tự (Sequence diagram) Phân tích thiết kế hướng đối tượng 15 • Các thành phần trong lược đồ tuần tự • Thông điệp • Thể hiện thông tin đi từ một đối tượng này đến đối tượng khác • Ký hiệu: Biểu đồ tuần tự (Sequence diagram) Phân tích thiết kế hướng đối tượng 16 • Các thành phần trong lược đồ tuần tự • Thông điệp có điều kiện • Thể hiện thông tin đi từ một đối tượng này đến đối tượng khác • Ký hiệu 8/30/2017 5 Phân tích thiết kế hướng đối tượng 17 Phân tích thiết kế hướng đối tượng 18 Phân tích thiết kế hướng đối tượng 19 Bài tập Trường ĐH Công nghệ đang có nhu cầu phát triển hệ thống hỗ trợ hoạt động cố vấn học tập. Hệ thống được mô tả như sau: - Các lớp tổ chức sinh hoạt lớp định kỳ có sự tham gia của cố vấn học tập. Hệ thống sẽ lấy thông tin từ hệ thống email của trường và tự động gửi thông báo đến những người tham gia, mỗi khi chuyên viên phòng (CTSV) gửi thông báo về cuộc họp - Hệ thống cho phép các sinh viên cập nhập thông tin tự đánh giá điểm rèn luyện cuối kỳ. - Hệ thống cho phép cố vấn học tập và cán bộ lớp có thể xem và duyệt thông tin tự đánh giá các thành viên trong lớp. Trong bản tự đánh giá, ngoài các mục tự đánh giá, hệ thống cho phép cố vấn học tập xem thông tin kết quả học tập (điểm tổng kết và số tín chỉ còn nợ của sinh viên) được láy từ hệ thống quản lý đào tạo. - Hệ thống cho phép chuyên viên PCTSV xem thống kê điểm rèn luyện theo từng lớp. Phân tích thiết kế hướng đối tượng 20 8/30/2017 6 Bài tập a. Xây dựng biểu đồ Use case sử dụng tổng thể và các tác nhân. Mô tả tóm lược các use Case sử dụng. b. Tập trung vào chức năng cho phép cán bộ duyệt thông tin tự đánh giá. - Biểu đồ tuần tự cấp độ phân tích - Biểu đồ lớp phân tích - Biểu đồ lớp thiết kế Phân tích thiết kế hướng đối tượng 21 Use Case Phân tích thiết kế hướng đối tượng 22 Use Case • View Notification: Xem thông tin thông báo từ hệ thống gửi đến qua gmail Fill Practise Point: Sinh viên tự điền điểm đánh giá rèn luyện vào form. View result train: Xem kết quả học tập các môn View Practise Point: Xem kết quả điểm rèn luyện đã được thống kê. send notification metting:Phòng công tác sinh viên Gửi thông báo họp lớp tới hệ thống get Notification Meeting: Nhận thông báo họp từ phòng công tác sinh viên send Notification: Gửi thông báo qua gmail cho sinh viên Check Practise Point: Kiểm tra điểm rèn luyện tự đánh giá. b. Chức năng cán bộ duyệt thông tin tự đánh giá: Phân tích thiết kế hướng đối tượng 23 Biểu đồ cộng tác (Collaboration Diagram) • Biểu đồ cộng tác miêu tả tương tác giữa các đối tượng cũng giống như biểu đồ tuần tự, nhưng nó tập trung trước hết vào các sự kiện, tức là tập trung chủ yếu vào sự tương tác giữa các đối tượng • Kỹ thuật đánh số được coi là hơi có phần khó hiểu hơn so với kỹ thuật mũi tên sử dụng trong biểu đồ tuần tự. Nhưng ưu điểm của biểu đồ cộng tác là nó có thể chỉ ra các chi tiết về các lệnh gọi hàm (thủ tục), yếu tố được né tránh trong biểu đồ tuần tự. Phân tích thiết kế hướng đối tượng 24 8/30/2017 7 Biểu đồ cộng tác (Collaboration Diagram) • Biểu đồ cộng tác miêu tả tương tác giữa các đối tượng cũng giống như biểu đồ tuần tự, nhưng nó tập trung chủ yếu vào sự tương tác giữa các đối tượng • Một số chú ý khi xây dựng biểu đồ cộng tác • Giữa hai đối tượng có thể có nhiều message. Các message này sẽ cùng được biểu diễn trong không gian giữa hai đối tượng, kèm theo số thứ tự của nó. • Trong biểu đồ cộng tác cũng có thể có các message từ một đối tượng đến bản thân nó. Message này sẽ biểu diễn bởi một đường vô hướng xuất phát và kết thúc trên đối tượng đó. Phân tích thiết kế hướng đối tượng 25 Phân tích thiết kế hướng đối tượng 26 Biểu đồ cộng tác (Collaboration Diagram) Phân tích thiết kế hướng đối tượng 27 Biểu đồ trạng thái (State Diagram) • Biểu đồ trạng thái được sử dụng để biểu diễn các trạng thái và sự chuyển tiếp giữa các trạng thái của các đối tượng trong một lớp xác định. Thông thường, mỗi lớp sẽ có một biểu đồ trạng thái (trừ lớp trừu tượng là lớp không có đối tượng) • Biểu đồ này sẽ cho biết các trạng thái có thể có của các đối tượng lớp đó và các điều kiện chuyển đổi giữa các trạng thái. • Biểu đồ trạng thái sẽ hỗ trợ tốt hơn cho người phân tích trong việc bổ sung các thuộc tính còn thiếu cho biểu đồ lớp và các phương thức của bản thân lớp đó Phân tích thiết kế hướng đối tượng 28 8/30/2017 8 Biểu đồ trạng thái (State Diagram) • Xây dựng biểu đồ trạng thái • Bước 1: Nhận biết các trạng thái và sự kiện • Bước 2: Xây dựng biểu đồ Phân tích thiết kế hướng đối tượng 29 Biểu đồ trạng thái (State Diagram) • Bước 1: Nhận biết các trạng thái và sự kiện • Một đối tượng có thể có những trạng thái nào? Hãy liệt kê ra tất cả những trạng thái mà một đối tượng có thể có trong vòng đời của nó. • Những sự kiện nào có thể xảy ra?: Vì sự kiện gây ra việc thay đổi trạng thái nên nhận ra các sự kiện là một bước quan trọng để nhận diện trạng thái. • Trạng thái mới sẽ là gì?: Sau khi nhận biết sự kiện, người thiết kế cần xem xét sau khi sự kiện này xảy ra thì trạng thái mới sinh ra sẽ là gì. • Có những thủ tục ảnh hưởng đến trạng thái của một đối tượng? • Những sự kiện và sự chuyển tiếp nào là không thể xảy ra? • Cái gì khiến cho một đối tượng được tạo ra?: Đối tượng thường được tạo ra do một sự kiện nào đó. Câu hỏi này giúp xác định chuyển tiếp đầu tiên trong biểu đồ trạng thái. • Cái gì khiến cho một đối tượng bị hủy?: Đối tượng sẽ bị hủy đi khi chúng không còn vai trò gì nữa. Trả lời câu hỏi này sẽ giúp tìm ra các chuyển tiếp cuối cùng trong biểu đồ. Phân tích thiết kế hướng đối tượng 30 Biểu đồ trạng thái (State Diagram) • Bước 2: Xây dựng biểu đồ • Trạng thái (state) • Trạng thái bắt đầu (initial state) • Trạng thái kết thúc (final state) • Sự kiện (event) • Sự chuyển tiếp (transition) Phân tích thiết kế hướng đối tượng 31 Biểu đồ trạng thái (State Diagram) • Trạng thái: giá trị của thuộc tính tại một thời điểm cụ thể • Ví dụ: trạng thái của ĐĐH: kiểm tra hàng, chờ giao, đã giao xong, chờ thanh toán • Ký hiệu: 8/30/2017 9 Biểu đồ trạng thái (State Diagram) • Trạng thái bắt đầu: thể hiện điểm bắt đầu tồn tại của đối tượng • Ký hiệu: • Trạng thái kết thúc: thể hiện điểm kết thúc của đối tượng • Ký hiệu: Biểu đồ trạng thái (State Diagram) • Sự kiện: là một tác động làm thay đổi giá trị mô tả của đối tượng (trạng thái của đối tượng) • Sự chuyển đổi: là một mối quan hệ thể hiện sự thay đổi từ trạng thái này sang trạn thái khác của một đối tượng. • Ký hiệu: Biểu đồ trạng thái (State Diagram) Phân tích thiết kế hướng đối tượng 35 Biểu đồ trạng thái lớp Thẻ mượn- chức năng mượn sách Biểu đồ hoạt động (Activity Diagram) • Biểu đồ hoạt động sử dụng để mô hình hóa luồng đối tượng đi từ trạng thái này sang trạng thái khác tại từng vị trí trong luồng điều khiển. Phân tích thiết kế hướng đối tượng 36 8/30/2017 10 Biểu đồ hoạt động (Activity Diagram) Phân tích thiết kế hướng đối tượng 37 Biểu đồ hoạt động (Activity Diagram) Phân tích thiết kế hướng đối tượng 38 Biểu đồ hoạt động (Activity Diagram) Phân tích thiết kế hướng đối tượng 39 Biểu đồ hoạt động (Activity Diagram) Phân tích thiết kế hướng đối tượng 40 Synchronization Bar (Fork) Guard Condition Synchronization Bar (Join) Decision Concurrent Threads Transition Select Course [ add course ] Check Schedule Check Pre-requisites Assign to Course Resolve Conflicts Update Schedule Delete Course [ checks completed ] [ checks failed ] [ delete course ] Activity/Action 8/30/2017 11 Phân tích thiết kế hướng đối tượng 41 Vòng đời của đối tượng (Object lifecycle) Phân tích thiết kế hướng đối tượng 42 Bao giờ thì sử dụng biểu đồ nào • Không cần phải vẽ tất cả các loại biểu đồ động cho tất cả các loại hệ thống. Mặc dù vậy, trong một số trường hợp khác nhau chúng ta nhất thiết phải cần đến một số loại biểu đồ động nhất định. • Biểu đồ tuần tự và biểu đồ cộng tác rất hữu dụng trong việc chỉ ra sự cộng tác giữa các đối tượng, nhưng chúng lại không hữu dụng khi muốn miêu tả ứng xử chính xác của một đối tượng • Biểu đồ trạng thái được sử dụng để thể hiện ứng xử chính xác của một đối tượng • Biểu đồ hoạt động được sử dụng để thể hiện lối ứng xử xuyên suốt nhiều Use case Phân tích thiết kế hướng đối tượng 43 Phân tích thiết kế hướng đối tượng 44

Các file đính kèm theo tài liệu này:

  • pdfbai_giang_phan_tich_thiet_ke_huong_doi_tuong_chuong_4_phan_t.pdf
Tài liệu liên quan