我已經在質量保證和開發。這個過程在任何一個世界都沒有太大的不同,因爲它歸結爲一個簡單的事情:所有的估計都是猜測。它們基於經驗,預測,以及對特定問題的複雜性和風險的評估,但它們充其量是好猜測。
通過分析特定功能區域周圍的一組已知任務,可以使它們更有用。在質量保證中,這意味着從您擁有的角度來看待問題:分析任何可能的用戶故事中的變化,分析可能的輸入,如果您有屏幕的模型等等。基於更好的猜測,手動或自動運行這些變化需要多長時間做一些基本算術。製作一個基於粗略等價類的一些關鍵場景的小二維矩陣,找出花費多少時間a)根據以前的經驗爲每個項目編寫自動化測試,b)根據需要運行手動煙霧測試。
找出在預定的時間線期間需要多久運行一次這些測試。根據您判斷中的錯誤概率(1.5倍,2.0倍,有時爲3.0倍)以及確定正確的相對重要性運行乘數。如果真正重要的是您獲得了經過良好測試的一項功能並且不太重要,那麼需要對其他功能進行充分測試,然後相應地調整您的估算值,但在估算中確定該假設。
調度是關於管理風險,而不是消除它。它的目的是讓您看到需要完成的事情。細節從來都不是很正確,沒關係。我無法想象我曾經參與過的一個項目中,一切都按計劃進行,特別是在開發方面。
敏捷不會改變那麼多的方程;它確實改變了時間表。儘管存在教條,但確保在循環結束時進行測試還有一點空間,因爲您還需要時間來解決不可避免會出現的問題。但你不必把它變成「迷你瀑布」;開發人員可以在所有功能都在工作的情況下繼續工作,因爲他們總是可以開始挑選迭代中優先級較低的任務。
我想知道,在您的情況下,開發團隊是否代表您對QA進行了時間估算?讓其他人打電話通常不是一個好主意。遊戲中皮膚最多的人應該擁有最重的加權意見。但是很多開發人員可以做出相當好的風險評估,所以值得一聽。在敏捷開發週期中,角色排他性應該比瀑布團隊中的小,但我相當確信有些人只是在質量保證任務方面更好,他們自然會挑選大部分工作,即使在試圖走敏捷的思想。如果你的問題是你不願意在不知道實現細節的情況下做出估計,我可以說這是你需要克服的問題;即使在老派的方法論中,我也很少有完整的知識。
我想補充的一件事是:具有QA人才的人應該和他們的發展同行在同一個團隊中。如果他們的職業發展是由不同的經理管理的,但是如果他們是不同的衝刺隊伍的一部分則不好。因此,如果您有一個「測試團隊衝刺」和一個「開發團隊衝刺」,我認爲您會削弱Dev和QA重點資源之間的協作和溝通潛力。
搞笑。請告訴我哪家公司不應該與.. – 2010-06-29 21:21:04
哎喲...很抱歉聽到它。在我看來,估計比藝術更具藝術性 - 儘管你可能會考慮以證據爲基礎的對比。 – 2010-06-29 21:25:51