題記:
在乙個sprint開始的時候經常會對乙個story進行時間評估,這是件很讓人頭痛的事情, 「他說的讓我都不知道怎麼說了,他每次都說幾分鐘搞定」,看著他一臉的無奈, 「這麼簡單的問題,你給我搞20小時」,某人又在情緒化了,相信每個團隊裡面都有自己團隊的故事。評估本身意義:關於評估時間是乙個慢慢積累的過程,我們不可能一次把時間估的很對,但是我們期望我們估到時間與我們之間的生產力是相互接近的。下面是自己總結的評估時間方法與感觸。
紙牌評估
1.具體到小時:團隊裡面可以具體到小時,操作流程
(1)需求人講需求,參加會議的人員進行提問,需求人員進行回答
需求人在講需求的時候這是個最關鍵的時候,如果要修改乙個舊的業務,一定要問句「新的需求的意義」,原來為什麼滿足不了,新需求的改動量有多大?這樣個新的需求會波動其他模組嗎?改的話是否會對歷史資料有影響?歷史資料如何處理?這個需求要做到話,我的改那些資料庫表結構?資料從那邊來(或者要從另個系統讀取資料)?不懂盡可能要提出來,否則的話你是沒法評估時間的。如果需求問題不多,會直接現場跟客戶溝通,如果很多沒法解決,最好的辦法是停掉需求,換新需求,這個時候通過大家的討論,基本上能定義出來要做個什麼東西,我們需要做什麼,來完成使用者的需求
(2)參與迭代開發的人員進行評估,並且自己的方案
你應該已經明白需求的意義了,這時候要估出自己工作時間,也許是1小時,或者20小時,你需要在自己紙條上寫上自己預估的時間(每個人跟每個人是不一樣的),這時候也許會出現很大區別,你也許是3小時,而別人有可能是20小時,這時候每個人需要說出自己的方案,(或者你之前做過,或者直接呼叫第三方外掛程式),給他們更好的指導
(3)如果時間相差太大,再次(2)
循化(2),如果還是出現很大的分歧,還是需要做(2)這一步,一般4輪基本就解決問題
(4)去掉最高的,最低的,求平均值
如果4個人在參加時間評估,1,3,5,11,那麼4個小時基本上就是合適的時間了。
(5)把自測時間,交叉測試時間,整合測試時間,以及bug修改時間加進去
乙個需求的定義基本上完成交付就算完成這個故事了,所以應該在每個故事後面加上自測時間0.5h,交叉測試時間0.5h,整合測試時間1h,以及bug修改時間0.5h
(6)拼估其他story
在乙個sprint裡面我們肯定不會做乙個story,很可能是幾個甚至幾十個story,所以們迴圈上面步驟(1)(2)(3)(4)(5)評估出其他需要的時間,根據人數與時間定義出這個迭代到底做多少個story。2x5(2周)x4(參加迭代開發人數)x4.5(每個人的有效工作時間)=需要完成的工作量
關於時間定義:自己有效工作時間(除去喝水,吃飯,等等)定義的每個開發人員一天開發時間,開發人員一般是4h那樣,
估時間的時候也是按有效時間去估
2.1,3,5.。。。。紙牌遊戲(基本上與1相同,只是按複雜度進行評估)
這種是通過複雜度在評估時間,一般會定義個複雜度為1的功能,然後其他功能跟這個東西進行比較,遊戲紙牌有1,3,5.。。。。,通過這種方式,來
標識不同模組的複雜度
操作流程
(1)需求人員講解需求,參加會議的人員進行提問
(2)參與迭代開發的人員進行評估,並且自己的方案
(3)如果時間相差太大,再次(2)
(4)去掉最高的,最低的,求平均值
總結:
1.這兩種方法基本大同小異,第一種方法可以很細緻的預估出了需要時間,而第二種大概定義了需要的時間
2.同時自己可以嘗試去記著自己估時間是多少,其實在具體操作的時候時間是多少,不斷總結,可以提高自己評估時間的能力。
關於團隊的情緒總結:
1.團隊比你想象的要強大的多
老是感覺時間不夠用,那是自己把問題看大了,尤其是一些已經存在的事情,所以要試著去想下,這個問題很簡單,因為有團隊存在,大家都在呢!!
2.要實事求
「他說的讓我都不知道怎麼說了,他每次都說幾分鐘搞定」,不管別人估時間多少,自己一定要實事求是就好了,自己在團隊裡面做自己最擅長的,提高團隊生產力即可。
乙個驅動如何去呼叫乙個驅動?
這個是入門級問題,以前我剛搞wince的時候也很糾結,不知道怎麼去弄。後來看了wince6.0 6410 s5pv210的 攝像頭驅動就發現原來驅動和驅動之間呼叫和應用程式呼叫驅動是一樣的 一點都沒區別。createfile 開啟另外乙個驅動 deviceiocontrol 去操作另外乙個驅動 go...
如何更好的去完成乙個專案
積分系統算是告一段落了 這篇部落格來寫一下如何更好的去跟團隊成員一起開發乙個專案,在編輯之前特意去找了浩田,聊了聊這次積分系統遇到來的問題以及經驗,今後再有類似的專案接手如何更好的去把控以及更快的完成它。專案前期 1,重視需求分析的重要性,另外資料庫一次就定型,嚴格避免後期的更改 關於需求分析的重要...
如何去寫乙個jquery外掛程式
前些日子,因為專案的需求,自己定製了一款jquery彈窗,這得益於自己之前接觸的專案讓我對於物件導向程式設計有了深刻的理解。在jquery的基礎上拓展一款彈窗外掛程式 jquery原始碼中可知,jquery.fn便是jquery的命名空間。jquery.fn jquery.prototype var...