在公司工作久了,總會發現工作上有些困境。
1. 軟件開發講的是持續集成和改進,
我的理解是:對于某個功能一開始按最方便最適應需求的方式做,不一定最好。在項目發展和開發過程中,但有更好的方式和方法時,就開始重構。
2. 公司目前的流程是RUP的,本來RUP也是強調迭代的,不過當項目一直在面臨新功能(需求)開發的壓力,以及人手不夠時(開發5個,測試3個),對于舊系統的重構和測試就直接面臨“巨大”的成本問題,往往就擱置,即無限期推遲了。

而這樣的結果是RUP名存實亡,實際上是一個瀑布式的開發。
對于公司來說,項目面臨的巨大風險,一旦需求變更,工作所需的人天將大大增加,項目變的不可控。
對于個人,代碼沒有及時重構,主觀上影響了新寫代碼的審美感,客觀上造成更多更難修補的代碼,一旦代碼沉積下來,單元測試將變的困難,代碼的測試將更多的依靠于集成測試,此時個人的精力不得不忙于改bug,沒有時間思考,個人的進步也就談不上了。

如何平衡迭代開發和成本控制的矛盾,對于項目經理來說是一個很大的考驗。