軟件可靠性(SOFTWARE RELIABILITY)的定義爲THE PROBABILITY OF FAILURE-FREE OPERATION OF A SYSTEM OVER A SPECIFIED TIME WITHIN A SPECIFIED ENVIRONMENT FOR A SPECIFIED PURPOSE .
- 軟件錯誤(error)
- 軟件缺陷(defect)
- 軟件故障(fault)
- 軟件失效(failure)
我們從定義來看,軟件的可靠性是通過概率來度量的。
軟件失效
CORRESPONDS TO UNEXPECTED RUN - TIME BEHAVIOUR OBSERVED BY A USER
是用戶可以在系統運行時觀察出來的。由於軟件可靠性通過概率來度量,軟件失效(failure)的發生具有隨機性和不穩定性。軟件的失效一般是由於軟件故障(fault) 引起的,但並不是每一個軟件故障(fault) 都會導致軟件失效(failure)。
1. CODE THAT IS “ MOSTLY ” CORRECT ;
2. DEAD OR INFREQUENTLY - USED CODE ;
3. FAULTS THAT DEPEND ON A SET OF CIRCUMSTANCES TO OCCUR .
軟件故障(fault)
A STATIC SOFTWARE CHARACTERISTIC WHICH CAUSES A FAILURE TO OCCUR .
並不是每一個軟件故障(fault) 都會是軟件故障(fault),怎麼來理解這一句話呢?如果測試人員沒有發現這個故障(fault)?如果測試人員故意執行錯誤動作?
理解這句話的意思,“90-10 RULE ”: 90% OF THE TIME YOU ARE EXECUTING 10% OF THE CODE .
REMARK / “IT IS EASIER TO MAKE A CORRECT PROGRAM EFFICIENT THAN TO MAKE AN EFFICIENT PROGRAM CORRECT ”.