我個人非常討厭跑 scrum,兩次的經驗都不是很好。原因是主管們的心態無法調適,導致跑起來往往很快就失去它原本的精神。
但是我卻蠻喜歡 scrum/CI/CD 的觀點,也發覺自己的開發流程往這個方向靠攏。漸漸的接到案子後不會先急著畫架構圖和流程圖,而是先將整個流程的「資料流」給打通。
我會先聚焦最最最重要的資料會從哪邊送到哪邊,它是數值、字串、list/dict/json還是物件?然後送一個最迷你版本的資料試試看行不行得通。
比如說某次主管們需要調閱部門成員的一些數值報告,他們希望看到的是成員們在專案進行時每個月的貢獻程度,也就是執行了多少次的測試,但有附加一些條件以免重覆計算。
於是我最先做的事就是寫一支小程式,把資料庫裡成員們執行測試的數據抓出來。但我只抓最前面10筆,因為這樣不管是寫後續程式、跑報告或除錯都會大大節省我的時間。
接著我就用人工的方式將那些附加條件套用在那10筆資料上,把「初版」的最終報告生出來給主管們看。這樣做的用意是我用最短的時間,把程式和資料在整個執行過程中的「程序」都給跑過一遍。雖然是迷你版、精簡版,但是我把整個程序從頭到尾給串起來了,確定這樣的資料流是可行的。
初版的最終報告的格式主管們看了不是很滿意,雖然這格式是他們提出的,但這很常見,他們總是要先看到一些實際的東西之後才會修正原本的想法。因此我不用花大把的時間寫出一個完整但他們卻不滿意的程式,我可以很快的修正我的流程,更快的推出下一版給他們參考。整個過程主管們滿意,我也輕鬆!
程式新手們也可以參考這個方式,不用急著把範例/作業一股腦地寫出來,而是從0開始,先找出下一個迷你版是什麼,最好是「超」迷你版本。然後找方法和工具來實作它,以 scrum/CI/CD 的精神來逐步的寫完整個程式,你可能會發現原來寫程式這麼有趣!
Top comments (0)