我的專案開發經驗積累總結

eBusinessMan發表於2015-01-24

本人,學生,菜鳥級別,僅僅做過三個專案,積累了一丁點自己的經驗,現在釋出出來-----一是為了廣大前輩指正,二是希望自己能給入門者一點點有用的參考。(我會不斷總結積累然後不斷修正這邊文件的

1.      熟悉業務流程:不斷地親身嘗試走業務流程

2.      劃分業務模組,把所有的流通的表單收集起來(用於後面資料庫設計)

3.      分析需求,劃分功能模組,並且進行每個模組資料流程走向,對應的頁面設計

4.      根據需求和蒐集的表單進行整合,然後設計資料庫:欄位的型別,適當長度,是否有預設值,恰當的註釋,是否null;但所有的必須欄位都提煉出來了,在根據

每個功能模組內部的資料流對資料庫的表進行適當冗餘(可以減少複雜查詢,以提高查詢效能)。

5.      分別對每個功能模組進行程式碼設計:

a.            根據資料流圖和設計好的頁面確立好VO(對應於一個頁面或者頁面中劃分的模組),PO,DAO(interface),ServiceHandler, ServiceHandler處理過程中用到的工具類utility, 以及Controller(Servlet)

b.            根據整體業務確立上面哪些物件類(VO/PO)是要存放在application/session中的(例如1.首頁等所有使用者都可以而且經常訪問的資訊應該在伺服器啟動時就存進去;2使用者登入後的部分個人資訊或者其他經常用到的資訊,應該在使用者登入時就把它們存放進session中)

由於專案有時候是多人負責不同模組的,所以在程式碼設計的時候,應該有一個總負責人將各個功能或者不同層之間的介面設計好,這樣就可以實現非同步開發(讓快的人先開發),更好的分工,更快的團隊整體開發效率了!!例如總負責人先定義設計出DAOinteface並弄好實現類DAOImpl,然後呼叫者就可以先直接呼叫DAOImpl來開發自己負責的板塊;後面的話負責人在慢慢地新增程式碼到要實現類的成員方法中。

6.      接下來就可以整合這些設計好的程式碼了。當然在整合的過程中要注意演算法的設計(是否過於複雜?是否有更合理處理過程?)

7.      以上過程下面的每一步都是以上面設計好的內容為設計依據!所以上面的內容有設計瑕疵的話,就會影響下面的設計。A.假如業務流程都搞錯了的話,那麼第二步往下的都隨之而錯!!!整個專案都是不符合要求的,都是錯的!!B.假如功能業務模組/模組劃分不合理或不夠科學,就可能會導致下面的演算法設計極其複雜繁瑣,這樣不僅加大了開發難度更是增添了他人閱讀的難度降低了可讀性,進而增加了後期維護成本----也就是說整個軟體生命週期都是令人痛苦的!所以一個好的開頭是多麼的重要!!所以建議大家在做專案的過程中寧願慢點來細緻謹慎設計也不要為了追求開發進度而大意設計,這樣的後果只會令你更痛苦!!

8.      當然開頭的設計不可能做到完美或者說設計好就不再修改了。沒有設計(即使你很細緻了)能夠一步就到位的。所以開發過程中經常會出現回頭去更改設計的情況這是無可避免的,也是為了令我們的設計更完善更符合實際的方法!

以上的我以後會不斷的完善之!



來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29900383/viewspace-1413021/,如需轉載,請註明出處,否則將追究法律責任。

相關文章