actor va use case

7
Một tổng kết nho nhỏ về các quan hệ giữa các actor và actor , usecase và usecase. 1. ĐỊNH NGHĨA ACTOR : Actor là Một người hay một thứ gì đó nằm ngoài hệ thống và tương tác hệ thống, mong chờ kết quả có thể thấy được từ hệ thống. 2. LƯU Ý VỀ NHẬN DẠNG ACTOR : Máy in có phải là actor hay không ? Nếu lập trình driver để tương tác với máy in mới nhất thì máy in là acto . Nếu lập trình phần mềm có chức năng in thì máy in không là actor Nếu lập trình chuột thay bằng bút vẽ thì chuột là actor vì mình tốn công lao lập trình cái đó, nếu đơn giản quá thì không cần chuột là actor Nếu lập trình chương trình auto game online phải đọc bộ nhớ trạng thái nhân vật thì các phần mềm game là actor của chương trình autoplay đó Khi viết 1 plugin cho chương trình outlook thì outlook là actor của plugin 3. CÁC QUAN HỆ GIỮA CÁC ACTOR 3.1 Quan hệ tổng quát hóa (generalization) . Chi tiết –> tổng quát - Quan hệ tổng quát hóa làm cho gọn gàng mô hình chứ không có ý nghĩa gì trong coding - dụ về dùng quan hệ generalization sai

Upload: mychanh-vo

Post on 25-Jun-2015

342 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Actor Va Use Case

Một tổng kết nho nhỏ về các quan hệ giữa các actor và actor  , usecase và usecase.1.         ĐỊNH NGHĨA ACTOR : Actor là Một người hay một thứ gì đó nằm ngoài hệ thống và tương tác hệ thống, mong chờ kết quả có thể thấy được từ hệ thống.2.         LƯU Ý VỀ NHẬN DẠNG ACTOR :

Máy in có phải là actor hay không ? Nếu lập trình driver để tương tác với máy in mới nhất thì máy in là acto . Nếu lập trình phần mềm có chức năng in thì máy in không là actor

Nếu lập trình chuột thay bằng bút vẽ thì chuột là actor vì mình tốn công lao lập trình cái đó, nếu đơn giản quá thì không cần chuột là actor

Nếu lập trình chương trình auto game online phải đọc bộ nhớ trạng thái nhân vật thì các phần mềm game là actor của chương trình autoplay đó

Khi viết 1 plugin cho chương trình outlook thì outlook là actor của plugin3.         CÁC QUAN HỆ GIỮA CÁC ACTOR 3.1       Quan hệ tổng quát hóa (generalization) . Chi tiết –> tổng quát-          Quan hệ tổng quát hóa làm cho gọn gàng mô hình chứ không có ý nghĩa gì trong coding-          Ví dụ về dùng quan hệ generalization sai-          Giả sử ta có sơ đồ use case sau :

Page 2: Actor Va Use Case

-          Bác sĩ thì có các use case sau : Ghi nhận toa thuốc Ghi nhận bệnh án Tra cứu thuốc

-          Y tá thì có các use case sau : Ghi nhận bệnh án Tra cứu thuốc Tra cứu bệnh

-          Bệnh nhận thì có các use case sau Tra cứu thuốc Tra cứu bệnh

-          Nhận xét rằng : 3 actor trên có sử dụng chung nhiều usecase , nên ta gom thành “thừa số chung” dùng quan hệ generalization

Page 3: Actor Va Use Case

-          Bạn thấy mô hình 2 nhìn sạch sẽ gọn gàng hơn mô hình 1 , nhưng điều đó không hợp lý , nếu làm bài thi sẽ bị 0 điểm ngay , vì đơn giản , quan hệ generalization là quan hệ IS-A , A ->B  thì đọc là A là trường hợp đặc biệt của B. Nên khi dùng ta phải xét ngữ nghĩa có hợp lý không, đọc lên phải có nghĩa 1 chút , không bị ngượng nghĩu . Nếu theo quan hệ trên mô hình 2 mình đọc là :

Bác sĩ là trường hợp đặc biệt của y tá Y tá là trường hợp đặc biệt của bệnh nhân

-          Bạn thấy đọc lên là đã không đúng rồi.4.         QUAN HỆ GIỮA CÁC ACTOR VÀ USECASE 4.1       Include :-          Trên mũi tên lúc nào cũng có : stereotype <<include>>.-          A  –included–> B : trong A luôn có B,  B không đứng độc lập được , nó luôn 1 phần của 1 user case lớn

B là use case nhỏ A là use case lớn (use case gốc) ,

Page 4: Actor Va Use Case

-          Mũi tên thường là nét đứt (tùy công cụ CASE)-          User case gốc ở gốc mũi tên. Người ta thường sử dụng usecase để tách 1 phần chung của nhiều usercaseVD1 :

-          Nghĩa là : Giáo viên chọn môn học để giảng dạy thì bắt buộc

phải đăng nhập (xác nhận người dùng) Giáo viên yêu cầu phân công giảng dạy bắt buộc

phải đăng nhậpVD2 :

Page 5: Actor Va Use Case

Nghĩa là Thủ Thư : muốn xóa độc giả thì luôn phải qua use

case tra cứu độc giả Thủ Thư : muốn cập nhập  độc giả thì luôn phải

qua use case tra cứu độc giả (có thể hiểu nữa là phải qua 1 GUI , hay 1 màn

hình tra cứu độc giả nữa)4.2       Extend

Ký hiệu :  A –extended–> B :o B là use case lớn (use case gốc ),o A là use case nhỏo Use case mới (A) mở rộng (extend) use case

ban đầu vì nó thêm các bước mới vào trình tự trong use case gốc, hay được gọi là use case cơ sở (base).

o Trên mũi tên lúc nào cũng có : stereotype <<extend>>.

Việc mở rộng chỉ xảy ra tại một số điểm cụ thể trong trình tự của use case cơ sở. Những điểm này gọi là điểm mở rộng (extension point)

Mũi tên thường là nét đứt (tùy công cụ CASE)Người ta dùng mối quan hệ extend để chỉ rõ

Hành vi tùy chọn

Page 6: Actor Va Use Case

Hành vị chỉ xảy ra dưới một số điều kiện nào đó (chẳng hạn kích hoạt 1 báo động)

Nhiều luồng sự kiện có thể xảy ra theo sự lựa chọn của actor-          Nếu extend có điều kiện mở rộng thì điều kiện và điểm mở rộng được ghi trong 1 Chú thích (hình chữ nhật có gấp góc). Nếu điểm mở rộng không có điều kiện thì điểm mở rộng được viết trong hình elip của user case gốc của extend.

4.3 Generalization-          Không có gì để nói , giống quan hệ generalization của actor hay class