qileilove

          blog已經(jīng)轉(zhuǎn)移至github,大家請訪問 http://qaseven.github.io/

          如何減少返工工作量?

           提高軟件開發(fā)效率的最有效手段就是一次做對,一次做好,不返工,追求交付零缺陷的目標。“對”就是沒有錯誤,符合需求,“好”就是沒有壞味道,易于修改。“做對”保證了產(chǎn)品的外部質(zhì)量,“做好”保證了產(chǎn)品的內(nèi)部質(zhì)量,這樣就可以減少軟件缺陷、需求變更帶來的返工。返工可能發(fā)生在生命周期的早期,也可能發(fā)生在后期,或者是交付以后,缺陷越早發(fā)現(xiàn),越早解決,返工的工作量越少。有哪些手段可以保證不犯錯,少犯錯,及時糾錯呢?

            1、需求階段

            需求調(diào)研:

              要訪談客戶、最終用戶與間接用戶;

              要訪談高層、中層與底層的用戶;

              要準備好問題單;

              采用原型法啟發(fā)客戶需求;

            需求描述:

              用戶故事描述用戶需求;

              采用用例法描述功能需求;

              當用戶無法提出非功能性需求時,定義定義非功能性需求的缺省值;

            需求確認:

              采用多種方法確認需求;

              采用需求交底、逆向培訓、現(xiàn)場客戶等方法確保需求溝通的一致性;

              建立需求溝通的平臺,確保需求的溝通能傳遞到每個相關人員;

              在需求階段開始編寫系統(tǒng)測試用例,驗證需求的可測試性;

              建立需求與設計、代碼、測試用例之間的跟蹤關系;

              用戶、開發(fā)、測試人員參與需求的評審;

            需求變更:

              基于RTM進行需求變更的影響分析;

              需求的變更要通知到相關人員;

              對于需求的變更采用結(jié)對修改的方法;

            人員:

              對需求人員進行需求工程的專題培訓,要求需求人員掌握需求工程的基本知識,具備基本的技能。

            2、設計階段

            需求理解:

              和需求人員對需求的理解達成一致;

              對需求的拆分、細化,功能的設計要得到需求人員的認可;

            設計:

              要建立設計到需求的跟蹤矩陣,確保設計的完備性;

              采用結(jié)對設計的方法確保設計的正確性;

              需求、設計、開發(fā)人員對設計進行技術評審,識別設計中的缺陷;

              對設計人員進行培訓、上崗資格認證,要求設計人員掌握架構設計、設計原則、設計模式、數(shù)據(jù)庫設計、界面設計的方法;

              建立評價設計優(yōu)劣的準則,包括類的設計、算法設計、數(shù)據(jù)庫設計、界面設計的準則;

              對于非功能性需求給出缺省的解決方案;

              在設計中采用設計模式提高設計的合理性;

              對于界面的設計盡早進行確認;

              接口測試要早設計、早實現(xiàn)、早測試;

          3、編碼階段

            和需求人員對需求的理解達成一致;

            和設計人員對設計的理解達成一致;

            在寫代碼之前先做了詳細設計,對詳細設計做了評審;

            結(jié)對編程;

            測試驅(qū)動的開發(fā);

            按照編碼規(guī)范進行編碼;

            代碼的靜態(tài)檢查;

            代碼評審;

            持續(xù)集成;

            代碼重構;

            編碼人員要掌握常用的設計模式、重構的手法;

            4、測試階段

            測試人員參與需求評審,需求人員參與測試用例的評審;

            建立測試用例與需求之間的映射關系,追求需求場景的覆蓋率;

            集成測試用例覆蓋每一個接口的輸入?yún)?shù)的每種等價類;

            定義用例編寫規(guī)范:

              ● 用例應覆蓋正常操作、異常操作、邊界條件

              ● 用例應該覆蓋客戶操作場景的各種等價類

              ● 每個用例應該詳細描述出輸入、操作步驟、期望的輸出

              ● 區(qū)分不同的專項測試制定用例編寫規(guī)范

              ● 堅持執(zhí)行失效模式分析

            定義質(zhì)量目標,并努力達成質(zhì)量目標:

              ● 每千行代碼的平均測試工作量;

              ● 每千行代碼測試用例的個數(shù);

              ● 每千行代碼發(fā)現(xiàn)的缺陷個數(shù);

            在客戶各種可能的使用環(huán)境中進行測試,專人負責測試環(huán)境的維護;

            針對非功能需求進行測試策略的設計;

            先設計測試要點再設計測試用例;

            非功能性需求要盡早測試;

            先進行冒煙測試,再執(zhí)行正式的測試;

            定義測試結(jié)束的量化標準,定義軟件交付的最低標準;

            針對共性的需求建立復用用例庫,每次測試時從中挑選用例,然后再補充完善用例;

            盡可能模擬客戶的環(huán)境進行軟件的測試,應進行測試環(huán)境的組合設計。

          posted on 2013-04-02 11:35 順其自然EVO 閱讀(248) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄

          <2013年4月>
          31123456
          78910111213
          14151617181920
          21222324252627
          2829301234
          567891011

          導航

          統(tǒng)計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 高邮市| 美姑县| 蚌埠市| 武功县| 萨嘎县| 渑池县| 湟中县| 周宁县| 历史| 佛山市| 翁源县| 崇礼县| 屯留县| 武宣县| 格尔木市| 富川| 兴化市| 汉沽区| 甘南县| 太湖县| 东乌| 微博| 富宁县| 修文县| 翁牛特旗| 泌阳县| 区。| 甘孜| 武宁县| 仲巴县| 温州市| 甘谷县| 东兴市| 东乡| 高淳县| 璧山县| 扎囊县| 定襄县| 贵州省| 防城港市| 岚皋县|