qileilove

          blog已經轉移至github,大家請訪問 http://qaseven.github.io/

          以測試為核心的軟件開發過程

           摘要:軟件項目規模越來越大,開發團隊人員越來越多,人員增加帶來管理成本上升,于是引入ISO9000、CMM,但最后發現它們實施難度相當大。于是我們介紹一套行之有效的測試控制方法,它能夠有效對軟件項目開發進行控制。

            關鍵詞:軟件測試軟件開發;軟件項目管理

            1、引言

            TC(測試控制方法)是指以測試為核心控制軟件項目開發過程的方法,它包括完整的規范TC 系統及其相關管理理論TC 理論。主要完成軟件開發中開發流程的管控、軟件測試、開發績效評價、持續改進管控質量等功能。

            ● 我們先來看一看軟件項目開發中經常遇到的問題。

            ● 各模塊一拖再拖,整個項目無休止延期,開發進度無法得到控制;

            ● 改正了舊問題,又冒出更多新問題,問題層出不窮;

            ● 模塊難度、工期質量考核無法量化,更無法與個人收入掛鉤;

            ● 技術攻關、需求、分析與設計階段任務難以進行驗收;

            ● 項目負責人需要時刻關注各開發人員的開發過程,沒有時間進行項目整體規劃;

            ● 項目負責人經常感到失控,開發人員開發出的結果往往與預期效果差異很大;

            ● 項目負責人在模塊嚴重拖期時,不知是應該換人重做,還是再讓其開發幾天;

            ● 項目經理對各開發團隊的開發能力沒有客觀的認識;

            ● 項目經理對各項目的進度情況不能有效把握,經常被告之以“馬上就完了”這樣含糊的承諾;

            ● 項目經理對自主開發的產品沒有量化的質量評價;

            ● 所有這些問題都在TC 系統中迎刃而解。

            2、TC 系統依賴全新的管理思路

            ● 做出好軟件

            好的軟件是做出來的,不是改出來的。軟件必須依靠具有一定水平的開發人員集中精力開發,不可能靠反復的修改來完成。軟件修改次數越多,出錯的可能性就越大。

            ● 測試的任務

            測試的主要任務是控制開發人員隨意提交低質量的程序。例如:我們在測試中有個定義叫返回,意思是,當開發人員提交了問題過多的程序后,測試人員可以不用告知程序中的問題,直接返回程序要求開發人員重新修改。這樣既控制了被提交程序的質量,也使測試人員把工作重點從尋找簡單的低級錯誤,轉移到尋找程序中復雜的邏輯錯誤。堅決反對“測試人員是幫助程序人員發現問題的”說法,而強調測試人員是站在一個更高的管理控制層面上。

            ● 績效考核

             項目開發中的工期與質量采用分值進行量化績效考核,不單注重質量或進度,將二者統一起來。績效是指某人在完成一個工單時,質量和工期的綜合評價。一個理 想程序員完成工單的績效為1,比理想程序員完成效果好績效大于1,完成效果差績效小于1,一般程序員的績效在0.7 左右。

            采用量化績效可以對項目人員績效進行考核排隊,并與個人收入掛鉤。采用量化績效還能將從事不同類型工作的項目人員進行排隊,如:對開發人員和售后服務人員績效進行排隊。

            ● 弱化人際關系

            項目管控過程中對事不對人,由軟件系統確定處理流程,郵件方式傳遞信息,避免人情關、面子關,減少在人為交流中的沖突與不確定性。

            ● 全面管控

            借鑒ISO9000 質量管理體系的思想,遵循“怎么想就怎么寫,怎么寫就怎么做,怎么做就怎么記”。所有工作做到統一安排、有據可依、有史可查。

            3、實現流程

            TC 可以在整個項目的開發過程中進行管控。需求分析,技術攻關,分析與設計,構造實現,測試部署階段,甚至在售后服務階段都可以使用TC 系統進行控制。

            所有工作都以工單的形式派發并跟蹤驗收。各工單按以下流程進行控制:

          圖一

            開發團隊接到新項目,明確工作內容后,就可以使用TC 系統控制整個項目直至結束。制訂工作計劃;派發各階段的工單,驗收工單,封版;如此循環,直至所有工單都封版,表明項目開發完成。

           摘要:軟件項目規模越來越大,開發團隊人員越來越多,人員增加帶來管理成本上升,于是引入ISO9000、CMM,但最后發現它們實施難度相當大。于是我們介紹一套行之有效的測試控制方法,它能夠有效對軟件項目開發進行控制。

            關鍵詞:軟件測試軟件開發;軟件項目管理

            1、引言

            TC(測試控制方法)是指以測試為核心控制軟件項目開發過程的方法,它包括完整的規范TC 系統及其相關管理理論TC 理論。主要完成軟件開發中開發流程的管控、軟件測試、開發績效評價、持續改進管控質量等功能。

            ● 我們先來看一看軟件項目開發中經常遇到的問題。

            ● 各模塊一拖再拖,整個項目無休止延期,開發進度無法得到控制;

            ● 改正了舊問題,又冒出更多新問題,問題層出不窮;

            ● 模塊難度、工期質量考核無法量化,更無法與個人收入掛鉤;

            ● 技術攻關、需求、分析與設計階段任務難以進行驗收;

            ● 項目負責人需要時刻關注各開發人員的開發過程,沒有時間進行項目整體規劃;

            ● 項目負責人經常感到失控,開發人員開發出的結果往往與預期效果差異很大;

            ● 項目負責人在模塊嚴重拖期時,不知是應該換人重做,還是再讓其開發幾天;

            ● 項目經理對各開發團隊的開發能力沒有客觀的認識;

            ● 項目經理對各項目的進度情況不能有效把握,經常被告之以“馬上就完了”這樣含糊的承諾;

            ● 項目經理對自主開發的產品沒有量化的質量評價;

            ● 所有這些問題都在TC 系統中迎刃而解。

            2、TC 系統依賴全新的管理思路

            ● 做出好軟件

            好的軟件是做出來的,不是改出來的。軟件必須依靠具有一定水平的開發人員集中精力開發,不可能靠反復的修改來完成。軟件修改次數越多,出錯的可能性就越大。

            ● 測試的任務

            測試的主要任務是控制開發人員隨意提交低質量的程序。例如:我們在測試中有個定義叫返回,意思是,當開發人員提交了問題過多的程序后,測試人員可以不用告知程序中的問題,直接返回程序要求開發人員重新修改。這樣既控制了被提交程序的質量,也使測試人員把工作重點從尋找簡單的低級錯誤,轉移到尋找程序中復雜的邏輯錯誤。堅決反對“測試人員是幫助程序人員發現問題的”說法,而強調測試人員是站在一個更高的管理控制層面上。

            ● 績效考核

             項目開發中的工期與質量采用分值進行量化績效考核,不單注重質量或進度,將二者統一起來。績效是指某人在完成一個工單時,質量和工期的綜合評價。一個理 想程序員完成工單的績效為1,比理想程序員完成效果好績效大于1,完成效果差績效小于1,一般程序員的績效在0.7 左右。

            采用量化績效可以對項目人員績效進行考核排隊,并與個人收入掛鉤。采用量化績效還能將從事不同類型工作的項目人員進行排隊,如:對開發人員和售后服務人員績效進行排隊。

            ● 弱化人際關系

            項目管控過程中對事不對人,由軟件系統確定處理流程,郵件方式傳遞信息,避免人情關、面子關,減少在人為交流中的沖突與不確定性。

            ● 全面管控

            借鑒ISO9000 質量管理體系的思想,遵循“怎么想就怎么寫,怎么寫就怎么做,怎么做就怎么記”。所有工作做到統一安排、有據可依、有史可查。

            3、實現流程

            TC 可以在整個項目的開發過程中進行管控。需求分析,技術攻關,分析與設計,構造實現,測試部署階段,甚至在售后服務階段都可以使用TC 系統進行控制。

            所有工作都以工單的形式派發并跟蹤驗收。各工單按以下流程進行控制:

          圖一

            開發團隊接到新項目,明確工作內容后,就可以使用TC 系統控制整個項目直至結束。制訂工作計劃;派發各階段的工單,驗收工單,封版;如此循環,直至所有工單都封版,表明項目開發完成。

          ● 項目績效正態分布曲線

          圖六

            該曲線Y 軸為工單數目,X 軸為工單績效。整個曲線描述用戶培訓管理系統在開發中各級績效出現次數對比,其中績效為0.2 以下和1.2 以上的很少,績效為0.7 的工單最多,因此可以說明用戶培訓管理系統的開發績效在0.7 左右浮動,平均開發績效接近0.7。

            ● 公司績效正態分布曲線

          圖七

            該曲線描述整個公司在項目開發中各級績效出現次數對比,其中績效為0.2 以下和1.2 以上的很少,績效為0.7 的工單最多,因此可以說明公司的開發績效在0.7 左右浮動,平均開發績效接近0.7。

            若單從平均值來看,圖六和圖七表現的開發能力是相當的,其實不盡然,圖七的正態分布趨勢要比圖六更向0.7 緊縮,從圖上看圖七要瘦于圖六,說明圖七的開發能力更趨于穩定,而圖六的開發能力更難以預料。因此由以上分析得知用戶培訓管理系統開發團隊的平均質量與公 司整體開發質量相當,但遠不如公司整體開發能力穩定。

            5、適用對象

            TC 適合大多數軟件開發團隊。由于她的特點是以測試為核心控制軟件開發過程,因此她更適合于軟件測試人員配備不是非常充裕的團隊,由有限的軟件測試人員就可以擔當起測試與控制的任務。

            對于開發一般企業級應用軟件的開發團隊來說,軟件開發中一般低級錯誤是最多的,通過TC 系統能使一般低級錯誤得到控制,測試人員集中精力于業務邏輯關系測試。一般企業級應用軟件的開發團隊選擇TC 系統將會比選擇任何一家測試或項目管理軟件更實用。

            對于開發控制系統或算法集中的平臺類軟件的開發團隊來說,雖然一般的低級錯誤可能較少,但TC 系統能將任務分配、任務的追蹤、工期質量統計、測試記錄的整理與歸納等工作自動完成,自然可以大大減少測試人員的事務性工作,幫助測試人員關注核心的算法與邏輯關系測試。

            6、結束語

            TC 能有效對軟件項目進行控制, 記錄各階段工作詳細內容,并能夠對原始數據進行挖掘整理,為各類項目人員提供全面多方位的信息表現形式,協助公司和個人客觀認識自身的開發能力,尋找影響開發能力的主要因素,為持續改進提供幫助。

          posted on 2012-04-26 09:32 順其自然EVO 閱讀(206) 評論(0)  編輯  收藏 所屬分類: 測試學習專欄管理方向

          <2012年4月>
          25262728293031
          1234567
          891011121314
          15161718192021
          22232425262728
          293012345

          導航

          統計

          常用鏈接

          留言簿(55)

          隨筆分類

          隨筆檔案

          文章分類

          文章檔案

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 慈利县| 托克逊县| 阳东县| 安顺市| 鲁甸县| 米脂县| 宁远县| 北京市| 拜城县| 海阳市| 龙陵县| 米脂县| 平凉市| 满洲里市| 磴口县| 峨眉山市| 麦盖提县| 平安县| 花莲县| 冀州市| 红原县| 青田县| 杭锦旗| 桃园市| 安阳市| 南丰县| 塔城市| 田阳县| 漳浦县| 青河县| 灵山县| 上栗县| 芒康县| 东明县| 木里| 阿鲁科尔沁旗| 淄博市| 宜章县| 海南省| 南宁市| 黄龙县|