Phân tích các tiêu chuẩn liên quan đến kiểm thử phần mềm

05:09 PM 28/11/2017 In bài viết

Tiêu chuẩn ISO/IEC/IEEE 29119-1:2013

Tiêu chuẩn này bao gồm toàn bộ các định nghĩa áp dụng cho tất cả các phần khác của bộ tiêu chuẩn ISO/IEC/IEEE 29119. 

Mục đích của ISO/IEC/IEEE 29119-1 là giúp nắm bắt và sử dụng các tiêu chuẩn khác trong bộ tiêu chuẩn ISO/IEC/IEEE 29119 một cách dễ dàng. Tiêu chuẩn ISO/IEC/IEEE 29119-1 giới thiệu các từ vựng trong đó tất cả các tiêu chuẩn trong bộ tiêu chuẩn ISO/IEC/IEEE 29119 được xây dựng và cung cấp các ví dụ việc áp dựng từng khái niệm trong thực tế. ISO/IEC/IEEE 29119-1 trình bày các định nghĩa và miêu tả các khái niệm về kiểm thử phần mềm và cách áp dụng các quy trình, tài liệu và các kỹ thuật được định nghĩa trong bộ tiêu chuẩn ISO/IEC/IEEE 29119. Tiêu chuẩn ISO/IEC/IEEE 29119-1 ra đời thay thế cho tiêu chuẩn BS 7925-1.

Tiêu chuẩn này đã được dự thảo thành tiêu chuẩn Việt nam TCVN xxxx-1:201x năm 2015 và đang chuẩn bị ban hành.

Tiêu chuẩn ISO/IEC/IEEE 29119-2:2013

ISO/IEC/IEEE 29119-2 định nghĩa một mô hình quy trình chung về kiểm thử phần mềm, có thể được sử dụng trong bất kỳ vòng đời phát triển phần mềm nào. Vai trò của các quy trình kiểm thử phần mềm là để kiểm soát, quản lý và thực thi kiểm thử phần mềm trong bất kỳ tổ chức, dự án hoặc hoạt động kiểm thử phần mềm nào. Việc thực hiện tiêu chuẩn ISO/IEC/IEEE 29119-2 cho phép kiểm thử phần mềm được ưu tiên và tập trung vào các tính năng quan trọng nhất và các thuộc tính chất lượng của từng hệ thống cần kiểm thử.

ISO/IEC/IEEE 29119-2 được xem là phần cốt lõi và có quan hệ chặt chẽ với các phần. Đầu ra của các quy trình kiểm thử trong ISO/IEC/IEEE 29119-2 chính là các tài liệu kiểm thử nêu trong ISO/IEC/IEEE 29119-3, còn các bước thiết kế trường hợp kiểm thử trong  ISO/IEC/IEEE 29119-4 được thực hiện theo quy trình Thiết kế và chuẩn bị kiểm thử trong ISO/IEC/IEEE 29119-2.

Các quy trình kiểm thử trong phần 2 của bộ tiêu chuẩn ISO/IEC/IEEE 29119 được định nghĩa sử dụng một mô hình 3 lớp như được trình bày trong Hình 1.

Hình 1- Các quy trình kiểm thử trong ISO/IEC/IEEE 29119-2

Hình 1 cho thấy một bộ hoàn chỉnh 8 quy trình kiểm thử quy định trong bộ tiêu chuẩn ISO/IEC/IEEE 29119-2. Mỗi quy trình được tạo thành từ một tập hợp các hoạt động, và các hoạt động này bao gồm một tập hợp các nhiệm vụ cụ thể. 

Mỗi quy trình đều có cấu trúc chung, bao gồm: Tên quy trình, Mục đích của quy trình, Kết quả của quy trình, Các hoạt động, Các nhiệm vụ, Đầu ra của quy trình.

Tiêu chuẩn này đã được dự thảo thành tiêu chuẩn Việt nam TCVN xxxx-2:201x năm 2015 và đang chuẩn bị ban hành.

