A.3 標識符命名
3-1:標識符的命名要清晰、明了,有明確含義,同時使用完整的單詞或大家基本可以理解的縮寫,避免使人產生誤解。
3-2:命名中若使用特殊約定或縮寫,則要有注釋說明。
3-3:自己特有的命名風格,要自始至終保持一致,不可來回變化。
3-4:對于變量命名,禁止取單個字符(如i、j、k...),建議除了要有具體含義外,還能表明其變量類型、數據類型等,但i、j、k作局部循環變量是允許的。
3-5:命名規范必須與所使用的系統風格保持一致,并在同一項目中統一,比如采用UNIX的全小寫加下劃線的風格或大小寫混排的方式,不要使用大小寫與下劃線混排的方式。
A.4 可讀性
4-1:注意運算符的優先級,并用括號明確表達式的操作順序,避免使用默認優先級。
4-2:避免使用不易理解的數字,用有意義的標識來替代。涉及物理狀態或者含有物理意義的常量,不應直接使用數字,必須用有意義的枚舉或宏來代替。
A.5 變量
5-1:去掉沒必要的公共變量。
5-2:仔細定義并明確公共變量的含義、作用、取值范圍及公共變量間的關系。
5-3:明確公共變量與操作此公共變量的函數或過程的關系,如訪問、修改及創建等。
5-4:當向公共變量傳遞數據時,要十分小心,防止賦與不合理的值或越界等現象發生。
5-5:防止局部變量與公共變量同名。
5-6:嚴禁使用未經初始化的變量作為右值。
A.6 函數、過程
6-1:對所調用函數的錯誤返回碼要仔細、全面地處理。
6-2:明確函數功能,精確(而不是近似)地實現函數設計。
6-3:編寫可重入函數時,應注意局部變量的使用(如編寫C/C++語言的可重入函數時,應使用auto即缺省態局部變量或寄存器變量)。
6-4:編寫可重入函數時,若使用全局變量,則應通過關中斷、信號量(即P、V操作)等手段對其加以保護。
A.7 可測性
7-1:在同一項目組或產品組內,要有一套統一的為集成測試與系統聯調準備的調測開關及相應打印函數,并且要有詳細的說明。
7-2:在同一項目組或產品組內,調測打印出的信息串的格式要有統一的形式。信息串中至少要有所在模塊名(或源文件名)及行號。
7-3:編程的同時要為單元測試選擇恰當的測試點,并仔細構造測試代碼、測試用例,同時給出明確的注釋說明。測試代碼部分應作為(模塊中的)一個子模塊,以方便測試代碼在模塊中的安裝與拆卸(通過調測開關)。
7-4:在進行集成測試/系統聯調之前,要構造好測試環境、測試項目及測試用例,同時仔細分析并優化測試用例,以提高測試效率。
7-5:使用斷言來發現軟件問題,提高代碼可測性。
7-6:用斷言來檢查程序正常運行時不應發生但在調測時有可能發生的非法情況。
7-7:不能用斷言來檢查最終產品肯定會出現且必須處理的錯誤情況。
7-8:對較復雜的斷言加上明確的注釋。
7-9:用斷言確認函數的參數。
7-10:用斷言保證沒有定義的特性或功能不被使用。
7-11:用斷言對程序開發環境(OS/Compiler/Hardware)的假設進行檢查。
7-12:正式軟件產品中應把斷言及其它調測代碼去掉(即把有關的調測開關關掉)。
7-13:在軟件系統中設置與取消有關測試手段,不能對軟件實現的功能等產生影響。
7-14:用調測開關來切換軟件的DEBUG版和正式版,而不要同時存在正式版本和DEBUG版本的不同源文件,以減少維護的難度。
文章來源于領測軟件測試網 http://www.kjueaiud.com/