26/10/2012
1
Gv: Vũ Thị Dương
Email:
KHOA CÔNG NGHỆ THÔNG TIN
Trường Đại học công nghiệp Hà Nội
PHÂN TÍCH THIẾT KẾ
HƯỚNG ĐỐI TƯỢNG
Biểu đồ chuyển trạng thái
và biểu đồ hoạt động
Bài 7
26/10/2012
2
Phân tích thiết kế hướng đối tượng Bài 7 - 3/21
Biểu đồ chuyển trạng thái
Về mặt hành vi ứng xử. Ta có thể phân loại 2 loại đối
tượng:
Đối tượng bị động nhận thông điệp
Đối tượng chủ động nhận thông điệp
Đối tượng bị động: là đối tượng mà cách ứng xử của nó
không hề thay đồi theo thời gian
Đối tượng chủ động: là đối tượng mà cách ứng xử của
nó thay đổi theo thời gian
Tùy thuộc vào trạng bên trong của đối tượng tại lúc đó.
Đối tượng này có đời sống thực sự: Sinh ra, trải qua trạng thái
và hủy bỏ.
Mục đích của mô hình hóa ứng xử là mô tả phản ứng của
các đối tượng chủ động trước các sự kiện đến với chúng.
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
Biểu đồ bao gồm các thông tin sau
Các trạng thái của đối tượng
Hành vi của đối tượng
Sự kiện tác động làm thay đổi trạng thái
Thông thường
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
Không phải mọi dự án sử dụng biểu đồ loại này
26/10/2012
3
Biểu đồ trạng thái
Sự kiện
Là một điều gì đó xảy ra bất chợt đối với hệ thống và có
ảnh hưởng đến hành vi của hệ thống.
Sự kiện bên trong: là sự kiện bắt nguồn từ bên trong hệ thống (ví
dụ như lỗi tràn ô)
Sự kiện bên ngoài là sự kiện bắt nguồn từ bên ngoài hệ thống (ví
dụ như nhắp chuột)
Đối với một thông điệp thì sự kiện có thể đến với nó thông
qua một thông điệp từ một đối tượng khác gửi tới.
Sự kiện gọi (call event): Tiếp nhận một lời gọi tới một thao tác
Sự kiện tín hiệu (signal event): là sự tiếp nhận một tín hiệu
Tín hiệu là một đối tượng có tên, được gửi một cách không đồng
bộ bởi một đối tượng và được tiếp nhận bởi một đối tượng khác
Phân tích thiết kế hướng đối tượng Bài 7 - 5/21
Phân tích thiết kế hướng đối tượng Bài 7 - 6/21
Trạng thái đối tượng
Trạng thái là sự tổ hợp của một tập hợp các giá trị, thuộc
tính và kết nối mà đối tượng có thể nhận ở 1 thời điểm
nào đó
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
Thí dụ
- Con người cụ thể của lớp người thì tùy thuộc vào: tuổi của người
đó và có kết nối tới một cơ quan nào hay không=>
- Có việc làm (có kết nối tới 1 cơ quan)
- Thất nghiệp (tuổi <60 và không kết nối tới cơ quan nào)
- Nghỉ hưu (tuổi >60)
Thay đổi trạng thái đối tượng: Có sự kiện xảy ra
Thí dụ: ai đó thanh toán hóa đơn hàng
26/10/2012
4
Phân tích thiết kế hướng đối tượng Bài 7 - 7/21
Biểu đồ trạng thái
Ký hiệu đồ họa của các phần tử trong biểu đồ
Trạng thái bắt đầu
Trạng thái kết thúc
Trạng thái trung gian
Dịch chuyển
Là một cung nối liên hai trạng thái, trên đó có ghi sự kiện kích thích
Tên trạng thái
Phân tích thiết kế hướng đối tượng Bài 7 - 8/21
Biểu đồ trạng thái
Trạng thái trung gian (State)
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
Có những sự kiện xảy ra khi đối tượng đang ở 1 trạng thái,
nhưng không gây ra 1 bước dịch chuyển mà chỉ kích hoạt
một hành động hay hoạt động nào đó.
Có năm loại thông tin có thể gộp trong trạng thái
Hoạt động,
Hành động vào
Hành động ra
Sự kiện
Lịch sử trạng thái.
Tên trạng thái
26/10/2012
5
Phân tích thiết kế hướng đối tượng Bài 7 - 9/21
Biểu đồ trạng thái
Trạng thái trung gian (State)
Hoạt động (Activity)
Là thao tác mà thời gian thực hiện là đáng kể
Nó là hành vi có thể ngắt được
Biểu diễn trong phần tử biểu đồ: do hay /
Hành động là thao tác mà thời gian thực hiện không đáng kể
Hành động vào (Entry Action)
Là hành vi xảy ra khi đối tượng đang chuyển vào trạng
thái
Nó là hành vi không thể ngắt được
Biểu diễn trong phần tử biểu đồ: Entry
Hành động ra (Exit Action)
Là hành vi xảy ra khi đối tượng đang chuyển ra trạng
thái
Nó là hành vi không thể ngắt được
Biểu diễn trong phần tử biểu đồ: Exit
Phân tích thiết kế hướng đối tượng Bài 7 - 10/21
Biểu đồ trạng thái
Ví dụ: Trạng thái nhập mật khẩu
26/10/2012
6
Phân tích thiết kế hướng đối tượng Bài 7 - 11/21
Biểu đồ trạng thái
Biểu đồ trạng thái lớp Tài khoản
Biểu đồ trạng thái
Tóm lại: có 6 thời điểm xung quanh trạng
thái mà ở đó có thể xuất thành hành động
hay hoạt động
Hành động gắn với bước dịch chuyển tới trạng
thái (hđ1)
Hành động khi vào trạng thái (hđ2)
Hoạt động định sẵn trong trạng thái (hđ3)
Hành động khi ra khỏi trạng thái (hđ5)
Hành động gắn với bước dịch chuyển tới một
trạng thái khác (hđ6)
Phân tích thiết kế hướng đối tượng Bài 7 - 12/21
26/10/2012
7
Phân tích thiết kế hướng đối tượng Bài 7 - 13/21
Biểu đồ trạng thái
Dịch chuyển (Transition)
Dịch chuyển là chuyển động từ trạng thái này
sang trạng thái khác
Đặc tả chuyển tiếp
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 chuyển tiếp đều có sự kiện. Sự kiện có thể có đối số, thí
dụ, Remove passenger(name)
Điều kiện bảo vệ (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é
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.
Trong lịch trình
exit/ ghi lại giờ hạ cánh
Tiếp đất
Hạ cánh
Trạng thái 1 Trạng thái 2
Event[Guard condition] / Action
Phân tích thiết kế hướng đối tượng Bài 7 - 14/21
Ví dụ Biểu đồ trạng thái
BĐ trạng thái Hóa đơn
BĐ trạng thái Máy ATM
26/10/2012
8
Phân tích thiết kế hướng đối tượng Bài 7 - 15/21
Ví dụ Biểu đồ trạng thái
BĐ trạng thái Hệ thống bán hàng
Phân tích thiết kế hướng đối tượng Bài 7 - 16/21
Ví dụ Biểu đồ trạng thái
BĐ trạng thái Hệ thống thang máy
26/10/2012
9
Phân tích thiết kế hướng đối tượng Bài 7 - 17/21
Biểu đồ trạng thái
Trạng thái ẩn (Nested state)
Để 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ếu hai hay nhiều trạng thái có cùng quá độ -> nhóm chúng
thành superstate
Lịch sử trạng thái (Superstate history)
Nhiều khi có nhu cầu nhớ lại trạng thái vừa trước đó của đối
tượng. Sử dụng chỉ báo lịch sử lịch sử trạng thái nơi đối tượng
vừa đi qua
H
Phân tích thiết kế hướng đối tượng Bài 7 - 18/21
Biểu đồ trạng thái
Trạng thái lịch sử (tt)
Ký hiệu trạng thái lịch sử H được đặt đâu đó trong trạng thái cha
(thường là góc dưới bên trái) và bước dịch chuyển trở lại trạng thái cha
chạm đến H
Ví dụ 2. Máy giặt có chu trình làm việc gồm 3 giai đoạn: Giặt xà phòng,
giũ sạch và vất khô. Bất cứ lúc nào ta có thể mở cửa và quy trình tạm
ngưng. Khi đóng cửa trở lại thì quy trình lại tiếp tục từ trạng thái vừa bị
ngắt.
26/10/2012
10
Cách xây dựng BĐ trạng thái
Tìm các lớp trong bài toán phải có ít nhất một trng hai đặc
điểm sau
Đối tượng của lớp có thể có sự phản ứng khác nhau trước cùng
một sự kiện xảy đến
Đối tượng của lớp có yêu cầu tổ chức một số thao tác vào một trật
tự nhất định. Lúc đó các trạng thái tiếp nối nhau sẽ cho phép mô
tả lịch trình đưa ra các kích hoạt cho các thao tác cần thiết
Thường chỉ khoảng 10-20% số các lớp là có yêu cầu mô tả hành vi
với biểu đồ trạng thái
Vậy các bước xây dựng biểu đồ trạng thái như sau
Phân tích thiết kế hướng đối tượng Bài 7 - 19/21
Cách xây dựng BĐ trạng thái
Tìm các trạng thái: không có 1 chỉ dẫn cụ thể nào
Lưu ý là số các trạng thái là hữu hạn. Không cần vẽ BĐ TT cho các
lớp có dưới 3 trạng thái. Tuy nhiên cũng có một số gợi ý
1. Với quan niệm trạng thái là một giai đoạn ổn định trong
đời sống nhiều biến động về hành vi, thì các giai đoạn
này thường được nhắc tới trong ngôn từ của các chuyên
gia lĩnh vực
2. Căn cứ vào sự biến thiên của các thuộc tính và kết nối,
qua đó phát hiện ra giá trị ngưỡng là các giá trị mà vượt
qua nó thì đối tượng sẽ có một số thay đổi trong hành vi
3. Nghiên cứu các biểu đồ trình tự có chứa đối tượng thuộc
lớp mà ta đang xét. Thường thì khoảng cách giữa hai lần
đối tượng nhận thông điệp liên tiếp sẽ tương ứng với một
trạng thái
Phân tích thiết kế hướng đối tượng Bài 7 - 20/21
26/10/2012
11
Cách xây dựng BĐ trạng thái
Tìm các trạng thái: không có 1 chỉ dẫn cụ thể nào
Lưu ý là số các trạng thái là hữu hạn. Không cần vẽ BĐ TT cho các
lớp có dưới 3 trạng thái.
Tổ chức các trạng thái thành biểu đồ bằng cách bổ sung
các dịch chuyển giữa các trạng thái cùng với các sự kiện
tương ứng
Biểu diễn các dãy trạng thái theo hướng từ khi sinh ra, đến kết
thúc cùng với các dịch chuyển liên quan
Bổ sung dần các dịch chuyển tương tứng với các kiều kiện rẽ
nhánh
Thêm các hành động và hoạt động
Gom nhóm hay phân rã trạng thái nếu cần
Phân tích thiết kế hướng đối tượng Bài 7 - 21/21
Ví dụ Biểu đồ trạng thái
Biểu đồ trạng thái lớp học trong thời gian đăng ký
Phân tích thiết kế hướng đối tượng Bài 7 - 22/21
26/10/2012
12
Cách xây dựng BĐ trạng thái
Khi muốn tạm giấu các trạng thái con trong một trạng thí
cha, nhưng tránh hiểu nhầm về tính kế thừa, ta dùng các
tồn căn (UML 1.0) hay điểm vào, điểm ra (UML 2.0)
Phân tích thiết kế hướng đối tượng Bài 7 - 23/21
Gom nhóm trạng thái
Phân tích thiết kế hướng đối tượng Bài 7 - 24/21
26/10/2012
13
Đối chiếu BĐ tương tác và trạng thái
Biểu đồ tương tác (trình tự và giao tiếp) diễn tả sự chuyển
giao thông điệp giữa các đối tượng
Biểu đồ trạng thái lại diễn tả phản ứng của các đối tượng
khi nhận thông điệp
BĐ TT mang lại cách nhìn sau, chính xác và đầy đủ về đối
tượng nên lấy nó làm căn cứ để nghiệm thu và bổ sung
các biểu đồ liên quan
Ví dụ…
Phân tích thiết kế hướng đối tượng Bài 7 - 25/21
Đối chiếu BĐ tương tác và trạng thái
Phân tích thiết kế hướng đối tượng Bài 7 - 26/21
26/10/2012
14
Vẽ biểu đồ trạng thái của xe hơi cần sửa chữa
Tiến trình sửa xe hơi của khách hàng yêu cầu được sửa
chữa, chúng được đặt trong garage đợi để sửa. Việc sửa
chữa có thể được tiến hành bấy cứ lúc nào. Khi sửa chữa
có thể cần phải thay phụ tùng mới, trong trường hợp đó
cần phải đợi phụ tùng mới được mua về để thay thế. Khi
sửa xong xe, xe được lái thử. Theo kết quả thử, sẽ xác
định cần sửa chữa khác hay xe đã sẵn sàng giao cho
khách hàng. Khi đó, xe được đưa vào garage đợi khách
đến lấy
Phân tích thiết kế hướng đối tượng Bài 7 - 27/21
Trong bài toán trên ta thấy lớp xe hơi có quan hệ với lớp
dịch vụ sửa chữa
Các trạng thái của xe hơi liên kết với lớp dịch vụ: Đợi sửa,
đang sửa, đã sửa
Phân tích thiết kế hướng đối tượng Bài 7 - 28/21
Xe hơi
- Hỏng
- Không hỏng
Dịch vụ
- Sửa
- Đợi mua phụ tùng
- Thay phụ tùng
- Lái thử
26/10/2012
15
?
Phân tích thiết kế hướng đối tượng Bài 7 - 29/21
?
Phân tích thiết kế hướng đối tượng Bài 7 - 30/21
Cho trong
Gara
Dang sua
entry/ xac dinh loi
do/ thay the phu tung
do/ SuaXe()
exit/ Xac nhan sua xong
H
Da sua
yeu cau sua
H
sua xe
giao khach
lai thu[ het loi ]
Thay pt[ het phu tung ] / Mua phu tung()
laiThu[ con loi ]
Doi khach den lay
26/10/2012
16
Vẽ biểu đồ hoạt động mô tả tiến trình sửa xe
hơi
Tiến trình sửa xe hơi của khách hàng yêu cầu được sửa
chữa, chúng được đặt trong garage đợi để sửa. Việc sửa
chữa có thể được tiến hành bấy cứ lúc nào. Khi sửa chữa
có thể cần phải thay phụ tùng mới, trong trường hợp đó
cần phải đợi phụ tùng mới được mua về để thay thế. Khi
sửa xong xe, xe được lái thử. Theo kết quả thử, sẽ xác
định cần sửa chữa khác hay xe đã sẵn sàng giao cho
khách hàng. Khi đó, xe được đưa vào garage đợi khách
đến lấy
Phân tích thiết kế hướng đối tượng Bài 7 - 31/21
Vẽ biểu đồ hoạt động mô tả tiến trình sửa xe
hơi
Phân tích thiết kế hướng đối tượng Bài 7 - 32/21
Yeu cau sua
xe
Sua xe
entry/ xac dinh duoc loi
do/ sua()
exit/ Kiem tra het loi
do/ thay phu tung()
Kiem tra xe
Lai thu
Giao khach
suaxe[ het phu tung ] / Mua phu tung()
[ co loi ]
[ het loi ]
[ khong loi ]
[ co loi ]
26/10/2012
17
Mô tả các trạng thái sách trong thư viện
Khi sách được nhập vào thư viện, nếu sách đó là bản duy
nhất thì nó chỉ được đọc tại chỗ, nếu có nhiều bản thì nó
có thể được dùng để cho mượn. Thậm chí có nhiều bản
của cuốn sách, thủ thhuw có quyền thay đổi các bản đó
thành loại tài liệu chỉ được đọc lại chỗ. Nếu 1 cuốn sách
được cho mượn một thời gian xác định mà không được trả
lại thì coi như nó bị mất và 1 năm sau đó thì bị xóa khỏi
kho. Tuy nhiên, nếu sau đó lại tìm thấy thì lại sẵn sàng
cho mượn. Trong trường hợp cuốn sách quá cũ và hư
hỏng nó sẽ bị loại bỏ. Cuốn sách có thể được thay thế
cuốn mới hay bị xóa bỏ. Không thể đặt trước sách mà hiện
tại thư viện không có trong kho
Phân tích thiết kế hướng đối tượng Bài 7 - 33/21
Tóm lại
Việc chọn trạng thái không có 1 gợi ý chính xác. Tuy nhiên
tham khảo một số thông tin sau
Trạng thái là giai đoạn ổn định -> tìm các giai đoạn trong diễn đạt
của lớp lĩnh vực và các tài liệu liên quan
Trạng thái là sự phản ánh thô các giá trị thuộc tính kết nối. Do đó
ta nên tìm các giá trị ngưỡng mà vượt qua nó đối tượng sẽ thay
đối hành vi. Từ đó ta tìm ra các giai đoạn. Đó là các trạng thái
Chú ý: Số trạng thái là hữu hạn nên
Không vẽ biểu đồ trạng thái có dưới 3 trạng thái
Tổ chức trạng thái thành biểu đo, bổ sung các dịch chuyển và các
sự kiện tương ứng
Gom nhó và phân ra nếu biểu đồ qúa phức tạp
Phân tích thiết kế hướng đối tượng Bài 7 - 34/21
26/10/2012
18
Phân tích thiết kế hướng đối tượng Bài 7 - 35/21
Biểu đồ hoạt động
Biểu đồ hoạt động (Activity diagram) do Odell đề xuất
cho UML để
Trong khi biểu đồ tương tác tập trung vào luồng điều khiển từ
đối tượng đến đối tượng khác
Biểu đồ hoạt động tập trung vào luồng điều khiển từ hoạt động
đến hoạt động.
Thường dùng để diễn tả logic của một ca sử dụng, một kịch
bản, một nhóm ca sử dụng, một quy tắc hay một thao tác
phức tạp
Phân tích thiết kế hướng đối tượng Bài 7 - 36/21
Biểu đồ hoạt động
Biểu đồ hoạt động mô tả một nội dung hoạt động theo
các luồng đi từ việc này sang việc khác.
Nó thường được dùng để diễn tả logic của một ca sử
dụng hay một kịch bản, một nhón ca sử dụng…
Biểu đồ gồm: Các nút là các hoạt động và cung là các
dịch chuyển
Hoạt động (Activity)
Là một công việc, có thể là được xử lý bằng tay (điền mẫu)
hay bằng máy tính (hiển thị màn hình đăng ký)
Ký hiệu: hình chữ nhật tròn góc có mang theo tên của hoạt
động
Tên hoạt động
26/10/2012
19
Phân tích thiết kế hướng đối tượng Bài 7 - 37/21
Biểu đồ hoạt động
Hành động (Actions)
Là các bước nhỏ hơn trong Activity
Action có thể xảy ra khi
Đang vào activity
Hành động vào xảy ra khi activity bắt đầu, đánh dấu bằng “Entry”
Khi đang đi ra khỏi activity
Hành động ra xảy ra khi rời bỏ activity, đánh dấu bằng “Exit”
Khi thực hiện activity
Hành động xảy ra khi đang trong activity, đánh dấu bằng “do”
Khi có sự kiện đặc biệt xảy ra
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
Chuyển tiếp (Transition)
Chỉ ra luồng điều khiển từ hoạt động này đến hoạt động khác.
Ký hiệu là mũi tên nỗi từ hoạt động này sang hoạt động khác
Phân tích thiết kế hướng đối tượng Bài 7 - 38/21
Biểu đồ hoạt động
Rẽ nhánh và đồng bộ (Synchonization)
Rẽ nhánh diễn tả bằng hình thoi nhỏ.
Đồ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
Khởi động xe
Lái xe
Đi xe buýt,
taxi, xe đạp
[ Con xăng ]
[ Hết xăng ]
26/10/2012
20
Biểu đồ hoạt động cho ca sử dụng Đăng ký môn học
Phân tích thiết kế hướng đối tượng Bài 7 - 39/21
Phân tích thiết kế hướng đối tượng Bài 7 - 40/21
Biểu đồ hoạt động
Làn bơi (Swimlanes)
Sử dụng để mô hình hóa luồng công việc trong tiến trình nghiệp vụ
Chỉ ra ai có trách nhiệm thực hiện từng hoạt động
Để phân hoạch các trạng thái hoạt động vào nhóm
Phân tách nhóm trên biểu đồ bằng các làn bơi
Mỗi hoạt động thuộc về một làn bơi
Quá độ có thể được vẽ từ làn bơi này đến làn bơi khác
Mỗi làn bơi có thể được cài đặt bởi một hay nhiều lớp
26/10/2012
21
Phân tích thiết kế hướng đối tượng Bài 7 - 41/21
Phân tích thiết kế hướng đối tượng Bài 7 - 42/21
26/10/2012
22
Phân tích thiết kế hướng đối tượng Bài 7 - 43/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 toán]
Xử lý đơn hàng
Báo giá
O : Order
[Đang xử lý]
b : Bill
[Chưa thanh toán]
Chuyển hàng ra
Gửi hàng đi
O : Order
[Đã điền]
Nhân viên kho hàng Nhân viên bán hàng Khách hàng
Swimlanes
Phân tích thiết kế hướng đối tượng Bài 7 - 44/21
Tóm tắt
Bài này đã xem xét các vấn đề sau
Biểu đồ chuyển trạng thái
Trạng thái của đối tượng
Các phần tử đồ họa xây dựng biểu đồ
Kỹ thuật xây dựng biểu đồ trạng thái
Biểu đồ hoạt động
Ứng dụng của biểu đồ hoạt động
Các phần tử đồ họa xây dựng biểu đồ hoạt động
26/10/2012
23
Phân tích thiết kế hướng đối tượng Bài 7 - 45/21
Bài tập
Mô tả một máy ATM. Các chức năng chính như
sau
Cấp phát tiền cho những ai có thẻ ngân hàng (cho phép
rút một số lượng tiền bởi hệ thống thông tin của ngân
hàng) và những ai có thẻ VISA(cho phép từ xa bởi hệ
thống)
Cho xem, kiểm tra tăng giản tài khoản và gửi tiền vào tài
khoản bằng tiền mặt hoặc ngân phiếu đối với những ai
có thẻ ngân hàng
Tất cả các giao tác đều được kiểm tra an toàn
Kiểm tra mã PIN
Mã PIN nhập sai 3 lần thì thẻ sẽ bị nuốt
Cần phải thường xuyên nạp tiền bào máy, lấy ngân phiếu
và các thẻ bị nuốt ra
Phân tích thiết kế hướng đối tượng Bài 7 - 46/21
Mô tả việc rút tiền với biểu đồ hoạt động
Nếu thẻ hợp lệ khách hàng có thể nhập mã PiN.
Thẻ sẽ bị nuốt sau 3 lần nhập không thành công.
Hệ thống ngân hàng sẽ cho phép rút một lượng
tiền tối đa hoặc từ chối việc rút tiền. Một thẻ
không được lấy ra bời khách hàng sau khi rút sẽ bị
nuốt. Tiền mặt không lấy bởi khách sẽ bị máy thu
hồi lại. Phiếu xác nhận rút tiền luôn được in trong
khi khách chờ lấy tiền
26/10/2012
24
Phân tích thiết kế hướng đối tượng Bài 7 - 47/21
Vẽ sơ đồ hoạt động cho tiến trình sửa xe hơi
Tiến trình sửa xe hơi ở một gara. Có nhiều xe hơi
của khách hàng yêu cầu được sửa. Chúng được
đặt trong gara đợi sửa. Việc sửa có thể được tiến
ành bất cứ lúc nào. Khi sửa có thể cần phải thay
phụ tùng mới, trong trường hợp đó cần phải đợi
phụ tùng mới được mua về thay thế. Khi sửa
xong, xe sẽ được lái thử. Theo kết quả thử sẽ xác
minh cần sửa chữa xe khác hay xe đã sẵn sàng để
giao khác. Khi đó, xe được đưa vào gẩ đợi khác
đến lấy
Biểu đồ trình tự sửa xe hơi
dvduc-2004 Phân tích thiết kế hướng đối tượng Bài 7 - 48/21
Yeu cau sua
xe
Sua xe
entry/ xac dinh duoc loi
do/ sua()
exit/ Kiem tra het loi
do/ thay phu tung()
Kiem tra xe
Lai thu
Giao khach
suaxe[ het phu tung ] / Mua phu tung()
[ co loi ]
[ khong loi ]
[ co loi ]
[ het loi ]