Re: [請益] 預估工時的意義在哪?

看板Soft_Job作者 (吉爾摩)時間4年前 (2019/07/25 14:11), 編輯推噓2(200)
留言2則, 2人參與, 4年前最新討論串8/9 (看更多)
以這篇回文做一點延伸 ※ 引述《Feis (坐吃山空)》之銘言: : 預估工時本身沒有錯,問題是我們怎麼看待預估的結果 : 『預估工時』本身只是個工具,不是結果 : 如果真的要從虛工的角度來看,坦白說,連講話都是虛工。 : 開會更是浪費時間的極致 : 程式碼不就是一堆字,把字打完就收工,其他都多餘的 : 但是軟體開發真的是這樣嗎? : 從另外一方面來看,真正的虛工經常是管理層對於管理手段和工具的不熟悉所造成的 : 而不是工具本身所造成 : 如果每天只要上班有打卡下班有打卡就有錢拿那我每天上班兩分鐘就好 : 這世界就不是這麼運作的 : 打卡會成為一種管理工具不就是在某些組織文化下的平衡 : 造成一定浪費下但又能達到一定效益的結果 : 預估工時或是工作量 (point) 也就只是一種溝通的手段 : 為了讓不同背景不同經驗不同能力的人能夠有一個比較一般化的方式溝通 : 他是溝通的『起點』而不是終點 : 我不懂為什麼為了要表達其他工具也很重要的論點就要把預估工時當做沒有幫助 : 實際上如果連下一秒軟體專案能不能『符合預期』的運作都不能保證 : 其他根本都是多餘,你 QA 跟 Review 能做什麼事? : QA 完還是不知道能不能動不是搞笑嗎 : 預估工時的目的當然隨著專案或組織特性有所不同 : 但是他終究是工具的一種,不要把它當作天條,但把它當一無不值一定是有問題的 (自己學這塊是以英文為主,試著翻譯一些,可能與坊間有出入) 軟體工程的活動(activity)往往有多重目標, 也常常跟其他的活動有相關、相輔相成,以達成特定目標 以預估時間(estimation)來說, 目標通常是包含「在時間預算內完成專案」+「產生數據以幫助溝通」, 跟客戶或使用者討論清楚完成的定義(definition of done), 通常是與不同相關人士溝通時非常重要的工具 estimation通常與幾個活動有直接關連: 1. planning 專案規劃:包含時間、品質、產出等面向 2. tracking 專案追蹤:包含時間、需求、風險等面向 3. risk management 風險管理:包含時間、品質等面向 -- 以planning來說,有些建議的做法是把一個週期的時間分成兩塊: construction與project management, 前者通常包含設計的疊代、實作、測試、部署; 後者包含各種開會、寫文件、風險管理等等,週期性的活動, 或是可能包含架環境、學習工具之類的偏一次性活動 當然根據不同的專案,專案的不同階段,有可能的哪些活動, 要怎麼放進不同塊,有各種的分法與理論, 但estimation在其中扮演重要的角色 時間就是這麼多,人數、天數、時數抓一抓, 把例行的開會時間扣一扣, 並提前分特定比例的時間給一次性活動, 剩下的時間才能用在construction, 這樣團隊可以有感覺知道能花多少時間在寫扣、測試或部署, 可以知道時間內品質能控制到什麼程度 跨週期的時間通常比較難抓, 但一般而言會把一些產出(outcome)用WBS(work breakdown structure)表示, 把每個outcome估算出總成本, 根據幾個週期的總預算排列出各個里程(milestones), 其中可以利用MOSCOW Rule排優先順序 -- 至於tracking則可以幫助團隊知道這個週期的表現, 完成多少量(story point),算出速度, 搭配估算出的construction與project management比例, 可以在週期結束時試著檢討,改善流程 而風險管理也會注意時程這方面是否完成達預期, 有什麼的地方可以改善、是否需要跟客戶提更多的預算, 是否有些需求要降低優先順序 -- 上面的探討是基於相對敏捷的環境, 這裡頭有著幾個核心的想法, 比如「需求可以被修改」、「估算、流程或速度都可以被改善」, 試著估算,並收集數據,做檢討改善, 另一方面讓團隊或是客戶可以看到團隊的狀態, 提前排除一些可能的風險, 有時與瀑布式的環境格格不入 許多軟體工程探討的都是如何做好管理, 預算的管理、需求的管理、風險的管理、技術債的管理, 拿技術債來說,問題往往不是「如何不增加技術債」, 而是「是否知道自己正在增加技術債」+「有沒有預算管理技術債」, SonarQube之類的工具可以提供一些預算做參考 總之,秉持著「有數據總比沒數據好」的精神, 搭配事前的估算,各個stakeholder彼此都對預算的花用有些概念, 過程中比較容易隨時調整,也比較容易正確找到可以改善的地方 至於怎麼拿這些數據跟客戶溝通、跟老闆溝通、跟團隊溝通, 像老闆強迫加班或是客戶不給加預算,或是希望逼退客戶呵呵, 這比較脫離軟體工程的範疇哈哈 以上 -- -- ※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 71.61.178.166 (美國) ※ 文章網址: https://www.ptt.cc/bbs/Soft_Job/M.1564035091.A.75A.html

07/29 22:22, 4年前 , 1F
同意產生數據以幫助溝通
07/29 22:22, 1F

07/29 23:33, 4年前 , 2F
真的覺得問這問題很沒經過大腦...還好有你們認真回答
07/29 23:33, 2F
文章代碼(AID): #1TEKWJTQ (Soft_Job)
討論串 (同標題文章)
文章代碼(AID): #1TEKWJTQ (Soft_Job)