Tài liệu Bài giảng Biểu đồ chuyển trạng thái và biểu đồ hoạt động: PHÂN TÍCH THIẾT KẾ
HƯỚNG ðỐI TƯỢNG
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 2/21
Nội dung
1. Tiến trình phát triển phần mềm theo hướng đối tượng
2. Giới thiệu Ngơn ngữ mơ hình hĩa thống nhất UML
3. Mơ hình hĩa nghiệp vụ
4. Mơ hình hĩa trường hợp sử dụng
5. Mơ hình hĩa tương tác đối tượng
6. Biểu đồ lớp và gĩi
Biểu đồ chuyển trạng thái và biểu đồ hoạt động
8. Biểu đồ kiến trúc vật lý và phát sinh mã trình
9. Mơ hình hĩa dữ liệu
10.Bài học thực nghiệm
Biểu đồ chuyển trạng thái
và biểu đồ hoạt động
Bài 7
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 4/21
Biểu đồ chuyển trạng thái
n Mơ tả chu kỳ tồn tại của đối tượng từ khi nĩ sinh ra đến
khi nĩ bị phá hủy
n Sử dụng để mơ hình hĩa khía cạnh động của lớp
n Biểu đồ bao gồm các thơng tin sau
n Các trạng thái của đối tượng
n Hành vi của đối tượng
n Sự kiện tác động làm thay đổi trạng thái
n Thơng thường
n Xây dựng biểu đồ chuyển trạng thái cho một vài đối tượng của
lớp c...
21 trang |
Chia sẻ: haohao | Lượt xem: 2848 | Lượt tải: 0
Bạn đang xem trước 20 trang mẫu tài liệu Bài giảng Biểu đồ chuyển trạng thái và biểu đồ hoạt động, để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên
PHÂN TÍCH THIẾT KẾ
HƯỚNG ðỐI TƯỢNG
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 2/21
Nội dung
1. Tiến trình phát triển phần mềm theo hướng đối tượng
2. Giới thiệu Ngơn ngữ mơ hình hĩa thống nhất UML
3. Mơ hình hĩa nghiệp vụ
4. Mơ hình hĩa trường hợp sử dụng
5. Mơ hình hĩa tương tác đối tượng
6. Biểu đồ lớp và gĩi
Biểu đồ chuyển trạng thái và biểu đồ hoạt động
8. Biểu đồ kiến trúc vật lý và phát sinh mã trình
9. Mơ hình hĩa dữ liệu
10.Bài học thực nghiệm
Biểu đồ chuyển trạng thái
và biểu đồ hoạt động
Bài 7
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 4/21
Biểu đồ chuyển trạng thái
n Mơ tả chu kỳ tồn tại của đối tượng từ khi nĩ sinh ra đến
khi nĩ bị phá hủy
n Sử dụng để mơ hình hĩa khía cạnh động của lớp
n Biểu đồ bao gồm các thơng tin sau
n Các trạng thái của đối tượng
n Hành vi của đối tượng
n Sự kiện tác động làm thay đổi trạng thái
n Thơng thường
n Xây dựng biểu đồ chuyển trạng thái cho một vài đối tượng của
lớp cĩ nhiều hành vi động trong dự án
n Khơng phải mọi dự án sử dụng biểu đồ loại này
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 5/21
Trạng thái đối tượng?
n Trạng thái đối tượng là kết quả của các hoạt động trước
đĩ của đối tượng
n ðối tượng luơn ở trong một trạng thác xác định tại một
thời điểm
n Trạng thái được xác định bởi giá trị của thuộc tính và liên kết với
đối tượng khác
n Thí dụ
n Con người cụ thể của lớp Person cĩ các trạng thái: Người lao
động, Thất nghiệp, Về hưu
n Hĩa đơn mua hàng: ðã thanh tốn, chưa thanh tốn
n Xe ơ tơ: ðang chạy, ðang đứng
n Thay đổi trạng thái đối tượng
n Cĩ sự kiện xảy ra
n Thí dụ: ai đĩ thanh tốn hĩa đơn hàng
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 6/21
Biểu đồ trạng thái
n Thí dụ biểu đồ trạng thái
n Sử dụng biểu đồ trạng thái để làm gì?
n Phân tích viên, người thiết kế và người sử dụng hiểu hành vi đối
tượng
n Người phát triển hiểu hành vi đối tượng để cài đặt nĩ
Unpaid
Paid
Invoice Created
Paying
Invoice destroyed
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 7/21
Biểu đồ trạng thái
n Các phần tử đồ họa
n Trạng thái khởi đầu: Khi đối tượng được tạo ra
n Trạng thái dừng: Khi đối tượng bị phá hủy
n Trạng thái (State)
n Hoạt động
n Hành động vào
n Hành động ra
n Quá độ (Transition)
n Sự kiện
n ðiều kiện canh
n Hành động
n Trạng thái ẩn
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 8/21
Biểu đồ trạng thái
n Các phần tử đồ họa
n ...
n Trạng thái (State)
n Trạng thái được xác định từ khảo sát thuộc tính lớp và quan hệ
giữa các lớp
n Ký pháp đồ họa
n Khi đối tượng trong trạng thái nào đĩ nĩ thực hiện vài hoạt
động (Activity)
n Phát sinh báo cáo, Thực hiện tính tốn và Gửi thơng điệp đến đối
tượng khác
n Cĩ năm loại thơng tin cĩ thể gộp trong trạng thái
n Hoạt động, Hành động vào, Hành động ra, Sự kiện, Lịch sử trạng
thái.
n ...
StateName
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 9/21
Biểu đồ trạng thái
n Các phần tử đồ họa
n ...
n Trạng thái (State)
n Hoạt động (Activity)
n Là hành vi mà đối tượng thực hiện khi nĩ
đang ở trạng thái cụ thể
n Nĩ là hành vi cĩ thể ngắt được
n Biểu diễn trong phần tử biểu đồ: do hay /
n Hành động vào (Entry Action)
n Là hành vi xảy ra khi đối tượng đang
chuyển vào trạng thái
n Nĩ là hành vi khơng thể ngắt được
n Biểu diễn trong phần tử biểu đồ: Entry
n Hành động ra (Exit Action)
n Là hành vi xảy ra khi đối tượng đang
chuyển ra trạng thái
n Nĩ là hành vi khơng thể ngắt được
n Biểu diễn trong phần tử biểu đồ: Exit
n ...
Canceled
do/ Arange alternate flight for customers
Scheduled
do/ Check current date
entry/ Post flight schedule on Internet...
In Flight
do/ Check current date
exit/ Record landing time...
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 10/21
Biểu đồ trạng thái
n Các phần tử đồ họa
n ...
n Quá độ (Transition)
n Quá độ là chuyển động từ trạng thái này sang
trạng thái khác
n Quá độ phản thân
n ðặc tả quá độ
n Sự kiện (Event): cái gì đĩ là nguyên nhân chuyển
từ trạng thái này sang trạng thái khác
Hầu hết quá độ đều cĩ sự kiện. Sự kiện cĩ thể cĩ
đối số, thí dụ, Remove passenger(name)
n ðiều kiện canh (Guard): xác định khi nào sự kiện
xảy ra, thí dụ, Trạng thái máy bay từ Open sang
Full khi chỗ cuối cùng đã cĩ người mua vé
n Hành động (Action): hành vi khơng ngắt được, xảy
ra như một phần của chuyển tiếp.
n ...
In Flight
exit/ Record landing time
Landed
Land
Open
Pass / Remove passenger
State 1 State 2
Event[Guard condition] / Action
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 11/21
Biểu đồ trạng thái
n Các phần tử đồ họa
n ...
n Trạng thái ẩn (Nested state)
n ðể giảm quá nhiều trạng thái trong biểu đồ ta cĩ thể lồng trạng thái
vào trong trạng thái khác: Substate, Superstate
n Nếu hai hay nhiều trạng thái cĩ cùng quá độ -> nhĩm chúng thành
superstate
n Thí dụ
n Biểu đồ biểu đồ biến đổi trạng thái của lớp Flight cĩ các trạng thái
Scheduled, Open, Full và Closed
n Chuyến bay chuyển vào trạng thái Closed 10 phút trước khi cất cánh,
khơng quan tâm đến trạng thái trước đĩ của nĩ là Open hay Full.
n Lịch sử trạng thái (Superstate history)
n Nhiều khi cĩ nhu cầu nhớ lại trạng thái vừa trước đĩ của đối tượng
n Bổ sung trạng thái khởi đầu trong siêu trạng thái
n Sử dụng chỉ báo lịch sử lịch sử trạng thái nơi đối tượng vừa đi quaH
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 12/21
Biểu đồ trạng thái với trạng thái ẩn
Scheduled
Open
Full
Closed
[ Current date is less than 60 days before flight ]
/ Set number of passenger to 0
Add/Remove passenger
Add passenger[ Last seat was sold ]
Remove passenger( PassengerName )
[ 10 min before scheduled takeoff ]
[ 10 min before scheduled takeoff ]
Scheduled
Closed
Adding Passengers
Opened FullOpen
Add/Remove passenger
[ Current date is less than 60 days before
flight ] / Set number of passenger to 0
Add passenger[ Last seat was sold ]
Remove passenger( PassengerName )
[ 10 min before scheduled takeoff ]
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 13/21
Biểu đồ trạng thái và lớp
n Mơ tả quan hệ giữa biểu đồ trạng thái và lớp
n Thí dụ Biểu đồ trạng thái của lớp Digital watch
Display
do/ Set current time
Set hours
do/ Display hour
Set minutes
do/ Display minutes
mode_button
mode_button
mode_button
inc / hours:=hours+1
inc / minutes:=minutes+1
Digital_watch
mode_button()
inc()
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 14/21
Biểu đồ hoạt động
n Biểu đồ hoạt động (Activity diagram) do Odell đề xuất
cho UML để
n mơ tả luồng cơng việc trong tiến trình nghiệp vụ trong mơ hình
hĩa nghiệp vụ
n mơ tả luồng sự kiện trong mơ hình hĩa hệ thống
n Sử dụng text như trước đây sẽ khĩ đọc khi logíc phức tạp, cĩ
nhiều rẽ nhánh
n Biểu đồ hoạt động sử dụng để mơ hình hĩa
n khía cạnh động của hệ thống
n các bước trình tự hay tương tranh trong quá trình tính tốn
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 15/21
Biểu đồ hoạt động
n Hoạt động (Activity)
n Là một bước trong tiến trình
n Hành động (Actions)
n Là các bước nhỏ hơn trong Activity
n Action cĩ thể xảy ra khi
n ðang vào activity
n Hành động vào xảy ra khi activity bắt đầu, đánh dấu bằng “Entry”
n Khi đang đi ra khỏi activity
n Hành động ra xảy ra khi rời bỏ activity, đánh dấu bằng “Exit”
n Khi thực hiện activity
n Hành động xảy ra khi đang trong activity, đánh dấu bằng “do”
n Khi cĩ sự kiện đặc biệt xảy ra
n Hành động xảy ra khi và chỉ khi cĩ sự kiện cụ thể xảy ra, đánh dấu
bằng “event” tiếp theo là tên sự kiện
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 16/21
Biểu đồ hoạt động
n ðối tượng và luồng đối tượng
(Object flow)
n ðối tượng là thực thể, cĩ thể bị
các hoạt động trong luồng sử
dụng và thay đổi
n Trong biểu đồ hoạt động:
n hiển thị đối tượng với trạng thái
của nĩ
n Liên kết đối tượng với các hoạt
động thơng qua luồng đối
tượng
n Một đối tượng cĩ thể là đầu vào
cho hoạt động.
Display fare
Enter credit
information
Ticket
[Unconfirmed]
Reserve seat
Generate confirmation
number
Ticket
[Purchased]
[Approved]
[...]
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 17/21
Biểu đồ hoạt động
n Quá độ (Transition)
n Chỉ ra luồng điều khiển từ hoạt động này đến hoạt động khác
n Trường hợp đơn giản
n ðặt giới hạn trên quá độ để điều khiển: event hay guard condition
n Khi cĩ sự kiện, điều kiện canh điều khiển để quá độ cĩ thể xảy ra?
Reserve seat Generate confirmation number
Reserve seat Refund credit purchase
Cancel
reservation
Generate confirmation
number
Cancel
Reserve seat Generate confirmation
number
[ New reservation ]
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 18/21
Biểu đồ hoạt động
n Rẽ nhánh và đồng bộ (Synchonization)
n ðồng bộ là cách mơ tả hai hay nhiều nhánh flows xảy ra đồng thời
Ngủ dậy
Ăn sáng Uống cà phê
ði học
{OR}
{XOR}
Khởi động xe
Lái xe
Đi xe buýt,
taxi, xe đạp
[ Con xăng ] [ Hết xăng ]
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 19/21
Biểu đồ hoạt động
n Làn bơi (Swimlanes)
n Sử dụng để mơ hình hĩa luồng cơng việc trong tiến trình nghiệp vụ
n Chỉ ra ai cĩ trách nhiệm thực hiện từng hoạt động
n ðể phân hoạch các trạng thái hoạt động vào nhĩm
n Phân tách nhĩm trên biểu đồ bằng các làn bơi
n Mỗi hoạt động thuộc về một làn bơi
n Quá độ cĩ thể được vẽ từ làn bơi này đến làn bơi khác
n Mỗi làn bơi cĩ thể được cài đặt bởi một hay nhiều lớp
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 20/21
Biểu đồ hoạt động
Kết thúc mua
hàng
Yêu cầu mua
hàng
Tiếp tục cơng
việc
Nhận hàng
Trả tiền
b : Bill
[Đã thanh tốn]
Xử lý đơn hàng
Báo giá
O : Order
[Đang xử lý]
b : Bill
[Chưa thanh tốn]
Chuyển hàng ra
Gửi hàng đi
O : Order
[Đã điền]
Nhân viên kho hàngNhân viên bán hàngKhách hàng
Swimlanes
ehamingway@gmail.com Phân tích thiết kế hướng đối tượng Bài 7 - 21/21
Tĩm tắt
n Bài này đã xem xét các vấn đề sau
n Biểu đồ chuyển trạng thái
n Trạng thái của đối tượng
n Các phần tử đồ họa xây dựng biểu đồ
n Kỹ thuật xây dựng biểu đồ trạng thái
n Biểu đồ hoạt động
n Ứng dụng của biểu đồ hoạt động
n Các phần tử đồ họa xây dựng biểu đồ hoạt động
Các file đính kèm theo tài liệu này:
- uml07.pdf