引言
TC(測試控制方法)是指以測試為核心控制軟件項目開發過程的方法,它包括完整的規范TC 系統及其相關管理理論TC 理論。主要完成軟件開發中開發流程的管控、軟件測試、開發績效評價、持續改進管控質量等功能。
我們先來看一看軟件項目開發中經常遇到的問題。
各模塊一拖再拖,整個項目無休止延期,開發進度無法得到控制;
改正了舊問題,又冒出更多新問題,問題層出不窮;
模塊難度、工期質量考核無法量化,更無法與個人收入掛鉤;
技術攻關、需求、分析與設計階段任務難以進行驗收;
項目負責人需要時刻關注各開發人員的開發過程,沒有時間進行項目整體規劃;
項目負責人經常感到失控,開發人員開發出的結果往往與預期效果差異很大;
項目負責人在模塊嚴重拖期時,不知是應該換人重做,還是再讓其開發幾天;
項目經理對各開發團隊的開發能力沒有客觀的認識;
項目經理對各項目的進度情況不能有效把握,經常被告之以“馬上就完了”這樣含糊的承諾;
項目經理對自主開發的產品沒有量化的質量評價;
所有這些問題都在TC 系統中迎刃而解。
TC 系統依賴全新的管理思路
做出好軟件
好的軟件是做出來的,不是改出來的。軟件必須依靠具有一定水平的開發人員集中精力開發,不可能靠反復的修改來完成。軟件修改次數越多,出錯的可能性就越大。
測試的任務
測試的主要任務是控制開發人員隨意提交低質量的程序。例如:我們在測試中有個定義叫返回,意思是,當開發人員提交了問題過多的程序后,測試人員可以不用告 知程序中的問題,直接返回程序要求開發人員重新修改。這樣既控制了被提交程序的質量,也使測試人員把工作重點從尋找簡單的低級錯誤,轉移到尋找程序中復雜 的邏輯錯誤。堅決反對“測試人員是幫助程序人員發現問題的”說法,而強調測試人員是站在一個更高的管理控制層面上。
績效考核
項目開發中的工期與質量采用分值進行量化績效考核,不單注重質量或進度,將二者統一起來?冃侵改橙嗽谕瓿梢粋工單時,質量和工期的綜合評價。一個理想 程序員完成工單的績效為1,比理想程序員完成效果好績效大于1,完成效果差績效小于1,一般程序員的績效在0.7 左右。
采用量化績效可以對項目人員績效進行考核排隊,并與個人收入掛鉤。采用量化績效還能將從事不同類型工作的項目人員進行排隊,如:對開發人員和售后服務人員績效進行排隊。
弱化人際關系
項目管控過程中對事不對人,由軟件系統確定處理流程,郵件方式傳遞信息,避免人情關、面子關,減少在人為交流中的沖突與不確定性。
全面管控
借鑒ISO9000 質量管理體系的思想[1],遵循“怎么想就怎么寫,怎么寫就怎么做,怎么做就怎么記”。所有工作做到統一安排、有據可依、有史可查。
實現流程
TC 可以在整個項目的開發過程[2]中進行管控。需求分析,技術攻關,分析與設計,構造實現,測試部署階段,甚至在售后服務階段都可以使用TC 系統進行控制。
所有工作都以工單的形式派發并跟蹤驗收。各工單按以下流程進行控制:
開發團隊接到新項目,明確工作內容后,就可以使用TC 系統控制整個項目直至結束。制訂工作計劃;
派發各階段的工單,驗收工單,封版;如此循環,直至所有工單都封版,表明項目開發完成[3]。
高層數據表現
除一般的數據查詢統計外,TC 還提供決策支持的指導性數據圖表。
個人績效曲線
該曲線Y 軸為開發績效,X 軸為隨時間推移開發人員王英武所完成的各工單序號。整個曲線描述王英
武在開發過程中各工單的績效變化,可以看出其開發績效在穩步上升。
項目績效曲線
本文中有關項目績效的陳述都以用戶培訓管理系統為例。
該曲線描述用戶培訓管理系統在開發過程中的績效趨勢,其中項目初期績效較低,從中期開始趨于穩定,在結束時有一段低績效區,項目問題有可能在此較為突出,建議質量控制人員查看該處詳細工作記錄。
公司開發績效曲線
該曲線描述公司的整體開發能力,隨著時間的推移公司整體開發能力有明顯提高,同時在圖三和圖四的對比后發現,開發用戶培訓管理系統的團隊開發能力低于公司整體開發能力。
工單完成情況比例圖
該圖描述用戶培訓管理系統目前開發到哪種程度,工單完成了48%,16%正在進行,23%還未開始,說明項目開發到中期階段。13%的工單在開發中中止,說明整個項目的計劃安排稍欠合理,有較多的意外中斷。
項目績效正態分布曲線
該曲線Y 軸為工單數目,X 軸為工單績效。整個曲線描述用戶培訓管理系統在開發中各級績效出現次數對比,其中績效為0.2 以下和1.2 以上的很少,績效為0.7 的工單最多,因此可以說明用戶培訓管理系統的開發績效在0.7 左右浮動,平均開發績效接近0.7。
公司績效正態分布曲線
該曲線描述整個公司在項目開發中各級績效出現次數對比,其中績效為0.2 以下和1.2 以上的很少,績效為0.7 的工單最多,因此可以說明公司的開發績效在0.7 左右浮動,平均開發績效接近0.7。
若單從平均值來看,圖六和圖七表現的開發能力是相當的,其實不盡然,圖七的正態分布趨勢要比圖六更向0.7 緊縮,從圖上看圖七要瘦于圖六,說明圖七的開發能力更趨于穩定,而圖六的開發能力更難以預料。因此由以上分析得知用戶培訓管理系統開發團隊的平均質量與公 司整體開發質量相當,但遠不如公司整體開發能力穩定。
適用對象
TC 適合大多數軟件開發團隊。由于她的特點是以測試為核心控制軟件開發過程,因此她更適合于軟件測試人員配備不是非常充裕的團隊,由有限的軟件測試人員就可以擔當起測試與控制的任務。
對于開發一般企業級應用軟件的開發團隊來說,軟件開發中一般低級錯誤是最多的,通過TC 系統能使一般低級錯誤得到控制,測試人員集中精力于業務邏輯關系測試。一般企業級應用軟件的
開發團隊選擇
TC 系統將會比選擇任何一家測試或項目管理軟件更實用。
對于開發控制系統或算法集中的平臺類軟件的開發團隊來說,雖然一般的低級錯誤可能較少,但TC系統能將任務分配、任務的追蹤、工期質量統計、測試記錄的整理與歸納等工作自動完成,自然可以大大減少測試人員的事務性工作,幫助測試人員關注核心的算法與邏輯關系測試。
結束語
TC 能有效對軟件項目進行控制,記錄各階段工作詳細內容,并能夠對原始數據進行挖掘整理,為各類項目人員提供全面多方位的信息表現形式,協助公司和個人客觀認識自身的開發能力,尋找影響開發能力的主要因素,為持續改進提供幫助。
文章來源于領測軟件測試網 http://www.kjueaiud.com/