Hướng dẫn ôn thi học phần phân tích yêu cầu phần mềm | Học viện Nông nghiệp Việt Nam
Hướng dẫn ôn thi học phần phân tích yêu cầu phần mềm tập trung vào các câu hỏi về phát triển yêu cầu phần mềm, bao gồm việc phân tích và lập tài liệu đặc tả yêu cầu. Nó cũng bao gồm các vấn đề liên quan đến việc phát hiện yêu cầu, gán nhãn yêu cầu, và quy trình xác nhận yêu cầu.
Môn: Công nghệ phần mềm (HVNN)
Trường: Học viện Nông nghiệp Việt Nam
Thông tin:
Tác giả:
Preview text:
HƯỚNG DẪN ÔN THI
HỌC PHẦN PHÂN TÍCH YÊU CẦU PHẦN MỀM
A. Hình thức thi:
- Hình thức thi: Tự luận, làm bài thi trên giấy, được sử dụng tài liệu - Thời gian thi: 60 phút
- Số lượng câu (dự kiến): 4 (2.5 điểm/1 câu) - gồm các dạng câu hỏi lý thuyết (có
yêu cầu lấy ví dụ minh họa), câu hỏi suy luận, và bài tập.
- Nội dung: Toàn bộ nội dung đã học + đã thảo luận theo các chủ dề thảo luận 1- 11.
B. Gợi ý nội dung ôn tập theo trình tự nội dung của các chương:
Chương 1: Tổng quan về yêu cầu phần mềm:
- Nêu các hoạt động cơ bản trong quy trình phần mềm, trong các hoạt động này,
hoạt động đặc tả phần mềm có vai trò quan trọng như thế nào?
- Trình bày khái niệm yêu cầu phần mềm (Software requirement).
- Trình bày các loại thông tin yêu cầu, với mỗi loại thông tin yêu cầu hãy cho một ví dụ minh họa.
- Các yêu cầu phần mềm được phân làm mấy mức, là những mức nào, với mỗi
mức hãy lấy 1 ví dụ minh họa. Yêu cầu phi chức năng là gì, gồm những loại
nào, đâu là nguồn gốc của các yêu cầu phi chức năng?
- Kỹ thuật yêu cầu (Requirements Engineering) có nhiệm vụ gì, gồm các hoạt
động nào? Trình bày vắn tắt các hoạt động phát triển yêu cầu (Requirements
Development) và quản lý yêu cầu (Requirements Management).
- Hậu quả của các yêu cầu tồi là gì, hướng ngăn chặn?
- Trình bày khung quy trình phát triển yêu cầu và một ví dụ được xem là good
practices cho quy trình phát triển yêu cầu.
- Nêu khái niệm, vai trò, nhiệm vụ, kiến thức, kỹ năng cần có của nhà phân tích nghiệp vụ.
Chương 2: Phát triển yêu cầu:
• Phát hiện và phân tích yêu cầu:
- Các yêu cầu nghiệp vụ đến từ đâu? 2 vấn đề cốt lõi của yêu cầu nghiệp vụ là gì?
Ai là chủ sở hữu của tài liệu tầm nhìn và phạm vi (Vision and Scope
document)? Kể tên các kỹ thuật biểu diễn phạm vi.
- Lớp người dùng là gì? Có thể phân lớp người dùng dựa trên những khía cạnh
nào? Làm thế nào để xác định được các lớp người dùng (gợi ý: Hỏi nhà tài trợ;
Căn cứ vào các sơ đồ tổ chức công ty/đơn vị sử dụng sản phẩm phần mềm, sơ
đồ ngữ cảnh; Căn cứ vào kế hoạch triển khai dự án, tài liệu tầm nhìn và phạm 1
vi)? Làm thế nào để kết nối với các đại diện người dùng (nêu ngắn gọn)? Ai
được gọi là Product champion (PC), liệt kê các công việc chính mà PC phải làm (5 công việc chính).
- Phát hiện yêu cầu là gì? Liệt kê các kỹ thuật phát hiện yêu cầu. Làm thế nào để
tổ chức một cuộc phỏng vấn/hội thảo phát hiện yêu cầu hiệu quả (trình bày vắn
tắt). Nêu những vấn đề cần chú ý khi thiết kế bảng câu hỏi. Kế hoạch phát hiện
yêu cầu bao gồm những nội dung nào (chỉ cần nêu tên 6 nội dung). Với từng
loại dự án cụ thể nên áp dụng kỹ thuật phát hiện yêu cầu nào? Các hoạt động
chuẩn bị cho phiên phát hiện yêu cầu. Sau khi thực hiện một phiên phát hiện
yêu cầu (ví dụ, ngay sau khi tổ chức một cuộc hội thảo), nhà phân tích nghiệp vụ (BA) cần làm gì?
Bài tập: Cho một thông tin yêu cầu cụ thể, cần phân loại xem thông tin đó thuộc loại thông tin yêu cầu nào.
• Phân tích và lập tài liệu đặc tả yêu cầu:
- Tài liệu đặc tả yêu cầu phần mềm SRS (Software Requirements Specification)
là gì? Các đối tượng cần sử dụng tài liệu SRS. Để viết được các tài liệu SRS rõ
ràng, dễ hiểu với tất cả các bên liên quan, cần chú ý những vấn đề gì?
- Mục đích của việc gán nhãn yêu cầu, liệt kê các kỹ thuật gán nhãn yêu cầu, nên
sử dụng kỹ thuật gán nhãn nào?
Bài tập: Cho một yêu cầu cụ thể, hãy sử dụng kỹ thuật Thẻ văn bản phân cấp để gán nhãn cho yêu cầu đó.
- Nêu hướng giải quyết đối với các thông tin yêu cầu không đầy đủ (hay bị thiếu thông tin).
- Nêu cấu trúc của tài liệu đặc tả yêu cầu phần mềm (chỉ nêu tên các mục trong
tài liệu). Các yêu cầu chức năng được trình bày trong mục nào của tài liệu đặc
tả yêu cầu, nêu các chú ý khi trình bày các chức năng. Việc đặt các mô hình
phân tích vào phần phục lục B trong tài liệu đặc tả yêu cầu không phải lúc nào
cũng tốt, thay vào đó nên đặt các mô hình vào vị trí nào? Trường hợp sơ đồ
phân cấp chức năng, nên đặt vào phần nào trong tài liệu đặc tả yêu cầu?
- Nêu các đặc trưng của một yêu cầu tốt. Nêu các đặc trưng của tập các yêu cầu.
Bài tập: Cho 1 yêu cầu cụ thể, hãy phân tích, chỉ ra các thiếu sót còn tồn tại trong yêu
cầu và viết lại yêu cầu.
- Kể tên các mô hình có thể sử dụng để biểu diễn các yêu cầu. Với từng loại
thông tin mô tả yêu cầu cụ thể, nên áp dụng các kỹ thuật biểu diễn (các mô hình) cụ thể nào.
Bài tập: Cho một số thông tin yêu cầu, hãy mô hình hóa thông tin yêu cầu đó bằng kỹ
thuật mô hình hóa thích hợp (chú ý các mô hình: sơ đồ luồng dữ liệu (mức ngữ cảnh,
mức đỉnh, …); sơ đồ swimlane; bản đồ dialog; sơ đồ chuyển tiếp trạng thái và bảng
trạng thái; bảng quyết định và cây quyết định).
- Trình bày các thuộc tính chất lượng bên trong, bên ngoài, cho ví dụ.
- Ràng buộc là gì? Hãy liệt kê nguồn của các ràng buộc. Cho ví dụ. 2
Bài tập: Trong vai trò của một người sử dụng, đồng thời là một nhà phân tích
nghiệp vụ, hãy viết hoặc đề xuất các yêu cầu chức năng, phi chức năng hay các yêu
cầu về thuộc tính chất lượng cho một phần mềm cụ thể, ví dụ: Hãy viết/đề xuất các
yêu cầu đối với chức năng đăng ký tín chỉ cho hệ thống daotao.vnua.edu.vn/chức năng
mượn sách cho hệ thống quản lý thư viện Lương Đình Của/chức năng đặt mua hàng
trên hệ thống bán thuốc trực tuyến, … hoặc các yêu cầu về hiệu suất, về độ bảo mật,
về khả năng sử dụng của một phần mềm cụ thể… (có thể liệt kê theo kiểu văn bản,
hoặc sử dụng các mô hình) --> các phần mềm được đề cập đến sẽ rất quen thuộc với
các em để các em có hiểu biết nhất định về nó và dễ viết yêu cầu; tuy nhiên, các em
phải coi như đây là mình đang đi viết các yêu cầu cho một phần mềm mới - nghĩa là
phải viết đầy đủ các yêu cầu cần thiết để các nhân viên phát triển phần mềm có thể
xây dựng được phần mềm đáp ứng các yêu cầu đó giống như khi các em làm bài
tập lớn - chứ không phải là viết/đề xuất yêu cầu theo kiểu bổ sung/cải tiến/nâng cấp
một phần mềm hiện có mà các em biết!!!
• Xác nhận yêu cầu:
- Nêu khái niệm xác minh/xác nhận, thẩm định yêu cầu, các phương pháp đánh giá yêu cầu.
- Các thành phần tham gia kiểm duyệt yêu cầu. Điều kiện bắt đầu kiểm duyệt,
các giai đoạn kiểm duyệt, điều kiện kết thúc kiểm duyệt. Các khó khăn đối với
việc đánh giá các yêu cầu và hướng khắc phục. Theo em, lợi ích của việc tạo
các nguyên mẫu là gì. Tại sao lại cần kiểm thử yêu cầu?
Chương 3: Quản lý yêu cầu:
- Tại sao phải quản lý yêu cầu? Nêu 4 hoạt động cốt lõi của quản lý yêu cầu. Các
hoạt động này bao gồm những hoạt động cụ thể nào?
- Cơ sở yêu cầu là gì? Tại sao cần xây dựng cơ sở yêu cầu?
- Tại sao phải kiểm soát phiên bản yêu cầu? Liệt kê các thuộc tính yêu cầu cần
quản lý. Liệt kê các trạng thái yêu cầu. Nêu các vấn đề (issue) thường gặp đối
với các yêu cầu. Tại sao lại nên sử dụng công cụ theo dõi các vấn đề của các yêu cầu?
- Tại sao phải kiểm soát các thay đổi. Nêu chính sách kiểm soát các thay đổi.
Mẫu tài liệu mô tả quy trình kiểm soát thay đổi. 3