TIÊU CHUẨN QUỐC GIA TCVN 8708:2011 VỀ CÔNG NGHỆ THÔNG TIN – ĐÁNH GIÁ SẢN PHẨM PHẦN MỀM – PHẦN 4: QUY TRÌNH CHO NGƯỜI MUA SẢN PHẨM
TCVN 8708:2011
CÔNG NGHỆ THÔNG TIN – ĐÁNH GIÁ SẢN PHẨM PHẦN MỀM – PHẦN 4: QUY TRÌNH CHO NGƯỜI MUA SẢN PHẨM
Information technology – Software product evaluation – Part 4: Process for acquirers
Lời nói đầu
TCVN 8708:2011 được xây dựng trên cơ sở ISO/IEC 14598-4.
TCVN 8700:2011 do Viện Khoa học Kỹ thuật Bưu điện biên soạn, Bộ Thông tin và Truyền thông đề nghị, Tổng cục Tiêu chuẩn Đo lường Chất lượng thẩm định, Bộ Khoa học và Công nghệ công bố.
CÔNG NGHỆ THÔNG TIN – ĐÁNH GIÁ SẢN PHẨM PHẦN MỀM – PHẦN 4: QUY TRÌNH CHO NGƯỜI MUA SẢN PHẨM
Information technology – Software Product Evaluation – Part 4: Process for acquirers
1. Phạm vi áp dụng
Tiêu chuẩn này bao gồm các yêu cầu, khuyến nghị và hướng dẫn cho việc đo có hệ thống, đánh giá chất lượng sản phẩm phần mềm trong quy trình mua sản phẩm phần mềm đóng gói, sản phẩm phần mềm đặt hàng, hoặc thay đổi sản phẩm phần mềm sẵn có. Nó sử dụng mô hình chất lượng phần mềm mô tả trong ISO/IEC 9126-1; và sử dụng quy trình mua sản phẩm được định nghĩa trong ISO/IEC 12207. Nó có thể được dùng kết hợp với ISO/IEC 12119. TCVN 8705:2011, TCVN 8706:2011 và ISO/IEC 14598-6. Các bước của quy trình đánh giá tương tự như TCVN 8705:2011, nhưng tình huống sử dụng thì hoàn toàn khác nhau. Trong trường hợp người mua hàng tin tưởng vào bên thứ hai hay thứ ba để đánh giá, TCVN 8705:2011 được yêu cầu áp dụng. Trong trường hợp người mua hàng yêu cầu bên thứ ba kiểm tra gói phần mềm đối với các yêu cầu chất lượng cho gói, thì ISO/IEC 12119 có thể được áp dụng.
Quy trình đánh giá mô tả trong tiêu chuẩn này cũng giúp đáp ứng các mục tiêu ra quyết định chấp nhận một sản phẩm đơn, hay lựa chọn sản phẩm trong số các sản phẩm khác. Quy trình đánh giá sản phẩm có thể được biến đổi cho phù hợp với bản chất và mức độ toàn vẹn của ứng dụng. Nó cũng khá mềm dẻo để áp dụng cho diện rộng các dạng và cách sử dụng sản phẩm phần mềm với chi phí hợp lý.
Tiêu chuẩn này nhằm vào, nhưng không giới hạn, người quản lý dự án, kỹ sư hệ thống, nhân viên phát triển và bảo trì phần mềm và người dùng có kế hoạch mua sản phẩm phần mềm, và nhà cung cấp các sản phẩm như vậy.
Sản phẩm phần mềm là mục tiêu của quy trình đánh giá trong tiêu chuẩn này có thể được tích hợp vào hệ thống lớn hơn như một thành phần hoặc có thể sử dụng độc lập. Chúng được phân loại như sau:
(a) Các sản phẩm phần mềm đóng gói thương mại;
(b) Các sản phẩm phần mềm sẵn có được phát triển hoặc yêu cầu cho các ứng dụng khác, hoặc cho dải rộng các ứng dụng chung;
(c) Các sản phẩm phần mềm đặt hàng hay các sửa đổi từ các sản phẩm phần mềm sẵn có.
Quy trình đánh giá được xác định trong tiêu chuẩn này cũng có khả năng áp dụng cho công cụ CASE; tuy nhiên việc đánh giá theo công cụ CASE được đưa ra trong ISO/IEC 14102.
2. Tài liệu viện dẫn
Các tài liệu viện dẫn sau đây là cần thiết để áp dụng tiêu chuẩn này. Đối với các tài liệu viện dẫn ghi năm công bố thì áp dụng bản được nêu. Đối với các tài liệu viện dẫn không ghi năm công bố thì áp dụng phiên bản mới nhất, bao gồm cả các sửa đổi, bổ sung (nếu có).
[1] TCVN 8702:2011 – Công nghệ thông tin – Chất lượng sản phẩm phần mềm – Phần 1: Các phép đánh giá chất lượng ngoài.
[2] TCVN 8703:2011 – Công nghệ thông tin – Chất lượng sản phẩm phần mềm – Phần 2: Các phép đánh giá chất lượng trong.
[3] TCVN 8704:2011 – Công nghệ thông tin – Chất lượng sản phẩm phần mềm – Phần 3: Các phép đánh giá chất lượng sử dụng.
[4] TCVN 8705:2011 – Công nghệ thông tin – Đánh giá sản phẩm phần mềm – Phần 1: Tổng quan.
[5] TCVN 8706:2011 – Công nghệ thông tin – Đánh giá sản phẩm phần mềm – Phần 2: Quy trình cho bên đánh giá.
[6] TCVN 8707:2011 – Công nghệ thông tin – Đánh giá sản phẩm phần mềm – Phần 3: Quy trình cho người phát triển.
[7] TCVN ISO 9001:2008 – Hệ thống quản lý chất lượng – Các yêu cầu.
[8] ISO/IEC 12119 – Information technology – Software pagkages – Quality requirements and testing (ISO/IEC 12119 – Công nghệ thông tin – Gói phần mềm – Các yêu cầu chất lượng và kiểm tra).
[9] ISO/IEC 12207 – Systems and software engineering – Software life cycle processes (ISO/IEC 12207 – Kỹ thuật hệ thống và phần mềm – Các quá trình vòng đời phần mềm).
[10] ISO/IEC 9126-1 – Software engineering – Product quality – Part 1: Quality model. (ISO/IEC 9126- 1- Kỹ thuật phần mềm – Chất lượng sản phẩm – Phần 1: Mô hình chất lượng).
[11] ISO/IEC 14598-6 – Information technology – Software product evaluation – Part 6: Documentation of evaluation modules. (ISO/IEC 14598-6 – Công nghệ thông tin – Đánh giá sản phẩm phần mềm – Phần 6: Tài liệu các mô đun đánh giá).
[12] ISO/IEC 15026 – Information technology – System and software integrity levels (ISO/IEC 15026 – Công nghệ thông tin – Các mức toàn vẹn hệ thống và phần mềm).
[13] ISO/IEC 14102 – Information technology – Guideline for the evaluation and selection of CASE tools (ISO/IEC 14102 – Công nghệ thông tin – Hướng dẫn đánh giá và lựa chọn các công cụ CASE).
[14] ISO/IEC 15504-8 – Information technology – Process assessment – Part 8: An exemplar process assessment model for IT Service management (ISO/IEC 15504-8 – Công nghệ thông tin – Đánh giá quy trình – Phần 8 – Mô hình đánh giá quy trình mẫu cho quản lý dịch vụ IT).
3. Thuật ngữ và định nghĩa
3.1 Các nhu cầu ám chỉ (implied needs)
Các nhu cầu có thể chưa được công bố nhưng là các nhu cầu thực sự khi thực thể được sử dụng trong các điều kiện đặc thù
CHÚ THÍCH: Các nhu cầu ám chỉ là các nhu cầu thực tế có thể chưa được đưa trong tài liệu.
3.2 Chất lượng (quality)
Tổng hợp các đặc tính của thực thể liên quan tới khả năng của nó thỏa mãn các yêu cầu đã được công bố và ám chỉ.
CHÚ THÍCH: Trong môi trường hợp đồng, hoặc trong môi trường quy định, như Iĩnh vực an toàn nguyên tử, các yêu cầu được xác định, trong khi đó trong các môi trường khác, các yêu cầu ám chỉ phải được nhận biết và định nghĩa.
CHÚ THÍCH 2: Trong các tiêu chuẩn từ TCVN 8705:2011 đến TCVN 8708:2011 thực thể liên quan là sản phẩm phần mềm.
3.3 Chất lượng ngoài (external quality)
Khả năng của sản phẩm thỏa mãn các yêu cầu đã được công bố và ám chỉ khi sử dụng dưới các điều kiện xác định.
3.4 Chất lượng sử dụng (quality in use)
Khả năng của sản phẩm phần mềm cho phép người sử dụng xác định đạt tới các mục tiêu xác định với tính hiệu quả, năng suất, tính an toàn và sự thỏa mãn trong ngữ cảnh cụ thể khi sử dụng.
CHÚ THÍCH: Định nghĩa này của chất lượng sử dụng tương tự như định nghĩa tính khả dụng trong ISO 9241-11. Trong các tiêu chuẩn từ TCVN 8705:2011 đến TCVN 8708:2011 thuật ngữ tính khả dụng được sử dụng cho đặc tính chất lượng phần mềm mô tả trong ISO/IEC 9126-1.
3.5 Chất lượng trong (internal quality)
Tổng hợp các thuộc tính của sản phẩm xác định khả năng của nó để thỏa mãn các yêu cầu đã được công bố và ám chỉ khi sử dụng dưới các điều kiện xác định.
CHÚ THÍCH 1: Thuật ngữ “chất lượng trong”, được sử dụng trong các tiêu chuẩn từ TCVN 8705:2011 đến TCVN 8708:2011 trái ngược với “chất lượng ngoài”, về cơ bản có cùng ý nghĩa với như “chất lượng” trong ISO 8402.
CHÚ THÍCH 2 Thuật ngữ “thuộc tính” được sử dụng với cùng ý nghĩa như thuật ngữ “đặc tính” sử dụng trong 3.21, như thuật ngữ “đặc tính” được sử dụng trong ý nghĩa đặc trưng hơn trong các tiêu chuẩn từ TCVN 8702:2011 đến TCVN 8704:2011.
3.6 Chỉ báo (indicator)
Hệ đo có thể được sử dụng để ước lượng hoặc dự báo hệ đo khác.
CHÚ THÍCH 1: Hệ đo có thể như nhau hoặc tính chất khác nhau
CHÚ THÍCH 2: Các chỉ báo có thể được sử dụng cho cả ước lượng các thuộc tính chất lượng phần mềm và ước lượng các thuộc tính của quá trình sản xuất. Chúng là các hệ đo gián tiếp của các thuộc tính.
3.7 Công cụ CASE (CASE tool)
Sản phẩm phần mềm có thể trợ giúp các kỹ sư phần mềm bằng cách cung cấp hỗ trợ tự động cho các hoạt động vòng đời phần mềm như định nghĩa trong ISO/IEC 12207:1995.
CHÚ THÍCH 1: Công cụ CASE có thể cung cấp hỗ trợ trong chỉ các lĩnh vực chức năng được chọn hoặc trong nhiều dạng khác nhau của các lĩnh vực chức năng.
CHÚ THÍCH 2: Công cụ CASE có Thể được sử dụng trong các một loạt chế độ:
• Như các công cụ độc lập; trong trường hợp này, chỉ có tính tương thích với các phần tử môi trường phải được xác định.
• Trong các nhóm nhỏ kết nối trực tiếp với các nhóm khác; có thể giả thiết việc tích hợp đã được xác định trước, có thể độc quyền;
• Khi xuất hiện cơ cấu lớn hơn của SEE; trong trường hợp này khả năng của công cụ sử dụng các dịch vụ liên quan của cơ cấu phải được xác định.
3.8 Đánh giá chất lượng (quality evaluation)
Kiểm tra một cách hệ thống giới hạn mà thực thể có khả năng thực hiện các yêu cầu xác định.
CHÚ THÍCH: Các yêu cầu có thể xác định chính thức, như khi sản phẩm được phát triển cho người sử dụng có thể bằng hợp đồng, hay được xác định bằng tổ chức phát triển, như khi sản phẩm được phát triển cho người sử dụng không cụ thể, như phần mềm thương mại, hoặc các yêu cầu có thể chung hơn, như khi người sử dụng đánh giá các sản phẩm cho mục đích so sánh và lựa chọn.
3.9 Đo (measure – verb.)
Thiết lập phép đo.
3.10 Hệ đo (measure – noun.)
Số lượng hoặc phạm trù gắn với các thuộc tính của thực thể bằng cách thiết lập phép đo.
3.11 Hệ đo gián tiếp (indirect measure)
Hệ đo thuộc tính nhận được từ các hệ đo một hoặc nhiều các thuộc tính khác.
CHÚ THÍCH: Hệ đo ngoài của thuộc tính của hệ thống máy tính (như thời gian đáp ứng đầu vào người sử dụng) là hệ đo gián tiếp các thuộc tính của phần mềm vì rằng hệ đo sẽ bị ảnh hưởng bởi các thuộc tính của môi trường tính toán cũng như các thuộc tính của phần mềm.
3.12 Hệ đo ngoài (external measure)
Hệ đo gián tiếp của sản phẩm nhận được từ các hệ đo các hoạt động của hệ thống mà sản phẩm là một phần của nó
CHÚ THÍCH 1: Hệ thống bao gồm bất kì phần cứng, phần mềm liên kết nào (kể cả phần mềm của khách hàng hoặc phần mềm đóng gói) và người sử dụng.
CHÚ THÍCH 2: Số sự cố phát hiện được trong quá trình kiểm tra là các hệ đo ngoài của số sự cố trong chương trình vì số sự cố được đếm trong quá trình vận hành của hệ thống máy tính đang thực hiện chương trình để nhận biết lỗi trong mã.
CHÚ THÍCH 3: Các hệ đo ngoài có thể được sử dụng để đánh giá các thuộc tính chất lượng gần với các mục tiêu cơ bản của thiết kế.
3.13 Hệ đo trong (internal measure)
Hệ đo nhận được từ chính bản thân phần mềm, bất kể là trực tiếp hay gián tiếp, nó không xuất phát từ các hệ đo các hoạt động của hệ thống mà nó là một phần.
CHÚ THÍCH: Các dòng mã, độ phức tạp, số sự cố phát hiện được trong các bước và Chỉ số mờ tất cả đều là đo lường trong được tạo trong bản thân phần mềm
3.14 Hệ đo trực tiếp (direct measure)
Hệ đo thuộc tính không phụ thuộc vào hệ đo các thuộc tính khác.
3.15 Hệ thống (system)
Tổng hợp tích hợp bao gồm một hoặc nhiều quá trình, phần cứng, phần mềm, phương tiện và người, cung cấp khả năng thỏa mãn nhu cầu hoặc mục tiêu công bố.
3.16 Hợp đồng (contract)
Thỏa thuận ràng buộc giữa hai chủ thể, đặc biệt có thể thi hành bằng luật, hoặc thỏa thuận nội bộ tương tự hoàn toàn trong tổ chức, để cung cấp dịch vụ phần mềm hoặc cho cung cấp, phát triển, sản xuất, vận hành, hoặc bảo trì sản phẩm phần mềm.
3.17 Kiểm định (audit)
Thiết lập bởi người có thẩm quyền cho mục đích cung cấp đánh giá độc lập của các sản phẩm phần mềm và các quá trình để đánh giá tuân thủ theo các yêu cầu.
3.18 Mô hình chất lượng (quality model)
Một bộ các đặc tính và quan hệ giữa chúng, cung cấp cơ sở cho các yêu cầu chất lượng xác định và đánh giá chất lượng
3.19 Môđun đánh giá (evaluation module)
Gói công nghệ đánh giá cho đặc tính hay đặc tính nhỏ chất lượng phần mềm xác định.
CHÚ THÍCH: Gói bao gồm các phương pháp và các kỹ thuật đánh giá, các đầu vào được đánh giá, dữ liệu được đo và thu thập, và các thủ tục và công cụ hỗ trợ.
3.20 Mua sản phẩm (acquisition)
Quá trình đạt được hệ thống, sản phẩm phần mềm hay dịch vụ phần mềm
3.21 Mục cấu hình (configuration item)
Thực thể trong cấu hình thỏa mãn chức năng sử dụng cuối và có thể được xác định duy nhất tại điểm tham chiếu cho trước.
3.22 Mức phân hạng (rating level)
Điểm thang đánh giá trên thang đánh giá thứ tự được sử dụng để phân loại thang đánh giá phép đo.
CHÚ THÍCH 1: Mức phân hạng cho phép phần mềm phân lớp (phân hạng) tương ứng với các nhu cầu công bố hay mặc nhiên.
CHÚ THÍCH 2: Các mức phân hạng thích hợp có thể liên quan với các quan điểm của chất lượng, tức là, “Người sử dụng”, “Người quản lý” hay “Người phát triển”.
3.23 Mức toàn vẹn (integrity level)
Biểu hiện dải các giá trị của đặc tính của mục cần thiết để bảo trì các rủi ro hệ thống trong các giới hạn chấp nhận được. Đối với các mục thực hiện các chức năng giảm nhẹ, đặc tính là tính tin cậy mà mục được chọn phải thực hiện chức năng giảm nhẹ. Đối với các mục mà sự cố có thể dẫn đến nguy hiểm, đặc tính là giới hạn trên tần suất của sự cố.
3.24 Người cung cấp (supplier)
Tổ chức tham gia vào hợp đồng với người mua sản phẩm để cung cấp hệ thống, sản phẩm phần mềm hoặc dịch vụ phần mềm theo các điều khoản của hợp đồng.
3.25 Người mua sản phẩm (acquirer)
Tổ chức mua hay nhận hệ thống, sản phẩm phần mềm hoặc dịch vụ phần mềm từ nhà cung cấp.
CHÚ THÍCH: Người mua sản phẩm có thể là: người mua, khách hàng, chủ sở hữu, người sử dụng.
3.26 Người phát triển (developer)
Tổ chức tạo lập các hoạt động phát triển (bao gồm phân tích yêu cầu, thiết kế, kiểm tra thông qua chấp thuận) trong quá trình vòng đời phần mềm.
3.27 Người sử dụng (user)
Cá nhân sử dạng sản phẩm phần mềm để thực hiện chức năng xác định.
CHÚ THÍCH: Người sử dụng có thể bao gồm người vận hành, người nhận kết quả của phần mềm, hoặc người phát triển, hoặc người bảo trì phần mềm.
3.28 Người vận hành (operator)
Tổ chức vận hành hệ thống.
3.29 Phân hạng (rating)
Hành động ánh xạ giá trị đo được tới mức phân hạng thích hợp. Thường dùng để xác định mức phân hạng liên quan với phần mềm cho các đặc tính chất lượng cụ thể.
3.30 Phần mềm (software)
Tất cả hoặc một phần của các chương trình, thủ tục, qui tắc, và tài liệu đi kèm của một hệ thống xử lí thông tin.
CHÚ THÍCH: Phần mềm là sáng tạo trí tuệ không phụ thuộc vào phương tiện nó được lưu trữ.
3.31 Phần mềm có sẵn (existing software)
Phần mềm đã được phát triển và sẵn có; có khả năng sử dụng như nguyên bản hay với thay đổi; và được cung cấp bởi nhà cung cấp, người mua sản phẩm, hay người thứ ba.
3.32 Phần mềm đóng gói thương mại (commercial-of-the shelf software COTS)
Phần mềm được xác định bằng nhu cầu thị trường, có khả năng thương mại, và sự phù hợp của chúng để sử dụng được chứng minh bằng đại chúng người sử dụng thương mại.
3.33 Phần mềm khách hàng (custom software)
Phần mềm được phát triển cho ứng dụng cụ thể từ đặc tính kỹ thuật yêu cầu người sử dụng.
3.34 Phần sụn (firmware)
Tổ hợp của thiết bị phần cứng và các lệnh máy tính hoặc dữ liệu máy tính được nạp như phần mềm chỉ đọc ra trong thiết bị phần cứng. Phần mềm không thể dễ dàng sửa đổi dưới sự điều khiển của chương trình.
3.35 Phép đánh giá (metric)
Thang đo và phương pháp sử dụng đo.
CHÚ THÍCH 1: Phép đánh giá có thể là trong hoặc ngoài.
CHÚ THÍCH 2: Các phép đánh giá bao gồm các phương pháp cho phân loại dữ liệu định tính.
3.36 Phép đo (measurement)
Quá trình gắn số lượng hoặc phạm trù với thực thể mô tả thuộc tính của thực thể.
CHÚ THÍCH: Phạm trù được sử dụng để biểu thị các phép đo định tính của các thuộc tính. Ví dụ, một số các thuộc tính quan trọng của sản phẩm phần mềm, như ngôn ngữ của chương trình nguồn (ADA, C, COBOL,…) là định tính.
3.37 Sản phẩm đóng gói (off-the-shelf product)
Sản phẩm đã được phát triển và sẵn sàng; có khả năng sử dụng như nguyên bản hay với thay đổi.
3.38 Sản phẩm phần mềm (software product)
Một bộ các chương trình máy tính, thủ tục, và có thể các tài liệu đi kèm và dữ liệu thiết kế để phân phối cho người sử dụng.
CHÚ THÍCH: Sản phẩm bao gồm các sản phẩm trung gian, và các sản phẩm dự định cho người sử dụng như người phát triển và người bảo trì.
3.39 Sản phẩm phần mềm trung gian (intermediate software product)
Sản phẩm của quá trình phát triển phần mềm được sử dụng như đầu vào các giai đoạn khác của quá trình phát triển phần mềm.
CHÚ THÍCH: Trong một số trường hợp sản phẩm trung gian cũng có thể là sản phẩm cuối cùng.
3.40 Sự hỏng (fault)
Một bước, một quá trình hay xác định dữ liệu không đúng trong chương trình máy tính
3.41 Sự xác minh (verification)
Khẳng định bằng kiểm tra và cung cấp bằng chứng khách quan rằng các yêu cầu xác định đã được thực hiện.
CHÚ THÍCH 1: Trong thiết kế và phát triển, xác minh liên quan đến quá trình kiểm tra kết quả của hoạt động cho trước để xác định việc tuân theo các yêu cầu công bố cho hoạt động này.
CHÚ THÍCH 2: “Xác minh” được sử dụng để chỉ định trạng thái tương ứng.
3.42 Sự xác nhận (validation)
Khẳng định bằng kiểm tra và cung cấp bằng chứng khách quan rằng các yêu cầu đặc thù cho sử dụng dự kiến cụ thể đã được thực hiện.
CHÚ THÍCH 1: Trong thiết kế và phát triển, xác nhận liên quan đến quá trình kiểm tra sản phẩm để xác định việc tuân theo các nhu cầu người sử dụng.
CHÚ THÍCH 2: Xác nhận thông thường được thực hiện trên sản phẩm cuối dưới các điều kiện vận hành xác định. Nó cũng có thể cần thiết trong các giai đoạn sớm hơn.
CHÚ THÍCH 3: “Xác nhận” được sử dụng để chỉ định trạng thái tương ứng.
CHÚ THÍCH 4: Nhiều xác nhận có thể được thực hiện nếu có các sử dụng dự kiến khác nhau.
3.43 Thang đánh giá (scale)
Bộ các giá trị với các đặc tính xác định.
CHÚ THÍCH: Các ví dụ các loại thang đánh giá là: thang danh nghĩa phù hợp với một bộ các phạm trù; thang thứ tự phù hợp với một bộ được sắp xếp của các điểm thang đánh giá; thang khoảng phù hợp với thang đánh giá được sắp xếp với các điểm thang cách đều nhau; và thang đánh giá tỷ lệ không chỉ có điểm thang đánh giá cách đều nhau mà còn có điểm không tuyệt đối. Các phép đánh giá sử dụng thang danh nghĩa và thang thứ tự cung cấp các dữ liệu định tính, và các phép đánh giá sử dụng thang khoảng và thang tỷ lệ cung cấp dữ liệu định lượng.
3.44 Thất bại (failure)
Kết thúc khả năng của sản phẩm thực hiện chức năng yêu cầu hay sự bất lực của nó khi thực hiện trong các giới hạn được xác định trước.
3.45 Thuộc tính (attribute)
Đặc tính vật lý đo được hay đặc tính lý thuyết của thực thể.
3.46 Vạch ranh giới (baseline)
Phiên bản nâng cấp chính thức của các mục cấu hình, không phụ thuộc vào phương tiện, được chính thức thiết kế và ấn định tại thời điểm cụ thể trong vòng đời mục cấu hình.
3.47 Yêu cầu đối với đề nghị – đấu thầu (request for proposal – tender)
Tài liệu được sử dụng bởi người mua hàng như phương tiện thông báo ý định của nó tới nhà thầu tiềm năng để mua hệ thống cụ thể, sản phẩm phần mềm hay dịch vụ phần mềm.
4 Đánh giá sản phẩm phần mềm – Các xem xét tổng quan
4.1 Liên hệ giữa các quy trình đánh giá và mua sản phẩm
Các hoạt động của quy trình mua sản phẩm (xác định trong ISO/IEC 12207) được tổng hợp trong phần dưới đây, và được kết hợp cùng với các hoạt động trong quy trình đánh giá chung (xác định trong TCVN 8705:2011) trong điều 4 và 5. Điều 4 tập trung vào ứng dụng của đánh giá chất lượng sản phẩm cuối khi mua các sản phẩm đóng gói COTS. Điều 5 tập trung vào ứng dụng của quy trình đánh giá khi mua sản phẩm phần mềm đặt hàng hoặc sửa đổi phần mềm có sẵn.
a) Khởi đầu – xác nhận các yêu cầu phần mềm cho sản phẩm được mua, kế hoạch mua sản phẩm, và chiến lược cũng như tiêu chuẩn chấp nhận;
b) Chuẩn bị yêu cầu đề nghị (đấu thầu) – đặc tả và lập tài liệu của các yêu cầu mua sản phẩm;
c) Chuẩn bị và cập nhật hợp đồng – lựa chọn nhà cung cấp, chuẩn bị và đàm phán hợp đồng, và quản lý các thay đổi hợp đồng;
d) Giám sát nhà cung cấp – các hoạt động đánh giá được tạo lập trong quá trình thực hiện hợp đồng đưa đến việc chấp thuận và giao sản phẩm phần mềm;
e) Chấp thuận và hoàn thành – các hoạt động được thực hiện trong quá trình chấp thuận và giao sản phẩm phần mềm cuối cùng.
Lưu ý rằng quy trình đánh giá chung được xác định trong các tiêu chuẩn từ TCVN 8702:2011 đến TCVN 8704-4:2011 không được định nghĩa như một quy trình trong ISO/IEC 12207, nhưng chức năng cơ bản tương đương với phần “kiểm tra” của chu trình kế hoạch kiểm tra (PDCA) được thực hiện trong mỗi quá trình vòng đời. Tuy nhiên, quy trình đánh giá chung có thể được thực hiện trong bất kì quá trình nào của ISO/IEC 12207 (tức là phát triển, duy trì, mua sản phẩm, phê chuẩn); do đó có các mức độ khác nhau của khái niệm “quá trình” được sử dụng trong ISO/IEC 12207.
Phân biệt này là quan trọng khi thực hiện quy trình đánh giá chung. Người mua sản phẩm cần xác định cả quy trình đánh giá và quy trình mua sản phẩm mà họ sẽ tuân theo để đưa ra các yêu cầu đánh giá trong quy trình mua sản phẩm. Trong bối cảnh phát triển hệ thống lớn, các hoạt động mua sản phẩm và đánh giá tuân theo nhu cầu được tích hợp với các hoạt động phát triển và tích hợp khác, và được xác định trong kế hoạch đo dự án như được đưa ra trong TCVN 8705:2011; tức là các xem xét thực hiện mua sản phẩm cụ thể cho đánh giá bao gồm các vấn đề sau:
– Đặc tả yêu cầu phần mềm yêu cầu đánh giá có thể tạo lập cơ sở cho các yêu cầu mua sản phẩm cần cho yêu cầu đề nghị – đấu thầu;
– Các hoạt động đánh giá sơ bộ riêng có thể cần thiết để chọn trước các sản phẩm phần mềm và người cung cấp;
– Các yêu cầu thông tin nhà cung cấp và sản phẩm cho đánh giá cần phải được xác định trong các yêu cầu mua sản phẩm hoặc trong quá trình chuẩn bị hợp đồng;
– Các hoạt động đánh giá có thể được thực hiện như một phần của đánh giá đề xuất, trong quá trình giám sát thực hiện hợp đồng, như một phần của quá trình phát triển sản phẩm, một phần của chấp thuận sản phẩm chính thức, hay sau khi giao sản phẩm.
4.2 Các đầu vào quy trình đánh giá
4.2.1 Các yêu cầu hệ thống
Điểm đầu tiên để xác định các yêu cầu đánh giá cho phần mềm mục tiêu bắt đầu với các yêu cầu hệ thống tổng thể. Các yêu cầu hệ thống xác định người sử dụng, mục đích người sử dụng, các nhiệm vụ và đặc tính, bao gồm cả môi trường trong đó sản phẩm được sử dụng, bổ sung vào các yêu cầu chức năng và các yêu cầu khác cho sản phẩm hoặc hệ thống. Chúng tạo thành cơ sở cho thiết kế cấu trúc hệ thống tiếp theo, đặc tả các yêu cầu phần mềm, và thiết kế cấu trúc phần mềm. Các yêu cầu luật pháp và quy định liên quan cần được xác định trong giai đoạn này vì chúng tác động đến tính chính xác và quy cách của quy trình mua sản phẩm và đánh giá.
Trong phân tích và thiết kế các yêu cầu hệ thống, các yêu cầu hệ thống được ấn định cho các mục cấu hình phần cứng và phần mềm, và cho các vận hành của người sử dụng bao gồm các thủ tục hệ thống. Các hoạt động thiết kế trong vòng đời phát triển hệ thống đưa đến các quyết định tiếp theo để mua hoặc tái sử dụng các sản phẩm phần mềm đóng gói. Một số công việc đánh giá thực sự là một phần của các hoạt động thiết kế này, vì rằng nó đóng vai trò trong quyết định thiết lập quy trình. Đánh giá các sản phẩm phần mềm được mua được thực hiện riêng rẽ. Trong quá trình tích hợp hệ thống và kiểm tra sản phẩm cuối cùng, các mục cấu hình phần mềm được tích hợp với các phần mềm khác, và với các mục cấu hình phần cứng (xem ISO/IEC 12207). Hình 1 trình bày ngữ cảnh kỹ thuật hệ thống lớn cho đánh giá và mua sản phẩm.
Các ứng viên cho quá trình sử dụng và mua sản phẩm là sản phẩm phần mềm có thể được tích hợp vào hệ thống lớn hơn như các thành phần hoặc chúng có thể được sử dụng độc lập. Chúng được phân loại như sau:
a) Các sản phẩm phần mềm đóng gói thương mại;
b) Các sản phẩm phần mềm có sẵn được phát triển hoặc mua cho các ứng dụng khác, hoặc cho một dải rộng các ứng dụng chung;
c) Các sản phẩm phần mềm khách hàng đặt hoặc sửa đổi từ các sản phẩm phần mềm có sẵn.
Hình 1 – Ngữ cảnh kỹ thuật hệ thống cho đánh giá và mua sản phẩm phần mềm
Trong trường hợp các mục cấu hình phần mềm được tích hợp thành hệ thống lớn hơn, các yêu cầu phần mềm phải được xác định cho từng mục. Trong các trường hợp khác, các mục cấu hình hệ thống và phần mềm đồng nhất, và có thể được xem xét tương đương.
Các mục cấu hình phần cứng được mua có thể chứa phần mềm như hệ điều hành nằm trong phần sụn (như ROM, PROM…). Khi phần mềm đang có sẵn tạo thành một phần nguyên vẹn của phần cứng thì theo cách như vậy nó thường cần được đánh giá với các mục cấu hình phần cứng.
4.2.2 Các mức yêu cầu tính toàn vẹn
Nếu phần mềm trong tình trạng đối mặt với nguy cơ về tính an toàn, an ninh, rủi ro về tài chính, môi trường và xã hội của hệ thống trong các giới hạn cho phép thì mức độ toàn vẹn yêu cầu của nó phải được thiết lập và được soạn thảo chính xác trước khi mua hàng và đánh giá. Hướng dẫn cho quá trình xác định mức toàn vẹn được đưa ra trong ISO/IEC 15026. Mức toàn vẹn đạt được xác định phần mềm được gắn kết với quy trình đánh giá như thế nào.
4.2.3 Đặc tả các yêu cầu phần mềm
Các yêu cầu phần mềm phải được định nghĩa sử dụng mô hình chất lượng xác định thích hợp. Để đạt được mục đích này phải sử dụng mô hình chất lượng và các định nghĩa trong ISO/IEC 9126-1, trừ phi có lí do đặc biệt mới sử dụng mô hình khác. Mô hình này xác định sáu loại chủ yếu các đặc tính của phần mềm sử dụng: tính chức năng, tính tin cậy, tính khả dụng, tính hiệu quả, khả năng bảo trì và tính khả chuyển. Chúng sẽ được chia nhỏ thành các đặc tính nhỏ có các thuộc tính đo được hoặc đánh giá được.
Các yêu cầu phải được xác định trong phạm vi các phép đánh giá ngoài (các phép đánh giá ngoài được xác định trong TCVN 8702:2011) liên hệ trực tiếp với các nhu cầu của người sử dụng và phải được soạn thảo trong đặc tả yêu cầu. Soạn thảo nhu cầu người sử dụng có thể thay đổi từ việc tạo lập danh sách không chính thức các yêu cầu chức năng và hiệu năng yêu cầu đến việc chuẩn bị đặc tả yêu cầu hoàn chỉnh cho sản phẩm (hoặc hệ thống nếu sản phẩm được gắn vào). Đặc tả yêu cầu khi đó có thể tạo cơ sở cho các yêu cầu mua sản phẩm sử dụng trong giai đoạn mời thầu trong quy trình mua sản phẩm và là nền tảng cho đánh giá sản phẩm tiếp theo.
4.2.4 Các đánh giá được thực hiện bởi các bên khác
Phạm vi của quy trình đánh giá hiện thời có thể được giảm đi thông qua các truy cập tới các kết quả các hoạt động đánh giá được thực hiện bởi bên thứ hai hoặc thứ ba nếu như các kết quả đáng tin cậy. Các hoạt động đánh giá như vậy có thể bao gồm các chứng chỉ đã có trước, các đánh giá sản phẩm và/hoặc các đánh giá quy trình. Ví dụ:
– Các quá trình kỹ thuật phần mềm cho quá trình phát triển sản phẩm có thể được chuẩn hóa để thỏa mãn các yêu cầu của ISO/IEC 12207, ISO 9000-3, hoặc các tiêu chuẩn khu vực khác;
– Hệ thống chất lượng của nhà cung cấp từ đó phần mềm được phát triển có thể được chứng nhận với các yêu cầu TCVN ISO 9001:2008 bởi bên thứ ba;
– Sản phẩm phần mềm có thể được đánh giá bởi bên thứ hai hoặc thứ ba với các yêu cầu của TCVN 8706:2011 hoặc ISO/IEC 12119;
– Khả năng quá trình phần mềm của nhà cung cấp đối với việc phát triển sản phẩm được chấp thuận có thể được đánh giá bởi bên thứ ba với ISO/IEC 15504-8;
– Phần mềm có thể được đánh giá chức năng như một phần của giai đoạn phát triển hệ thống lớn hơn;
– Sản phẩm phần mềm có thể đã được đánh giá trước đó cho các ứng dụng khác với các yêu cầu tính toàn vẹn khác;
– Các đánh giá sản phẩm có thể đã được thực hiện bởi các bên khác trong tổ chức thông qua các hoạt động đánh giá chính thức hoặc không chính thức.
Các chi phí thêm và thời gian yêu cầu để đạt được và làm sáng tỏ các kết quả đánh giá ngoài cho ứng dụng mục tiêu có thể ảnh hưởng đến tính khả thi của phương pháp này. Nó có thể vẫn còn cần tư vấn với bên đánh giá hoặc người cung cấp để đạt được sự tin cậy thích đáng trong kết quả của các bên khác.
CHÚ THÍCH: Kết quả đánh giá của quá trình kỹ thuật phần mềm của nhà cung cấp, hệ thống chất lượng của nhà cung cấp, hoặc khả năng của nhà cung cấp riêng rẽ là không đủ tiêu chuẩn để thể hiện rằng sản phẩm phần mềm bao hàm các đặc tính chất lượng yêu cầu. Các phương pháp đánh giá chất lượng khác (như các phương pháp đặc biệt đo các nhân tố và thuộc tính của chất lượng thích hợp với các yêu cầu của người dùng cuối) cần phải thực hiện.
4.3 Hiệu chỉnh
Quy trình đánh giá có thể được áp dụng cho dải rộng các yêu cầu quy trình mua sản phẩm, các yêu cầu tính toàn vẹn, và mục tiêu của bên đánh giá. Ví dụ:
– Người mua gói phần mềm có thể mong muốn đánh giá gói phần mềm chỉ sử dụng ISO/IEC 12119;
– Người mua sản phẩm phần mềm có thể sử dụng TCVN 8706:2011 cho đánh giá độc lập;
– Khách hàng nhỏ hoặc cá nhân mua sản phẩm có thể yêu cầu quy trình đánh giá chính thức với tài liệu đánh giá tối thiểu;
– Đối với phần mềm tiêu dùng mục tiêu quy trình đánh giá sản phẩm có thể đơn giản là chọn, kiểm tra và mua một sản phẩm từ một số các sản phẩm tương tự. Quy trình mua sản phẩm chính thức khi đó được giảm xuống để rõ ràng việc mua sắm, và không bao gồm phần chuẩn bị hợp đồng.
Quy trình đánh giá phải có tính mềm dẻo để kết hợp tính duy nhất của ứng dụng, tránh các việc không cần thiết hoặc công việc vô giá trị, và cung cấp ý nghĩa thực tiễn trong thiết lập độ tin cậy cần thiết cho phần mềm. Mức độ toàn vẹn yêu cầu của phần mềm xác định phần lớn tính nghiêm ngặt và hợp thức của quy trình đánh giá.
Quy trình mua sản phẩm cũng có thể được hiệu chỉnh như cho quy trình đánh giá sử dụng hướng dẫn hiệu chỉnh đưa ra trong ISO/IEC 12207 và mức độ toàn vẹn yêu cầu cho sản phẩm phần mềm cụ thể được yêu cầu. Việc mua các hệ thống phần mềm hoàn chỉnh với các yêu cầu tính toàn vẹn cao sẽ thường dẫn đến một bộ đầy đủ các hoạt động và nhiệm vụ mua sản phẩm, cùng với các công việc và nhiệm vụ của quy trình cung cấp tương ứng, như chúng được đưa ra trong ISO/IEC 12207. Nói chung, nếu mức độ toàn vẹn tăng, tính nghiệm ngặt và số lượng các hoạt động và nhiệm vụ cùng đi với quy trình mua sản phẩm cũng tăng.
5 Đánh giá trong quy trình mua sản phẩm phần mềm đóng gói
Quy trình chung đánh giá sản phẩm phần mềm được xác định trong Tiêu chuẩn TCVN 8705:2011 bao gồm bốn bước chính, đặc biệt chúng được thực thi và hoàn thiện tập trung vào đánh giá chất lượng sản phẩm cuối khi mua sản phẩm đóng gói trong Tiêu chuẩn này. Tuy nhiên, điều đó không cản trở đánh giá các sản phẩm trung gian đối với các đặc tính chất lượng xác định. Do đó, chi tiết việc thực hiện các bước khác nhau, nhưng không mâu thuẫn, với các chi tiết mô tả trong tiêu chuẩn TCVN 8705:2011. Quy trình đánh giá được tổng kết trong bảng 1 dưới dạng các bước và các nhiệm vụ chính, cũng như các đầu vào và đầu ra.
Bảng 1 – Quy trình đánh giá khi mua sản phẩm đóng gói
Đầu vào |
Bước đánh giá |
Công việc chính |
Đầu ra |
Các yêu cầu hệ thống/ phần mềm | Thiết lập các yêu cầu đánh giá | Xác định mục tiêu, mục đích, và phạm vi. Xác định tính nghiêm ngặt của đánh giá. Xác định đầu vào đánh giá. Xác định đánh giá được tạo lập, hoặc được tạo lập bởi người khác. Xác định quy trình mua hàng tuân thủ theo và các yêu cầu đầu vào đánh giá được trao đổi với nhà cung cấp như thế nào. | Đặc tả các yêu cầu đánh giá |
Các yêu cầu đánh giá | Xác định đánh giá | Lựa chọn các phép đánh giá tương quan với các đặc tính của sản phẩm phần mềm. Thiết lập các mức phân hạng. Lựa chọn một bộ các phương pháp đánh giá hiệu quả nhất. Thiết lập các thủ tục để tổng hợp kết quả đánh giá của các đặc tính chất lượng khác nhau và các khía cạnh khác góp phần đánh giá chất lượng sản phẩm phần mềm trong môi trường đặc thù. | Đặc tả đánh giá |
Đặc tả đánh giá | Thiết kế đánh giá | Chuẩn bị kế hoạch đánh giá mô tả các phương pháp đánh giá, và lịch trình đánh giá. Xác định các điểm nối giữa các hoạt động đánh giá và các hoạt động mua hàng | Kế hoạch đánh giá |
Kế hoạch đánh giá | Thực hiện đánh giá | Hướng dẫn các hoạt động đánh giá được chọn, và phân tích và ghi nhận các kết quả để xác định tính thích hợp của sản phẩm phần mềm. Phân tích ảnh hưởng của các thiếu sót xác định và các tùy chọn để điều chỉnh sử dụng sản phẩm. Đưa ra kết luận trên các khía cạnh chấp nhận sản phẩm và quyết định cuối cùng mua hay không mua. | Các bản ghi và kết quả đánh giá |
5.1 Bước 1 – Thiết lập các yêu cầu đánh giá
5.1.1 Thiết lập mục đích và phạm vi đánh giá
Quy trình đánh giá phải thiết lập:
a) Một bộ các yêu cầu chất lượng phần mềm sử dụng mô hình chất lượng và định nghĩa trong ISO/IEC 9126-1, dựa vào chúng sản phẩm phần mềm có thể được đánh giá khách quan phù hợp cho sử dụng;
b) Độ ưu tiên hợp lí phải được đưa ra cho các đặc tính chất lượng phần mềm;
c) Cơ sở hệ thống cho đánh giá thích hợp với mức độ toàn vẹn của ứng dụng, chúng bao hàm các yêu cầu thiết lập như mức độ nghiêm ngặt hoặc chi tiết yêu cầu trong các hoạt động đánh giá, cũng như các đầu vào, đầu ra quy trình đánh giá;
CHÚ THÍCH: Hình 2 cung cấp lược tả quy trình đánh giá sản phẩm phần mềm. Nó chỉ ra các quan niệm khác nhau của các đầu vào quy trình đánh giá và các kết quả đầu ra từ quy trình đánh giá, từ quan điểm của người mua sản phẩm.
d) Quá trình mua hàng được thực hiện tiếp theo và các yêu cầu đầu vào đánh giá được liên kết với người cung cấp như thế nào;
e) Phạm vi, mục đích và mục tiêu của đánh giá bằng các xem xét:
• sản phẩm phần mềm sẽ được sử dụng cho ứng dụng cụ thể, cho một tập các ứng dụng cụ thể, hoặc cho một dải chung các ứng dụng hay không;
• có hay không bất cứ đánh giá nào thực hiện bởi người thứ hai hoặc thứ ba, hoặc có hay không bất cứ hoạt động đánh giá nào được lập kế hoạch thực hiện sau này.
5.1.2 Xác định các yêu cầu đánh giá
Đặc tả các yêu cầu đánh giá phải xác định:
a) Người sử dụng và mục tiêu, nhiệm vụ, và các đặc tính của họ và môi trường sử dụng cho sản phẩm;
b) Mức độ toàn vẹn của ứng dụng phần mềm (rủi ro xuất hiện trong trường hợp phần mềm lỗi) và do đó mức độ nghiêm ngặt yêu cầu cho quy trình đánh giá;
c) Các yêu cầu điều chỉnh (tài liệu nào cần để cung cấp điều chỉnh (nếu có) với đảm bảo chất lượng sản phẩm);
d) Các giới hạn và giao diện của sản phẩm, bao gồm các yêu cầu giao diện (như loại dữ liệu đi qua giao diện, định dạng dữ liệu, cơ cấu truy nhập giao diện, xử lí sự cố/ lỗi, các vấn đề đồng bộ, các vấn đề hoạt động giao tiếp, các phụ thuộc và chuyển đổi trạng thái giao diện) của sản phẩm phần mềm (xem ISO/IEC 9126-1);
e) Các yêu cầu tích hợp nếu sản phẩm là một phần của hệ thống lớn yêu cầu tích hợp với các thành phần hoặc sản phẩm khác;
f) Các yêu cầu chất lượng phần mềm bao gồm:
– phân biệt giữa các yêu cầu bắt buộc và tùy chọn;
– tất cả các giả thiết, ngoại lệ, giới hạn, loại trừ, hoặc các vấn đề chưa được giải quyết cần thiết làm sáng tỏ hoặc hiểu các yêu cầu;
– các yêu cầu của người sử dụng cho tất cả các đặc tính chất lượng quan trọng và độ ưu tiên của chúng (ví dụ như nếu khả năng bảo trì được xem xét là quan trọng thì xác định các yêu cầu khả năng bảo trì cụ thể);
– tất cả các ràng buộc thiết kế và môi trường; ví dụ như các giới hạn chức năng hoặc hiệu năng áp đặt bởi người sử dụng sản phẩm phần mềm, mức độ và tính phức tạp của tích hợp sản phẩm phần mềm với các phần mềm đang tồn tại khác, phần mềm khách hàng, và phần cứng trong ứng dụng của người sử dụng;
– tất cả các ràng buộc quản lý dự án; ví dụ như tính hiệu dụng của tài nguyên và tính thành thạo chuyên môn tạo lập các hoạt động đánh giá, hạn định cho phép của lịch trình và ngân sách, các phụ thuộc có khả năng hoặc các rủi ro, các giả thiết chính, hoặc các giả thiết về nỗ lực đánh giá;
– cơ sở pháp lí của việc sử dụng mô hình chất lượng khác ngoài các quy trình trong tiêu chuẩn ISO/IEC 9126-1.
g) Các dịch vụ nhà cung cấp được đánh giá; ví dụ như khả năng hỗ trợ, khả năng phát triển ứng dụng, và khả năng đào tạo;
h) Các yêu cầu đặc biệt được đánh giá; ví dụ như các vấn đề tính khả thi kỹ thuật cụ thể hoặc các vấn đề thực hiện thiết kế;
i) Các yêu cầu đánh giá nhất quán với nhau (ví dụ như không có các yêu cầu mâu thuẫn nhau) và đồng nhất với mức độ toàn vẹn của ứng dụng;
j) Sản phẩm sẽ được sử dụng lại trong các ứng dụng tương lai hay không và tài liệu cần thiết để hỗ trợ bất cứ đánh giá tương lai nào của sản phẩm;
k) Quy trình mua hàng, và thông tin yêu cầu từ nhà cung cấp trong quá trình đấu thầu;
I) Các đánh giá được thực hiện bởi bên thứ hai hoặc thứ ba khác mà nó có thể được sử dụng để giảm nguồn lực đánh giá cho sản phẩm.
CHÚ THÍCH: Mức độ chi tiết và phức tạp của các đặc tả yêu cầu đánh giá trực tiếp ảnh hưởng tới mức độ phức tạp của đánh giá, ví dụ, đánh giá chỉ dựa trên các yêu cầu cơ bản không thể được xem xét như đánh giá đầy đủ, mặc dù các kết quả được sử dụng trực tiếp cho các công việc tiếp theo trong các giai đoạn khác, ngăn chặn trước các vấn đề, hoặc loại bỏ sản phẩm hoặc nhà cung cấp phần mềm nào đó. Chúng thường được thực hiện trước các hoạt động đánh giá chính như một phần của thiết kế thích hợp hoặc hoạt động lập kế hoạch. Một số công việc đánh giá cũng có thể được yêu cầu trước khi các yêu cầu được kết thúc.
Tổng quan đầu vào đánh giá
Tổng quan sản phẩm
Tổng quan các kết quả đánh giá
Hình 2 – Khái quát quy trình đánh giá sản phẩm phần mềm từ cách nhìn của người mua sản phẩm
5.2 Bước 2 – Xác định đánh giá
Đặc tả đánh giá phải được soạn thảo sao cho quy trình đánh giá có thể được lặp lại bởi nhân viên chất lượng thích hợp với các kết quả có thể lặp lại.
5.2.1 Lựa chọn các phép đánh giá
Đặc tả đánh giá phải xác định:
a) Các đặc tính của sản phẩm được đánh giá;
b) Các phép đánh giá ngoài liên quan đến các khía cạnh đo chất lượng khi phần mềm được sử dụng;
c) Các phép đánh giá chất lượng sử dụng liên quan đến quan điểm của người sử dụng về chất lượng của hệ thống chứa phần mềm;
d) Các tiêu chuẩn đầy đủ cho các phép đánh giá để mô tả dải chấp nhận của chúng (tức là cần bao nhiêu công việc vận hành để cung cấp mức độ bảo đảm hợp lí cho đặc tính chất lượng cho trước và mức toàn vẹn cho trước),
e) Bất cứ mô đun đánh giá đóng gói nào;
f) Mức độ bao hàm tương quan đến các yêu cầu đánh giá cần thiết sau khi soát xét bất kì một đánh giá trước đó nào được tạo lập bởi người khác;
g) Bản danh sách kiểm tra được trả lời từ đánh giá;
h) Danh sách các ví dụ có thể giúp trả lời các câu hỏi;
i) Trường hợp kiểm tra mẫu được sử dụng;
j) Dữ liệu được thu thập và phân tích, và khuôn dạng của chúng;
k) Các phương pháp đánh giá cụ thể được sử dụng, chúng bao gồm soát xét hoặc đánh giá một hoặc một số các khoản mục sau:
– người sử dụng sản phẩm phần mềm và tài liệu kỹ thuật (bao gồm cả tài liệu on-line);
– đánh giá sản phẩm phần mềm dựa trên các khóa học và đào tạo của nhà cung cấp;
– quá trình kỹ thuật phần mềm, bao gồm cả các sản phẩm phần mềm trung gian;
– lịch sử vận hành sản phẩm với nhà cung cấp;
– lịch sử vận hành sản phẩm với khách hàng;
– hệ thống năng lực, hỗ trợ, và chất lượng của nhà cung cấp;
– các phương pháp đánh giá nguyên mẫu hoặc các phương pháp khác;
– các danh sách thiếu sót của sản phẩm và thông tin liên quan (thông thường đưa trên các trang Web).
l) Các phương pháp để đánh giá kết quả đánh giá;
m) Các phương pháp phù hợp của xếp hạng đánh giá để cho phép lựa chọn, khi lựa chọn sản phẩm từ nhiều sản phẩm tương tự;
n) Bất cứ một hệ thống phân hạng nào tiện lợi cho việc so sánh nhiều sản phẩm phần mềm. Hệ thống phân hạng có thể được đánh trọng số tương ứng với mức ưu tiên của đặc tính chất lượng.
5.2.2 Lựa chọn phương pháp đánh giá
Tổ hợp các phương pháp đánh giá phải được xác định để cho phép lựa chọn sản phẩm hoặc thiết lập tính thích hợp của sản phẩm khi sử dụng. Các lĩnh vực được đánh giá bao gồm:
a) Có hay không một số các nhận định có thể mâu thuẫn lẫn nhau (ví dụ như “Chi phí của các phương pháp được chọn có nằm trong ngân sách cho phép?” có thể không nhất quán với “Các phương pháp có bao hàm hết tất cả các yêu cầu đánh giá hay không?”). Trong trường hợp này tùy thuộc vào bên đánh giá quyết định các yếu tố thỏa hiệp cần thiết dựa trên mức ưu tiên của các yêu cầu đánh giá;
b) Đánh giá có cung cấp bao hàm đầy đủ hoặc phạm vi khi kết hợp các phương pháp được chọn hay không khi xem xét:
– làm thế nào để thể hiện rằng phần mềm đáp ứng các đặc tả của nó;
– chồng chéo bao hàm của các phương pháp để cung cấp thêm độ tin cẩn;
– một bộ các hoạt động, toàn bộ, có cung cấp bảo đảm ở mức độ chấp nhận được sao cho có mức bao hàm toàn thể cho các đặc tính chất lượng phần mềm liên quan hay không;
– mức độ các phương pháp bổ sung lẫn nhau;
– tính hiệu quả và tính khách quan của mỗi phương pháp khi nhằm đến sự đa dạng của các đặc tính;
– sự đa dạng của các giải pháp phân biệt trong các phương pháp đánh giá (ví dụ như một số phương pháp dựa trên soát xét, phân tích, và kiểm tra);
– thiết lập lòng tin cho bất cứ hoạt động đánh giá nào trong ứng dụng mà về cơ bản sẽ được thực hiện như một phần của toàn bộ vòng đời phát triển hệ thống;
– tin cậy đánh giá tạo lập bởi người khác;
c) Sử dụng các hoạt động đánh giá sơ bộ “không chính thức” như soát xét hoặc khảo sát hoặc kinh nghiệm giai thoại của người sử dụng, các soát xét sản phẩm trên tạp chí thương mại, tài liệu sử dụng sản phẩm truy cập được, hoặc kho lưu trữ dữ liệu các soát xét của sản phẩm, để thu hẹp phạm vi lựa chọn sản phẩm được xem xét chức năng phù hợp cho đánh giá sau này.
6.2.3 Đánh giá thực hiện bởi các bên khác
Trước khi tin cậy các đánh giá thực hiện bởi các bên khác, cần phải xem xét các vấn đề sau:
a) Đánh giá có nhằm tới các yêu cầu đánh giá ở một mức độ nghiêm ngặt nhất quán với mức toàn vẹn của ứng dụng hay không;
b) Báo cáo đánh giá có xác định phiên bản của sản phẩm phần mềm được đánh giá, giới hạn của đánh giá, tiêu chuẩn quyết định được sử dụng, và các kết luận đạt được hay không;
c) Báo cáo đánh giá có xác định bất kì thiếu sót nào trong sản phẩm phần mềm hoặc quá trình kỹ thuật phần mềm, có khuyến nghị bất kì hành động sửa chữa cho các thiếu sót này, và hành động sửa chữa có được thực hiện hay không;
d) Bên đánh giá có đủ trình độ thích hợp hay không, bao gồm:
– kinh nghiệm trong việc thực hiện đánh giá và phân tích;
– kinh nghiệm trong chất lượng phần mềm liên quan đến các tiêu chuẩn quốc tế được chấp thuận;
– trình độ trong các vấn đề kỹ thuật phần mềm;
– hoàn toàn độc lập với nhà cung cấp.
5.3 Bước 3 – Thiết kế đánh giá
Kế hoạch đánh giá sản phẩm phải xác định:
a) Nhà cung cấp hoặc bên thứ ba có mong muốn và sẵn sàng cung cấp truy cập vào các tài liệu, thiết bị, công cụ, phần mềm, khóa học và/hoặc đào tạo, và chi phí đi kèm được yêu cầu hay không;
b) Bất kì điều kiện nào liên quan với việc cung cấp truy cập vào bất kì thông tin mật và độc quyền nào;
c) Nhà cung cấp hoặc bên thứ ba có mong muốn và sẵn sàng cung cấp truy cập tới các cá nhân có trình độ chuyên môn đúng đắn để trả lời các câu hỏi không, và chi phí cho các việc đó thế nào, kể cả chi phí đi lại;
d) Trình độ chuyên môn đòi hỏi từ bên đánh giá để thiết lập đánh giá dựa trên các yêu cầu đánh giá, và bất kì các chi phí nào liên quan đến việc đạt được trình độ chuyên môn cụ thể này;
e) Bất kì kiểm tra sơ bộ nào yêu cầu để thiết lập cơ sở sản phẩm phù hợp với việc kiểm tra trong mọi cấp độ;
f) Bất kì chi phí nào liên quan đến việc cung cấp môi trường kiểm tra (ví dụ như phần cứng kiểm tra, thiết bị và các công cụ hỗ trợ, nhân vật đặc biệt) để tạo lập đánh giá;
g) Trách nhiệm đánh giá và lịch trình thời gian yêu cầu;
h) Bất kì một hạn chế hay thiếu sót nào trong phương pháp đánh giá để cung cấp đảm bảo chất lượng, và hạn chế hoặc thiếu sót này có được đưa vào trong kế hoạch hay không; ví dụ như phương pháp đánh giá không có khả năng bao phủ toàn bộ các đặc tính nhỏ cho một đặc tính chất lượng xác định;
i) Bất kì sự phụ thuộc lẫn nhau nào giữa các các phương pháp đánh giá khác nhau được sử dụng; tức là các phụ thuộc thứ tự (thông tin thu được trong một kiểm tra có thể hữu dụng trong các lần khác), thiết lập trình tự tối ưu cho các phương pháp đánh giá;
j) Nguồn tài nguyên yêu cầu, chi phí cho toàn bộ đánh giá, và chi phí cho mỗi phương pháp đánh giá;
k) Các điểm nối giữa các hoạt động đánh giá và hoạt động mua sản phẩm;
I) Các điểm quyết định trong quy trình đánh giá mà nó xác định khi nào và tại sao đánh giá phải được xem như hoàn thành (tức là tiêu chuẩn chấp nhận hoặc loại bỏ) và phải được dừng lại;
m) Các vấn đề sau cho mỗi hoạt động đánh giá được lập kế hoạch;
– các thủ tục và kỹ thuật phải tuân theo;
– các đầu vào và đầu ra thông tin và tài liệu yêu cầu;
– bất kì yêu cầu khuôn dạng và nội dung nào trong bất kì tài liệu đưa ra nào;
n) Lí do căn bản, biện minh, và các giả thiết đằng sau bất kì một quyết định không bình thường hoặc ngoại lệ nào được đưa ra trong quá trình lập kế hoạch đánh giá được ghi lại;
o) Các công cụ đánh giá;
p) Các thủ tục để phát triển và xác nhận các phép đánh giá, và để chuẩn hóa quy trình đánh giá, các phép đánh giá và hệ đo;
CHÚ THÍCH 1: ISO/IEC 14598-6 định nghĩa khái niệm của mô đun đánh giá thu thập một cách có hệ thống tất cả các thông tin cần thiết đi thực hiện đánh giá của các khía cạnh cụ thể của các đặc tính chất lượng áp dụng kỹ thuật hoặc phương pháp đánh giá cụ thể.
CHÚ THÍCH 2: Trong quá trình lập lịch các phương pháp đánh giá, điều quan trọng là phải xác nhận mức độ phụ thuộc lẫn nhau cao giữa các phương pháp đánh giá khác nhau, tức là thông tin thu được bởi một phương pháp có thể ảnh hưởng tâm điểm của các phương pháp khác. Bởi vì bản chất của đánh giá là lặp lại, các vấn đề có thể xuất hiện lại khi thông tin tăng lên Do đó, kế hoạch đánh giá có vẻ như sẽ bị thay đổi khi đánh giá được tạo lập. Ví dụ, nó có thể chung trong các mức độ chi tiết hơn của đánh giá được xem xét như không cần thiết, hoặc như một yêu cầu bổ sung, một khi đánh giá tiến triển.
CHÚ THÍCH 3: Đánh giá các sản phẩm phần mềm có thể được thực hiện trong các giai đoạn tại các điểm khác nhau trong vòng đời phát triển, hoặc tất cả cùng một lúc, tại một điểm trong vòng đời. Các cá nhân hay nhóm khác nhau có thể có trách nhiệm thực hiện các phần khác nhau của đánh giá. Khi đánh giá được hoàn thành trong các giai đoạn, các bước của hoạt động đánh giá được nhắc lại trên mỗi giai đoạn cho đến khi không còn công việc nào yêu cầu.
5.4 Bước 4 – Thực hiện đánh giá
5.4.1 Thực hiện phương pháp đánh giá
a) Đánh giá phải được thực hiện, ghi chép và phân tích cho:
– thiết lập cấp độ tin cẩn thích hợp sao cho sản phẩm phần mềm có khả năng đáp ứng các yêu cầu đánh giá;
– xác minh bất kì thiếu sót cụ thể nào tương ứng với các yêu cầu đánh giá và bất kì đánh giá bổ sung nào cần thiết để xác định phạm vi của các thiếu sót này;
– xác định bất kì một hạn chế hay điều kiện đặc biệt nào trong khi sử dụng sản phẩm phần mềm;
– xác định các điểm yếu hoặc điểm bỏ sót nào trong bản thân đánh giá và bất kì đánh giá bổ sung nào cần thiết;
– xác định bất kì tùy chọn nào cho việc sử dụng sản phẩm phần mềm không được bao hàm bởi đánh giá;
b) Các bản ghi thực hiện đánh giá phải xác định.
– thực hiện đánh giá theo các thủ tục được xác định trong kế hoạch đánh giá;
– thực hiện từng bước thủ tục đánh giá (bao gồm dữ liệu sử dụng, quá trình cài đặt, và bất kì thông tin trạng thái nào), các kết quả đánh giá (trả lời tất cả các câu hỏi và các tham chiếu tới nguồn các câu trả lời), và số phiên bản của sản phẩm phần mềm;
– bất kì hạn chế, ràng buộc, thiếu sót, hoặc ngoại trừ trong hoạt động đánh giá, bao gồm tác động của chúng trong sử dụng, cấu hình, sửa đổi, hoặc bảo trì tổng thể sản phẩm phần mềm trong suốt quá trình thời gian; bên đánh giá và năng lực của họ;
– bất kì sự khác nhau nào giữa phiên bản sản phẩm được đánh giá và các đầu vào đánh giá tương ứng; tức là tài liệu hoặc các khóa học;
– giải pháp hoặc vòng tránh trong các sự kiện lỗi;
5.4.2 Phân tích kết quả đánh giá
Các bản ghi để phân tích các hoạt động đánh giá phải xác định:
a) Mỗi thiếu sót, bất kì phân tích liên quan, và mỗi thiếu sót đã được giải quyết như thế nào. Cách giải quyết của mỗi thiếu sót có thể bao gồm các yếu tố sau:
– một trong những phương pháp đánh giá khác đã cung cấp đảm bảo rằng thiếu sót là không lớn; ví dụ như lịch sử khai thác rộng có thể hoàn chỉnh cho quá trình kỹ thuật phần mềm thiếu sót;
– việc vòng tránh thỏa đáng có thể được dùng làm giảm nhẹ ảnh hưởng của thiếu sót; ví dụ như sửa đổi sản phẩm, cô lập hoặc loại bỏ chức năng không cần thiết, tạo lại các yêu cầu thiết kế bị bỏ qua sử dụng cơ cấu ngược;
– yêu cầu gốc không phải là bắt buộc và thiếu sót có thể được chấp nhận;
– thiếu sót là chấp nhận được với điều kiện việc sử dụng sản phẩm phần mềm sẽ được kiểm soát bởi các điều kiện hoặc hạn chế cụ thể;
– công việc đánh giá bổ sung được yêu cầu để giải quyết thiếu sót hoặc các chênh lệch trong đánh giá;
b) Bất kì đánh giá bổ sung nào được thực hiện để giải quyết bất kì một thiếu sót xác định nào:
– xác định phạm vi hoặc ảnh hưởng của thiếu sót;
– thiết lập độ tin cậy rằng không có thiếu sót;
– xác minh rằng việc vòng tránh là khả thi và/hoặc phù hợp và chấp nhận được;
– xác minh rằng việc hoạt động đúng và chấp nhận được của phần mềm một khi thay đổi thiết kế hoặc thay đổi đã được thực hiện để sửa lỗi;
c) Trong trường hợp cần hạn chế hoặc kiểm soát sử dụng sản phẩm phần mềm, nếu hạn chế là:
– cản trở sản phẩm phần mềm đáp ứng các yêu cầu bắt buộc của ứng dụng;
– ảnh hưởng tới thiết kế ứng dụng, ngân sách, và lịch trình thời gian;
– yêu cầu công việc đánh giá thêm;
– đưa ra bất kì khả năng hỏng hóc nào trong ứng dụng;
d) Bất cứ ngoại lệ nào từ phạm vi của đánh giá và/hoặc hạn chế trong kết quả cho từng đánh giá, chẳng hạn như:
– “Đánh giá này không bao hàm soát xét chi tiết chức năng của sản phẩm” hoặc
– “Sản phẩm phần mềm này được cho rằng đạt chất lượng đối với mức toàn vẹn yêu cầu trong điều kiện đánh giá toàn bộ các chức năng yêu cầu cho sản phẩm được thực hiện thành công.”
e) Các kết quả tích hợp của tất cả các hoạt động đánh giá cho phép kết luận toàn diện cho đánh giá sản phẩm phần mềm được sản xuất.
5.4.3 Rút ra kết luận
Kết luận phải phát biểu rõ sản phẩm phần mềm có xứng đáng và thích hợp để sử dụng trong ứng dụng dự định hay không, trong khi xem xét mức độ toàn vẹn của ứng dụng và các yêu cầu đánh giá thực tế. Nếu không thể sử dụng sản phẩm phần mềm như nó đang sẵn có, do các thiếu sót được phát hiện hoặc do thiếu thông tin đánh giá, thì cần phải đưa ra các khuyến nghị để thực hiện đánh giá tiếp theo hoặc để kiểm soát hoặc giới hạn sử dụng sản phẩm phần mềm trong ứng dụng mục tiêu của nó.
Các kết luận có thể được chính thức hóa sử dụng “báo cáo tuân thủ yêu cầu” có thể mô tả cho mỗi yêu cầu cụ thể các đặc điểm, chức năng, dịch vụ, của sản phẩm phần mềm sử dụng để đáp ứng yêu cầu đó, và các phương pháp đánh giá cung cấp sự tin cẩn thích đáng sao cho đáp ứng được yêu cầu. Các chiến lược thiết kế tiềm năng như áp dụng tính đa dạng thiết kế, dự phòng trong cấu hình, kiểm tra tính toàn vẹn của giao tiếp và các kỹ thuật phục hồi có thể bù vào cho các thiếu sót hoặc các lỗi tiềm năng của sản phẩm phần mềm.
Có khả năng rằng đánh giá có thể đưa đến quyết định không chấp nhận sản phẩm để sử dụng, hoặc quyết định không tuân theo các yêu cầu đánh giá, và trong khuyến nghị đánh giá lại các giải pháp thay thế khác. Quyết định cuối cùng là mua hoặc không mua.
Quyết định mua khi đó có thể dẫn đến hợp đồng mua sản phẩm phần mềm với khả năng có đánh giá bổ sung dưới dạng kiểm tra chấp thuận sản phẩm.
Quyết định không mua sản phẩm có thể đưa đến các khả năng khác bao gồm sửa đổi sản phẩm phần mềm, phát triển sản phẩm phần mềm khách hàng, hoặc thay đổi các yêu cầu.
6 Đánh giá khi mua phần mềm khách hàng và sửa đổi phần mềm sẵn có
Mục này tập trung vào ứng dụng của quy trình đánh giá khi mua sản phẩm phần mềm khách hàng hoặc sửa đổi phần mềm đang có.
6.1 Bước 1 – Thiết lập các yêu cầu đánh giá
Quá trình thiết lập yêu cầu đánh giá được định nghĩa trong phần bước 1 của mục 5.1 cũng áp dụng trong trường hợp này. Các yêu cầu đánh giá tạo ra cơ sở cho các yêu cầu mua sản phẩm mà nó được đưa ra như một phần của yêu cầu đề nghị tới các nhà cung cấp được lựa chọn sơ bộ. Đối với việc sửa đổi phần mềm sẵn có, đánh giá phải tập trung đầu tiên đến các phần thay đổi của sản phẩm phần mềm và các giao diện của chúng.
Đánh giá sơ bộ phải được thực hiện cho các nhà cung cấp được lựa chọn sơ bộ dựa trên cơ sở khả năng của họ, chương trình chất lượng và quá trình kỹ thuật phần mềm ưu tiên hướng tới yêu cầu đề nghị.
6.2 Bước 2 – Xác định đánh giá
Mục 5.2 đã xác định đánh giá cho phần mềm đóng gói, và cũng áp dụng cho đánh giá phần mềm khách hàng và sửa đổi phần mềm đang có sẵn. Tuy nhiên, phép đo bổ sung được yêu cầu như một phần của quá trình phát triển của nhà cung cấp để dự báo chất lượng sản phẩm cuối dựa trên đo chất lượng các sản phẩm trung gian. TCVN 8707:2011 cung cấp các yêu cầu và hướng dẫn cho việc đo chất lượng sản phẩm trung gian trong quá trình phát triển.
6.3 Bước 3 – Thiết kế đánh giá
Mục 5.3 áp dụng cho quy trình mua sản phẩm phần mềm khách hàng và sửa đổi phần mềm có sẵn với các xem xét bổ sung sau.
Lựa chọn nhà cung cấp trong quá trình đấu thầu có thể yêu cầu nhà cung cấp nâng cấp kỹ thuật phần mềm hoặc quá trình bảo trì cho các yêu cầu để đạt được các yêu cầu tính toàn vẹn mục tiêu ưu tiên hướng tới quá trình phát triển phần mềm hay sửa đổi.
Các hoạt động đánh giá được yêu cầu khi đó sẽ trở thành một phần của quá trình hoạt động của nhà cung cấp, tức là trong quá trình kiểm soát các hoạt động phát triển, xác minh, soát xét chung và kiểm định, kiểm tra và xác nhận của nhà cung cấp. Các yêu cầu này được xác định trong kế hoạch chất lượng hay phát triển mà nhà cung cấp được yêu cầu tuân theo. Người mua sản phẩm giám sát việc thực hiện kế hoạch của nhà cung cấp và thiết lập các yêu cầu cho kế hoạch trên thỏa thuận hợp đồng giữa nhà cung cấp và người mua sản phẩm.
6.4 Bước 4 – Thực hiện kế hoạch
Các yêu cầu cho việc thực hiện đánh giá trong mục 5 4 cũng được áp dụng ở đây, ngoài việc đánh giá thực tế được thực hiện thông qua các hoạt động của nhà cung cấp và giám sát của người mua sản phẩm theo với kế hoạch chất lượng. Kiểm chấp nhận sản phẩm phần mềm thành công là tiêu chuẩn cần trước khi sản phẩm giao cho người mua sản phẩm. Người mua sản phẩm có thể quyết định thực thi các sửa đổi bổ sung cho sản phẩm phần mềm hoặc chỉ ra các thiếu sót tìm thấy trong đánh giá, trước khi sử dụng sản phẩm.
THƯ MỤC TÀI LIỆU THAM KHẢO
[1] ISO 14598-1:1998 – Information Technology – Software Product Evaluation – Part 1: General Overview.
[2] ISO 14598-2:1998 – Information Technology – Software Product Evaluation – Part 2: Planning and management.
[3] ISO 14598-4: 1999 – Information Technology – Software Product Evaluation – Part 4: Process for acquirers.
MỤC LỤC
1 Phạm vi áp dụng
2 Tài liệu viện dẫn
3 Thuật ngữ và định nghĩa
4 Đánh giá sản phẩm phần mềm – Các xem xét tổng quan
4.1 Liên hệ giữa các quy trình đánh giá và mua sản phẩm
4.2 Các đầu vào quy trình đánh giá
4.2.1 Các yêu cầu hệ thống
4.2.2 Các mức yêu cầu tính toàn vẹn
4.2.3 Đặc tả các yêu cầu phần mềm
4.2.4 Các đánh giá được thực hiện bởi các bên khác
4.3 Hiệu chỉnh
5 Đánh giá trong quy trình mua sản phẩm phần mềm đóng gói
5.1 Bước 1 – Thiết lập các yêu cầu đánh giá
5.1.1 Thiết lập mục đích và phạm vi đánh giá
5.1.2 Xác định các yêu cầu đánh giá
5.2 Bước 2 – Xác định đánh giá
5.2.1 Lựa chọn các phép đánh giá
5.2.2 Lựa chọn phương pháp đánh giá
5.2.3 Đánh giá thực hiện bởi các bên khác
5.3 Bước 3 – Thiết kế đánh giá
5.4 Bước 4 – Thực hiện đánh giá
5.4.1 Thực hiện phương pháp đánh giá
5.4.2 Phân tích kết quả đánh giá
5.4.3 Rút ra kết luận
6 Đánh giá khi mua phần mềm khách hàng và sửa đổi phần mềm sẵn có
6.1 Bước 1 – Thiết lập các yêu cầu đánh giá
6.2 Bước 2 – Xác định đánh giá
6.3 Bước 3 – Thiết kế đánh giá
6.4 Bước 4 – Thực hiện kế hoạch
Thư mục tài liệu tham khảo
TIÊU CHUẨN QUỐC GIA TCVN 8708:2011 VỀ CÔNG NGHỆ THÔNG TIN – ĐÁNH GIÁ SẢN PHẨM PHẦN MỀM – PHẦN 4: QUY TRÌNH CHO NGƯỜI MUA SẢN PHẨM | |||
Số, ký hiệu văn bản | TCVN8708:2011 | Ngày hiệu lực | |
Loại văn bản | Tiêu chuẩn Việt Nam | Ngày đăng công báo | |
Lĩnh vực |
Lĩnh vực khác |
Ngày ban hành | |
Cơ quan ban hành | Tình trạng | Còn hiệu lực |
Các văn bản liên kết
Văn bản được hướng dẫn | Văn bản hướng dẫn | ||
Văn bản được hợp nhất | Văn bản hợp nhất | ||
Văn bản bị sửa đổi, bổ sung | Văn bản sửa đổi, bổ sung | ||
Văn bản bị đính chính | Văn bản đính chính | ||
Văn bản bị thay thế | Văn bản thay thế | ||
Văn bản được dẫn chiếu | Văn bản căn cứ |