產品特寫

如何判斷軟體系統架構的優劣

系統的內聚和耦合度

這是保證一個系統的架構是否符合軟體工程原則的首要標準。

層次的清晰和簡潔性

系統每個部分完成功能和目標必須是明確的,同樣的功能,應該只在一個地方實現。如果某個功能可以在系統不同的地方實現,將會給後來的開發和維護帶來問題。

系統應該簡單明瞭,過於複雜的系統架構,會帶來不必要的成本和維護難度。在盡可能的情況下,一個部分應該完成一個單獨並且完整的功能。

易於實現性

如果系統架構的實現非常困難,甚至超出團隊現有的技術能力,團隊不得不花很多的精力用於架構的開發,這對於整個專案來說,可能會得不償失。簡單就是美。

可升級和可擴充性

一個系統框架,受設計時技術條件的限制,或者設計者本人對系統認識的局限,可能不會考慮到今後所有的變化。但是,系統必須為將來可能的變化做好準備,能夠在今後,在目前已有的 基礎上進行演進,但不會影響原有的應用。介面技術,是在這個方面普遍應用的技巧。

是否有利於團隊合作開發

一個好的系統架構,不僅僅只是從技術的角度來看,而且,它還應該適用于團隊開發模型,可以方便一個開發團隊中各個不同角色的互相協作。例如,將Web頁面和業務邏輯元件分開,可是使頁面設計人員和程式師的工作分開來同步進行而不會互相影響。

性能

性能對於軟體系統來說是很重要的,但是,為了能讓系統得到更大的靈活性,可能不得不在性能和其他方面取得平衡。另外一個方面,由於硬體技術的飛速發展和價格的下降,性能的問題往往可以通過使用更好的硬體來獲得提升。

閱讀更多