基于模型的系统工程(MBSE),瞬间高大上了

img

\2. 为什么要做MBSE

  1. 当前的挑战

在当前航空、航天、汽车等行业,对工业产品易用性、舒适性、安全性等方面要求的提高,导致当前工业产品电气化、智能化程度越来越高,产品复杂度的量级不断跃升。

img

基于文本的系统设计方式存在天然局限,导致其越来越难以应对当前的复杂产品设计挑战,比如:

基于自然语言描述的设计文档一致性差,沟通效率低且容易出现歧义;

自然语言容易引入形容词等模糊描述,很难保证准确性

文本描述的设计元素之间无法实现追溯分析,当出现设计变更时很难对变更影响进行准确评估

基于文本的设计方案无法进行前期仿真验证

设计方案无法与详细设计阶段的数字化模型(如CAD)关联…

而MBSE技术的出现为应对这些问题提供了有效的应对手段。

  1. MBSE带来的价值

一项新技术最终的价值体现,一般有:

节省成本,省钱

提高效率,省时间

保证产品质量,提高产品竞争力

产品质量提升→产品问题减少→研发周期&运维成本降低→省钱&省时间

产品竞争力提高→销量提升→企业利润提高

基于上述几个角度,我们分别从几个系统设计活动– 需求分析&验证、系统设计、系统验证,来具体分析MBSE到底可以为企业带来哪些价值:

(红色代表文本无法实现而MBSE能够实现的功能,蓝色代表MBSE相对文本的优势功能)

img

\3. 怎么做MBSE?示例

MBSE是系统设计工作通过数字化设计手段的实现,因此在工作流程上与传统系统工程并无太大差异,仍然分为需求分析、系统设计、系统验证、需求确认四个步骤。

具体实现方式案例如下:

  1. 需求分析

实现需求条目化分类,并对特殊需求(性能需求)进行量化描述:

img

需求类型示例

img

需求量化描述

  1. 系统设计

依照特定的系统设计逻辑方法,完成系统功能、结构设计,以及参数化表征,并将设计内容与需求进行关联,确保追溯关系完整。

img

系统设计

img

系统设计与需求的关联追溯

  1. 系统验证

基于数字化系统设计模型进行系统仿真,根据设计需求进行系统验证工作

img

系统模型仿真验证

  1. 需求确认

将设计参数值与量化的需求约束进行验证

img

需求确认

\4. 掌握MBSE需要学习哪些内容

MBSE的三大支撑:方法论、系统设计语言、系统建模工具。

  1. MBSE方法论

MBSE方法论是设计师进行系统设计活动的指南,不同行业、不同产品在实际产品研发方面都有其特殊的地方,因此在方法论方面会有不同的选择。

以下提供了当前MBSE方法论方面能够查找到的部分公开资料,可作为企业在实践MBSE项目时的参考。

企业在实际项目中选择哪一种方法论、对方法论做哪些特定的裁剪,需要基于企业当前研发流程的实际需求来分析和确定,而不能直接照搬某个“理论模型”。

关于MBSE方法论,2008年有相关研究汇总了当时的相关理论 - “Survey of Model-BasedSystems Engineering (MBSE) Methodologies”, 报告中涵盖了以下6类不同的MBSE方法论:

INCOSE Object-Oriented SystemsEngineering Method (OOSEM)

IBM Rational Telelogic Harmony-SE

IBM Rational Unified Process for Systems Engineering (RUP-SE)

Vitech Model-Based Systems Engineering (MBSE) Methodology

JPL State Analysis (SA) Methodology | JPL State Analysis (SA)

Dori Object-Process Methodology (OPM)

在此之后,作为补充,http://www.omgwiki.org/MBSE中的“Methodology and Metrics”文章里又增加了几类MBSE方法论的介绍,包含:

Weilkiens Systems Modeling Process (SYSMOD)

Fernandez Process Pipelines in OO Architectures (PPOOA)

An Ontology for State Analysis: Formalizing the Mapping to SysML

ISO-15288, OOSEM and Model-Based Submarine Design

Alstom ASAP Methodology

Pattern-Based Systems Engineering (PBSE)

Arcadia, a model-basedengineering method

以上这些仅仅为MBSE方法论的部分内容,在此之外,仍有一些公司或研究者针对特定应用场景提出了自己的方法论。比如,当前在国内工程界应用广泛的MagicDraw工具,其母公司NoMagic(现被达索析统公司收购)也独立提出自己的MagicGrid方法论。

  1. 系统设计语言

系统设计语言是描述系统设计的标准"语法",当前MBSE领域主流的系统设计语言是OMG维护和发布的SysML – System Modeling Language,该语言基于UML发展而来,并专门针对系统设计领域特点进行了扩展。