Tiêu chuẩn ISO/IEC/IEEE 29119-3:2013

Có một mối liên kết chặt chẽ giữa ISO/IEC/IEEE 29119-2 và ISO/IEC/IEEE 29119-3. Đầu ra của các quy trình trong  ISO/IEC/IEEE 29119-2 chính là các tài liệu hướng dẫn kiểm thử quy định tại ISO/IEC/IEEE 29119-3.

ISO/IEC/IEEE 29119-3 quy định các mẫu tài liệu kiểm thử phần mềm có thể được sử dụng cho bất kỳ tổ chức, dự án hoặc hoạt động kiểm thử nào. Tài liệu kiểm thử mô tả trong phần này chính là đầu ra của các quy trình kiểm thử được quy định trong ISO/IEC/IEEE 29119-4. Mỗi mẫu tài liệu quy định trong tiêu chuẩn ISO/IEC/IEEE 29119-3 được thiết kế dựa trên những yêu cầu của tổ chức. Tiêu chuẩn này được thay thế tiêu chuẩn IEEE 829.

Mục đích của ISO/IEC/IEEE 29119-3 là cung cấp các mẫu tài liệu hướng dẫn kiểm thử phần mềm bao trùm toàn bộ chu kỳ kiểm thử phần mềm. Mỗi mẫu tài liệu có thể được thay đổi cho phù hợp với nhu cầu riêng của từng tổ chức khi triển khai thực hiện các tiêu chuẩn để hỗ trợ việc thực hiện tiêu chuẩn trong bất kỳ mô hình vòng đời phát triển phần mềm nào.

Các tài liệu được đề cập trong ISO/IEC/IEEE 29119-3 bao gồm: Tài liệu hướng dẫn quy trình kiểm thử của tổ chức, Tài liệu hướng dẫn quy trình quản lý kiểm thử, Tài liệu hướng dẫn quy trình kiểm thử động.

Tiêu chuẩn này đã được dự thảo thành tiêu chuẩn Việt nam TCVN xxxx-3:201x năm 2015 và đang chuẩn bị ban hành.

Tiêu chuẩn ISO/IEC/IEEE 29119-4:2015

ISO/IEC/IEEE 29119-4 được xây dựng dựa trên BS 7925-2, vì vậy người sử dụng tiêu chuẩn này sẽ nhận thấy sự tương ứng chặt chẽ giữa BS 7925-2 và ISO/IEC/IEEE 29119-4. Có sự khác biệt đáng kể so với BS 7925-2 là ISO/IEC/IEEE 29119-4 có phụ lục A trình bày về các loại kiểm thử đặc tính chất lượng phần mềm (tức là kiểm thử phi chức năng) thích hợp cho việc kiểm thử từng đặc tính chất lượng được xác định trong bộ tiêu chuẩn ISO/IEC 25000 (SQuaRE).  

Mục đích của ISO/IEC/IEEE 29119-4 là định nghĩa một tiêu chuẩn quốc tế bao gồm các kỹ thuật kiểm thử phần mềm được sử dụng trong suốt quy trình Thiết kế và chuẩn bị kiểm thử nêu trong trong ISO/IEC/IEEE 29119-2. Cấu trúc tổng thể của ISO/IEC/IEEE 29119-4 được trình bày trong Hình 2.

Hình 2- ISO/IEC/IEEE 29119-4: Các kỹ thuật kiểm thử

Các kỹ thuật thiết kế trường hợp kiểm thử trong ISO/IEC/IEEE 29119-4 bao gồm:

Các kỹ thuật kiểm thử dựa trên đặc tả (các kỹ thuật kiểm thử hộp đen): Phân tích giá trị biên, Đồ thị nguyên nhân - kết quả, Phương pháp cây phân loại, Kỹ thuật kiểm thử tổ hợp, Bảng quyết định, Phân vùng tương đương, Kiểm thử ngẫu nhiên, Kiểm thử theo kịch bản, Mô hình trạng thái, Kiểm thử theo cú pháp

