[发明专利]基于模型的可视化软件开发工具实现方法有效
申请号: | 202310084136.4 | 申请日: | 2023-01-16 |
公开(公告)号: | CN115964033B | 公开(公告)日: | 2023-09-26 |
发明(设计)人: | 李浩宇;贾张涛;冯大成;张霄霄;张建伟;王磊;陶金龙;安恒;李雅斯;王云则;庞皓明;金玉川;孔祥炳;邵飒 | 申请(专利权)人: | 北京计算机技术及应用研究所 |
主分类号: | G06F8/33 | 分类号: | G06F8/33;G06F8/34;G06F8/38 |
代理公司: | 中国兵器工业集团公司专利中心 11011 | 代理人: | 辛海明 |
地址: | 100854*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 模型 可视化 软件 开发 工具 实现 方法 | ||
本发明涉及一种基于模型的可视化软件开发工具实现方法,属于软件系统领域。本发明提出一种基于模型的可视化软件开发工具OnModel,本发明的工具通过扩展Lustre语言、文法设计、元模型设计为模型元素提供理论支撑和约束;以Vue3作为基础开发框架,通过Antv/X6图形编辑器、qasar多功能框架、Electron多平台开发框架等纯前端工具实现建模元素和工具界面;之后生成模型所对应的Lustre代码作为中间语言文件;最后通过调用清华王生原老师团队工具L2C实现可运行C代码的生成。基于模型的软件开发方法对我国关键领域的软件开发具有重要意义,实现了从基于模型软件设计到可执行代码生成全过程。
技术领域
本发明属于软件系统领域,具体涉及一种基于模型的可视化软件开发工具实现方法。
背景技术
近年来,我国航天领域一直处于飞速发展的阶段,在各大工程中也取得了令人瞩目的成就,航天型号软件的规模与复杂度也在指数级增加,而传统航天型号软件开发方法还处于人工编码阶段,面对如此庞大且复杂的系统会出现耗时过多、代码存在漏洞等问题,这对传统的软件开发模式产生了巨大的冲击。另一方面,随着基于模型的软件相关概念的提出,如基于模型的系统工程(Model Based Systems Enginerring,MBSE)、基于模型的软件设计(Model Based Design,MBD)等,传统的软件开发方式正在逐渐被基于模型的开发方式所替代。
基于模型的软件开发根据对系统进行需求分析和架构设计,建立一个符合需求的完整软件系统模型,并对模型进行验证、仿真、代码生成和代码调试。相比于传统方法,基于模型的方法可以通过可视化模型使开发人员更加直观地理解认知系统功能,将精力集中于功能逻辑的实现而不用在开发细节上耗费过多时间。基于模型的软件开发方法在航空航天、汽车制造等领域已得到广泛应用,也诞生了许多基于模型的工具和方法如UML、AADL、SysML、MagicDraw、Simulink、Scade等,每一类工具或方法都有各自的优势和擅长的领域,这些工具对于促进我国关键领域软件技术发展水平有重要意义。
但是当下国内在这一领域的发展还处于起步阶段,基于以上情况,通过对Scade深入理解提出一种基于模型的可视化软件开发技术,通过拓展Lustre语言进行可视化建模,最后生成对应的代码文件。
发明内容
(一)要解决的技术问题
本发明要解决的技术问题是如何提供一种基于模型的可视化软件开发工具实现方法。
(二)技术方案
为了解决上述技术问题,本发明提出一种基于模型的可视化软件开发工具实现方法,该方法包括如下步骤:
第一步、扩展Lustre语言
在Lustre语言的基础上,引入了状态机和更多时序相关的功能算子,形成扩展Lustre语言;
第二步、文法设计
对扩展Lustre语言进行对应文法定义,为后续元模型构建以及建模元素设计提供基础;
第三步、元模型构建
元模型定义了某一模型的规范,规定了组成模型的各种元素之间的关系,元模型与第二步中的文法一致,还对部分建模元素进行抽象;
第四步、建模元素实现
通过对元模型的实例化得到具体可视化建模元素;
第五步、Lustre代码生成
基于第四步实现的建模元素,进行可视化建模过程,得到系统功能和结构的直观表达,之后通过将模型转化为持久化XML文件进行保存,并通过X2L工具实现从持久化文件到Lustre代码的转化;
第六步、可运行C代码生成
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京计算机技术及应用研究所,未经北京计算机技术及应用研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202310084136.4/2.html,转载请声明来源钻瓜专利网。