當我為公司內部開發新的系統需求時,上級給予的設計要求相當模糊,原因是老闆是那種先做再說的類型,他自己也不清楚也不能分析出細節,而且也涉及一些公司的工作流程問題,這情況當然依現有資訊硬寫出來,在經過Demo Stage 後大約有40%的修改及新增開發,而新需求也有很多時全面更改原來的Work flow。但在開發的時候,由於不能掌握全貌跟時間壓力,系統寫得很Hardcode而且沒有結構可言,也導致我後續的修正變得很困難而且費時。
所以我想請問一下各位,我需要學習什麼樣的東西,能讓我在剛開始階段可以建立一個更有結構的基礎,讓我在後續的修改上更容易。因為我不太清楚是系統設計還是編程技術的問題(原因是如果是有經驗及或有全貌的系統,我可以寫出結構來),還請各位幫忙,謝謝。
(可以的話,還請提供一些書或是領域,讓我可以自己去學習一下。)
直接回答:這是屬於「系統分析/設計」的領域
間接回答:「經驗」比「理論」重要,就算讀完市面上所有的書,也不會立刻解決你的問題
在經過Demo Stage 後大約有40%
的修改及新增開發,...,系統寫得很Hardcode而且沒有結構
可言,...。
不知道這是你開發的第幾個系統
等你開發幾個以上的系統之後
我相信你一定可以寫出更有彈性的結構
另外
如果貴公司負責程式開發的人員不超過 10 個人的話
你也不必太期待有多好的系統結構/程式碼
幾個以上
+1
先回應一下,這是我第4個系統,而公司的開發人員是6個,而這個系統只有我一個在開發,這也是現實不多說。
而有這樣的問題是我發現越後期的修改成本越高,時間用多了,上司也有意見,壓力也大了,而在系統設計上的原則概念上沒有很會,一直也是依靠經驗來走,所以才想知道有沒有像Programming SOLID 這樣的理論來參考一下,好讓我未來走的順一點,算是還未來投資一下。
先回應一下,這是我第4個系統,而公司的開發人員是6個,而這個系統只有我一個在開發,這也是現實不多說。
而有這樣的問題是我發現越後期的修改成本越高,時間用多了,上司也有意見,壓力也大了,而在系統設計上的原則概念上沒有很會,一直也是依靠經驗來走,所以才想知道有沒有像Programming SOLID 這樣的理論來參考一下,好讓我未來走的順一點,算是還未來投資一下。
這個問題很複雜,涉及系統分析/設計、架構規劃及作業流程...,面對需求變更過多的狀況可以做以下的確認:
總而言之,『謀定而後動』是最高指導原則,『先做再說』就好比俄國新兵上戰場,下場可想而知。
很正常. 當專案需求不明確. 自然容易大改.
以下是"不求薪水多少. 但求問心無愧. 跟做的開心" 的做法.
如果你心中已經有"這又不是我該做. 我也沒領那麼多" .. 那我想無解.
大概這樣. 我很習慣同事都是公務員心態. 大家大多只是應付了事. 所以以前常遇到跟自己領一樣. 或領比我多. 卻做不好. 後來秉持. 心存善念盡力而為. 專案我來負責. 規劃. 設計. 但分包下去大家押日期. 拿到主管授權很重要.
最後. 在設計.撰寫階段被大改. 代表你不熟那個領域. 無法主導. 這時最好是該領域的人一起規劃. 而且畫面. 流程都要模擬. ..
規劃+設計 : 撰寫 : 上線, 每個階段沒做好. 對後面工時影響是1:10:100.
規劃+設計沒做好.花1小時改就好
規劃+設計沒做好.都開始寫程式了. 大概要花10小時改
規劃+設計沒做好.都上線了. 大概要花100小時改
簡單心得分享. 我也沒有加班. 每天8小時做我想做. 多做也只是後面我可以不用生氣.
而談需求.引導需求.甚至改善流程... 真的就是經驗了... 加油