開發Java Web平台型項目吐槽
本人是某985大學的一名研究生,讀研之後,鮮有時間搞科研寫論文。大部分時間都耗在開發導師安排的項目上。
本來本人對此也樂此不疲,因為學電腦嘛。應該注重動手能力,幹點活也無可厚非。之前接觸的大都是.Net項目,
很少參與Java Web方向的項目。自從去年接手現在的項目,才體會到什麼是真正的軟體產品。什麼是使用者需求? 規範
編碼的重要性。勸以後的程式猿切勿重蹈本人覆轍,踏本人踏過的坑。
接下來,本人把在開發中遇到問題進行總結。
1.在接手項目之前,先要瞭解自身技術實力的高低,評估項目的總體難度,做到有的放矢。可以開發一些難度稍低的項目先練練手,而後再接大型的複雜的項目開發,積累和磨練技術實力。本人領導對項目困難難度估計不足,使用者要求過高,程式猿邊學習邊開發,效率低下,導致項目嚴重拖期,引起甲方不滿。
2.要做好需求分析,急於下手,會讓你得不償失,走更多的彎路。這裡提示一下:軟體工程這本書是多麼重要啊。原來真的忽視它了。
3.對使用者的需求要有大致判斷,拒絕“無理”需求。雖然大部分的時候,使用者自己可能對需求也不是很清楚。他需要程式猿做出樣本Demo,然後決定是否按這個樣式開發下去。如果有必要,最好讓使用者在需求規格說明書上籤字,以防改來改去,讓程式猿煩不勝煩。本人做的這個項目,甲方領導初始提出一種頁面樣式,感覺不滿意,改了5遍,做了5個Demo,最後又改回第一版。讓程式猿哭笑不得。
4.“有人說,讓一個程式猿發瘋的最好辦法是改兩遍需求”。這話實在太對了。開發項目,應該保持良好的耐心,對使用者修改需求有良好的認識。要認識到不改是不正常的,有問題要儘早暴露,越積越多,最後就沒法弄了。
5.團隊內要分工明確,有嚴格的項目進度計劃。嚴格按照開發議程表進行。
6.對需要對接第三方系統的,要事先留好介面,以免後期難以在項目中添加介面。
7.項目代碼編寫要規範,嚴格的分模組開發,以防後期代碼過多難以管理,分檔案,分目錄是十分有必要的。
8.演算法基礎和數學功底永遠是程式猿的寶劍,要好好學習。當然英語也非常重要。
9.有時社會關係學比寫代碼更重要,如何讓使用者認識到需求變更對項目進度的影響。如何讓使用者調整上線計劃。這些都需要良好的溝通。
10.最後一點,積累的重要性。不管是技術積累,還是其他學科的知識積累都異常重要。多看看其他優秀產品的設計說明對少走彎路大有裨益。
以上是本人對專案管理的一點點基本心得,歡迎大神吐槽。