ĐỀ TÀI: TÌM HIỂU NGUYÊN LÝ KIỂMTHỬPHẦNMỀM GVHD: Nguyễn Gia Như SVTH: Nhóm 8 Hồ Quang Khánh Hồ Tấn Hải Lê Hùng Cứ Giới thiệu chung: Với sự phát triển như vũ bão của công nghệ thông tin nói chung và công nghệ phầnmềm nói riêng, việc phát triển phầnmềm ngày càng được hỗ trợ bởi nhiều công cụ tiên tiến, giúp cho việc xây dựng phầnmềm đỡ mệt nhọc và hiệu quả hơn. Tuy nhiên, vì độ phức tạp củaphầnmềm và những giới hạn về thời gian và chi phí, cho dù các hoạt động đảm bảo chất lượng phầnmềm nói chung và kiểmthử nói riêng ngày càng chặt chẽ và khoa học, vẫn không đảm bảo được rằng các sản phẩm phầnmềm đang được ứng dụng không có lỗi. Lỗi vẫn luôn tiềm ẩn trong mọi sản phẩm phầnmềm và cũng có thể gây những thiệt hại khôn lường. Kiểmthửphầnmềm là một quá trình liên tục, xuyên suốt mọi giai đoạn phát triển phầnmềm để đảm bảo rằng phầnmềm thoả mãn các yêu cầu thiết kế và các yêu cầu đó đáp ứng các nhu cầu của người dùng. Các kỹ thuật kiểmthửphầnmềm đã, đang được nghiên cứu, và việc kiểmthửphầnmềm đã trở thành qui trình bắt buộc trong các dự án phát triển phầnmềm trên thế giới. Kiểmthửphầnmềm là một hoạt động rất tốn kém, mất thời gian, và khó phát hiện được hết lỗi. Vì vậy, việc kiểmthửphầnmềm đòi hỏi phải có chiến lược phù hợp, một kế hoạch hợp lý và việc thực hiện được quản lí chặt chẽ. Kiểmthửphầnmềm là gì? Kiểmthửphầnmềm thường đồng nghĩa với việc tìm ra lỗi chưa được phát hiện. Tuy nhiên, có nhiều bối cảnh kiểmthử không bộc lộ ra lỗi. Kiểmthửphầnmềm là quá trình thực thi một hệ thống phầnmềm để xác định xem phầnmềm đó có đúng với đặc tả không và thực hiện trong môi trường như mong đợi hay không. Mục đích củakiểmthửphầnmềm là tìm ra lỗi chưa được phát hiện, tìm một cách sớm nhất và đảm bảo rằng lỗi đã được sửa, mà kiểmthửphầnmềm không làm công việc chẩn đoán nguyên nhân gây ra lỗi đã được phát hiện và sửa lỗi. Mục tiêu củakiểmthửphầnmềm là thiết kế tài liệu kiểmthử một cách có hệ thống và thực hiện nó sao cho có hiệu quả, nhưng tiết kiệm được thời gian, công sức và chi phí. Chất lượng phần mềm: Đặc tả phải định hướng theo những đòi hỏi về chất lượng của khách hàng (như tính hiệu quả, độ tin cậy, tính dễ hiểu, tính bảo mật,…) và những yêucầu của chính tổ chức phát triển phầnmềm vốn không có trong đặc tả (như các yêu cầu về khả năng bảo trì, tính sử dụng lại, ) Một số yêu cầu về chất lượng cũng rất khó chỉ ra một cách rõ ràng.
Những đặc tả phầnmềm thường không đầy đủ và hay mâu thuẫn. Quy trình kiểmthửphần mềm: Mục đích củakiểmthử là thiết kế một chuỗi các trường hợp kiểmthử mà có khả năng phát hiện lỗi cao. Để cho việc kiểmthử đạt được kết quả tốt cần có sự chuẩn bị về kế hoạch kiểm thử, thiết kế các trường hợp kiểmthử và các dữ liệu kiểmthử cho các trường hợp. Đây chính là đầu vào cho giai đoạn kiểm thử. Và sản phẩm công việc của giai đoạn kiểmthử chính là “báo cáo kiểm thử” mà tài liệu hóa tất cả các trường hợp kiểmthử đã chạy, dữ NguyentaccuakiemthuphanmemNguyentaccuakiemthuphanmem Bởi: Trần Thị Huệ Nguyêntắckiểmthửphầnmềm Để kiểmthử đạt hiệu tiến hành kiểmthửphầnmềm cần phải tuân thủ số nguyêntắc sau: Nguyêntắc 1: Kiểmthử diện lỗi Kiểmthử có mặt lỗi, chứng minh phầnmềm lỗi Việc kiểmthử làm giảm xác suất khuyết tật chưa tìm thấy lại phần mềm, lỗi tìm thấy, chứng đắn để khẳng định phầnmềm lỗi Nguyêntắc 2: Kiểmthử toàn bộ, đầy đủ Kiểmthử toàn (kết hợp tất yếu tố đầu vào điều kiện tiên quyết) không khả thi trừ trường hợp nhỏ đơn giản Thay kiểmthử đầy đủ, nên sử dụng đánh giá rủi ro nỗ lực để ưu tiên tập trung kiểmthửNguyêntắc 3: Cần bắt đầu giai đoạn kiểmthử sớm tốt Hoạt động kiểmthử nên bắt đầu sớm tốt chu trình phát triển mềm cần tập trung vào mục tiêu xác định Nguyêntắc 4: Phân nhóm lỗi để xác định số module tập trung lỗi nhiều Nguyêntắc 5: Pesticide paradox Nguyêntắckiểmthử giống nguyêntắc sử dụng thuốc trừ sâu, sử dụng loại thuốc trừ sâu bị nhờn thuốc nên phải thay đổi loại thuốc khác Trong kiểmthửphần mềm, dùng dùng lại kịch kiểmthử đến lúc tìm lỗi Chính kịch kiểmthử phải 1/2 Nguyentaccuakiemthuphanmem thường xuyên xem xét cập nhật, phù hợp với thành phần khác phần mềm, mang lại khả tìm thấy lỗi lớn Nguyêntắc 6: Kiểmthử thực khác bối cảnh khác Kiểmthử phụ thuộc vào tình huống/trường hợp Win app hay Web app Nguyêntắc 7: Suy nghĩ "Không có lỗi" sai lầm Việc tìm sửa lỗi ý nghĩa phầnmềm không đáp ứng yêu cầu yêu cầu người sử dụng 2/2 i hc Công ngh ngành: ; 60 48 10 2012 Abstract: - Keywords: ; ; ; Content 1 1.1 1.2 1.3 ch 2 2.1 . . . . . 2.2 Quy trì − − − − − 3 Hình 2.1 2.3 2.4.2 2.4.3 3.1 3.2 Hình 3.1: Mô hình chung của i hc Công ngh ngành: ; 60 48 10 2012 Abstract: - Keywords: ; ; ; Content 1 1.1 1.2 1.3 ch 2 2.1 . . . . . 2.2 Quy trì − − − − − 3 Hình 2.1 2.3 2.4.2 2.4.3 3.1 3.2 Hình 3.1: Mô hình chung của Công nghệ phầnmềmKiểmthửphầnmềm Giảng viên: TS. Nguyễn Mạnh Hùng Học viện Công nghệ Bưu chính Viễn thông (PTIT) 2 Nội dung tham khảo từ Object-Oriented and Classical Software Engineering. 3 Kiểmthử !"!#$ !%$&'()*((+&%, ,-./0,120345&6789 14.:;;&<0 !$&'()*(=9>(8?@0 -./01;A8B8C&5,0; &<0 4 Chất lượng phầnmềm D<0-&5E(B(F(GH8;E 9HI(+58080 :1J0B(F('EK&9L0 -.5M0;A8B8C&5,0 N01O,(B(F(9-5E( .9(P9=9>(Q,Q;./0 R:1J0B(F(9.9(P90; S.B80.Q5' 5 Quản lí chất lượng PM (1) N-(TU.9(P9:1J0V$ W9(P9X0(Y,A5' V.F8,(E4:1J0$ – ZQ8?([&% – D,,=9>( N0,-(TU\9.9(P9 X0P9]78^5'V_0 .Q:1J0`./08>a 6 Quản lí chất lượng PM (2) T893-(TU$ N-(TUA.YbF7893.?4 -(5'V D<0A.'-(,;-78;F:A C-(& c7893:C9-((4 .1J78;6.d$ – ,0=9>(./0e10\[ – Z=A(,P,0fe !E78;6.d\93.6g&6C &5,0,&3Q; 7 Kiểmthử -Q0&'()$ D'()5=9>(h D'()5=9>(h 8 Kiểmthử phi thực thi ihA08;Aj$ D<0h&'()=9>(C3 (^ ihA=M(Qk0JC-( -1205$ &80=$,=5 l==$&'(>(.d 9 Walkthroughs (1) ZkM$ N-(-mno01O -.QEC&%EQ -.QEC&%6 -.QEC-(TU N01Op5-(&80=,.Q EC-(TU 10 Walkthroughs (2) Q.+0$ [01O98>Pd(+=5$ – 5:.F&<0'8 – 5:.F-q&<0./0 V5E[10&<0=)[$ – )[PK9-(=r&<0.9(P9:1J0(, 3Q – D<09(Y:.FPdA8A.F8h=h,[ – [A&80=&<0785R&<0.CO 0=)[ [...]... liệu mình rà soát Follow-up: trưởng nhóm kiểm duyệt lại lần cuối để các lỗi đều được sửa hoặc làm rõ các vấn đề gây khó hiểu 13 Inspections (3) Thống kê lỗi: Thống kê lỗi theo mức độ, số lượng – Ví dụ: phần lớn hay không nhiều Thống kê lỗi theo kiểu lỗi – Ví dụ: tham số tham chiếu và tham số thực tế không thống nhất 14 Inspections (4) Thống kê lỗi: Lỗi được so sánh với tỉ lệ lỗi của các dự
i hc Công ngh
ngành: ; 60 48 10
2012
Abstract:
-
Keywords: ; ; ;
Content
1
1.1
1.2
1.3
ch
2
2.1
.
.
. .
.
2.2
Quy trì
−
−
−
−
−
3
Hình 2.1
2.3
2.4.2
2.4.3
3.1
3.2
Hình 3.1: Mô hình .. .Nguyen tac cua kiem thu phan mem thường xuyên xem xét cập nhật, phù hợp với thành phần khác phần mềm, mang lại... mềm, mang lại khả tìm thấy lỗi lớn Nguyên tắc 6: Kiểm thử thực khác bối cảnh khác Kiểm thử phụ thu c vào tình huống/trường hợp Win app hay Web app Nguyên tắc 7: Suy nghĩ "Không có lỗi" sai lầm