Các kỹ thuật kiểm thử dựa trên cấu trúc (các kỹ thuật kiểm thử hộp trắng): Kiểm thử nhánh/ kiểm thử dựa trên bảng quyết định, Kiểm thử điều kiện nhánh, Kiểm thử kết hợp điều kiện nhánh, Kiểm thử luồng dữ liệu, Kiểm thử bao phủ quyết định điều kiện (MCDC), Kiểm thử câu lệnh.

Các kỹ thuật kiểm thử dựa trên kinh nghiệm: Đoán lỗi

Tiêu chuẩn BS 7925-2

BS 7925-2 có tên gọi đầy đủ là BS 7925-2 Software testing - Software component testing, là tiêu chuẩn phần mềm, nó định nghĩa toàn bộ quy trình kiểm thử, kỹ thuật tạo các trường hợp kiểm thử và các hoạt động khác mà được sử dụng để kiểm thử thành phần. Nhiệm vụ chính của BS 7925-2 là xác định cách thức thành phần phần mềm được kiểm tra bằng sự trợ giúp của quy trình kiểm thử động

Tiêu chuẩn này định nghĩa các quy trình kiểm thử thành phần phần mềm sử dụng các kỹ thuật thiết kế trường hợp kiểm thử cụ thể và các kỹ thuật đo lường, cho phép người sử dụng trực tiếp nâng cao chất lượng kiểm thử phần mềm và sản phẩm phần mềm của họ.

Tiêu chuẩn này hiện đã được thay thế bằng ISO/IEC/IEEE 29119-4:2015

ISO/IEC 25010:2011 

Đây một tiêu chuẩn quốc tế về đánh giá chất lượng phần mềm. Tiêu chuẩn này thay thế cho tiêu chuẩn ISO/IEC 9126-1:2001. Tiêu chuẩn SO/IEC 25010 định nghĩa mô hình chất lượng phần mềm. Nó gồm 8 đặc tính chính và các đặc tính phụ về chất lượng phần mềm được trình bày trong hình 3.

Hình 3 - Mô hình chất lượng sản phẩm phần mềm trong ISO/IEC 2510

Tương ứng với các loại đặc tính chất lượng phần mềm thì có các kỹ thuật thiết kế kiểm thử được sử dụng để kiểm thử từng đặc tính chất lượng sản phầm phần mềm được trình bày trong điều A.3 và A.4 của ISO/IEC/IEEE 29119-4.

Kết luận

Chỉ có ISO/IEC/IEEE 29119-4:2015 trình bày khá chi tiết về kỹ thuật kiểm thử, nó thay thế cho tiêu chuẩn BS 7925-2:1998. Cho đến nay, tiêu chuẩn này được rất nhiều nước trên thế giới biên dịch và có tiêu chuẩn quốc gia hoàn toàn tương đương với phiên bản của ISO/IEC/IEEE 29119-4:2015 như: Anh (BS ISO/IEC/IEEE 29119-4:2015), Đan Mạch (DS/ISO/IEC/IEEE 29119-4:2015), Na-uy (NS-ISO/IEC/IEEE 29119-4:2015), Đức, Tây Ban Nha, v.v..

Hiện nay, dự thảo tiêu chuẩn kiểm thử phần mềm ở Việt Nam đã được xây dựng trên cơ sở  tài liệu tham chiếu chính là: ISO/IEC/IEEE 29119-4:2015 “Softwave and systems engineering - Sofwave testing - Part 4: Test Techniques”.

Tài liệu tham khảo

[1]. Nghiên cứu xây dựng tiêu chuẩn quốc gia “Kiểm thử phần mềm - Phần 4: Các kỹ thuật kiểm thử”, đề tài cấp Bộ TT&TT, mã số: 31-16-KHKT-TC.

[2]. Các trang web của các tổ chức IEC, ISO, IEEE.

Thuy Thủy