Tải bản đầy đủ (.pdf) (5 trang)

CHAPTER 8 SOFTWARE VERIFICATION AND VALIDATION (VV)

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.99 MB, 5 trang )

󾠵

CHAPTER 8: SOFTWARE
VERIFICATION AND
VALIDATION (V&V)
Software Verification & Validation
Để có thể biết được người dùng có muốn sử dụng phần mềm của mình hay khơng
thì chúng ta cần phải xác minh (verification) và thẩm định (validation) phần mềm
của mình.

Verification
Make sure that software comforms to its specification. (Ứng dụng của chúng ta có
đáp ứng đặc tả ban đầu hay khơng?)

Validation
Make sure software does what users really need.

V&V process
Chúng ta thực hiện quy trình V&V để:
Phát hiện ra những khuyết tật của phần mềm.

CHAPTER 8: SOFTWARE VERIFICATION AND VALIDATION (V&V)

1


Đánh giá xem phần mềm có hữu ích và có thể sử dụng được hay không.
Thiết lập niềm tin vào phần mềm.

Static and Dynamic V&V
Software inspections (static V&V) - Thanh tra, đánh giá phần


mềm
Đọc tài liệu, đọc code để phát hiện ra lỗi của phần mềm đó.

Software testing (dynamic V&V)
So sánh kết quả (result) và kỳ vọng đặt ra (expectation).
Chạy thử, quan sát các hoạt động của phần mềm để phát hiện ra lỗi (Đăng nhập,
dùng thử các dịch vụ của phần mềm,…).

Sau khi chạy thử chương trình (program testing) sẽ cho ra một bản mẫu (prototype).

High-level design: Software Architecture Documents.
Khi thiết kế Database chúng ta sẽ có được Schema của database đó.

Software testing
Kiểm thử phần mềm để có thể phát hiện ra những lỗi và tạo độ tin cậy cho phần
mềm.

CHAPTER 8: SOFTWARE VERIFICATION AND VALIDATION (V&V)

2


Một phần mềm khơng thể khơng có lỗi vì nó luôn luôn thay đổi theo thời gian, các
đối tượng sử dụng nó rất đa dạng và ta khơng thể nào kiểm tra hết được các trường
hợp đó.
Used in conjunction with static verification to provide full V&V coverage. (Được sử
dụng với static verification để cung cấp vùng phủ của quá trình V&V đầy đủ nhất.)
Software requirement is the basic to determine the software run right or not.

Testing & Debugging

Testing: Chạy chương trình để tìm ra lỗi.
Debugging: Tìm vị trí, xác định nguyên nhân và sửa lỗi.
Debugging thường được làm bởi developer.
Testing thì sẽ được làm bởi developer (nếu cơng ty khơng có tester), tester,
customer, etc.

Software inspections
Q trình kiểm tra sản phẩm để phát hiện ra những dị thường và lỗi.
Không yêu cầu phải thực thi hệ thống đang kiểm tra.
Là một kỹ thuật hiểu quả cho việc:
Phát hiện các lỗi.
Giảm thiểu vấn đề phát sinh trong dự án.
Giảm thiểu các rủi ro trong dự án.

Inspection Checklist
Đồng nghĩa với Code Review.
Checklist của các lỗi phổ biến nên được sử dụng để thúc đẩy việc kiểm tra.
Các error checklist đều bị phụ thuộc vào các ngơn ngữ được phần mềm đó sử dụng.
Defects có những:
Logical errors
Anomalies in code
Coding standard violations

CHAPTER 8: SOFTWARE VERIFICATION AND VALIDATION (V&V)

3


Potential issues concerning performance, security


Class Assignment

Automated static analysis
Static analyzers là một phần mềm công cụ để xử lý mã nguồn.
Rất hiệu quả
A supplement not replacement. (Bổ sung chứ không thay thế)

Stages of static analysis
Control flow analysis
Check loops

CHAPTER 8: SOFTWARE VERIFICATION AND VALIDATION (V&V)

4


Data use analysis
Detects uninitialized variables
Interface analysis
Checks the consistency of routine and procedure declarations and their use.
(Kiểm tra tính nhất quán của các khai báo thủ tục và quy trình cũng như việc
sử dụng chúng.)
Information flow analysis:
Identifies the dependencies of output variables.
Path analysis:
Identifies paths through the program and sets out the statements executed
in that path.

CHAPTER 8: SOFTWARE VERIFICATION AND VALIDATION (V&V)


5



×