(SysML虽为主流MBSE建模语言,但仍有部分软件工具通过非SysML语言进行模型描述,此处不做展开。)

SysML是一种图形化设计语言,共包含9类图,如下所示:

img

9类图分别用来描述系统设计过程中的需求、系统结构、系统行为和系统参数:

img

  1. 系统建模工具

目前国内工程领域主要的MBSE工具为NoMagic(达索) MagicDraw和IBM Rhapsody,其他如Sparx Systems的Enterprise Architecture, 达索CATIA RFLP, Siemens PLM, ANSYS Scade等也有部分应用。

更多MBSE建模工具可参考:

https://mbse4u.com/sysml-tools

https://mbseworks.com/mbse-tools

MBSE建模工具的选择需要考虑因素过多,需要根据不同企业具体情况具体分析,此处不做过多展开。


MBSE是什么、有什么用、怎么学习?

已剪辑自: http://www.zhiruisiwei.com/html/articles/article_001.html

MBSE技术从理论到实践,逐渐在一些企业得到应用,在国内掀起了一股热潮。究竟MBSE是什么,如何学习和应用,本文做了一个入门的简单介绍。在文章最后,列出了作者学习MBSE技术中接触到的一些参考资料,推荐给读者,希望对大家学习MBSE技术有用。

学习和应用MBSE技术,离不开软件工具的支持。可在网站服务页面下载中文版、国产化的MBSE建模软件工具:智睿思维基于模型的系统工程软件(MBSES)。

1.MBSE是什么?

“MBSE”是“基于模型的系统工程”的英文“Model-Based Systems Engineering”的首字母缩写。从字面意思能看出MBSE这个概念有三个核心的概念“系统”、“系统工程”、“基于模型”。我们从“国际系统工程协会”(INCOSE)的出版物“系统工程手册”中摘录上面三个概念的定义如下:

“系统”(System):系统是相互作用的多个部分组成的为完成特定目的的一个整体。从这个基本概念看,这个世界上很多东西都可以称为“系统”。但是工程技术人员的研究领域中,这个“系统”主要是指软、硬件组成的产品、平台等。这个“系统”也包括其中的流程、人员、信息、技术和设施等。至于纯“人”的社会系统则不是这个技术研究的范围。

“系统工程”(SE,Systems Engineering):系统工程是一种使系统能够成功实现的跨学科的方法和手段。“系统工程”工作包括:在“系统”开发周期的早期阶段定义客户需求及功能,并文档化。然后进行设计综合和系统确认。同时考虑整个系统各方面的问题,包括系统运行、成本、进度、性能、培训、支持、试验、制造和销毁等。这里的“系统工程”简单说指的是产品研发过程的技术方法。

“基于模型的系统工程”(MBSE):“支持以概念设计阶段开始,并持续贯穿于开发和后期的生命周期阶段的系统需求、设计、分析、验证和确认活动的正规化建模应用。”用通俗一点语言解释的话,MBSE就是开发一个产品、平台的时候,把产品、平台研发中涉及到的各个方面用“计算机数据模型”方式建立起来,形成一个统一的“系统模型”。

2.MBSE有什么用?

MBSE有什么用,也就是建立那个统一的计算机数据化的“系统模型”有啥用?

在没有使用MBSE技术之前,“系统工程”工作成果就是一堆的“文档”。这些文档也是电子化的,只不过它们都是“非结构化”的数据,不能称为“模型”数据。相比“基于文档的系统工程”方法,MBSE方法具有很多优势。

在INCOSE 的《系统工程手册》中,总结了以下几点MBSE的好处:

(1)改善了开发系统的利益相关者(客户、项目管理人员、系统工程师、软硬件工程师、测试人员和各专业工程学科的人员)之间的沟通。

因为MBSE是基于标准的建模语言建立的规范化说明,相当于大家交流的语言是统一的。而基于自然语言的“文档”容易在不同专业的人员之间产生歧义。而且MBSE的这个“模型化说明”在各类专业人员之间传递时候是可以通过计算机软件转换为各自专业的语言、数据,而自然语言是很难实现这个转换的。但是,这要求大家要新学习一门通用的“系统建模语言”。如果大家都不懂这门语言的话,只会产生和上面的观点相反的结果。

(2)通过使系统模型能够被从多个侧面进行观察,以及提供变更影响分析的能力, 提高了管理复杂系统的能力。

这个是说系统的同一套数据模型,可以从不同的专业角度进行浏览和分析。而且由于系统模型数据之间有相互关联关系,如果那个地方更改,可以通过关系查询到所有影响到的地方。这个对于非结构化的文档来说,是做不到,或者很麻烦。即使文档也能提供从各个专业角度的说明,但是这些文档数据之间没有关联,可以说是基于各自多套数据来源的,而不是唯一的一套数据模型。这个观点也是在说“MBSE提高了开发复杂系统的能力”。

