透過模型架構工程,連結設計測試工作流程

綜覽

即使設計與測試團隊之間緊密相連,也仍然會有摩擦點,可能沒有足夠的效率應付開發過程。NI 與 MathWorks® 深知這種情況,因此聯手透過模型架構工程來進一步連結設計與測試工作流程。我們的目標是透過數位執行緒來連結設計與測試團隊,以加快開發過程、增加設計與測試的迭代機會,並且讓開發產品提早進入測試階段。

內容

設計團隊測試團隊之間障礙摩擦點

​原本緊密相連、有效率的合作可能會因為以下幾個障礙而受阻: 

  • 採用適合即時執行作業的演算法,這種模型通常必須透過在開發機器上運行的設計軟體來編譯,才能匯入執行測試軟體的即時控制器並使用 
  • 決定與設計模型互動的最佳方法 
  • 儀控化程式碼以取得有意義的結果 
  • 使用硬體或實驗室 

現在來看看設計工程師 Dan 以及測試工程師 Tessa 的工作。Dan 負責編寫油電混合車 (HEV) 系統控制的演算法。他主要使用的是 MathWorks MATLAB® 與 Simulink® 軟體,對於即時安裝作業不是很了解。他目前正在更新控制器程式碼以整合新的感測器輸入。

Dan 直接將設計交給 Tessa (所謂的「把問題丟給別人」),然而兩人之間的協調次數並不多。接著,Tessa 透過硬體迴路 (HIL) 測試方法與工具,測試 ECU 控制軟體與 I/O。她主要使用的是 NI 軟硬體測試系統。對於控制演算法實作方式,她並不是很了解。她目前的工作是要針對 Dan 設計的 HEV 控制測試新系統。由於沒有整合式工具,Tessa 無法輕易取得 Dan 的更新程式以在測試系統上執行。

Dan 與 Tessa 之間的互動聽起來是不是很熟悉?這就是設計團隊與測試團隊之間,無法有效率合作最常見的寫照。 

NI 許多客戶的設計團隊與測試團隊之間,都因為以下這些摩擦點而有類似的問題: 

  • 團隊之間的任務交接沒有經過任何協調作業 (所謂的「把問題丟給別人」) 
  • 版本相容性 
  • 幾乎或根本沒有相關記錄的工作流程 
  • 設計工具與測試工具之間的平台問題 (Windows/Linux、桌上型/Real-Time、32 位元/64 位元、編譯器差別等) 

這些挑戰導致組織無法透過同級最佳的方法,達成測試面面俱到的目標。

提升設計測試作業效率

多數工程師會盡可能進行各方面的測試,主要是因為測試不足所可能產生的隱藏成本與風險:重複作業的成本、實際使用發現問題而須承擔法律責任、產品召回,以及對品牌形象與市佔率的不良影響。但是如時間 (時程)、成本 (預算)、人員 (專業知識) 等資源有限,測試範圍通常只能到一定程度,無法針對一個問題再投入更多資源。反之,只要從根本上改變測試方法與流程,就能在既有限制內提升工作效率,進而達成測試面面俱到的目標。因此,有能力進行這種轉變就能大幅提升競爭優勢,因為轉變後能事半功倍、將風險降至最低,同時最大化方案實施的品質與效能。

透過模型架構工程來連結設計與測試工作流程,是提升設計與測試效率的基本方法,甚至能產生二次效應。這種方法讓開發產品能夠提早進入測試階段 (從開發構想到實驗室,再從實驗室到實際測試),如此工程師便能提早發先錯誤、縮短演算法除錯時間,並且更有效率地在設計/測試週期間迭代作業。

數位執行緒

要建立這種數位執行緒 (這是團隊用來溝通的常見語言),就要先建立可互通的工具鏈。

圖 1:透過數位執行緒資料、程式碼與軟體元件連結的設計與測試工作流程。

團隊需要轉譯層才能進行雙向的資訊交流,進而減少重複作業、除錯與重複執行作業。MathWorks 與 NI 了解模型是設計團隊與測試團隊之間最主要的溝通方式,所以我們努力進行這一方面的研究。

模型當中富含各種資訊。當中說明了系統的各種功能,並且提供基本概念,讓相關人員能順利建立測試案例並量化測試需求。將設計作業所用的相同模型整合到測試工作流程中,即可透過常見平台,針對受測裝置與元件來評估效能與模擬實際的情況。如此一來就能讓測試團隊不再受限於工具的需求,進而能夠與設計人員以相同語言溝通。

藉由以模型為團隊間主要溝通方式來建立數位執行緒,即可提升開發效率。這種方法透過專門用來合作的互通工具,將設計與測試工作流程連結。也因此,這種解決方案能讓 Dan 與 Tessa 更合作無間、測試頻率提升,進而讓組織提升競爭優勢。

MathWorks 與 NI 已提升 Simulink 與 VeriStand 之間的相容性。我們現在採用版本一致的方式 (例如 MATLAB R2020a 版本與 VeriStand R2020 相容)。同時我們也持續合作來進行後續的改善作業,例如將目前聯合工作流程中更多手動的作業自動化,以及針對機型階層中的訊號與參數提供更深入的分析。

圖 2:Mathworks Simulink 模型整合至即時測試軟體。

 

連結設計測試工作流程

圖 3: 針對模型迴路與硬體迴路測試,從設計到驗證測試的軟硬體工具整合。

後續步驟

 

部分內容是由 MathWorks 的 Paul Barnard 所提供。