無用代碼堆積的這種現(xiàn)象是軟件開發(fā)當中非常普遍的,對于需求的頻繁修改問題,主要的根源還是在于沒有弄清開發(fā)這款軟件的目的是什么,最終決定代碼是否有用應該取決于用戶,如代碼具備的功能復合用戶的需求、具備業(yè)務價值、這樣就是有用的;

需求更改和修改代碼是在軟件開發(fā)過程中很正常的一件事情,但是這個不確定性在一定范圍內(nèi)有效,所以最佳解決方案就是軟件迭代開發(fā),迭代增量式開發(fā),將整個開發(fā)周期分解成若干個時間段,每到一個固定時間就對軟件進行一次迭代,每次迭代需要進行一次全面的測試和版本更新;對開發(fā)成果進行質(zhì)量評測,這個過程需要聽取用戶的意見,以便于即使調(diào)整優(yōu)化,避免無效的需求;
在軟件開發(fā)之前,需要技術負責人準備相關文檔,確定技術分工和協(xié)同完成的部分,還需要進行代碼Review,以降低代碼復雜度為目標,如不同技術之間的代碼時長互相影響,就可以考慮這類技術開發(fā)獨立模塊,降低項目影響;另外測試團隊應該有白盒、效率、單元測試等各類專職人員,最好完成一個功能就交給測試,
最后,軟件開發(fā)是一件復雜的工作,為防止避免過程出錯,需要摸索并建立完整的代碼編寫規(guī)范、變量命名規(guī)則、層次化設計、類和接口設計、最后到代碼Review都很清楚,軟件開發(fā)最重要的不是寫代碼,而是學會解決問題;