Gi ả i thích – Actor ?wĐể có thể hiểu một cách ñầy ñủ hệ thống cầnxây dựng, bạn cần phải biết hệ thống phục vụ cho ai, có nghĩa là ai sẽ là người sử dụng hệ thống.. Tác nhân có thể là ng
Trang 1Công c ụ và môi tr ườ ng phát tri ể n ph ầ n m ề m
Trang 2Mục tiêu
w Tìm hiểu các khái niệm Actor và Use Case
w Tìm hiểu cách xác ñịnh Actor và Use Case + ví dụ
w Tìm hiểu mối quan hệ trong Use Case Model
Trang 4Gi ả i thích – Actor ?
wĐể có thể hiểu một cách ñầy ñủ hệ thống cầnxây dựng, bạn cần phải biết hệ thống phục vụ cho ai, có nghĩa là ai sẽ là người sử dụng hệ
thống Những loại người dùng khác nhau sẽñược biểu diễn bởi các tác nhân trong mô hình
wMột tác nhân là một cái gì ñó trao ñổi dữ liệu với hệ thống Tác nhân có thể là người sửdụng, một thiết bị phần cứng bên ngoài, hoặc
có thể là một hệ thống khác
Trang 5S ự khác bi ệ t gi ữ a Actor – I nstant Actor ?
wSự khác biệt giữa một tác nhân và một người
sử dụng ñộc lập trong hệ thống là tác nhân biểudiễn một lớp (một tập) người sử dụng chứkhông phải là một cá nhân cụ thể nào
wMột vài người sử dụng có thể ñóng cùng mộtvai trò ñối vơí hệ thống chỉ thiết kế một tácnhân biểu diễn cho các người dùng trên
Trong trường hợp ñó, mỗi người dùng cụ thể
là một thể hiện của tác nhân (Instant Actor)
Trang 6Ví d ụ
Trang 7Ví d ụ
wVí dụ: Chúng ta có một hệ thống quản lý thưviện, cho phép người dùng có thể tra cưú thôngtin của các quyển sách có trong thư viện
wHai sinh viên A và B sử dụng hệ thống ñể tracứu thông tin
chỉ có một tác nhân là "Người sử dụng",
A và B là hai thể hiện của tác nhân này
Trang 8Ví d ụ
Trang 9Ví d ụ ( tt)
w Tuy nhiên, trong một vài tình huống, một người ñóng một vai trò nào ñó ñược mô hình hóa thành một actor trong hệ thống Ví dụ như quản trị hệ thống.
w Cũng có trường hợp cùng một người dùng nhưng là thể hiện của nhiều tác nhân(trong trường hợp một cá nhân có nhiều vai trò).
Ví dụ: người thủ thư tên A có thể có hai vai trò khác nhau trong hệ thống quản lý thư viện
một là tác nhân "người sử dụng" bình thường hai là tác nhân "Người thủ thư".
Trang 10Làm th ế nào ñể xác ñị nh Actor
wNhững gì xung quanh hệ thống sẽ trở thành tácnhân của hệ thống ?
wTrước tiên là những cá nhân ñộc lập sẽ sửdụng hệ thống.Làm thế nào ñể có thể phân loại
họ ? Thông thường thì chúng ta nghĩ tới mộtvài cá nhân nào ñó và ñảm bảo rằng các tácnhân của chúng ta thiết kế ñáp ứng hầu hết cácnhu cầu của họ
Trang 11Ví d ụ
Trang 12Các câu h ỏ i
1 Ai là người cung cấp, sử dụng hoặc lấy thông tin từ hệ thống ?
2 Ai sẽ sử dụng các tính năng của chương trình ?
3 Người quan tâm tới một yêu cầu nào ñó ?
4 Nơi nào trong tổ chức(phòng ban, công ty) sẽ sử dụng hệ thống ?
5 Ai là người duy trì và bảo dưỡng và quản lý hệ thống ?
6 Những tài nguyên bên ngoài hệ thống là gì ?
7 Có những hệ thống nào khác tương tác với hệ thống này không?
Trang 133.Những thiết bị phần cứng bên ngoài
4.Những hệ thống khác có tương tác trao ñổithông tin với hệ thống
5.Nếu xây dựng ứng dụng trên nền internet, cóthể có tác nhân “vô danh”
Trang 14Actor xác ñị nh ph ạ m vi h ệ th ố ng
wTìm kiếm tác nhân cũng có nghĩa là chúng taxác ñịnh phạm vi của hệ thống, giúp chúng taxác ñịnh mục ñích và qui mô của hệ thống cầnxây dựng
wChỉ những người nào có tương tác trực tiếp với
hệ thống mới ñược xem là tác nhân
Trang 15Ví d ụ :
wVí dụ: trong hệ thống ñăng ký vé, cần xét cáctrường hợp
§ Khách hàng mua vé thông qua nhân viên du lịch (travel agent) không là tác nhân của hệ thống.
§ Khách hàng có thể ñăng ký vé trực tiếp thông qua internet tác nhân.
Trang 16Ví d ụ
Trang 17§ Những mối quan hệ liên quan ñến Actor
• Quan hệ với các UseCase
• Quan hệ tổng quát hoá với các Actor khác
w Lược ñồ
§ Lược ñồ chức Actro và những thành phần liên quan
Trang 18Ki ể m tra ( by RUP)
wMỗi use case có ít nhất một actor tương tác?
wCác use case có ñộc lập với nhau?
wTồn tại các use case có các luồng sự kiện vàcác hành vi tương tự nhau không?
wLiệu các use case có tên duy nhất, gợi nhớ, và
dễ hiểu ñể chúng không bị nhầm lẫm trong cácgiai ñoạn sau?
wCác khách hàng và người dùng có hiểu tên và
Trang 19DEMO in RUP
wXem demo
Trang 20Use Case ?
wMột use case xác ñịnh một tập các thể hiện use case
wTrong ñó mỗi thể hiện là một chuỗi các hành
ñộng ñược hệ thống thực hiện và ñem lại mộtkết quả thấy ñược có ý nghĩa ñối với một actor
cụ thể nào ñó
Trang 21Gi ả i thích
wThể hiện Use Case và Use Case:
§ Hệ thống thực hiện thao tác ñăng nhập của nhân viên A
§ Hệ thống thực hiện thao tác ñăng nhập của nhân viên B
“ñăng nhập” là một Use Case
Trang 22Làm th ế nào ñể xác ñị nh Use Case ?
wĐối với mỗi Actor xác ñịnh, những công việcnào liên quan ñến Actor này?
wHệ thống hỗ trợ những nghiệp vụ nào trong thếgiới thực ?
wNhững thông tin nào cần ñược quản lý trong hệthống ?
wNhững thông tin nào cần ñược kết xuất ra khỏi
hệ thống ?
Trang 23Các b ướ c th ự c hi ệ n
w Xác ñịnh qui trình nghiệp vụ ñược hỗ trợ
w Xác ñịnh các ñối tượng thông tin cần quản lý
Các Use Case dạng quản lý, tra cứu, kết xuất liên quan ñến các ñối tượng thông tin này
w Các nghiệp vụ, các xử lý chính
w Các báo cáo, kết xuất
w Các nghiệp vụ liên quan ñến quản lý, duy trì thông tin
hệ thống
w Các chức năng liên quan ñến các yêu cầu ñặc biệt (an toàn, bảo mật, thay ñổi giao diện, màu sắc…)
Trang 24Phân tích qua ví d ụ :
wHệ thống quản lý giải vô ñịch bóng ñá
wHệ thống hỗ trợ thi trắc nghiệm qua mạng
wHệ thống quản lý siêu thị
wTrò chơi xếp gạch
w…
Trang 25Use Case Model
Các ñặc tả bổ sung Bảng chú giải
Trang 26Ví d ụ
wFile doc minh họa ví dụ (Course Registration)
Trang 28Dòng s ự ki ệ n
Trang 29Pre và Post Conditions
Trang 30wQuan hệ giữa các Actor
wQuan hệ giữa Actor và Use Case
wQuan hệ giữa các Use Case
Trang 31Actor Generalization (Tổng quát hóa)
Student
Full-Time Student
Part-Time Student
Trang 32Actor & Use Case Relationship
Trang 33Use Case Relationship
w <<Include>> - bao hàm, sử dụng
Trang 34Ví d ụ
Trang 35Extend Relationship
w <<Extend>> - mở rộng
Trang 36Ví d ụ