在前期寫了兩篇關于CBB的文章,有很多朋友看后進行了深入的討論,其中,關于如何進行模塊化設計有了更深的思考,這里結合在漢捷咨詢實踐經驗,總結下文,以作拋磚引玉,歡迎有興趣的朋友繼續進行深入討論。
CBB幾個定義
在分享前,我們先做幾個定義,確定彼此的概念一致,達成共識,這是討論的基礎。
01、什么是模塊:
在硬件開發中的模塊指一種裝配好的硬件功能單元,可以和其他部件一起使用、組合或更換。在軟件編程中的模塊,以功能塊為單位進行程序設計,最后通過模塊選擇和組合構成最終產品。由此可見,通俗講模塊就是已開發完成的實現某個(或多個)功能的單元。
02、什么是模塊化:
是指解決一個復雜問題時,自頂向下逐層把系統劃分成若干模塊的過程,從而獲得效率與質量的操作手段。
03、什么是模塊化設計:
是一種設計理論與實踐。為了取得產品系列開發的最佳效益,從系統分解、組件封裝的觀點出發,研究產品(或系統)的構成形式;蛘哒f,將系統功能劃分為離散的、可擴展和可重復使用的模塊。
為什么要進行“模塊化設計”
也就是“模塊化設計”的好處。
1)便于提取和應用CBB,促進技術共享
提高效率:設計、測試、工藝、生產、維護;
減低成本:設計成本、生產成本、采購成本、維護成本;提升產品質量穩定性;
2)有利于開展異步并行開發,縮短產品開發周期
模塊化設計過程
3.1 總體框圖
從上圖可見,步驟二、三是具體開發模塊的過程,這在各個創新性的企業中研發部門都會將之實現,這里就不贅述了。我們重點關注第一步:系統總體設計。
3.2 系統總體設計
系統的總體設計,主要分以下幾個步驟:
1)功能分解
2)模塊差異分析
3)通用件提取與應用規劃
4)專用模塊提取
5)選配件提取與應用規劃
6)接口與協議設計
3.2.1 功能分解
輸入:《需求規格》。
輸出:《總體方案》。其核心是系統的設計規劃,包括系統架構、接口/界面、集成協議及測試標準等,識別出可模塊化的常見的功能/組件。
基本原則:高內聚,松耦合。
3.2.2 模塊差異分析
從產品平臺下的產品系列的角度,分析模塊是否可以共用,確定模塊類別。并完成下表——《模塊類別分析表》
3.2.3 通用件提取與應用規劃
設計上基本類似的模塊可由統一的CBB來實現。注意:通用件、選配件都可以是CBB。以XXPC機為例,完成下表——《通用件分析表》
圖片
3.2.4 專用模塊提取
專用模塊只是適合該產品(單產品),各企業研發部門都有類似開發經驗,按黑盒設計產品功能,并分配產品需求即可,這里不展開討論。
3.2.5 選配件提取與應用規劃
選配件有相似的功能和結構,但因技術或成本原因無法做成一個CBB時,要重點考慮接口統一。如3.2.3 XXPC機示例,顯示器、硬盤就是選配件,并完成下表——《選配件分析表》
3.2.6 接口與協議設計
在進行此步驟時,漢捷咨詢建議注意掌握兩個原則:
簡化原則:無論是裝配/物理連接,還是信號/邏輯連接,接口都盡可能簡單。
統一原則:統一的接口將大大減少模塊的數量。
根據產品實際情況,完成下表——《接口與協議分析表》。(以XXPC機為例)
小結
以上漢捷咨詢顧問簡單介紹了產品模塊化設計的過程,重點還是在第一步“系統總體設計”。我們只有認真地分析,確實想好如何設計產品系列的“通用模塊”、“選配模塊”,才能真正受益于“模塊化設計”的好處。這個思考與分析的過程恰恰是我們很多企業不具備的能力,我們企業研發人員往往上來就急于設計實現,對于模塊在產品系列中的價值很少考慮。因此才會出現不斷重復設計,產品穩定性沒有保障,產品降成本成為口號,產品開發周期長,開發效率低等問題。我們常說“成本是設計出來的”,希望大家能好好體會這句話的真正含義。
【相關文章】
·淺析產品開發中的測試活動
·產品開發流程存在的六大主要問題