0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

基于模型的设计优势及实现ROI框架的开发

电子设计 来源:百度学术 作者:Mathworks 2020-10-13 10:00 次阅读

随着客户需求范围的扩大和复杂性的增加,系统的逻辑与控制软件的规模和复杂性也随之扩大和增加。当各机构需要在越来越紧迫的时限内开发飞机和汽车应用所需的数百万行代码时,他们发现传统的开发流程已不再能够满足质量与时间的目标要求。将基于模型的设计用于嵌入式系统开发,可在开发过程早期发现缺陷并减少潜在缺陷总数,从而可以降低成本。基于模型的设计可以帮助公司在更短时间内以更低成本开发出质量更高的系统,具有颇具竞争力的优势。

传统开发方法对比基于模型的设计

在传统开发流程中,需求、设计、实现和测试任务在不同的工具环境下依次执行,其中涉及多个人工步骤(图1)。使用Microsoft Word或IBM DOORS等工具以文本方式捕获需求。不同设计使用针对该领域的不同工具实现,这使得系统级测试一直要到在软件或硬件中实现后才能执行。然后人工将设计转换成代码,这是个耗时且容易引入缺陷的过程。每个阶段中都会引入一些缺陷,从而使测试阶段成为要发现之前阶段中所积累的所有缺陷的清道夫。因此,测试阶段占到整个开发时间和成本的大头。缺少公用工具环境、多个人工步骤以及后期才能发现缺陷等因素都会延长开发时间、增加开发成本。

基于模型的设计优势及实现ROI框架的开发

图 1. 传统开发方法需要许多会引入缺陷的不必要的人工步骤。

基于模型的设计(图2)以和传统流程相同的需求开始。但是,这些需求并不作为文本规范的基础,而是用于以模型的形式开发可执行规范。工程师使用这些模型来明确需求与规范。然后对这些模型进行细化,以开发需求更具体的设计。使用基于模型的设计工具,工程师可以在系统级对设计进行仿真,在实现之前发现界面缺陷。完成设计之后,工程师借助这些模型自动生成产品级代码和测试用例。此工作流程使工程师们从需求到测试阶段都能够处于同一环境中,从而减少了人工工作量。此外,当工程师们在模型中仿真可执行规范来验证其是否满足需求时,在需求阶段即可开始测试。这样便可及早发现和消除缺陷,降低开发总成本。

图 2. 基于模型的设计在整个开发过程中使用系统级模型作为可执行规范。这种设计方法支持系统级和组件级设计与仿真、自动代码生成以及连续测试与验证。

基于模型设计的优势

相比采用传统方法的机构,采用基于模型设计的机构可将成本降低20%到60% 。成本节约主要得益于更准确的需求分析以及早期和连续的测试与验证。由于使用了模型来仿真需求和设计,因此可在开发流程中早的多地发现缺陷;而处理早期发现的缺陷可成百上千倍地降低成本(图3)。

图 3 基于模型的设计可将缺陷发现提前到开发阶段早期。

使用基于模型设计的 ROI 框架量化节约的成本

采用基于模型设计 的ROI 框架来进行评估。根据项目大小、团队规模和其它因素,该框架可使用基本构造性成本模型(COCOMO)计算出传统开发的成本,然后减去基于模型设计所节约的成本,即可获得基于模型设计的开发成本。之所以选用基本COCOMO模型原因是该模型是一种广泛用于航空和国防工业的通用参数成本估算工具,在上两个领域,采购成本的可计算性要求由缜密的模型来进行软件成本估算。然后便可通过计算软件成本和项目团队培训成本来计算ROI。该框架使用由软件工程协会(SEI)、电气电子工程师协会(IEEE) 和行业研究所规定的指标。由于项目规模、现有流程和使用基于模型设计的团队的专业水准因行业和公司而异,因此可针对特定的项目和团队自定义基于模型设计的ROI框架。

我们看一个有500,000行代码的软件项目基线案例。使用基本COCOMO模型可以算出使用传统方法的开发成本大约为600万美元。为了计算基于模型的设计相比传统方法所节约的成本,每个开发阶段(需求、设计、实现和测试)都要根据行业指标进行分析。然后便可汇总出所节约的总成本,并从传统开发成本中将其减去。在本例中,基于模型设计的成本为300万美元,相比传统方法节约了50%。

为了实现50%的成本节约,该框架会检查基于模型设计所消除的传统开发流程中的低效情况,并根据行业指标和平均值计算出所节约成本。因每个开发阶段节约的成本是分别计算的,因此该框架适用于逐步采用基于模型设计的情况。

下文将讨论其中一种低效需求情况,以此来说明该框架是如何工作的。在需求阶段,使用模型来发现不明确、不一致或不可测试的需求,这使工程师能够更大比例地发现缺陷。基线案例的该增加比例假设为9%。在需求阶段发现这些缺陷,意味着可以避免开发阶段后期成本高昂的返工。未发现的这9%的缺陷乘以解决该类缺陷的平均时常即为部分需求成本的节约量,而该缺陷的根本原因在于不正确的需求。在基线案例中,各需求缺陷的平均处理时长为4.5小时。根据该计算,基于模型的设计可节约2,025个工程小时。图4演示了处理需求分析缺陷(pain point)的框架部分。该框架还包含其它七个处理不同低效情况的部分。

图 4. ROI 框架可计算通过在早期修正不正确需求而节约的工程小时数。

