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
11 trang |
Chia sẻ: huongthu9 | Lượt xem: 579 | Lượt tải: 0
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:
- bai_giang_phan_tich_thiet_ke_huong_doi_tuong_chuong_4_phan_t.pdf