(3)通过提供可评估一致性、正确性和完善性的无歧义的且精确的系统模型,提升了产品质量。

产品的质量问题有很多是设计问题,而这些设计问题并不简简单单是设计人员的水平问题、责任心问题,而更多是复杂过程本身不可避免的会出现的质量问题。想让所有人不犯错是不可能的,而只能是通过技术手段使人少犯错。MBSE是一种使人少犯错的技术手段,因为MBSE建立的模型可以通过计算机软件自动的检查错误。相比之下传统的文档容易隐藏错误,一个笔误可能造成严重损失。

(4)通过以更加标准化的方式捕获信息并高效地利用模型驱动方法固有的内置抽象机制,增强知识捕获及信息的复用。这会导致缩短开发周期和更低的维护成本,以改进设计。

这个观点是说系统模型数据更容易复用,比文档手段的“复制、粘贴、替换”文本效率要高。模型数据的复用,可以采取“引用”方式。而且可以建立共用的模型库,提高知识的复用率。

(5)通过提供概念清晰且无歧义的表达,提升教授与学习系统工程基本原理的能力。学会了MBSE,就掌握了系统工程的方法。

3.MBSE的方法有哪些?

在系统工程技术结合计算机信息技术发展的过程中,其实有多种技术方向在发展。这些技术途径都可以称为MBSE。这其中主要的方法有6种:INCOSE(就是前面说的那个国际系统工程协会)的面向对象的系统工程方法(OOSEM)方法、IBM的Rational Telelogic Harmony-SE、IBM的RUP系统工程方法、Vitech MBSE方法论、JPL状态分析(SA)方法和Dori的对象过程方法(OPM)。

这里先简单说一下INCOSE的OOSEM方法。OOSEM是一种自顶向下、场景驱动建模过程,它使用SysML(系统建模语言,Systems Modeling Language)语言作为建模语言,支持系统的分析、定义、设计、和验证。该过程使用面向对象的概念和其它建模方法来构建灵活和可扩展的系统,使其能够适应技术的不断进化和需求的变更。

OOSEM过程的主要活动包括:

(1) 分析利益相关者的需求。这个工作简单说就是分析使用产品的用户的需求,就是用户最初始的想法是啥,想怎么用这个产品、需要产品有那些功能。了解用户当前情况是什么、有什么局限,未来可以有哪些提升。

(2) 分析系统需求。简单说就是产品本身应该提供那些功能,用户是如何使用产品的。在这个过程中要推导出产品的功能需求、接口需求、数据需求和性能需求。

(3) 定义逻辑架构。先将系统分解为多个逻辑组件,这些逻辑组件是暂且虚拟的一个部件,它能够满足产品的各项需求。但是具体用什么硬件或软件的方案来实现它,在下一步的物理架构设计中实现。将系统方案分为逻辑架构和物理架构两个层级,有利于减少需求和技术变化对设计的影响。

(4) 综合候选的物理架构。可能建立几个和逻辑元素相对应的物理架构,以进行对比分析,确定哪一个最合适。物理架构的元素是具体产品部件,包括软件和硬件。前面逻辑架构中的功能,有些是可以用软件来实现,也可以用硬件来实现,或者用不同型号规格的硬件来实现。

(5) 优化并评价备选方案。对上述备选的物理架构方案进行优选,利用模型的数据,进行性能、可靠性、生命周期成本、人员和其它专业工程相关的模型参数的分析,对备选方案进行优化,确定一个最终的方案。

(6) 管理需求的可追踪性。为保证需求、架构、设计、分析与验证元素之间的可追踪性,系统模型应该始终保持需求和其它元素的关系。设计过程就是一个不断填补空白需求的实现过程。当需求变动时,利用建立的需求实现关系,追踪和评估需求变更对系统设计、分析和验证元素的影响,并及时更改系统方案,使其和需求保持一致。

(7) 确认和验证系统。该活动验证系统设计满足其需求,并确认哪些需求满足利益相关者的需求。开发验证计划、程序和方法。

OOSEM的活动过程,用SysML的活动图,可以表示如下:

img

4.MBSE怎么学习?

MBSE技术已经成为系统工程师必须掌握的基本知识。有些单位甚至要求设计师持证上岗。至于怎么学习MBSE技术,最简单的方法,那就是使用“智睿思维基于模型的系统工程软件”(MBSES)。如果有问题,可以参考软件在线手册。或者进一步关注“智睿思维MBSE”微信公众号,通过在线服务咨询客服。

