何時停止設計並啟動實施程式設計? - Alter
我們希望有一個策略,能讓我們決定何時停止設計,開始實施程式設計,同時最佳化成本函式。
啟發式#1:有足夠的 "已知的知識"。
你是否有最小的知識來帶來價值?
你的專案可能是龐大的;因此,有許多需求,可能有些需求可以在沒有其他需求的情況下交付。在 "迭代設計過程 "中,我們希望儘可能快地得到反饋。這就是為什麼,如果你有可以低風險發貨的東西,就去做吧。
啟發式2:不再有 "已知的未知數"。
你解決了所有的 "開放點 "嗎?
非常建議在開始任何專案時進行一些風險評估。在評估過程中,團隊應該浮出任何開放點。這可能是一個你很久沒有接觸過的模組,或者是專案需要的新技術。
一個很好的啟發式方法是,當你對每個開放點都有一個或多個解決方案時,就可以繼續前進了。
啟發式3:有太多的 "已知的未知數"。
你無法集中精力,因為你有太多的 "開放點"。
有如此多的開放點,你不知道從哪裡開始。這可能是一個很好的跡象,說明你需要更多的資訊。一個原型可以使你的努力集中起來。你可能需要再次回到設計桌前,但這一次需要更多的資訊(和更少的開放點)。
啟發式四:你停止學習新事物
你是否一直在重複討論同一個開放點?
所以,你確實為你所有的 "開放點 "找到了解決方案,但你無法決定一個特定的點。有多個解決方案,但團隊一直在爭論哪一個是最好的。你們進行了幾次討論,但沒有什麼能堅持下去。是時候進行編碼了。
如果風險是合理的,你可以考慮從其中一個解決方案開始,並進行密切跟蹤。如果風險較高,你可以考慮從多個解決方案開始,並對它們進行反覆的評估。
啟發式5:掉進兔子洞裡
事情開始變得過於複雜和抽象
是的,我們在這裡是為了解決複雜的問題,是的,一些解決方案需要一些相當深刻的思考,但試著問自己,我的專案需要這種程度的複雜性嗎?
工程師喜歡解決問題。這就是為什麼我們經常發明新的問題(想象中的問題是壞軟體的根源)。如果你注意到設計開始質疑與你的目標幾乎不相關的領域,那麼是時候做一個PoC或原型來讓你的腳踏實地了。
相關文章
- 何時使用領域驅動設計
- 並行程式設計並行行程程式設計
- 程式設計師,停止你的焦慮程式設計師
- 程式設計師,請停止學習框架!程式設計師框架
- 併發程式設計-6.並行程式設計概念程式設計並行行程
- Python並行程式設計Python並行行程程式設計
- 何謂開源程式設計?程式設計
- 程式設計模式-表驅動程式設計程式設計設計模式
- (Python程式設計 | 系統程式設計 | 並行系統工具 | 程式退出)Python程式設計並行
- DDD設計何時適可而止?
- 併發程式設計基礎——執行緒狀態,啟動及停止的幾種方式程式設計執行緒
- 讀軟體開發安全之道:概念、設計與實施11安全地程式設計程式設計
- iOS程式設計師如何成為程式設計高手,並以此創業iOS程式設計師創業
- 遊戲架構設計——高效能並行程式設計遊戲架構並行行程程式設計
- js自動倒數計時程式碼,倒數計時完畢時自動停止迴圈JS
- 為何程式設計師工資高?程式設計師
- 程式設計師程式設計時的簡單方法與技巧程式設計師
- 可程式設計作息時間控制器設計程式設計
- 面試了一個 31 歲程式設計師,讓我有所觸動,30歲以上的程式設計師該何去何從?面試程式設計師
- 啟動!阿里巴巴程式設計之夏2022阿里程式設計
- Dubbo 程式設計之夏報名啟動了程式設計
- 停止教條式的領域驅動設計 - CodeOpinion
- Uber實時資料基礎設施:分散式計算架構分散式架構
- 讀軟體開發安全之道:概念、設計與實施09安全設計
- 北上港深, 海歸程式設計師何去何從?程式設計師
- Java中的函數語言程式設計(八)流Stream並行程式設計Java函數程式設計並行行程
- 動態程式設計(DynamicProgramming)程式設計
- Laravel最佳實踐–事件驅動程式設計Laravel事件程式設計
- Laravel 最佳實踐 -- 事件驅動程式設計Laravel事件程式設計
- Laravel最佳實踐 -- 事件驅動程式設計Laravel事件程式設計
- [Hook] 跨程式 Binder設計與實現 - 設計篇Hook
- Java 網路程式設計(TCP程式設計 和 UDP程式設計)Java程式設計TCPUDP
- Unity應用架構設計(1)—— MVVM 模式的設計和實施(Part 2)Unity應用架構MVVM模式
- Unity應用架構設計(1)—— MVVM 模式的設計和實施(Part 1)Unity應用架構MVVM模式
- Go程式設計實踐Go程式設計
- 程式設計實驗4程式設計
- 程式設計實驗五程式設計
- socket程式設計實戰程式設計