本例中,汇总整个开发过程所节约的成本时会发现,节约主要来自需求和测试阶段(图5)。这得益于更为全面的需求分析,从而减少了遗留到后续阶段的缺陷。简言之,更好的需求有助于更好的设计实现。尽早和连续的测试使得可在引入缺陷的各阶段本身就能发现并处理这些缺陷,这样就减少了遗留在软件中的潜在缺陷、降低了整体开发成本。

图 5. 需求和测试阶段节约的成本占总节约成本的大部分

MathWorks与采用基于模型设计的航空与汽车企业合作时,ROI框架有助于引导这一采用过程,使企业能够发现可立即、显著地从转用基于模型的设计中获益的领域。

本文小结

对大多数企业而言,投资新技术和新流程/工艺是一种有风险的尝试。本文介绍的投资回报计算旨在提供投资基于模型设计的替代分析方法。除了证明投资的合理性,ROI框架还可以使设计团队发现基于模型的设计可以带来最大节约的领域,以及通过进一步研究可大幅降低成本的领域。

责任编辑:gt

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 嵌入式
    +关注

    关注

    4981

    文章

    18281

    浏览量

    288422
  • 汽车电子
    +关注

    关注

    2999

    文章

    7451

    浏览量

    161581
  • 飞机
    +关注

    关注

    7

    文章

    1156

    浏览量

    39041
收藏 人收藏

    评论

    相关推荐

    labview 图像处理中,如何实现附件图中这样的ROI区域选择

    `假如我想选择图中绿色部分为ROI,该如何实现呢?假如我想选择图中绿色部分为ROI,该如何实现呢?假如我想选择图中绿色部分为ROI,该如何
    发表于 09-02 14:17

    LABVIEW视觉ROI

    请教下论坛的各位大神,感兴趣区ROI如何实现自动缩小?举个例子,我圈定某个图案为ROI区域,但图案周边还有其他空白区域,如何缩小ROI的边界 ?
    发表于 11-19 11:49

    请问在一副图像中画一个ROI如何实现复制矩阵ROI

    `在一副图像上画一个ROI,怎么实现矩阵复制多个ROI,比如随机画一个矩形ROI,如何生成一个10X10个ROIs,请问如何可以实现,附图:
    发表于 04-22 21:02

    实现SDR所需的开发方法有哪些

    认识促使下一代通信无线电的一个新设计方法的产生。该方法基于更高层次抽象描述,采用“基于模型的设计”思想,其核心为基于“与实现无关的模型(IIM)”和“特定实现
    发表于 05-28 08:10

    ROI

    提取roi提取roi 提取roi提取roi提取roi
    发表于 12-16 10:40

    传感驱动模型框架原理和传感器抽象驱动适配开发过程分析

    (传感器)驱动模型。Sensor驱动模型主要为上层提供稳定接口能力,对驱动开发者提供开放的接口实现和抽象的配置接口能力。传感器模型
    发表于 03-29 11:38

    OpenHarmony应用开发-ArkUI方舟开发框架简析

    范式持续演进,为开发者提供更丰富、更强大的能力。 方舟开发框架示意图 二、不同应用类型支持的开发范式 根据所选用OpenHarmony应用模型
    发表于 04-23 09:35

    OpenHarmony应用模型的构成要素与Stage优势

    应用开发更简单、高效。 二、Stage主推模型优势 Stage模型之所以成为主推模型,源于其设计思想。Stage
    发表于 09-26 16:48

    如何用opencv实现感兴趣区域ROI的选取

    感兴趣区域(Region of Interest, ROI)的选取,一般有两种情形:1)已知ROI在图像中的位置;2)ROI在图像中的位置未知。
    发表于 12-01 14:22 3.5w次阅读

    一种问题框架模型驱动技术现结合的方法

    ,仍是一个亟待解决的问题。文中提出了一种问题框架模型驱动技术相结合的方法,其可将问题模型转换为UML( Unified Modeling Language)需求模型中的用例图和概念类
    发表于 04-23 10:48 4次下载
    一种问题<b class='flag-5'>框架</b>与<b class='flag-5'>模型</b>驱动技术现结合的方法

    RT-Thread设备模型框架及创建注册设备的实现

    RT-Thread设备模型框架及创建注册设备的实现方式介绍如下:
    的头像 发表于 05-28 10:38 1810次阅读
    RT-Thread设备<b class='flag-5'>模型</b><b class='flag-5'>框架</b>及创建注册设备的<b class='flag-5'>实现</b>

    云计算模型PaaS有哪些优势

    平台即服务(Platform as a Service,PaaS)是一种云计算服务模型,为开发人员提供了一个完整的应用开发和部署平台。PaaS模型具有许多
    的头像 发表于 06-25 15:32 563次阅读

    模型部署框架FastLLM实现细节解析

    接着 大模型部署框架 FastLLM 简要解析 这篇文章首先梳理了一下FastLLM的调用链和关键的数据结构,然后解析了 FastLLM 的一些实现细节和CPU/GPU后端实现采用的优
    的头像 发表于 07-27 10:48 862次阅读
    大<b class='flag-5'>模型</b>部署<b class='flag-5'>框架</b>FastLLM<b class='flag-5'>实现</b>细节解析

    谷歌模型框架是什么?有哪些功能和应用?

    谷歌模型框架(Google Model Framework)并不是一个特定的框架,而是指谷歌开发的一系列软件框架,用于支持机器学习和人工智能
    的头像 发表于 02-29 18:11 662次阅读

    谷歌模型框架是什么软件?谷歌模型框架怎么用?

    谷歌模型框架通常指的是谷歌开发的用于机器学习和人工智能的软件框架,其中最著名的是TensorFlow。TensorFlow是一个开源的机器学习框架
    的头像 发表于 03-01 16:25 236次阅读