Professional Documents
Culture Documents
Requirements Elicitation
Or
Requirement gathering
Các d ự lu ật trang 34
Nôị dung
Công nghệ yêu cầu (Requirements
engineering (RE) là gì ?
Thu thập yêu cầu (Requirement
elicitation) là gì?
Các kỹ thuật thu thập yêu cầu
Chọn lựa kỹ thuật thu thập yêu cầu
Quy tắc nghiệp vụ và chính sách
Quản lý mối quan hệ khách hàng
Requirements engineering (RE)
Công nghệ yêu cầu
Requirements engineering (RE)
Tập hợp các tác vụ và kỹ thuật để dẫn đến
việc hiểu rõ các yêu cầu được gọi là công
nghệ yêu cầu.
Đứng ở góc độ quy trình phần mềm, công
nghệ yêu cầu là hoạt động chính bắt đầu
trong suốt hoạt động giao tiếp và tiếp tục
trong các hoạt động mô hình hóa.
Requirements engineering (RE)
Công nghệ yêu cầu
Requirements engineering (RE): là quá trình lặp
bao gồm 3 hoạt động:
◦ Rút ra yêu cầu từ thực tế (Elicitation)
◦ Đặc tả yêu cầu (Specification)
◦ Xác thực (Validation)
Kết quả của quá trình RE là những đặc tả về hệ
thống phần mềm
◦ Input: Các yêu cầu từ khách hàng (Problem statement
prepared the customers)
◦ Output: tài liệu đặc tả yêu cầu (Software requirements
specifification-SRS)
Requirement elicitation
Thu thập yêu cầu
Elicitation là quá trình xác định yêu cầu và
làm giảm sự khác biệt giữa các nhóm có
liên quan để rút ra các yêu cầu đáp ứng
được nhu cầu của tổ chức hay dự án trong
khi vẫn giữ được các ràng buộc.
Requirement elicitation
Phát hiện yêu cầu
Mục đích:
◦ Nhận diện các cá nhân liên quan
(stakeholders) tới dự án
◦ Tập hợp các yêu cầu mà hệ thông phải thực
hiện.
◦ Sắp thứ tự ưu tiên các yêu cầu.
Phân biêṭ giữa elicitation và
analysis
Elicitation là sự tương tác với
stakeholders để nắm bắt được nhu cầu
của họ.
Analysis là tinh chỉnh (refinement) nhu
cầu của stakeholder thành các đặc tả
sản phẩm chính thức.
Khó khăn khi phát hi ện yêu
c ầu
Khó khăn về phạm vi (Problems of scope):
đường biên hệ thống thường mập mờ, hay
khách hàng chỉ nhắm đến các yếu tố kỹ thuật
hơn là mục tiêu tổng thể của hệ thống.
Khó khăn về hiểu biết khách hàng: khách
hàng không biết họ cần gì, có ý kiến trái
ngược về hệ thống cần xây dựng, hiểu biết về
kỹ thuật, thời gian giao tiếp với kỹ sư hệ thống
thường rất hạn chế.
Khó khăn về tính ổn định: yêu cầu thường
thay đổi theo thời gian
Trước khi phát hiện yêu cầu yêu cầu
Đã viết “vision and scope”
Vẽ lược đồ ngữ cảnh (context diagram)
Xác định stakeholder
Xác định người dùng và đại diện người dùng
Lược đồ ngữ cảnh
Context Diagram
Phạm vi (scope) dùng để xác định đường biên
(boundary) và các mối nối kết giữa hệ thống đang phát
triển và mọi thứ khác bên ngoài.
Thực thể
Terminators
Terminators có thể biểu diễn cho các lớp người dùng (user classes)
(“Chemists”), hoặc tổ chức (“Purchasing Department”) hoặc các hệ
thống máy tính khác (“Training Database”).
Lược đồ ngữ cảnh
Lược đồ dòng dữ liệu (Datat Flow Diagram-DFD) dùng
để mô hình hóa các yêu cầu hệ thống
DFD biểu diễn các bước mà luồng dữ liệu phải trải qua
trong hệ thống từ điểm đầu tới điểm cuối.
DFD mô hình hóa hệ thống từ góc độ 1 chức năng. Việc
tìm vết và tư liệu hóa quan hệ giữa dữ liệu với 1 qui
trình rất có ích đối với việc tìm hiểu toàn bộ hệ thống.
DFD bao gồm:
◦ Mức ngữ cảnh: Là mức 0 (top level) của lược đồ dòng dữ liệu
(data flow diagram) theo cách phân tích hướng cấu trúc
◦ Mức 1, 2,…
DFD được dùng rộng rãi cho bất kỳ phương pháp phát
triển nào. Có thể nằm trong tài liệu vision, trong phục
vụ đặc tả yêu cầu (SRS)
Lược đồ ngữ cảnh
Người quản lý Quản lý
thông tin độc giả
Nhân viên
Hệ thống
quản lý Quản lý việc
thư viện mượn/trả sách
Độc giả
Báo cáo
Sách thống kê
Tài khoả n
Quản lý sách
Nhà cung cẤp
Lược đồ ngữ cảnh
Keeping Scope in Focus
Nắm chắc phạm vi
Các yêu cầu kinh doanh (business requirements) được
ghi lại trong tài liệu tầm nhìn và phạm vi (vision and
scope) là cơ sở để xử lý tất cả các rắc rối liên quan đến
phạm vi của dự án.
Khi có ai đó kiến nghị 1 yêu cầu mới thì RA phải làm gì?
Cần xem xét yêu cầu mới có nằm trong scope hay
không?
Nếu yêu cầu kiến nghị nằm trong scope thì có thể hợp
nhất yêu cầu mới vào dự án nếu có độ ưu tiên cao so với
yêu cầu hiện cócó thể phải trì hoãn hay hủy bỏ các yêu
cầu hiện tại
Keeping Scope in Focus
Nếu yêu cầu kiến nghị nằm ngoài scope thì có thể có 1
trong các phương án sau:
◦ Nên đưa vào phiên bản sau hay trong dự án khác.
◦ Scope của dự án có thể thay đổi để đáp ứng yêu cầu
mới cần có phản hồi từ phía người dùng và cần cập
nhật lại tài liệu vision and scope (nếu đã phê duyệt thì
cần giám sát mọi thay đổi)
◦ Khi phạm vi dự án tăng, thường phải thỏa thuận lại
ngân sách(budget), tài nguyên (resource), thời gian
(schedule)
Xác định StakeHolder
• Mục tiêu là tập hợp thông tin thật của hệ thống. Nó đưa ra sự hiểu biết sâu
sắc trong việc làm thế nào mọi người tương tác với hệ thống và những
thuận lợi mà họ hiểu biết nó như thế nào.
• Người bị phỏng vấn bị giới hạn, câu trả lời theo một qui định lựa chọn đã
có.
• Có những loại câu hỏi đóng sau:
1. Fill-in-the-blanks – Điền vào khoảng trống.
2. Dichotomous(Yes or No type) – Loại Yes hay No.
3. Ranking scale questions – Câu hỏi xếp loại.
4. Multiple-choice questions – Câu hỏi nhiều lựa chọn.
5. Rating scale questions are an extension of the multiple-choice
questions – Câu hỏi phân loại là mở rộng của câu hỏi nhiều lựa chọn .
Câu
Continue hỏi tìm kiếm
question. * Tại sao?
TiếpExpand
tục câuquestions
hỏi
Explain
Có gạn lọc what do you like? * Bạn có thể đưa cho tôi một số ví dụ?
Khuyến khích mở rộng câu trả lời
Chỉ ra những gì bạn nghe và thích thú * Bạn có thể giải thích chi tiết hơn?
EXAMPLES?
High Level
Very General TOP DOWN
Mức cao
rất chung
Medium-Level
Moderately
Specific
Mức trung gian
Xác định ở mức
độ vừa phải
Low-Level
Very Specific
Mức thấp
rất chi tiết BOTTOM UP
Vai trò của facilitator rất quan trọng, quyết định session
có thành công hay không?
Brainstorming
Mục tiêu và thời gian của brainstorming
session cần phải được thỏa thuận trước
bởi tất cả các thành viên, tốt nhất là
ngay trước khi bắt đầu session.
Session nên bắt đầu với việc tự do đưa ra
các ý kiến, tạo thành 1 tập hợp các kiến
nghị về sản phẩm. Nên dùng “sticky
notes” và dán vào bảng.
Các giai đoaṇ cuả Brainstorming
Session
Tabular Elicitation Technique
• Việc dùng bảng có thể giúp nắm bắt
được yêu cầu của stakeholder rõ ràng và
chặt chẽ hơn.
• Có 2 loại bảng hay được dùng:
– Decision table
– State table
Decision table
• Bảng quyết định (Decision table) thông
dụng nhất khi:
– Tập các điều kiện là rời rạc, có thể được xác
định bằng “yes” hay “no,”
– Hành động sẽ thực hiện khi các điều kiện
thỏa mãn
– Tập các rule khi tập các điều kiện là duy nhất
và tương ứng với mỗi rule là 1 hành động.
Decision table
Mỗi hàng biểu diễn một condition, mỗi
cột biểu diễn 1 rule, i.e,. Một điều kiện và
1 tập các hành động tương ứng.
Khi cần phân tích bản phác thảo các yêu
cầu lúc đầu của stakeholder thì bảng
quyết định được dùng rất hiệu quả để
nắm bắt các quy tắc nghiệp vụ. (business
rule) Tải bản FULL (158 trang): https://bit.ly/3CVmkBO
Dự phòng: fb.com/TaiHo123doc.net
Ví dụ bang
̉ quyết đinh
̣
Is Age < 18 Y . .
Age > = 18 . Y Y
Grant Membership . X X
Deny Membership X . .
4255734