Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.44 MB, 55 trang )
Điển Cứu UML
Nhập Môn CNPM
•
Mối quan hệ giữa sơ đồ tương tác và sơ đồ lớp:
•
Các ký hiệu:
Singleton Objects:
Messages:
Page | 37
Điển Cứu UML
Nhập Môn CNPM
Reply or returns: 2 cách thể hiện
Messages to “self” or “this”:
thể
Creation
of
Instances:
Looping
construct:
Conditional
Messages: 2 cách
hiện
5 nguyên lý cơ bản:
Page | 38
Điển Cứu UML
o
o
o
o
o
Nhập Môn CNPM
Controller:
Vấn đề: đối tượng nào đứng sau UI layer để nhận sự tương tác của
Actor và điều khiển các hoạt động của hệ thống?
Giải quyết:
• Façade controller: xử lý cho toàn bộ hệ thống, là đối tượng
root.
• Session controller: xử lý cho một use case cụ thể nào đó.
Creator:
Vấn đề: đối tượng nào tạo ra đối tượng nào tạo ra đối tượng A?
Giải quyết: đối tượng B tạo ra đối tượng B khi:
• B “contains” A (chứa)
• B records A (ghi nhận)
• B closely uses A (sử dụng)
• B has the initializing data for A (khởi tạo dữ liệu)
Information Expert:
Vấn đề: đối tượng nào nắm giữ thông tin của đối tượng A?
Giải quyết: bổ sung thao tác lấy thông tin
Low coupling:
Vấn đề: làm sao để giảm sự ảnh hưởng khi có sự thay đổi, nói cách
khác là giảm sự móc nối, sự phụ thuộc lẫn nhau?
Giải quyết: số lần gọi hàm đến đối tượng khác là ít nhất có thể
High Cohesion:
Vấn đề: làm sao để đưa các thao tác vào đúng trách nhiệm của các đối
tượng?
Giải quyết: phân rõ trách nhiệm của từng đối tượng cụ thể
Tạo sơ đồ Sequence Diagram trong quản lý hồ sơ bệnh án như hình sau:
o Use case “thêm bệnh án”
o Tạo sơ đồ Sequence:
1. Nhấp phải trong mô hình hoạt vụ hệ thống trong trình duyệt
2. Lựa New -> Sequence Diagram
3. Đặt tên cho sơ đồ mới
4. Nhấp đúp sơ đồ mới để mở nó
o Bổ sung các tác viên và các đối tượng vào sơ đồ
1. Kéo tác viên Bác Sĩ từ trình duyệt lên sơ đồ
2. Lựa nút object từ thanh công cụ
3. Nhấp gần đỉnh của sơ đồ để bổ sung đối tượng
4. Lặp lại các bước trên bổ sung các đối tượng khác vào sơ đồ
o Bổ sung các thông điệp vào sơ đồ
1. Lựa nút thanh công cụ object message
2. Kéo từ đường của các tác viên Bác Sĩ đến đường của form chinh
3. Với thông điệp đã chọn, bạn gõ chọn chức năng quản lý bệnh nhân
4. Lặp lại các bước 2 và 3 để bổ sung thêm các thông điệp vào sơ đồ, như
đã nêu dưới đây.
a. Load form quan ly benh nhan (giữa form chinh và form
benhnhan)
b. Nhap thong tin benh nhan (giữa BacSi và form benhnhan)
Page | 39
Điển Cứu UML
Nhập Môn CNPM
c. ArrayList=Addbenhnhan(thongtin) (giữa form benhnhan và
d.
e.
f.
g.
h.
Ctrlbenhnhan)
ArrayList=Add(thongtin) (giữa CtrlBenhnhan và Benhnhan)
[check=true]benhnhan:=Insert(thongtin) (giữa CtrlBenhnhan và
Benhnhan)
True (giữa Benhnhan và CtrlBenhnhan)
True (giữa Ctrlbenhnhan và formbenhnhan)
Thong bao thanh cong (formbenhnhan và bacsi)
Sau khi hoàn tất các bước trên ta được sơ đồ Sequence Diagram như sau:
: BacSi
: FormChinh
: CtrlBenhNhan
: FormBenhNhan
: BenhNhan
1: Chon chuc nang quan ly benh nhan
2: Load form quan ly benh nhan
3: Nhap thong tin benh nhan
4: ArrayList:=AddBenhNhan(thongtin)
5: ArrayList:=Add(thongtin)
6: [Check=true]BenhNhan:=Insert(thongtin)
7: True
8: True
9: Thong bao thanh cong
4.6- Biểu đồ cộng tác (Collaboration Diagram)
Một biểu đồ cộng tác chỉ ra một sự cộng tác động, cũng giống như một biểu đồ trình tự.
Thường người ta sẽ chọn hoặc dùng biểu đồ trình tự hoặc dùng biểu đồ cộng tác. Bên cạnh
việc thể hiện sự trao đổi thông điệp (được gọi là tương tác), biểu đồ cộng tác chỉ ra các đối
tượng và quan hệ của chúng (nhiều khi được gọi là ngữ cảnh). Việc nên sử dụng biểu đồ trình
tự hay biểu đồ cộng tác thường sẽ được quyết định theo nguyên tắc chung sau: Nếu thời gian
hay trình tự là yếu tố quan trọng nhất cần phải nhấn mạnh thì hãy chọn biểu đồ trình tự; nếu
ngữ cảnh là yếu tố quan trọng hơn, hãy chọn biểu đồ cộng tác. Trình tự tương tác giữa các đối
tượng được thể hiện trong cả hai loại biểu đồ này.
Biểu đồ cộng tác được vẽ theo dạng một biểu đồ đối tượng, nơi một loạt các đối tượng được
chỉ ra cùng với mối quan hệ giữa chúng với nhau (sử dụng những ký hiệu như trong biểu đồ
lớp/ biểu đồ đối tượng). Các mũi tên được vẽ giữa các đối tượng để chỉ ra dòng chảy thông
điệp giữa các đối tượng. Các thông điệp thường được đính kèm theo các nhãn (label), một
trong những chức năng của nhãn là chỉ ra thứ tự mà các thông điệp được gửi đi. Nó cũng có
thể chỉ ra các điều kiện, chỉ ra những giá trị được trả về, v.v... Khi đã làm quen với cách viết
Page | 40
Điển Cứu UML
Nhập Môn CNPM
nhãn, một nhà phát triển có thể đọc biểu đồ cộng tác và tuân thủ theo dòng thực thi cũng như
sự trao đổi thông điệp. Một biểu đồ cộng tác cũng có thể chứa cả các đối tượng tích cực
(active objects), hoạt động song song với các đối tượng tích cực khác.
Collaboration Diagram: là sơ đồ mô tả sự tương tác giữa các đối tượng theo hướng
thông điệp (message), nhấn mạnh đến mối quan hệ và sự bố trí giữa các đối tượng
trong tương tác đó.
Để tạo 1 sơ đồ Collaboration từ sơ đồ Sequence, bạn có thể nhấn f5 hoặc nếu thích tạo
1 sơ đồ Colaboration từ đầu, bạn theo các bước đã nêu khái quát ở đây.
Tạo 1 sơ đồ Collaboration
1. Nhấp phải QLBenhnhan trong mô hình hoạt vụ hệ thống trong trình duyệt
2. Lựa New -> Collaboration Diagram
3. Đặt tên sơ đồ mới
4. Nhắp đúp sơ đồ mới để mở
Bổ sung tác viên và các đối tượng vào sơ đồ
1. Kéo tác viên bacsi từ trình duyệt lên sơ đồ
2. Lựa nút object từ thanh công cụ
3. Nhắp bắt kỳ đâu vào bên trong sơ đồ để bổ sung đối tượng
4. Đặt tên đối tượng mới
5. Lặp lại các bước 2-4 để bổ sung các đối tượng khác vào sơ đồ
Bổ sung các thông điệp vào sơ đồ
1. Lựa nút thanh công cụ Object Link
2. Kéo từ tác viên bacsi đến đối tượng formchinh
3. Lặp lại bước 1-2 để bổ sung các nối kết giữa các mục sau đây:
a. Bacsi và formbenhnhan
b. Formchinh va formbenhnhan
c. Formbenhnhan và bacsi
d. Formbenhnhan và ctrlbenhnhan
e. Ctrlbenhnhan và formbenhnhan
f. Ctrlbenhnhan và benhnhan
g. Benhnhan và ctrlbenhnhan
4. Lữa nút thanh công cụ Link message
5. Nhắp trên kết nối giữa bacsi và formchinh
6. Với thông điệp đã lựa, bạn gõ chọn chức năng quản lý bệnh nhân
7. Lặp lại các bước 4-6 để bổ sung thêm các thông điệp vào sơ đồ:
a. Load form quan ly benh nhan (giữa form chinh và form benhnhan)
b. Nhap thong tin benh nhan (giữa BacSi và form benhnhan)
Page | 41