如果您想系统了解一些MBSE、SysML建模的相关知识,下面列举了国内可以买得到或可以获取的书籍和技术资料。电子版的技术资料,如果您获取有困难,也可以尝试联系公众号客户,也许他有可以分享给您。

(1)《SysML精粹》,(美)Lenny Delligatti著,侯伯薇、朱艳兰译,机械工业出版社。

这本书是讲述MBSE入门技术的一本经典好书。内容浅显易懂,结合案例,对建模技术说明的很透彻。这本书出版的时间比较早。当时还是SysML1.3版的时候,现在是SysML1.6版,有些地方已经变动了。如果您发现这本书讲的和MBSES软件不一致的地方,也可能是SysML版本问题,您可以联系客服进一步解释。

推荐指数:★★★★★

(2)《SysML实践指南》,英文版名称《A Practical Guide to SysML The Systems Modeling Language》。互联网上有第二版中文翻译,英文版有电子书(第三版)。

这本书也是案例结合SysML语法介绍,还有一个章节专门讲OOSEM方法。可以说是MBSE方法论+SysML建模语言+案例的好书。

推荐指数:★★★★★

(3)INCOSE《系统工程手册》,张新国译,中英文对照,机械工业出版社。

很厚的一本书,900多页,网上有售。这本书是对整个系统工程技术的编著,其中有一个章节讲MBSE。内容不多,但是对了解MBSE在整个系统工程过程中的地位会有帮助。

推荐指数:★★★★

自我介绍一下,小编13年上海交大毕业,曾经在小公司待过,也去过华为、OPPO等大厂,18年进入阿里一直到现在。

深知大多数Go语言工程师,想要提升技能,往往是自己摸索成长或者是报班学习,但对于培训机构动则几千的学费,着实压力不小。自己不成体系的自学效果低效又漫长,而且极易碰到天花板技术停滞不前!

因此收集整理了一份《2024年Go语言全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友,同时减轻大家的负担。
img
img
img
img
img

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Golang知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Go)
img

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

RHw-1713022631611)]
[外链图片转存中…(img-AhZX9s48-1713022631612)]

既有适合小白学习的零基础资料,也有适合3年以上经验的小伙伴深入学习提升的进阶课程,基本涵盖了95%以上Golang知识点,真正体系化!

由于文件比较大,这里只是将部分目录大纲截图出来,每个节点里面都包含大厂面经、学习笔记、源码讲义、实战项目、讲解视频,并且后续会持续更新

如果你觉得这些内容对你有帮助,可以添加V获取:vip1024b (备注Go)
[外链图片转存中…(img-FXgkdDj1-1713022631612)]

一个人可以走的很快,但一群人才能走的更远。不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎扫码加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

《基于模型系统工程最佳实践》从方法论的角度,描述了基于模型系统工程最佳实践。主要从系统工程的视点出发,把系统开发的前期系统工程的工作任务、责任范围,以工作流的方式,解剖得淋漓尽致,为系统的后续开发和系统的确认与验证,提供了无缝衔接。本书以系统工程实践者为对象,通过众多截屏、注释和最佳实践技巧,帮助读者清晰理解工作流的细节。本书的目的是帮助读者在集成系统和软件开发中应用基于模型系统工程标准建模语言SysML。 第1章 绪论 1.1 范围 1.2 内容概述 第2章 HarmonySE基础 2.1 Rational集成系统嵌入式实时开发流程:Harmony 2.2 基于模型系统工程流程 2.2.1 需求分析 2.2.2 系统功能分析 2.2.3 设计综合 2.2.3.1 架构分析(权衡分析研究) 2.2.3.2 架构设计 2.2.4 系统工程交付 2.3 SysML应用于基于模型系统工程的基本工件 2.3.1 需求图 2.3.2 结构图 2.3.2.1 模块定义图 2.3.2.2 内部模块图 2.3.2.3 参数图 2.3.3 行为图 2.3.3.1 用例图 2.3.3.2 活动图 2.3.3.3 序列图 2.3.3.4 状态图 2.3.4 需求分析系统功能分析层次的工件关系 2.4 服务请求驱动的建模方法 第3章 Rhapsody项目结构 3.1 项目结构概览 3.2 需求分析套件包 3.3 功能分析套件包 3.4 设计综合套件包 3.4.1 架构分析套件包 3.4.2 架构设计套件包 3.5 系统层定义 第4章 案例:安全系统 4.1 案例工作流 4.2 创建Harmony项目结构 4.3 需求分析 4.3.1 DOORS:涉众需求的导入 4.3.2 DOORS:系统需求的导入 4.3.3 关联系统需求到涉众需求 4·3.4 DOORS一>Gateway->Rhapsody:导入系统需求 4.3.5 系统级用例定义 …… 第5章 交付到子系统开发
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值