Mô hình hoá yêu cầu
Đỗ Ngọc
GV: Phan
ThịNhư
KimLoan
Loan
Nội dung trước
Hệ thống hướng chức năng vs. Hệ thống hướng đối
tượng
Các đặc điểm cơ bản của hệ thống hướng đối tượng
Giới thiệu UML – UML 2.0
Phân tích thiết kế hướng đối tượng với UML 2.0
3- Mô hình hoá yêu cầu
2
Nội dung
Mô hình hóa yêu cầu:
Lược đồ Use-case
Khái niệm Actor và Usecase
Ví dụ
Mô hình hóa các dòng dữ liệu của mỗi Use-case
Giới thiệu Mô hình DFD
Sử dụng mô hình DFD để mô hình hóa yêu
cầu lưu trữ, tra cứu, tính toán, kết xuất
3- Mô hình hoá yêu cầu
3
Mục tiêu
Tìm hiểu các khái niệm cơ bản về xác định yêu
cầu người dùng và tác dụng của chúng lên Phân
tích và Thiết kế
Tìm hiểu cách ghi nhận và diễn dịch các yêu cầu
của người dùng, là những thông tin được dùng
để bắt đầu việc phân tích và thiết kế
3- Mô hình hoá yêu cầu
4
Các yêu cầu người dùng trong ngữ cảnh
IBM _ Rational Unified Process
3- Mô hình hoá yêu cầu
5
Các yêu cầu người dùng trong ngữ cảnh
Mục đích của bước xác định yêu cầu người dùng là:
• Ði đến thỏa thuận với khách hàng về các chức năng của hệ thống (những gì
hệ thống phải thực hiện).
• Cho phép các nhà phát triển hệ thống (system developer) hiểu rõ hơn các
yêu cầu đối với hệ thống.
• Phân định các ranh giới của hệ thống.
• Cung cấp cơ sở để hoạch định nội dung kỹ thuật của các vòng lặp.
IBM _ Rational Unified Process
• Xác định giao diện người dùng cho hệ thống.
3- Mô hình hoá yêu cầu
6
Các dạng thông về yêu cầu người dùng
Use case Model
Các Use Case
Use Case Report
Bảng chú giải
Các đặc tả bổ sung
3- Mô hình hoá yêu cầu
7
Mở đầu
Đặt vấn đề:
Các mô tả về yêu cầu trong giai đoạn xác
định yêu cầu:
• Chỉ mô tả chủ yếu các thông tin liên quan đến việc
thực hiện các nghiệp vụ trong thế giới thực, chưa
thể hiện rõ nét việc thực hiện các nghiệp vụ trên
máy tính
• Mô tả thông quá các văn bản dễ gây ra nhầm lẫn
và không trực quan
Mô hình hóa yêu cầu
3- Mô hình hoá yêu cầu
8
Khái niệm Actor
Tác nhân BÊN NGOÀI hệ thống
Có tương tác với hệ thống
Con người
Tên Actor
Phần mềm
Phần cứng
3- Mô hình hoá yêu cầu
Phần mềm khác
9
Actor
Tác nhân là bất kỳ thứ gì tương tác với hệ thống,
có sự trao đổi dữ liệu với hệ thống
Không phải là một phần của hệ thống
Tác nhân có thể là: Người dùng, Thiết bị phần
cứng, Hệ thống phần mềm khác
Tác nhân trao đổi thông tin với hệ thống:
▫Gửi thông tin tới hệ thống
▫Nhận thông tin từ hệ thống
3- Mô hình hoá yêu cầu
10
Actor Nhóm người sử dụng
Tác nhân BÊN NGOÀI hệ thống
Có tương tác với hệ thống
Con người
Tên Actor
Phần mềm
Phần cứng
3- Mô hình hoá yêu cầu
Phần mềm khác
11
Tổng quát hóa (giữa các actor)
Student
Full-time
Student
3- Mô hình hoá yêu cầu
Part-time
Student
12
1 User có thể có nhiều vai trò (Role)
John có vai trò như
Một sinh viên
Student
John
John có vai trò như
Một giảng viên
Lecturer
3- Mô hình hoá yêu cầu
13
Actors & System Boundary
System Boundary – Giới hạn của hệ thống
3- Mô hình hoá yêu cầu
14
Ví dụ
Xét phần mềm Quản lý học sinh cấp III
STT
Yêu cầu
Nhóm người dùng
1
Tiếp nhận học sinh
Giáo vụ?
2
Lập danh sách lớp
Giáo vụ?
3
Tra cứu học sinh
Mọi người? Phụ huynh? Học sinh?
4
Nhận bảng điểm môn
Giáo viên? Giáo vụ?
5
Xem báo cáo tổng kết
Ban giám hiệu?
6
Thay đổi quy định
Ban giám hiệu? Quản trị hệ thống?
Một nhóm người dùng = một Actor
Mỗi Nhóm người dùng (Actor) được quyền sử dụng một hay nhiều chức năng
trong hệ thống
Một chức năng có thể cho phép nhiều Nhóm người dùng sử dụng
Nhiều nhóm người dùng có cùng các quyền hạn giống nhau
Việc xác định Actor phụ thuộc ngữ cảnh và quy trình thực tế
3- Mô hình hoá yêu cầu
15
Actor Phần cứng ngoại vi
Tác nhân BÊN NGOÀI hệ thống
Có tương tác với hệ thống
Con người
Tên Actor
Phần mềm
Phần cứng
3- Mô hình hoá yêu cầu
Phần mềm khác
16
Ví dụ
Ví dụ:
Phần mềm quản lý Siêu thị:
• Đọc thông tin từ thiết bị đọc mã vạch
Phần mềm quản lý cửa tự động:
• Đọc thông tin từ camera
• Phát lệnh điều khiển mở cửa
Các thiết bị ngoại vi
mà phần mềm
cần tương tác
Phần mềm quản lý ra vào các phòng trong công sở
• Đọc tín hiệu từ đầu đọc thẻ từ
• Phát lệnh điều khiển mở cửa
Phần mềm chống trộm
• Đọc tín hiệu từ camera, sensor
• Phát lệnh điều khiển ra loa, đèn, điện thoại…
3- Mô hình hoá yêu cầu
Có cần liệt kê
tất cả thiết bị ngoại vi?
17
Actor Phần mềm khác
Tác nhân BÊN NGOÀI hệ thống
Có tương tác với hệ thống
Con người
Tên Actor
Phần mềm
Phần cứng
3- Mô hình hoá yêu cầu
Phần mềm khác
18
Ví dụ
Kết xuất/nạp dữ liệu từ Excel
Kết xuất dữ liệu báo cáo ra phần mềm gửi email
(Microsoft Outlook, Outlook Express…)
Phần mềm trung gian kết nối để chuyển đổi email từ
dạng Web-based sang POP3 (ví dụ Yahoo!Pop)
…
3- Mô hình hoá yêu cầu
19
Xác định Actor
Ai là người cung cấp hoặc lấy thông tin từ hệ thống ?
Ai sử dụng chức năng của hệ thống?
Ai sẽ duy trì, quản lý và giữ cho hệ thống làm việc?
Những phần mềm/hệ thống khác mà hệ thống cần
tương tác?
3- Mô hình hoá yêu cầu
20