軟件安全組項目質量管理經驗

發表于:2009-11-25來源:作者:點擊數: 標簽:項目質量管理經驗軟件
軟件 安全 組項目質量管理經驗 項目管理軟件 關鍵字:經驗 在軟件產品的研發過程中,軟件質量一直處于最為核心的地位。軟件企業能否順利發展需要多方面的努力,其中軟件 質量保障 在其發展過程中占有非常重要的位置。對于一個軟件項目而言,由于所呈現的大多

       軟件安全組項目質量管理經驗  項目管理軟件

  關鍵字:經驗

  在軟件產品的研發過程中,軟件質量一直處于最為核心的地位。軟件企業能否順利發展需要多方面的努力,其中軟件質量保障在其發展過程中占有非常重要的位置。對于一個軟件項目而言,由于所呈現的大多是腦力勞動成果的形式,很大程度上取決于項目組成員的集體智慧、編碼水平和群體貢獻。所以從軟件項目的開始到結束(發布)過程中的動態不確定因素很多,這必然極大地增加了項目質量控制的難度,使得在按時提交軟件產品的前提下有效保障軟件質量成為了一個比較棘手的問題。

  不同的項目組對質量保障問題的解決方法肯定不盡相同,下面我將我們安全小組的一些項目質量管理經驗整理出來,其中一定有片面和不足之處,還請大家批評指正。

  第一點:重視項目啟動前的規模估計

  為了按時提交軟件產品,必然需要有一個切實可行的項目進度計劃,在這個計劃里還要能考慮到保障軟件質量的工作量。而產生這個計劃的基礎就是對整個項目工作的規模估計。在我們組的軟件規模估計中,是小組成員共同參加的。每個人都對即將開始的工作做出工作量估計,然后對大家的估計結果進行加權和平均,形成項目組的共同規模估計結果。這有助于小組對項目工作量和工作難度有共同的認識,并對維護軟件質量的工作量也有相應的準備。一定程度上避免了由于項目進度計劃不合理而可能造成的對軟件產品質量上的影響。

  第二點:項目確定共同的編碼基本要求

  軟件的質量也就是代碼的質量,對于提高代碼的整體質量而言,開發人員遵循共同的基本編碼規范是很有好處和必要的。我們安全組在平時的編碼經驗積累和參考了網上的技術文檔基礎上,提出了《安全組編程基本要求》。這個要求并不是面面俱到,但一定要對提高編碼質量有實際的推動。為了增加靈活性,《要求》中還區別出了“必須遵守”和“推薦遵守”兩種級別,供小組成員選擇。

  這里列舉幾條編程要求如下:

  1.盡可能在定義變量的同時初始化該變量,指針必須在定義時初始化;

  2.使用顯式數據類型轉換,避免讓編譯器進行隱式數據類型轉換;

  3.在函數體的“入口”處,必須對參數的有效性進行檢查;

  4.指針定義時初始化為NULL;在使用內存之前檢查指針是否為NULL;在釋放內存前檢查指針是否為NULL;釋放完內存后,將指針賦值為NULL;

  5.使用“匈牙利“命名規則,模仿IBM代碼的編程風格和注釋風格;

  第三點:嚴格遵循公司的CMM過程管理

  這一點不用多說,引入CMM的過程管理經驗是公司為各個項目組提供的極大幫助,為項目組及時預見和規避風險提供了有效的途徑。通過CMM的各個里程碑檢查,SQA人員的參與和監督,SCM人員的配置項統一管理,小組每周的周例會等等方法,為項目的順利進行奠定了基礎。而且在CMM嚴格的過程控制之下,通過對需求的明確定義,相應設計、測試階段對需求的對應跟蹤,對軟件BUG的統一受控管理和跟蹤等等,這些都為項目組軟件產品的質量提供了有力的保障。

  第四點:重視測試活動并引入工具以提高測試能力

  大家都知道,測試活動是軟件產品質量保障的最直接和最有效環節,按照測試所處研發層次的不同,又可以細分為:單元測試、集成測試和系統(總體)測試。另外在這種分法之外,還可根據測試的偏重點分為異常測試、壓力測試、性能測試等。單從這么細致的測試劃分就可以看出測試工作在軟件生產過程中的無比重要性了??梢哉f測試能力的高低直接決定了最終軟件產品質量的高低。

  在提高測試能力方面,我們組首先是做到讓測試都處于方案和計劃的控制之中,包括集成測試方案/計劃、系統測試方案/計劃等。測試過程的BUG也都納入了CMM的BUG管理過程,進行了跟蹤和監督,確保發現的BUG都得到有效的改進和管理。

  其次我們還引入了專門的測試工具來提高測試環節的能力和效率,比如:我們采用ParaSoft公司的C++ Test工具來進行嚴格的單元測試,自動對參數和指針進行有效性檢查,并對設定的編碼風格進行靜態檢查;采用Bounds Checker來進行內存泄漏檢查;采用Iris來對網絡上傳遞的數據包進行截獲和分析,以檢驗程序數據傳遞的正確性等等。通過對這些測試工具的使用,很大程度上提高了我們組整體的測試能力,使測試中的深度和廣度都有了定量的保障。

  以上所列的四點經驗被廣泛應用于我們安全組的項目管理過程中。通過對一些中小規模項目應用的實踐表明,這些經驗用于軟件項目質量保障是比較切實可行的,能夠提高項目質量的可控性。

  當然以上這些經驗也只是我們組在平時工作中的一些總結,并不完全適合公司其它項目組的實際情況。在此整理出來,也只是希望能起到拋磚引玉的作用,希望在公司中形成對軟件項目質量保障方法的一些討論,以達到共同提高項目管理經驗,推動公司健康發展的目的。

原文轉自:http://www.anti-gravitydesign.com

国产97人人超碰caoprom_尤物国产在线一区手机播放_精品国产一区二区三_色天使久久综合给合久久97