0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

知識分享 | 輕松實現(xiàn)優(yōu)質(zhì)建模

北匯信息POLELINK ? 2024-09-12 08:08 ? 次閱讀


在知識分享欄目中,我們會定期與讀者分享來自MES模賽思的基于模型的軟件開發(fā)相關(guān)Know-How干貨,關(guān)注公眾號,隨時掌握基于模型的軟件設(shè)計的技術(shù)知識。

輕松實現(xiàn)優(yōu)質(zhì)建模

前言

在基于模型的開發(fā)(MBD)領(lǐng)域,模型的質(zhì)量對于最終產(chǎn)品的成功至關(guān)重要。通過閱讀本文,您可了解如何提升模型質(zhì)量,并在整個開發(fā)過程中確保模型的一致性和質(zhì)量。

什么是更好的建模?

更好的建模,也被稱為是創(chuàng)建卓越軟件模型的方法,對于開發(fā)高質(zhì)量的軟件至關(guān)重要。這一方法的關(guān)鍵方面包括通過精心的布局和設(shè)計保持一致的外觀,確保對象和信息不被隱藏或遮擋,并遵循結(jié)構(gòu)化的方法。例如,信號流應(yīng)當(dāng)遵循從左到右的方向,應(yīng)避免信號線交叉,所有模塊名稱的位置應(yīng)當(dāng)固定在特定位置以保持一致性。這種全面的方法可確保模型不僅在視覺上清晰明確,更能保證模型的健壯性和無誤,最終提高代碼質(zhì)量。

如何讓模型變得更好?

為了實現(xiàn)更好的模型,關(guān)注幾個關(guān)鍵方面非常重要。以下是其中部分內(nèi)容的詳細(xì)解析:

1. 一致的布局和設(shè)計:

局和設(shè)計對于模型具有良好的建模風(fēng)格相當(dāng)重要,有助于創(chuàng)建外觀一致的更好的模型。例如,確定模型輸入端口和輸出端口的數(shù)量十分重要。隨意的建模風(fēng)格可能會對模型的可讀性和可理解性有重大影響,這也是為什么需要通過通用風(fēng)格指南來確保模型易于理解的原因,尤其是對于外部評審人員來說。

信號流:信號流應(yīng)當(dāng)遵循從左至右的方向,即從左側(cè)的所有輸入端口到位于右側(cè)的所有輸出端口。

信號線交叉:應(yīng)避免或明確信號線交叉。

模塊名稱:所有模塊名稱的位置都應(yīng)固定在一個特定的位置,比如模塊下方。

1bfd894c-709b-11ef-bb4b-92fbcf53809c.png

圖1: 從左至右的信號流

2. 可讀性和可理解性:

為了確保模型易于理解,通用風(fēng)格指南必不可少。模型的設(shè)計不應(yīng)隱藏或遮擋相關(guān)對象和信息。例如,有些模塊可能難以識別,這使得他們是否是常量或其數(shù)值的含義不夠清楚。一個擁有良好設(shè)計的模型應(yīng)當(dāng)確保模塊清晰可識別、大小合適,并對常量明確命名,以避免混淆。

魔法常量:"Magic constants(魔法常量)"是來源或含義不明確的值,應(yīng)當(dāng)避免。這些不明確的值可導(dǎo)致誤解和錯誤。風(fēng)格指南建議在工作區(qū)中對常量進行命名和定義,以此來增加可理解性和可維護性,幫助區(qū)分不同的常量并明確它們在模型中的作用。

信號命名:一致的信號命名可提升數(shù)據(jù)流的可理解性,并減少維護工作量??傮w上講,它還有助于提高整個模型的可理解性。

1c1166ce-709b-11ef-bb4b-92fbcf53809c.gif

圖2: 信號流的可讀性和可理解性

3. 健壯性和避免錯誤:

除了確保模型布局的一致性和清晰的可讀性,建模風(fēng)格指南同樣強調(diào)模型的健壯性,并避免易出錯的建模模式。這些指南旨在提升生成代碼的可測試性和質(zhì)量。比如,一個設(shè)計不當(dāng)?shù)哪P涂赡軐?dǎo)致功能問題。此處考慮一個有三個操作數(shù)的乘積運算模塊;根據(jù)信號流的順序和數(shù)據(jù)類型,此操作可能會產(chǎn)生不同的結(jié)果,從而潛在地導(dǎo)致錯誤。為了避免這樣的問題,應(yīng)當(dāng)采用級聯(lián)(cascade)方式進行建模操作,即根據(jù)要求明確定義操作的步驟順序。通過將以上所有推薦考慮在內(nèi)并應(yīng)用風(fēng)格指南,最終的模型的健壯性和可靠性更加優(yōu)秀,功能性顯著提升,并且降低出錯的可能性。

