代碼規則介紹:
我們知道,軟件工程所講述的都是軟件開發的一些道理,這些道理基本上都是軟件開發的實踐者的成功經驗或失敗教訓的總結,我們說,這些總結就是我們代碼檢查所遵循的規則,QAC/C++維護了一個關于代碼規則的數據庫,在這個數據庫中,內嵌了許多著名的編程規范,包括ISO,MISRA(歐洲汽車工業行業標準),等等。
如果軟件企業都能在代碼編寫的階段都能遵循一定的代碼規則,這對我們的軟件產品的質量將回大有益處,首先,在同一個開發團隊中使用代碼規則,可以形成這個開發團隊統一的開發風格,產品個性;其次,遵循一定的代碼規則,可以提高模塊的可移植性和可維護性,最后,代碼規則檢查也是提高代碼質量最有效、最直接的手段。
當前做代碼規則檢查面臨的困境:
- 代碼規則檢查需要付出很繁重的勞動——重新理解代碼,國內一些,軟件工程發展到現在,已經有了專職的測試人員,即使非常專業的測試人員,理解別人寫的代碼也是一項很繁瑣的工作。
- 時間和資源的限制,我們說,任何一個企業都可以做出優秀的軟件,前 提是給他足夠的時間和物質資源,可現實的軟件開發的矛盾卻是:在有限的時間內、利用有限的經費,來做高可靠性的軟件。
- 很多人不重視代碼規則檢查,包括很多軟件企業的領導、項目負責人等, 認為代碼規則檢查浪費人力和物力,恰恰相反,這種觀點就把軟件中存在的問題留到了最后,在軟件維護過程中會付出昂貴的代價。經驗表明,軟件中的問題發現的越早,要克服這個問題付出的代價越小。
產品的特點(QAC為例):
- 代碼規則檢查自動化
這是一個基于C語言開發環境下用以提高軟件產品產量和質量標準的深層次靜態分析工具軟件。這個軟件可以自動識別C語言源代碼中出現的問題。這些問題主要是語言使用過程不安全,過于復雜,無法移植,難以維護或與該行業的代碼標準偏離造成的。QAC能夠對許多編譯器或其他工具開發軟件無法說明的問題提出警告。這個工具將極大的縮減代碼檢測的時間并能同時加強程序設計人員對 C語言中不完全為人理解的某些特點的認知。利用QAC,在開發軟件早期階段對存在的問題加以注意, 如能將代碼質量提高,同時測試周期也將縮短。達到雙贏的效果.
- 提供深層次的靜態分析
工具不但可迅速而有效的檢測出語言運用中的錯誤、已過時用法、程序標準一致性問題,從而防止在軟件開發的后期以更昂貴的代價去解決問題。而且還將工業標準分析度量標準和通俗易懂的報告結合在一起。
- 規則可以定制
對于工具的數據庫中已有的規則,可以有測試人員決定使用哪項規則或不使用哪項規則,或者是某一個錯誤等級的規則。
對于特殊行業來講,也許您的需求有點特殊,在工具中沒有您所要求的規則,沒有關系,這個規則是可以人為擴充的,您可以用QAC提供的定制的方法來添加您想要的規則。
- 可以和開發工具集成
可以和Visual Studio v6.0、 Visual Studio .NET、Tornado集成,在開發環境中來使用QAC,提高測試效率。
產品的好處:
- 縮減軟件開發的成本和產品上市的時間。
- 降低軟件產品質量問題。
- 實現代碼檢測過程自動化,使軟件開發和質量檢驗技術人員提高效率。
- 在軟件研發的早期階段識別潛在的軟件產品問題和其他可能出錯的問題,從而減少產品測試和顧客使用中發現問題的機率。
- 具有較好的集成性,能在現有的軟件環境下實現安裝和卸載。自動檢測軟件產品是否符合某公司或某行業的軟件標準和語言安全性方 面的要求。
- 提高 C語言代碼的編寫質量,過加強軟件可靠性,移植性和可維護性三 方面來減少軟件產品未來的維護費用。
- 幫助軟件開發人員生產高質量的代碼。
- 支持軟件認證,軟件研發過程認證和各種質量認證,如 CMM 認證,ISO9003/EN29003,TickIT, IEC 61508,Def Stan 00-55,DO-178B。
- 設立了軟件質量度量標準,后期代碼修改可以得到衡量和比較。
- 為軟件開發的成本和產量提供依據。
- 幫助企業培訓軟件研究及開發人員使其在利用C語言編程過程中避免問題。
支持語言,平臺、編譯器:
目前支持的語言有C, C++, Java & Fortran。
目前可支持的平臺有Microsoft Windows、Sun Solaris、HP-UX、Redhat Linux、Slackware Linux。
對于編譯器,QAC支持幾乎所有的主流編譯器,QAC在分析代碼時,并不對代碼進行編譯,只是分析程序時要用到一些編譯器的一些信息,如編譯器頭文件、宏等,以及嵌入式的CPU設定等。目前支持的編譯器有: Borland C/C++ Builder、Cosmic、Diab、Edison Design Group、GNU C/C++、Green Hills C/C++、IAR、IBM VisualAge C++、Intel、Keil、Metrowerks、Microsoft C/C++、Tasking。
本文轉發自
標簽:
軟件測試技術
本站文章除注明轉載外,均為本站原創或翻譯。歡迎任何形式的轉載,但請務必注明出處、不得修改原文相關鏈接,如果存在內容上的異議請郵件反饋至chenjj@fc6vip.cn