
1
THI
THIẾ
ẾT K
T KẾ
ẾV
VÀ
ÀXÂY D
XÂY DỰ
ỰNG PH
NG PHẦ
ẦN M
N MỀ
ỀM
M
(SOFTWARE DESIGN AND CONSTRUCTION)
(SOFTWARE DESIGN AND CONSTRUCTION)
Năm
Nămh
họ
ọc
c2007
2007-
-2008
2008
Giáo viên: TS.Huỳnh QuyếtThắng
BM Công nghệphầnmềm
Khoa CNTT, ĐHBK HN

2
Chương 1. Tổng hợpvàphântíchcácyêucầuphầnmềm
1. Các vấnđề và khái niệmtrongyêucầuphầnmềm
2. Phát hiệncácyêucầuphầnmềm (Software Elicitation)
3. Xây dựng các đặc tính xác định chấtlượng yêu cầuvàcác
yêu cầu khác
4. Đặctảcác yêu cầuphầnmềm
5. Xác định nguồngốcyêucầuvàma trận theo dõi các yêu
cầuphầnmềm
6. Thẩmđịnh xác minh các yêu cầuphầnmềm (verification
requirement)

3
1.2. Phát hiện các yêu cầuphầnmềm(Software
Elicitation)
1. Phân tích bài toán
2. Xác định quá trình phát triểncácyêucầu
phầnmềm
3. Xây dựng khảnăng (vision) và phạmvi
(scope) củaphầnmềm
4. Xác định các nhóm ngườisửdụng và đặc
tính củahọvà đạidiện tiêu biểuchomỗi
nhóm
5. Phân tích và xác định các yêu cầuphầnmềm
dựatrêncácđạidiệncủa các nhóm NSD
6. Xây dựng các đặctínhxácđịnh chấtlượng
yêu cầuvàcácyêucầu khác (non-functional
requirement)

4
1.2.1. Phân tích bài toán (vấnđề)
z[Dean Leffingwell]
•Problem analysis is the process of understanding
real-world problems and user's needs and
proposing solutions to meet those needs.
•The goal of problem analysis is to gain a better
understanding, before development begins, of the
problem being solved.
•To identify the root cause, or the problem behind
the problem, ask the people directly involved.
•Identifying the actors on the system is a key step
in problem analysis

5
1.2.1. Phân tích bài toán (vấnđề)
z[Dean Leffingwell] - The 5 specific steps
that must be taken in order to achieve the
goal:
•Gain agreement on the problem definition.
•Understand the root causes—the problem behind
the problem.
•Identify the stakeholders and the users.
•Define the solution system boundary.
•Identify the constraints to be imposed on the
solution.

