軟體的模組化設計思維

軟體開發比一般的產品開發還要困難,一開始使用者並不清楚他們所需要的軟體需求,所以也無法告訴軟體設計者,而這些需求也很難預測出來,同時還有需求變動的風險。

因此,針對需求的不確定,軟體設計的方式應該做一些調整。從為需求而設計轉變成為延緩(Postponement)的設計策略,也就是為開發後續開發活動(實作、測試、組裝、配置)預留空間而設計,於是DTx(Design for xxx)的概念於是應運而生。這樣設計方式的好處是增加變化的彈性,當需求改變或確認以後,只要修改或進行差異化的實作,而設計是針對共通模組進行設計,模組化與差異化中間透過抽象類別或界面來達到去除需求變動所造成的衝擊或耦合關係,抽象類別與界面就是所謂的減震點(Decouple Point)。

也許有人認為這樣設計軟體並不容易,但對於設計而言,比目的、策略更重要的是而是設計所抱持的態度。不是為應付客戶需求而設計,而是滿足使用者最大利益及權衡技術成本間的最佳考量。有人會覺得,軟體多變的特質可能不容易作到模組化,但大量客製化會應用模組化的概念,不論產品開發及服務皆適用,而軟體設計本質是屬於服務,所以當然是適用的。

Please follow and like us:
分類: 分析設計建模, 設計原則, 軟體開發。這篇內容的永久連結

在〈軟體的模組化設計思維〉中有 5 則留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *