軟體工作總結

來源:互聯網
上載者:User
    最近在網上看到了下文,感覺對經驗不是很多的開發人員來說,比較有價值,因此就把它貼過來,希望對新手能夠有所協助.

前階段開發中存在的問題, 及改進建議(下面提到的問題在任何軟體公司都會碰到,所以出現也是很正常,在今天討論後,建議大家在今後的團隊運作中盡量避免)

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的名言與大家共勉

個體和互動              勝過     過程和工具
可以工作的軟體      勝過    面面俱到的文檔
客戶合作                  勝過    合約談判
響應變化                  勝過    遵循計劃

雖然右項也具有價值,但我們認為左項具有更大的價值。

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.