強數(shù)據(jù)類型:信號和接口的數(shù)據(jù)類型需強類型化,因為不一致的數(shù)據(jù)類型會導(dǎo)致代碼效率低下、精度降低、或范圍違規(guī)。

如何實現(xiàn)更好的模型?

在MBD流程中,提高模型質(zhì)量對于交付成功的最終產(chǎn)品至關(guān)重要。MES Model Examiner (MXAM)和MES Model & Refactor (MoRe)是實現(xiàn)這一目標(biāo)必不可少的工具。值得一提的是,現(xiàn)在MoRe已集成在所有MXAM用戶許可證中,用戶獲得了使用高級建模功能的權(quán)限。

MXAM提供全面的靜態(tài)分析,確保模型符合AUTOSAR和ISO 26262等標(biāo)準(zhǔn)。它評估模型結(jié)構(gòu)和度量指標(biāo),并提供檢查建模規(guī)范的最優(yōu)方法。這有助于保持模型布局和設(shè)計的一致性,使模型在視覺上清晰易讀。同時,MXAM還能自動修復(fù)違背建模規(guī)范的地方,避免”魔法常量“和確保命名慣例清晰明確,提升模型的可讀性和可理解性。

MoRe與MXAM相輔相成,通過在Simulink中自動創(chuàng)建符合建模規(guī)范的模型布局,顯著降低模型重構(gòu)時間,并提升一致性。這樣自動化幫助最大程度上減少手動錯誤,提高模型的健壯性和可靠性。通過確保以級聯(lián)(cascade)方式進行建模操作,MoRe降低了功能問題出現(xiàn)的可能性,使模型健壯性提升,并且無錯誤。

MXAM和MoRe可共同簡化開發(fā)流程,確保創(chuàng)建模型的設(shè)計一致、易于理解、健壯且不易出錯。這樣的集成最終會帶來更高質(zhì)量的軟件開發(fā)和更高效的工作流程。

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • 信號
    +關(guān)注

    關(guān)注

    11

    文章

    2791

    瀏覽量

    76757
  • MES
    MES
    +關(guān)注

    關(guān)注

    5

    文章

    913

    瀏覽量

    29793
  • MBD
    MBD
    +關(guān)注

    關(guān)注

    0

    文章

    25

    瀏覽量

    8966
