bài 5: Mô hình hóa hành vi và sự tương tác - Pdf 25

26/10/2012
1
Gv: Vũ Thị Dương
Email: [email protected]
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
Mô hình hóa hành vi.
Mô hình hóa sự tương tác
Bài 5
26/10/2012
2
Phân tích thiết kế hướng đối tượng Bài 5 - 3/38
Mục tiêu
 Sau khi học xong bài học, sinh viên nắm được
1. Tại sao cần phải mô hình hóa hành vi
2. Có mấy cách mô hình hóa hành vi
3. Biểu đồ tương tác có mấy loại. Ưu nhược điểm từng loại
4. Cách xây dựng biểu đồ tương tác Phân tích thiết kế hướng đối tượng Bài 5 - 4/38
Mô hình hóa hành vi
 Hành vi (behavior) là cách hành động, cách cư xử của
một hệ thống
 Mô hình hóa hành vi là sự diễn tả khía cạnh động của hệ
thống.
 Có 3 cách tiếp cận hành vi hệ thống
 Hành vi thể hiện trong sự tương tác giữa các đối tượng, tạo nên
kịch bản

 Biểu đồ cộng tác
26/10/2012
4
Phân tích thiết kế hướng đối tượng Bài 4 - 7/23
Đối tượng?
 Ta nhìn thấy đối tượng xung quanh ta
 Bàn, ghế, quyển sách
 Đối tượng là cái gì đó gói thông tin và hành vi
 Nó là khái niệm biểu diễn cái cụ thể trong thế giới thực (có
căn cước (định danh/địa chỉ) và ranh giới rõ ràng
 Thí dụ Máy bay VN358 là đối tượng
 Có các thông tin:
Ngày bay 10 April, giờ bay 8h30, số hiệu máy bay VN358, bay từ Hà Nội
 Có các hành vi
 Nó biết đón khách vào máy bay, biết đưa khách ra khỏi máy bay, xác
định khi nào máy bay đầy khách
 Thông tin được lưu trữ bởi thuộc tính (Attribute)
 Hành vi của đối tượng được gọi là thao tác (Operation)

Phân tích thiết kế hướng đối tượng Bài 6 - 8/23
Thuộc tính
 Thuộc tính là 1 tính chất có đặt tên của 1 lớp và nó nhận 1
giá trị cho đối tượng thuộc lớp đó tại mỗi thời điểm
 Tên thuộc tính là danh từ hay cụm danh từ, chữ cái đầu
viết thường
 Cú pháp đầy đủ là
 [Tần nhìn]/[/]tên[:kiểu][cơ số][=giá trị đầu[{xâu tính chất}]
 Tầm nhìn: cho biết thuộc tính đó được thấy và dùng ở các lớp khác
 Public- ký hiệu +; Private- ký hiệu – ; Protected- ký hiệu #
 Cơ số: trỏ số các giá trị có thể nhận

Phân tích thiết kế hướng đối tượng Bài 5- 10/34
26/10/2012
6
Các loại thông điệp (tt)
 Thông điệp đồng bộ (biểu diễn bằng mũi tên đầu tam giác
đặc)
 Đó là một chuyển giao điều khiển lồng, tức là một lời gọi thao tác:
bên gọi chuyển tới bên bị gọi, rồi tạm ngưng để chờ bên bị gọi trả
lại điều khiển
 Bên bị gọi thực hiện tao tác yêu cầu, nếu cần có thể chuyển điều
khiển cho bên khác và có thể kèm theo kết quả trả lời
 Thông điệp trả về có thể biểu diễn tường minh bởi mũi tên nét đứt
hay có thể bỏ quả (ví nó là thời điểm kết thúc thao tác )

Phân tích thiết kế hướng đối tượng Bài 5- 11/34
Các loại thông điệp (tt)
 Thông điệp không đồng bộ (biểu diễn bằng mũi tên
thường )(UML 1.3 trở về trước dùng mũi tên nửa)
 Là chuyển giao điều khiển phẳng. Thông điệp gửi đi vào hàng đợi
bên nhận
 Bên gửi không cần biết thông điệp đã nhận chưa mà tiếp tục làm
việc ngay
 Bên nhận thực hiện một thao tác và cũng có thể trả về một thông
tin cho bên gửi. Nhưng nếu có sự trả lại thì phải biểu diễn tường
minh

Phân tích thiết kế hướng đối tượng Bài 5- 12/34
26/10/2012
7
Phân tích thiết kế hướng đối tượng Bài - 13/34

Tìm kiếm đối tượng
 Khảo sát các danh từ trong đặc tả UC
 Tìm đối tượng trong tài liệu kịch bản
 Kịch bản (Scenario) là một hiện thực của luồng sự kiện
 Mỗi luồng sự kiện có nhiều kịch bản
 Mỗi UC có thể có nhiều biểu đồ tương tác
 Tìm đối tượng không được mô tả trong luồng sự kiện
 Các đối tượng cho phép tác nhân nhập và quan sát thông tin
 Các đối tượng tham gia điều khiển trình tự luồng xuyên qua UC
 Tìm đối tượng tương ứng với khái niệm trừu tượng khi
phân tích
 Thí dụ Tên sách, Tên tạp chí là trừu tượng không tương ứng với
đối tượng nào trong thế giới thực
Phân tích thiết kế hướng đối tượng Bài 5 - 16/34
Biểu diễn đối tượng
Tênđốitượng Tênđốitượng : Lớp : Lớp
<<Stereotype>>>
Tênđốitượng
Ten doi tuongTen doi tuong
:Name1:Name1 :Name2:Name2
Message1
Message2
Message3
26/10/2012
9
Phân tích thiết kế hướng đối tượng Bài - 17/34
Tìm kiếm tác nhân
 Sau khi xác định đối tượng, ta tìm kiếm tác nhân cho
biểu đồ tương tác
 Tác nhân trong biểu đồ tương tác là sự kích hoạt từ

Phân tích thiết kế hướng đối tượng Bài - 20/34
Mô hình tổng quát biểu đồ tt
Nguoi su dung:
Tac nhan 1
Nguoi su dung:
Tac nhan 1
Doi tuong Mau
nhap lieu
Doi tuong Mau
nhap lieu
Doi tuong dieu
khien
Doi tuong dieu
khien
Doi tuong du
lieu
Doi tuong du
lieu
1: Mo mau nhap lieu
2: Nhap thong tin
3: Luu thong tin
7: Luu tru
4: Luu tru
5: Tao lap
6: Thu thap thong tin
26/10/2012
11
Thông điệp tạo và hủy bỏ
Phân tích thiết kế hướng đối tượng Bài 5- 21/34
Doi tuong 1Doi tuong 1

các môn và kết thúc
II. Mô tả kịch bản
1. Kịch bản chính
Ca sử dụng bắt đầu khi thầy giáo đăng nhập hệ thống hợp lệ và nhắc
thầy giáo chọn học kỳ này hay học kỳ sau, thầy chọn học kỳ , hệ
thống nhắc thầy chọn việc: Thêm, bỏ,xem,in ra
2. Kịch bản con
Thêm một lớp giảng (còn nữa)

26/10/2012
13
Phân tích thiết kế hướng đối tượng Bài 4 – 25/13
Thí dụ: Chọn môn giảng
 Kịch bản con thêm một lớp giảng
 Hệ thống hiển thị màn hình các môn học trong học kỳ, gồm tên,
mã số môn học.
 Thầy giáo nhập tên môn học, mã số môn học.
 Hệ thống hiển thị các lớp giảng với môn đã chọn.
 Thầy giáo chọn 1 lớp giảng.
 Hệ thống kết nỗi thầy với lớp giảng đã chọn. Ca sử dụng bắt đầu
lại
 ……
Dựa vào kịch bản đặc tả ta phát hiện các lớp:
 Lớp Thực thể: Lớp giảng, môn học, thầy giáo
 Lớp Biên: W_thầy; W_Lớp
 Lớp điều khiển: QLLớpthầy Chọn môn giảng
26/10/2012

Biểu đồ trình tự “đăng nhập”
Phân tích thiết kế hướng đối tượng Bài 5- 29/34

Đăng ký môn học
Phân tích thiết kế hướng đối tượng Bài 5- 30/34

Sinh vien
(from Use Case View)

)
W_DangNhap
- tenDN
- matKhau
- hocKy
- namHoc
+ kiemTraDN()
+ themMon()
+ boMon()
+ layTKB()
(from Bien)
W_dangKyMonHoc
- mon
- lopHoc
- buoiHoc
+ themMon()
+ boMon()
+ hienThi()
+ InLichHoc()
(from Bien)
ThayGiao

+ layLop()
+ boLop()
(from DieuKhien)
SinhVien
# tenSV : String
# maSV : String
# gioiTinh : int
# noiSinh : string
# danToc : String
# diaChi : String
# ngaySinh : Date
# soDT : string
# email : String
+ layMK()
+ themSv()
+ xoaSv()
+ capNhatTTsv()
(from QLSinhVien)
LopHoc
# maLop : String
# tenLop : String
# ngayBatDau : Date
# ngayKetThuc : date
# ngayHocTrongTuan : Byte
+ ganThay()
+ themsv()
+ layLop()
+ themLop()
+ xoaLop()
+ capNhatTTLop()


Lập bản giới thiệu môn học
 Tóm tắt
 Sau khi các thầy giáo đã đăng ký các môn mà mình có thể dạy
trong kỳ
 CBQS đăng nhập thành công vào hệ thống
 Hệ thống yêu cầu chọn việc
 CBQS chọn lập danh sách môn học
 CBQS chọn học kỳ, năm học
 Hệ thống hiển thị danh sách các môn học trong học kỳ + thông tin
tên thầy dạy.
 CBQS chọn môn học
 hệ thống lấy các lớp và thông tin thầy ứng với các lớp
 CBQS nhập thông tin bổ sung: buổi học để sinh viên có căn cứ lựa
chọn
Kết quả: Danh sách các môn học đươc tạo ra
Phân tích thiết kế hướng đối tượng Bài 5- 32/34
26/10/2012
17
Lập bảng danh sách môn học
Phân tích thiết kế hướng đối tượng Bài 5- 33/34

Trình tự lập ds môn học
Phân tích thiết kế hướng đối tượng Bài 5- 34/34
26/10/2012
18
Phân tích thiết kế hướng đối tượng Bài 5 - 35/38
Nội dung chính
 Cách xây dựng biểu đồ tương tác
 Biểu đồ trình tự

Doi tuong
1
Doi tuong
2
1: Thong diep
Du lieu A
Du lieu B
Phân tích thiết kế hướng đối tượng Bài - 38/34
Biểu đồ cộng tác
 Tiêu đề của thông điệp có cú pháp
 [Bước trước] [Biểu thức trình tự] [Trả lời:=]tên thông điệp (ds
tham số)
 Bước trước: danh sách số thứ tự, cách nhau bằng dấu phẩy và kết thúc
bằng gạch chéo(/). Thông điệp chỉ được chuyển giao khi thông điệp tương
tứng với các số thứ tựu cho trong ds đã chuyển giao rồi. -> yc đồng bộ
 Biểu thức trình tự: là dãy số theo sau là dấu hai chấm (:) diễn tả trình tự
tiếp nỗi các thông điệp
 Ví dụ: Thông điệp 2.1.3 tiếp sau thông điệp 2.1.2 và cả 2 đều được gửi đi
bởi cùng thao tác thực hiện thông điệp 2.1.
Các số lại có thể thay bằng các dãy ký tự nhằm mục đích
 Diễn tả lộ trình điều khiển, như là A3, B4/C3.1.2
 Diễn tả điều kiện chọn như là 4.2.[x<0]
 Diễn tả thông điệp lặp như là 1.1.*; hay 2.1.*[i:=1 n}

26/10/2012
20
Phân tích thiết kế hướng đối tượng Bài - 39/34
Biểu đồ cộng tác
 Trả lời là tên của kết quả trả về bên gửi. Tên này có thể là một thuộc tính
của đối tượng gửi hoặc cũng có thể lấy là một biến cục bộ trong thao tác

thức hơn hãy đưa thêm tiền điều kiện và hậu điều kiện
cho mỗi thông điệp

26/10/2012
22
Phân tích thiết kế hướng đối tượng Bài - 43/34
Chú ý
 Vậy dùng biểu đồ nào để mô hình hóa sự tương tác
 Trả lời: tùy ý, nghĩa là tùy lúc, tùy nơi và tùy thích; chỉ nên dùng 1
biểu đồ cho 1 tương tác
 Biểu đồ này chỉ diễn tả 1 luồng điều khiển. Do đó ta lập 1
biểu đồ t.tác cho 1 ca sử dụng.
 1 biểu đồ là chính,
 Biểu đồ còn lại diễn tả các lối rẽ khả dĩ hay các trường hợp mắc lỗi
khác
Phân tích thiết kế hướng đối tượng Bài 5- 44/34
26/10/2012
23
Đối chiếu và chỉnh sửa các MH
 Dựa vào các biểu đồ cấu trúc (lớp lĩnh vực, lớp tham gia
ca sử dụng) và các biểu đồ tương tác đã lập (BD trình tự,
cộng tác). Ta cần đối chiếu và sửa lại các biểu đồ để chỉnh
lại các chỗ không phù hợp
 Thêm bớt các lớp
 Một số lớp đã phát hiện khi lập các biểu đồ tương tác, cần bổ sung
vào biểu đồ cấu trúc (lớp lĩnh vực, lớp tham gia UC)
 Một số lớp trong biểu đồ cấu trúc không hề có đối tượng tham gia
vào một biểu đồ tương tác nào. Cần loại bỏ chúng đi
Phân tích thiết kế hướng đối tượng Bài 5- 45/34
Đối chiếu và chỉnh sửa các MH

Đối chiếu và chỉnh sửa các MH
 Ví dụ: Liên kết hay phụ thuộc
Phân tích thiết kế hướng đối tượng Bài 5- 48/34
26/10/2012
25
Phân tích thiết kế hướng đối tượng Bài - 49/34
Ví dụ
 Trong hệ thống ATM xem giải quyết phin không hợp
lệ. Ở đây ta cần nghĩ về tuần tự các hoạt động mà
khách có thể thực hiện:
 Đưa thẻ vào
 Nhập mã pin
 Rút thẻ
 Vậy hoạt động hệ thống là chấp nhận quyền truy cập
hay từ chối
 Tiếp theo, cac định ta đang tương tác với cài gì (ATM
hay hệ thông tin ngân hàng
 Máy ATM sẽ sử dụng đối tượng nào kiểm tra mã PIN.

Phân tích thiết kế hướng đối tượng Bài 5- 50/34
: KhachHang
: W_KhachHang : W_ManHinhATM : W_RutTien
: QLRut
: TaiKhoan : GiaoDich : GDRut : MayATM
1: danNhap(sothe,mk)
2: kiemtramaPin
3: hienThi()
4: Y/c chon viec
5: chon Rut tien
6: hien thi()


Nhờ tải bản gốc

Tài liệu, ebook tham khảo khác

Music ♫

Copyright: Tài liệu đại học © DMCA.com Protection Status