前階段開發中存在的問題, 及改進建議(下面提到的問題在任何軟體公司都會碰到,所以出現也是很正常,在今天討論後,建議大家在今後的團隊運作中盡量避免)
1、前期需求不明,造成設計時目的不明確,開發時時常會因需求問題而困惑,測試人員也會提出一些需求建議,而由於已經開發完成,所以改動起來比較困難。
改進辦法:需求要完全明確是很難做到,但在區域性相對獨立功能上應該要盡量明確。如:盡量能明確註冊需要哪些資訊、每個表單是用什麼控制項、處於什麼範圍、列表顯示哪些字段、查詢需要什麼條件有明確的說明,這樣可以在後期測試時少掉一半的需求建議或bug。
2、原系統有規範但沒有較好的執行,由於團隊初成立時,無人嚴格把控各人的**規範、檔案存放、命名等等都存在著很大的問題,而這造成的結果就是後改**的時間比前面寫**的時間還要長。
改進辦法:專案組長需要每天都check成員**,保證每天的**都是相對規範。
3、設計要慎重,應該要足夠的考慮,以及和團隊的商議,原系統中有一些資料庫表的結構和字段值得商榷,如果前期可以大家討論一下,也許很多問題可以在後來重構中避免。
改進辦法:沒有人能一次就設計出完美的東西,需要及時的溝通,包括與客戶的反饋,與其他專案組成員的討論,這樣有助於降低開發時偏離需求的風險。也就是說,在開發之前題,是建立在設計者的想法有客戶的確認和開發人員的理解的基礎之上。
4、開發時因分工不明確,每個頁面可能團隊所有的人都有修改,這其實出問題的風險是非常大。事實證明,由於資料庫儲存過程是專人負責,所以不必要的 bug相對較少的,而ui層的不少問題其實都是後者根本不清楚前者的**意途所致(必要的注釋是起碼的習慣,松耦合的code是更好的**風格)。
改進辦法:資料層、邏輯層、ui層,以及ui的各個功能分工,都需要責任到人。
5、**中重複**較多,維護時時常會改了一處bug,卻在另一處出現同樣的問題,這顯然是重複帶來的災難。
改進辦法:開發時,只要是重複**,就需要考慮是否可以提煉成為函式,並考慮存放到合適的類中(也包括頁面html的重複),嚴禁簡單的ctrl+c到ctrl+v,這種避免重複**的做法看似相對麻煩,其實是可以大大減少維護風險。
6、計畫不能按期完成,大致三種原因,1、計畫不合理;2、人員沒有抓緊;3、因其它計畫外的原因造成延誤
改進辦法:制訂計畫專案組長需與相關成員討論以決定計畫完成日期,制訂時間需要科學合理,如果明確後,相關成員需要盡量按時完成,若有特殊原因,比如技術難題,計畫外的事情耽誤等等,需要給出理由。再由組長和成員共同商議解決時間,以保證全域性的進度不受影響。
7、早期沒有儲存過程測試,單元測試,頁面測試因需求不明,造成測試人員既是測試者又是需求提出和建議者。
改進辦法:需求制訂過程需要測試人員全面參與,達到了解足夠充分。測試時針對需求做測試用例,以需求為標準,判斷開發是否完成或有否錯誤。
8、前期頁面比較混亂,頁面布局、樣式比較混亂,到處都有如居中、加粗等html語句、列表顯示有5種樣式等等,造成後期重構非常麻煩。
改 進辦法:美工應該在需求制訂完成後就介入,進行頁面設計,然後.net的aspx頁面需要有專人處理,所有的樣式必須全部用css統一完成,表單驗證、頁 面跳轉需要在開發前完成(甚至最好可以經過測試),這需要介面設計人員(可能是美工也可能是架構師或介面專人)對需求充分了解。
9、專案計畫和管理主要以email和口頭傳達,過後無法跟蹤,造成時間表不明確,人員工作效率不夠高,有時很緊張,有時很輕鬆。
改進辦法:需有專案管理工具,比如vs 2005 team system或其它專案管理系統。每個人的工作任務需在其中體現,計畫安排和調整,相關負責人,延誤備註都需要記錄。讓開發人員保持乙個長期的、恆定的開發速度。
總之,由於早期開發時團隊人員不整、需求不明、規範實施不利、計畫有誤等等原因,造成系統開發出現些了問題,但之後有了一定的時間,所以重構已經取 得了不少成效,但所謂磨刀不誤砍柴工,前期的準備如果充分一些,對後期的維護就會好很多很多。由於時間關係,前期不可能做非常詳細的設計,事實上,即使做 了詳細設計也可能因需求的變更而效用不大,所以更多的是需要大家寫出可維護性、可擴充套件性和可復用性較好的**,以便更好的適應變化。
最後,以軟體大師robert c.martin的名言與大家共勉
個體和互動勝過 過程和工具
可以工作的軟體勝過 面面俱到的文件
客戶合作勝過 合同談判
響應變化勝過 遵循計畫
雖然右項也具有價值,但我們認為左項具有更大的價值。
專案完成後的小總結
專案完成了,突然想做個總結但是有點無從下手了。做之前對於客戶端給的介面很模式。然而定義好了格式要求就如此的愉快了。先說說專案主要實現的功能吧 1,按鍵精靈 2,獲取 資料 3,各種input輸入條件判斷 4,傳送資料 有json格式和string格式 5,獲取預警條件列表和預警結果列表,6,排序,7...
華創產品頁完成後的心得
從最開始寫產品頁的磕磕絆絆到最後的得心應手,學會到了特別多的東西 1.寫之前應該心裡有乙個大致的框架,div應該放在 又或者什麼div要巢狀在哪個div裡,布局很重要,不然後續工作麻煩不斷。2.儘量減少使用float,用多了整個頁面就混亂了,div的溢位就成為了可能。3.用無序列表來寫文字的時候消去...
個人部落格開發完成貼
專案上傳到了github上邊 是感興趣的同學可以看看,目前還有一些小問題還在處理之中。有什麼不足的地方還望大家指正。個人部落格開發完成了。實際應該是花了三周到四周吧,中間因為有事耽擱了。然後就一直在完善。中間學習了富文字編輯器的整合。使用的是ckeditor。還有font awesome的使用。風格...