-
1 # 雲峰網際網路
-
2 # Java猿
從業務複雜度上考慮,越複雜的系統越不好維護,複雜的系統程式碼和演算法肯定很複雜,如果設計不好,幾乎就是個定時炸彈
-
3 # 知識邦
1.可理解性
軟體可理解性表現為外來讀者理解軟體的結構、功能、介面和內部處理過程的難易程度,模組化(模組結構良好,高內聚,松耦合)、詳細的設計文件、結構化設計、程式內部的文件和良好的高階程式設計語言等,都對提高軟體的可理解性有重要貢獻。
2,可測試性
診斷和測試的容易程度取決於軟體容易理解的程度。良好的文件對診新和測試是至關重要的,此外,軟體結構、可用的測試工具和除錯工具,以及以前設計的測試過程也都是非常重要的。維護人員應該能夠得到在開發階段用過的測試方案,以便進行迴歸測試。在設計階段應該盡力把軟體設計成容易測試和容易診斷的。
對於程式模組來說,可以用程式複雜度來度量它的可測試性,模組的環形複雜度越大,可執行的路徑就越多,因此,全面測試它的難度就高。
3.可修改性
軟體容易修改的程度和本書第5章講過的設計原理和啟發規劃直接有關。耦合、內聚、資訊穩藏,區域性化、控制域與作用域的關係等,都影響軟體的可修改性。
4.可移植性
軟體可移植性指的是,把程式從一種計算環境(硬體配置和作業系統)轉移到另一種計算環境的難易程度,把與硬體,操作系以及其他外部裝置有關的程式程式碼集中放到特定的程式模組中,可以把因環境變化而必須修改的程式侷限在少數程式模組中,從而降低修改的難度。
5.可重用性
所謂重用( reuse)是指同一事物不做修改或稍加改動就在不同環境中多次重複使用。大量使用可重用的軟體構件來開發軟體,可以從下述兩個方面提高款件的可維護性:
(1)通常,可重用的軟體構件在開發時都經過很嚴格的測試,可靠性比較高,且在每次重用過程中都會發現並清除一些錯誤,隨著時間推移,這樣的構件將變成實質上無誤的,因此,軟體中使用的可重用構件越多,軟體的可靠性越高,改正性維護需求就越少
(2)很容易修改可重用的軟體構件使之再次應用在新環境中,因此,軟體中使用的可重用構件越多,適應性和完善性維護也就越容易。
回覆列表
決定軟體可維護性的因素,主要有以下幾個方面:
1.系統程式碼的質量。例如:軟體的架構、程式碼的框架及程式設計師程式碼的規範問題。程式碼中結構是否合理,變數命名是否規範,程式碼中註釋是否詳細,這些都會影響到系統的維護成本。
2.系統文件是否完善。例如:概要設計文件、詳細設計文件、資料字典、介面文件等。文件的有無及詳細程度,這些都直接影響到軟體的維護成本。
3.團隊人員的穩定性。如果團隊的人員流動比較大,新人接手專案,中間有個熟悉原有系統程式碼的成本,同時編碼風格的差異,也會造成系統維護成本的變化。