Nghĩa độ tin cậy:

Một phần của tài liệu CÂU HỎI ÔN TẬP KỸ NGHỆ PHẦN MỀM NÂNG CAO (Trang 57 - 59)

+ MTBF là cách đo hữu ích hơn nhiều so với tỷ số “số khiếm khuyết”/KLOC (LOC-MT – Fa Fc -Fd

MT

Line Of Code) vì người dùng cuối cùng quan tâm tới những thất bại chứ không quan tâm đếm lỗi (nhà nghiên cứu).

+ Các lỗi trong chương trình không có cùng mức độ (số lỗi chỉ cho một chỉ số nhỏ về độ tin cậy): Phần lớn lỗi tìm thấy sau khi vận hành 14 tháng, Rất ít lỗi chỉ được phát hiện sau hàng chục năm; Các lỗi còn lại với MTBF khoảng 18-24 tháng.

- Độ sẵn sàng phần mềm là xác suất để chương trình vận hành đúng với yêu cầu ở các thời điểm đã định và được tính như sau:

MTTF/(MTTF + MTTR) x100%

- Ý nghĩa:

- Là độ đo gián tiếp về khả năng bảo trì được (số này càng gần 100 là đã bảo trì tốt)

Câu 33. Có những mô hình độ tin cậy nào? Nó dựa trên tham biến nào và trên giả thiết nào? Mô hình độ tin cậy gieo hạt dựa trên ý tưởng nào? Mục tiêu để làm gì?

Có hai mô hình độ tin cậy phần mềm:

- Mô hình tiên đoán độ tin cậy như là một hàm của thời gian lịch

- Mô hình tiên đoán độ tin cậy như là một hàm của thời gian xử lý đã trôi qua (thời gian vận hành của CPU). Musa cho rằng loại này tốt hơn.

Các mô hình độ tin cậy phần mềm dựa trên các giả thiết:

- Thời gian gỡ lỗi giữa các xuất hiện sai có phân phối mũ với nhịp độ xuất hiện sai, nhịp độ này tỷ lệ thuận với số các lỗi còn lại

- Mỗi lỗi bị phát hiện sẽ được loại trừ ngay lập tức và số lỗi còn lại giảm đi 1 - Nhịp độ thất bại giữa các lỗi là không thay đổi

Các giả thiết này còn phải bàn: vì một lỗi được loại trừ thì có thể nhiều lỗi khác lại được sinh ra.

Một lớp các mô hình độ tin cậy phần mềm dựa vào các đặc trưng nội tại của một chương trình và tính toán số dự đoán các sai tồn tại trong phần mềm

Các mô hình này dựa trên các quan hệ định lượng như một hàm của độ đo tính phức tạp, chúng liên kết thiết kế đặc chủng hoặc các thuộc tính hướng mã của chương trình với “một ước định số khởi phát các lỗi được tin rằng có trong chương trình đã cho”

Mô hình độ tin cậy gieo hạt

- Ý tưởng: Gieo một cách ngẫu nhiên một số các lỗi (K) hiệu chuẩn (calibration) vào một chương trình; sau đó đem kiểm thử (bằng một số ca kiểm thử), tính xác suất tìm

được j lỗi trong tập J lỗi xem như tương ứng với xác suất tìm được k lỗi đã gieo trong K

lỗi đã nhúng vào chương trình.

j/J=k/K (tỉ lệ lỗi đã phát hiện)

- Mục đích:

+ Dùng như một chỉ báo của độ tin cậy phần mềm;

+ Hoặc một cách thực tiễn hơn như một độ đo “năng lực phát hiện sai” của một tập

hợp các ca kiểm thử.

Câu 34. Độ an toàn phần mềm là cái gì? Có những phương pháp nào để phân tích độ an toàn?

An toàn phần mềm là một hoạt động bảo đảm chất lượng phần mềm tập trung vào

việc minh định đánh giá các mối nguy hiểm tiềm ẩn có thể gây ảnh hưởng phản tác

dụng thậm chí là gây ra thất bại của toàn hệ thống. (adsbygoogle = window.adsbygoogle || []).push({});

- Quá trình mô hình hoá và phân tích được thực hiện như một pahanf của an toàn phần mềm nhằm phát hiện vấn đề.

- Thoạt tiên, minh định và đánh giá có phê phán các rủi ro, các mối nguy hiểm tiềm ẩn. Sau đó dùng các kĩ thuật phân tích để đánh giá độ nghiêm trọng và xác suất xuất hiện.

- Để có hiệu quả, cần phải phân tích phần mềm trong ngữ cảnh của toàn hệ thống. Có thể dùng các kĩ thuật phân tích như: phân tích cây lỗi, logic thời gian thực, mô hình lưới PETRY.

Các phương pháp phân tích an toàn

- Phân tích cây lỗi:

+ Dựng lên một mô hình đồ thị của các tổ hợp tuần tự và song song các sự kiện dẫn

đến một sự kiện hay một trạng thái hệ thống mạo hiểm.

+ Dùng một cây lỗi phát triển tốt có thể quan sát được hậu quả của một dãy các thất bại liên kết với nhau, xuất hiện trong các thành phần khác nhau của hệ thống.

- Logic thời gian thực: xây dựng mô hình hệ thống bằng các đặc tả các sự kiện và

các hành động tương ứng. Mô hình sự kiện – hành động có thể được phân tích bằng cách

dùng các toán tử logic để thử nghiệm các quyết đoán an toàn đối với các thành phần của

hệ thống và định thời cho chúng…

- Mô hình lưới petry: dùng để xác định xem lỗi nàonghiêm trọng nhất.

Câu 35. Khảo sát nhu cầu SQA gồm những nội dung gì? Nhằm trả lời các câu hỏi gì? Nếu có nhu cầu thì mình làm gì?

- Gồm ba nội dung nhằm trả lời ba câu hỏi

+ Kiểm kê các chính sách SQA: chính sách, thủ tục, chuẩn nào đã có trong các pha phát triển?

+ Đánh giá vai trò của kỹ nghệ phần mềm, bảo đảm chất lượng trong tổ chức hiện tại có quyền lực đến đâu?

+ Đánh giá mối quan hệ SQA: Giao diện chức năng giữa SQA với các đơn vị khác như thế nào? Với các người thực hiện rà soát kỹ thuật chính thức, quản lý cấu hình và thử nghiệm.

Một khi ba câu hỏi trên đã được trả lời thì mức độ mạnh hay yếu đã được minh bạch.

- Nếu có nhu cầu SQA thì cần phải tiến hành đánh giá cẩn thận bằng quy tắc bỏ phiếu.

Câu 36. Có những vấn đề gì đạt ra khi triển khai SQA? Lợi ích của SQA là gì? Nguyên tắc chi phí hiệu quả của SQA là gì?

Một phần của tài liệu CÂU HỎI ÔN TẬP KỸ NGHỆ PHẦN MỀM NÂNG CAO (Trang 57 - 59)