收藏 人收藏

    評論

    相關(guān)推薦

    基于labview的小車測試系統(tǒng)軌道建模實現(xiàn)

    我是個初學(xué)者 請問前輩們基于labview的小車測試系統(tǒng)軌道建模實現(xiàn)怎么做啊如果有做過的發(fā)一份 感激不盡??!~~ 親!{:soso_e183:}
    發(fā)表于 04-09 11:24

    軟件工程之全程建模實現(xiàn)

    本帖最后由 lee_st 于 2016-11-7 10:40 編輯 軟件工程之全程建模實現(xiàn),45m,分3個壓縮包
    發(fā)表于 11-07 10:36

    木雕的掃描建模如何實現(xiàn)?

    `木雕的掃描建模如何實現(xiàn)?隨著3D雕刻設(shè)備在木雕行業(yè)的普及,一臺數(shù)控立體雕刻機可以同時制作數(shù)個立體或平面木雕工藝品,大大簡化傳統(tǒng)木雕行業(yè)的雕刻周期與難度。而3D雕刻工作前提是要有完整的木雕3D模型
    發(fā)表于 07-31 11:49

    如何輕松實現(xiàn)對步進電機的控制?

    如何輕松實現(xiàn)對步進電機的控制?
    發(fā)表于 10-15 06:02

    如何輕松實現(xiàn)傳感器信號調(diào)理

    教你如何輕松實現(xiàn)傳感器信號的調(diào)理。
    發(fā)表于 08-03 10:39 ?47次下載

    網(wǎng)絡(luò)管理服務(wù)行為建模實現(xiàn)

    基于服務(wù)的軟件開發(fā)方法,圍繞網(wǎng)絡(luò)管理服務(wù)系統(tǒng)形式化建模,通過對網(wǎng)管服務(wù)活動建模,實現(xiàn)了一個基于服務(wù)的網(wǎng)絡(luò)管理系統(tǒng)。提出的網(wǎng)絡(luò)管理服務(wù)系統(tǒng)建模方法可以較好的
    發(fā)表于 12-25 16:27 ?15次下載

    Magma推出下一代知識產(chǎn)權(quán)參數(shù)特征化及建模工具

    Magma推出下一代知識產(chǎn)權(quán)參數(shù)特征化及建模工具 Magma宣布推出業(yè)界標(biāo)準(zhǔn)SiliconSmart產(chǎn)品線新產(chǎn)品——下一代知識產(chǎn)權(quán)參數(shù)特征化及建模工具SiliconSmart ACE
    發(fā)表于 12-22 08:38 ?1085次閱讀

    《全面詳解LTE:MATLAB建模、仿真與實現(xiàn)》.PPT

    全面詳解LTE:MATLAB建模、仿真與實現(xiàn)
    發(fā)表于 05-21 11:09 ?15次下載

    關(guān)于圖神經(jīng)網(wǎng)絡(luò)對知識圖譜的建模淺解

    隨著對圖神經(jīng)網(wǎng)絡(luò)研究的深入,越來越多的研究者開始使用更具表達力的圖神經(jīng)網(wǎng)絡(luò)對知識圖譜進行建模。
    的頭像 發(fā)表于 04-03 10:37 ?2662次閱讀
    關(guān)于圖神經(jīng)網(wǎng)絡(luò)對<b class='flag-5'>知識</b>圖譜的<b class='flag-5'>建模</b>淺解

    輕松實現(xiàn)Apache Tomcat集群負(fù)載均衡

    輕松實現(xiàn)Apache Tomcat集群負(fù)載均衡(安徽理士電源技術(shù)有限公司6一Qw一45R12V45Ah)-輕松實現(xiàn)Apache,Tomcat集群和負(fù)載均衡? ? ? ? ? ??
    發(fā)表于 08-31 10:43 ?4次下載
    <b class='flag-5'>輕松</b><b class='flag-5'>實現(xiàn)</b>Apache Tomcat集群負(fù)載均衡

    在MATLAB/simulink中建模時的兩種不同實現(xiàn)方式

    導(dǎo)讀:本期文章主要介紹在MATLAB/simulink中建模時的兩種不同實現(xiàn)方式,一種是直接用現(xiàn)成的文件庫中的模塊進行搭建,一種是用Sfunction代碼實現(xiàn)。接下來以電壓型磁鏈觀測器為建模
    的頭像 發(fā)表于 09-15 10:07 ?1890次閱讀

    MATLAB/simulink中兩種實現(xiàn)建模方式的優(yōu)勢

    導(dǎo)讀:本期文章主要介紹在MATLAB/simulink中建模時的兩種不同實現(xiàn)方式,一種是直接用現(xiàn)成的文件庫中的模塊進行搭建,一種是用Sfunction代碼實現(xiàn)。接下來以電壓型磁鏈觀測器為建模
    的頭像 發(fā)表于 09-15 10:10 ?5048次閱讀

    優(yōu)質(zhì)LDO基礎(chǔ)知識分享

    本節(jié)分享下LDO的基礎(chǔ)知識,主要來源于Ti的文檔《LDO基礎(chǔ)知識》。
    的頭像 發(fā)表于 03-26 11:03 ?1353次閱讀

    新型數(shù)據(jù)知識驅(qū)動的元宇宙建模框架方案

    本文采用深度學(xué)習(xí)為主要研究手段,運用知識圖譜、生成式對抗網(wǎng)絡(luò)、“元宇宙”等相關(guān)理論和方法,結(jié)合提出的數(shù)據(jù)知識驅(qū)動的新型框架,針對以實現(xiàn)傳統(tǒng)作戰(zhàn)環(huán)境建模的表現(xiàn)力差、擴展性弱的現(xiàn)狀進行一種
    發(fā)表于 05-11 15:23 ?759次閱讀
    新型數(shù)據(jù)<b class='flag-5'>知識</b>驅(qū)動的元宇宙<b class='flag-5'>建模</b>框架方案

    PowerPAD?輕松實現(xiàn)

    電子發(fā)燒友網(wǎng)站提供《PowerPAD?輕松實現(xiàn).pdf》資料免費下載
    發(fā)表于 10-29 10:08 ?0次下載
    PowerPAD?<b class='flag-5'>輕松</b><b class='flag-5'>實現(xiàn)</b>