CN1928816A - 嵌入式系统软件的模型驱动与构件化开发方法 - Google Patents
嵌入式系统软件的模型驱动与构件化开发方法 Download PDFInfo
- Publication number
- CN1928816A CN1928816A CN 200610124600 CN200610124600A CN1928816A CN 1928816 A CN1928816 A CN 1928816A CN 200610124600 CN200610124600 CN 200610124600 CN 200610124600 A CN200610124600 A CN 200610124600A CN 1928816 A CN1928816 A CN 1928816A
- Authority
- CN
- China
- Prior art keywords
- model
- embedded
- code
- software
- driven
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Abstract
本发明公开了一种嵌入式系统软件的模型驱动与构件化开发方法,即:在模型驱动的框架下,将模型作为嵌入式软件开发的核心和基本元素,集成模型编辑、验证、模拟和模型编译技术,实现嵌入式系统模型的编辑、验证、模拟和代码的自动生成,并根据基于构件的软件开发方法,大规模重用嵌入式软构件。本发明能够有效地提高嵌入式系统软件的开发效率,为大规模开发高质量的软件系统提供了一种现实可行的方法,为研究代码自动生成提供了一个新的思路和较为完备的方法。
Description
技术领域
本发明属于计算机与自动化领域,特别是涉及一种嵌入式系统软件的模型驱动与构件化开发方法。
背景技术
目前嵌入式系统已经广泛渗透到国民经济各个领域,如制造业、过程控制、通讯、仪器、仪表、汽车、船舶、航空、航天、军事装备、消费类产品等。嵌入式软件开发有别于桌面软件系统开发的一个显著的特点是,它一般需要一个交叉编译和调试环境,即编辑和编译软件在主机上进行(如在PC机的Windows操作系统下),编译好的软件需要下载到目标机上运行(如在一个PPC的目标机上的VxWorks操作系统下),主机和目标机建立起通讯连接,并传输调试命令和数据。由于主机和目标机往往运行着不同的操作系统,而且处理器的体系结构也彼此不同,因此,提高了嵌入式系统软件开发的复杂性。为了满足嵌入式系统日益增长的需要,迫切需要改进传统的嵌入式系统软件开发方法。
目前,嵌入式系统软件开发面临的主要问题是,缺少一个统一的、集成的开发和验证环境,集成的开发平台的研究仍然不够成熟,这在文献Susanne Graf and Jozef Hooman,Correct Development of Embedded systems,EWSA04,2004等处有论述。目前,国内在嵌入式系统软件开发平台的研究方面还处于初级阶段,国外这方面的代表产品有美国I-Logix公司的著名产品Rhapsody 6.0,为嵌入式系统和软件技术带来了突破性进展。Rhapsody 6.0是遵循UML(Unified Model Language)2.0的模型驱动的(Model-Driven Development,MDD)软件开发平台,但是Rhapsody侧重的是模型阶段的开发,在自动代码生成方面存在不足。
另一方面,基于软构件开发软件的方法已经在软件工程的实际应用中取得了巨大的成功,成为近年来的研究热点。同时,基于IP构件库的设计技术将成为嵌入式系统设计的主流;IP构件库技术正在造就一个新兴的软件行业。因此,基于嵌入式软构件开发大规模的嵌入式系统软件,其应用前景广阔。
发明内容
本发明所要解决的技术问题是:为快速开发大规模的、高质量的嵌入式系统软件,提供一种嵌入式系统软件的模型驱动与构件化开发方法。
针对以上的问题,我们将软构件重用、模型验证、模拟技术和自动代码生成集成到一个统一的开发环境中,基于模型驱动的框架,提出一种嵌入式软件系统的模型驱动与构件化的开发方法。模型驱动的软件开发方法是在软件开发过程中的各个阶段生成不同的模型,并以这些模型为核心指导整个软件开发,该方法已经引起了业界的广泛关注。模型驱动框架(Model Driven Architecture MDA)是由OMG(Object Management Group)提出的一种基于UML、XMI、MOF、CWM等其他工业标准的框架,其核心是抽象出两个抽象级别的模型:用于表达业务逻辑的与平台无关的模型PIM(Platform Independent Models)和平台相关的模型PSM(Platform Specific Models)如J2EE等。基于MDA开发嵌入式系统软件是实现模型驱动的嵌入式软件开发的重要途径之一。为此,我们开发了基于MDA的嵌入式软件开发平台-EUP(Embedded UML Platform),用于实现在需求分析阶段生成系统的需求分析模型,并利用形式化验证、模拟技术对模型进行验证和模拟,以确保自动生成的代码的正确性,从而满足嵌入式系统软件开发的高可靠性要求。
本发明解决其技术问题采用以下的技术方案:
在模型驱动的框架下,将模型作为嵌入式系统软件开发的核心和基本元素,集成模型编辑、验证、模拟和模型编译技术,实现嵌入式系统模型到代码的自动生成,并根据基于构件的软件开发方法,大规模重用嵌入式软构件。该方法包括以下步骤:
(1)嵌入式系统软件开发的初期,在“模型编辑器”中构建与平台无关的模型PIM,其包括UML用例图、类图、状态图、对象图、顺序图、活动图、协作图等描述系统,用以帮助澄清用户需求;
(2)将绘制好的UML模型通过“模型检查器”检查其语法的正确性,使之确保在编辑器中生成的模型遵循UML2.0的元模型规范标准;
(3)将语法正确的UML模型通过“模型验证器”采用形式化的模型验证技术对其进行形式化的模型验证,以提供一个集成的验证环境,支持对系统模型的功能属性和非功能属性的验证;
(4)在模型模拟器中,对通过验证的UML模型进行模拟执行,分析设计好的PIM系统模型的整体动态行为,并且在模型验证器检测到模型不满足给定的属性约束时,能够模拟执行错误路径,从而方便开发者分析导致错误产生的原因;
(5)对设计好的PIM系统进行模型编译,实现系统模型到代码的自动转换,其方法是:把建立好的PIM模型送入“模型编译器”中进行编译,自动地生成基于抽象操作系统的与平台有关的源代码(如C、C++等),即PSM模型;
(6)进行构件组装,重用嵌入式软构件,其方法是:利用嵌入式系统软件开发平台EUP的模型编译器自动生成的系统模型所对应的代码框架,并将该代码框架和嵌入式软构件进行链接、组装后,使其经过操作系统适配器和对应的语言编译器的处理,生成依赖于特定嵌入式操作系统的PSM目标系统,然后将其传输到具体的嵌入式硬件中进行最终的测试和使用。
本发明对嵌入式系统软件的开发所带来的主要效果具体如下:
1.在模型驱动的框架中,将模型作为嵌入式软件开发过程中的核心和主干,集成模型编辑、验证、模拟技术及模型到代码的自动转换技术,为开发者提供了一个集成的开发和验证环境,最大限度的让系统、硬件、软件和测试工程师以更加灵活和优化的方式协同开发和交流。该方法能够有效地提高软件开发效率,为大规模开发高质量的嵌入式系统软件提供了一种现实可行的方法。该方法与传统的嵌入式系统软件开发方法相比,抽象级别提高了,开发者的工作重点是分析系统的业务逻辑,构建相应的系统模型,而不再需要反复修改代码,开发周期缩短了将近一半。
2.可视化建模技术与形式化模型验证技术的集合,促进了模型验证技术在工业生产中的广泛应用,提高了软件产品的质量,从而能够满足嵌入式系统软件高可靠性的需要。在设计阶段对系统模型进行验证,避免了设计错误蔓延到实现阶段,与传统的在代码生成以后,再进行系统的调试从而发现、修改错误相比,新方法能够提高代码质量,降低软件开发成本。
3.基于构件的软件开发方法,实现了嵌入式软构件的大规模复用,提高了软件开发效率。该方法可以将业务建模、需求分析、分析设计、开发测试、部署实施等活动有效的组织起来,提高应用软件产品开发过程的成熟度。此外,有利于应用软件产品开发商和最终客户积累业务软构件资源,促进应用软件产品开发的规模化、产业化,并提高生产能力。重用已有的软构件资源,使得现有的遗产系统能够在系统软件开发中继续被使用,节约了大量人力、物力,有效降低了软件开发成本,缩短了软件开发周期。
4.构建嵌入式应用领域的软构件库。制定相关国际技术标准,规范软构件市场,改善软构件产品质量,实现软构件资源的交流与共享。其长远目标是建立软件产业构件化生产的服务平台,提供软构件共享、交流以及咨询,为其它软件企业提供优质服务,致力于提升软件产业的整体技术水平,结合嵌入式应用领域、制造业信息化、电子政务、电子商务,打造软构件产业链,提升软构件市场的国内外竞争力,形成辐射全国的软构件服务应用市场。
5.提出了基于状态迁移距阵、状态设计模式和层次式状态机的自适应代码生成方法,能根据系统模型规模、时空复杂度约束自动选择代码生成策略,支持模型到代码的自动生成,目标代码支持C和C++两种语言,为研究代码自动生成提供了一个新的思路和较为完备的方法。
附图说明
图1模型驱动的嵌入式软件开发平台的系统结构;
图2MVC设计模式;
图3模型编辑器的结构设计;
图4Model的功能和关系;
图5View的功能和关系;
图6:EUP的集成验证环境;
图7Controller的功能和关系;
图8模型模拟器的功能模块划分;
图9模型编译器的结构设计;
具体实施方式
本发明的创新之处在于:在模型驱动框架下,将模型作为软件开发的核心和主干,集成模型编辑、验证、模拟及自动代码生成技术,实现模型驱动的嵌入式系统软件开发。同时,根据基于构件的软件开发方法,借助嵌入式软构件库的支持,大规模重用嵌入式软构件,为快速开发高质量的嵌入式系统软件提供了一种现实可行的方法。
下面结合实例及附图对本发明作进一步说明。
一.嵌入式系统软件的模型驱动与构件化开发方法
本方法包括以下步骤:
1.嵌入式软件开发的初期,在“模型编辑器”中构建与平台无关的模型PIM,如UML用例图、类图、状态图、对象图、顺序图、活动图、协作图等描述系统,用以帮助澄清用户需求;
2.将绘制好的UML模型通过“模型检查器”检查其语法的正确性,使之确保在编辑器中生成的模型遵循UML2.0的元模型规范标准;
3.将语法正确的UML模型通过“模型验证器”采用形式化的模型验证技术对其进行形式化的模型验证,以提供一个集成的验证环境,支持对系统模型的功能属性和非功能属性的验证;
4.在模型模拟器中,对通过验证的UML模型进行模拟,分析设计好的PIM系统模型的整体动态行为。由于状态图是一种“面向对象的可操作状态图”,可以被用来构建嵌入式系统的原型,并可通过“模型模拟器”模拟执行嵌入式系统的原型。此外,通过模拟执行错误路径,进行错误分析。
5.对设计好的PIM系统模型进行编译,实现系统模型到代码的自动转换,其方法是:把建立好的PIM模型送入“模型编译器”中进行编译,自动地生成基于抽象操作系统的与平台有关的源代码(如C、C++等),即PSM模型。这种代码生成方式提高了所生成的代码质量。
6.进行构件组装,重用嵌入式软构件,其方法是:利用嵌入式系统软件开发平台EUP(见图1)的模型编译器自动生成系统模型所对应的代码框架,并将该代码框架和嵌入式软构件进行链接、组装后,使其经过操作系统适配器和对应的语言编译器的处理,生成依赖于特定嵌入式操作系统的目标系统(PSM),即可被传输到具体的嵌入式硬件中进行最终的测试和使用。
二.理论基础
1.模型驱动的框架:
模型驱动框架(MDA)是一种对业务逻辑建立抽象模型,然后由抽象模型自动产生最终完备的应用程序的方法。MDA致力于提高软件开发行为的抽象级别,倡导将业务逻辑定义为精确的高层抽象模型,让开发人员从繁琐、重复的低级劳动中解脱出来,更多地关注业务逻辑层面。它代表了对象管理组织OMG定义的互操作性规范的一个革命性进步。
在MDA中,模型不再仅仅是描绘系统、辅助沟通的工具,而是软件开发的核心和主干。模型之间通过模型映射机制相互转换,从而保证了模型的可追溯性。软件的开发和更新过程就是模型自顶而下、逐步精化的过程。MDA的基本思想是,一切都是模型。
OMG将UML作为标准建模语言为用户提供可视化的建模环境和工具,并将UML作为MDA支持平台,利用UML来建模软件系统。在模型驱动的框架中,将模型编辑、验证、模拟及自动代码生成技术集成在一个统一的开发环境中,实现模型编辑、验证、模拟和自动代码生成,为嵌入式系统软件的开发提供一种新的、可行的开发方法。
2.形式化模型验证技术
模型验证是一种自动化的形式化验证技术,能够检测有限状态系统模型是否满足给定的属性约束,并且在不满足的时候,生成反例用以描述错误路径。模型验证技术的理论基础是自动机理论和时态逻辑,它对开发者的要求很高,必须具有模型验证的专业知识才能够将形式化的模型验证技术应用于实际开发中。为了便于一般的开发人员能够使用已有的模型验证工具,我们提出了结合可视化建模和形式化验证技术,将形式化验证技术封装在模型验证器中,实现UML模型的自动验证。
3.基于软构件开发嵌入式软件:
充分利用软构件库的注册、查找、更新、删除、导入和导出功能,从软构件库中检索到能实现特定功能的嵌入式软构件,根据基于软构件的软件开发方法,将自动生成的代码框架和已有的软构件进行链接、组装,生成最终的目标系统。此外,还可以将用户自定义的软构件添加到软构件库中,丰富嵌入式软构件库中的软构件。基于软构件开发嵌入式软件,实现了嵌入式软构件的大规模重用,提高了软件开发效率和质量,减少了软件开发成本,缩短了软件开发周期。
三.实现本方法所采用的功能模块
1.模型编辑器:图2描述了MVC(Model-View-Controller)模式中模型、视图和控制器三类对象之间的关系,模型(Model)是应用对象,视图(View)是它在屏幕上的表示,控制器(controller)定义了用户界面对用户输入的响应方式。MVC模式将三者分离,提高了灵活性和复用性。基于MVC设计模式,设计开发了模型编辑器,其结构框图如图3所示,其中模型存储是应用对象,负责保存UML模型;视图负责将模型中存储的UML模型显示在屏幕上;实现控制器功能的命令负责接收视图从屏幕上捕获的用户输入动作,并根据相应的命令要求对模型存储中存储的模型进行增加、删除与更改操作。
附图4、5、7分别给出了MVC设计模式在模型编辑器中的具体实现,其中图4描述了EUP中的模型编辑器中的实现MVC模式中的Model的功能和关系,图5描述了MVC模式中的View的功能和关系,图7描述MVC模式中的Controller的功能和关系。
2.模型检查器:
根据UML2.0元模型中定义的模型元素之间的约束,使用模型检查器检查模型编辑器中生成的UML模型是否符合UML2.0的元模型规范标准,实现UML模型的语法检查。
3.模型验证器:
(1)模型验证器包括功能属性的验证模块(UML Verification Environment,UVE)和非功能属性(Timed UML Verification Environment,TUVE)的验证模块,其提供了一个如图6所示集成的验证环境,实现了嵌入式系统模型的功能性和非功能性属性的验证,这里非功能性属性指时间属性。在TUVE中进行时间属性验证时,一方面,模型编辑器中生成的实时状态图通过实时状态图转换器生成实时的PROMELA程序,另一方面,使用RT-OCL(RealTime Object Control Language)示的实时约束可以通过RT-OCL2TLTL转换器生成带时间约束的LTL(Line Temporal Logic)公式;最后将实时PROMELA程序和TLTL作为模型验证工具RT-SPIN的输入,进行非功能属性的验证。在UVE中进行功能属性的验证时,模型编辑器中生成的UML状态图和属性约束分别转换成相对应的PROMELA程序和时态逻辑公式LTL,然后将它们作为模型验证工具SPIN的输入,进行功能属性的验证。模型验证器对系统模型进行验证时,当系统模型不满足属性约束时,生成描述错误路径的反例路径,并可以以文本或者顺序图的方式表示反例路径。
(2)模型验证器提供的主要功能及实现技术:
功能性属性的验证:如安全性、活性的验证。基于自动机理论和“on-the-fly”验证技术,对状态空间进行完全搜索,检查模型中存在的逻辑一致性,报告死锁、未指定的消息接收、标识不完整、竞争状态。在时态逻辑属性的验证方面,以模板的方式自动生成相应的线性时态逻辑公式,便于一般用户进行时态逻辑属性方面的验证工作。
强大的实时属性的验证:嵌入式系统通常对非功能属性的要求较高,特别是在实时系统中,模型必须满足特定的实时约束。通过引入时间自动机的相关概念和扩展after事件,对UML2..0的状态图进行了实时扩展。基于时间自动机的语义模型,利用模型验证技术(Symbolic technique)验证系统模型是否满足时间属性的约束。
错误路径的可视化显示:当验证器检测到错误后生成反例路径,用于跟踪导致错误产生的原因,为模型的修改提供了大量的反馈信息。为了便于用户分析理解验证结果,EUP提供了三种方式表示验证结果即文本、消息顺序图、高亮显示出错状态。这是EUP验证环境提供的重要功能之一,具有一定的创新性。
4.模型模拟器
基于层次自动机理论,提出UML模型的模拟算法,实现模拟器的主要功能,即能通过模拟执行UML模型直接分析系统模型的整体动态行为,并在发现错误的时候模拟执行错误路径,实现出错路径的再现,以方便用户定位错误,从而确保设计的系统模型能够真实、正确地反映系统需求。模型模拟器的功能模块划分见附图8,其包括模拟状态图命令,选择图形的对话框,状态图到PROMELA转换对话框,模拟结果,状态图模拟器,这些类之间的调用关系是:
①在编辑窗口编辑好类图和状态图,或打开一个已编辑好的EUP图形;
②选择状态图模拟命令时,调用模拟状态图类;
③选择好需要模拟的图形时后(单个状态图,或多个状态图都可模拟),由模拟状态图命令类调用状态图到PROMELA转换对话框类进行图形检查是否有语法错误。如果有语法错误,则仍由模拟状态图命令类调用模拟结果类显示错误信息,如果没有语法错误,则由模拟状态图命令类调用模拟结果显示类显示模拟结果的对话框;
④最后,由模拟状态图命令模块调用状态图模拟器对状态图进行模拟执行。
5.模型编译器:
模型编译的主要功能是实现系统模型到代码的自动转换。把建立好的PIM模型送入“模型编译器”中进行编译,自动地生成系统的与平台有关的源代码(如C,C++等),即PSM模型。源代码经过对应的语言编译器的处理,就可生成依赖于特定平台的目标系统。模型编译器的实现如附图9,其包括模型到代码的转换,代码生成对话框,状态图到代码转换,类图到代码转换,这些类之间的调用关系是:
①在编辑窗口编辑好类图和状态图,或打开一个已编辑好的EUP图形;
②在选择代码生成命令时,调用模型到代码转换类;
③由模型到代码转换类调用代码生成对话框类;
④选择所生成代码的存放路径,默认路径为EUP项目图形所在文件夹,也可自行选择修改存放路径;
⑤仍由模型到代码转换类调用状态图到代码转换类和类图到代码转换类,分别生成状态图和类图所对应的C++源代码。
6.构件组装:
根据基于构件的软件开发方法,在后台的嵌入式软构件库的支持下,EUP可以重用已有的嵌入式软构件,基于体系结构进行构件组装,实现了软构件资源的重用,提高了软件的开发效率。具体地,将EUP自动生成的代码框架和嵌入式软构件进行链接、组装后得到系统的代码框架,经过操作系统适配器和对应的语言编译器的处理,就可生成依赖于特定嵌入式操作系统的目标系统(PSM),即可被传输到具体的嵌入式硬件中进行最终的测试和使用。
Claims (7)
1.一种嵌入式系统软件的模型驱动与构件化开发方法,其特征是:在模型驱动的框架下,将模型作为嵌入式系统软件开发的核心和基本元素,集成模型编辑、验证、模拟和模型编译技术,实现嵌入式系统模型的编辑、验证、模拟和代码的自动生成,并根据基于构件的软件开发方法,大规模重用嵌入式软构件,该方法包括以下步骤:
(1)嵌入式系统软件开发的初期,在“模型编辑器”中构建与平台无关的模型PIM,其包括UML用例图、类图、状态图、对象图、顺序图、活动图、协作图等描述系统,用以帮助澄清用户需求;
(2)将绘制好的UML模型通过“模型检查器”检查其语法的正确性,使之确保在编辑器中生成的模型遵循UML2.0的元模型规范标准;
(3)将语法正确的UML模型通过“模型验证器”采用形式化的模型验证技术对其进行形式化的模型验证,以提供一个集成的验证环境,支持对系统模型的功能属性和非功能属性的验证;
(4)在模型模拟器中,模拟执行通过验证的UML模型,分析设计好的PIM系统模型的整体动态行为;
(5)对设计好的PIM系统进行模型编译,实现系统模型到代码的自动转换,其方法是:把建立好的PIM模型送入“模型编译器”中进行编译,自动地生成基于抽象操作系统的与平台有关的源代码(如C、C++等),即PSM模型;
(6)进行构件组装,重用嵌入式软构件,其方法是:利用嵌入式系统软件开发平台EUP的模型编译器自动生成的系统模型所对应的代码框架,并将该代码框架和嵌入式软构件进行链接、组装后,使其经过操作系统适配器和对应的语言编译器的处理,生成依赖于特定嵌入式操作系统的PSM目标系统,即可被传输到具体的嵌入式硬件中进行最终的测试和使用。
2.根据权利要求1所述的嵌入式系统软件的模型驱动与构件化开发方法,其特征是基于MVC设计模式设计模型编辑器,其结构包括模型,视图,控制器三个功能模块。
3.根据权利要求1所述的嵌入式系统软件的模型驱动与构件化开发方法,其特征是所述的模型检查器,其工作原理是根据UML2.0的元模型所规定的约束,检查模型编辑器中生成的UML模型的语法正确性。
4.根据权利要求1所述的嵌入式系统软件的模型驱动与构件化开发方法,其特征是所述的模型验证器,其包括:功能属性的验证模块和非功能属性的验证模块。
5.根据权利要求1所述的嵌入式系统软件的模型驱动与构件化开发方法,其特征是所述的模型模拟器,其包括:状态图模拟命令,选择图形的对话框,状态图到PROMELA转换对话框,模拟结果和状态图模拟器。
6.根据权利要求1所述的嵌入式系统软件的模型驱动与构件化开发方法,其特征是所述的模型编译器,其包括:模型到代码的转换,代码生成的对话框,状态图到代码的转换和类图到代码的转换。
7.根据权利要求1所述的嵌入式系统软件的模型驱动与构件化开发方法,其特征是所述嵌入式软构件库,包括已有的或用户新添加的软构件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610124600 CN1928816A (zh) | 2006-09-26 | 2006-09-26 | 嵌入式系统软件的模型驱动与构件化开发方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 200610124600 CN1928816A (zh) | 2006-09-26 | 2006-09-26 | 嵌入式系统软件的模型驱动与构件化开发方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN1928816A true CN1928816A (zh) | 2007-03-14 |
Family
ID=37858791
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 200610124600 Pending CN1928816A (zh) | 2006-09-26 | 2006-09-26 | 嵌入式系统软件的模型驱动与构件化开发方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN1928816A (zh) |
Cited By (35)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101499115B (zh) * | 2008-12-19 | 2010-11-03 | 天津大学 | 基于攻击模式的用例图检测方法 |
CN101055521B (zh) * | 2007-04-04 | 2011-08-10 | 中兴通讯股份有限公司 | 映射规则的可视化生成方法及系统 |
CN102169458A (zh) * | 2011-04-18 | 2011-08-31 | 华东师范大学 | 汽车电控部件的软件正确性验证系统及其验证方法 |
CN101794330B (zh) * | 2009-12-30 | 2011-11-09 | 中国科学院计算技术研究所 | 集成电路验证方法及其系统 |
CN101620535B (zh) * | 2009-07-29 | 2012-06-06 | 北京航空航天大学 | 一种机载计算机软件通用框架设计方法 |
CN102520949A (zh) * | 2011-12-13 | 2012-06-27 | 南京恩瑞特实业有限公司 | 形式化计算机联锁实现方法 |
CN101477463B (zh) * | 2009-01-22 | 2012-12-26 | 北京赛科世纪数码科技有限公司 | 用于数字电视机顶盒的软件平台与软件开发平台 |
CN102841837A (zh) * | 2012-06-26 | 2012-12-26 | 中国科学院声学研究所 | 一种基于模拟器的软硬件协同验证方法及系统 |
CN102902540A (zh) * | 2012-09-25 | 2013-01-30 | 浙江创佳数字技术有限公司 | 嵌入式自动化开发方法 |
CN103019742A (zh) * | 2012-12-31 | 2013-04-03 | 清华大学 | 一种多dsp平台上的自动代码生成方法 |
CN103176830A (zh) * | 2013-04-15 | 2013-06-26 | 西安电子科技大学 | 基于类图和活动图相结合生成c++代码的方法 |
CN103412747A (zh) * | 2013-07-25 | 2013-11-27 | 昆明康卓科技有限公司 | 一种基于模型驱动的嵌入式工业实时系统图形化设计方法 |
CN105051682A (zh) * | 2013-01-04 | 2015-11-11 | 微软技术许可有限责任公司 | 用于硬件设备的软件接口 |
CN105204834A (zh) * | 2014-06-25 | 2015-12-30 | 成都普中软件有限公司 | 一种构造软件模型的可视软件建模编辑器 |
CN105630476A (zh) * | 2014-11-14 | 2016-06-01 | 中国航空工业第六一八研究所 | 一种gnc嵌入式系统的专用总线接口软件自动化开发方法 |
CN105653251A (zh) * | 2014-11-14 | 2016-06-08 | 中国航空工业第六八研究所 | 一种用于惯导系统的专用地面检测软件快速开发方法 |
CN105930154A (zh) * | 2016-04-19 | 2016-09-07 | 烽火通信科技股份有限公司 | 网络操作系统中建立并使用设备硬件模型的方法及装置 |
CN106020788A (zh) * | 2016-04-28 | 2016-10-12 | 齐鲁工业大学 | 一种智能化的软件编程方法 |
CN106055325A (zh) * | 2016-05-27 | 2016-10-26 | 克拉玛依红有软件有限责任公司 | 一种支撑多系统同时运行的服务构建方法 |
CN106445494A (zh) * | 2009-10-14 | 2017-02-22 | 韦尔迈格服务有限公司 | 自动化企业软件开发 |
CN106502677A (zh) * | 2016-10-30 | 2017-03-15 | 合肥微匠信息科技有限公司 | 一种基于模型驱动的嵌入式控制软件开发方法 |
CN106502676A (zh) * | 2016-10-30 | 2017-03-15 | 合肥微匠信息科技有限公司 | 一种基于simulink模型到UML模型转换的方法 |
CN106528127A (zh) * | 2016-10-26 | 2017-03-22 | 合肥润客软件科技有限公司 | 一种基于软件构架驱动的分布式系统开发方法 |
CN106528128A (zh) * | 2016-10-26 | 2017-03-22 | 安徽扬远信息科技有限公司 | 一种基于mda的软件开发方法 |
CN107179903A (zh) * | 2016-03-11 | 2017-09-19 | 塔塔咨询服务有限公司 | 用于使用模型驱动开发来开发基于移动的应用的系统和方法 |
CN107229478A (zh) * | 2017-06-09 | 2017-10-03 | 华东师范大学 | 一种可信飞行控制系统协同开发的任务分配建模方法 |
CN107346249A (zh) * | 2017-07-13 | 2017-11-14 | 重庆电子工程职业学院 | 一种基于模型的计算机软件开发方法 |
CN107885607A (zh) * | 2017-10-20 | 2018-04-06 | 北京航空航天大学 | 一种基于嵌入式系统软件多视图事故模型及其建模方法 |
CN108008945A (zh) * | 2017-12-13 | 2018-05-08 | 天津津航计算技术研究所 | 一种linux系统下pci设备驱动开发方法 |
CN112416337A (zh) * | 2020-11-11 | 2021-02-26 | 北京京航计算通讯研究所 | 一种面向航天嵌入式系统的软件架构开发系统 |
CN112506516A (zh) * | 2020-11-30 | 2021-03-16 | 广州市智能软件产业研究院 | 一种安全协议的代码生成方法、计算机及存储介质 |
CN112632885A (zh) * | 2020-12-25 | 2021-04-09 | 山东产研鲲云人工智能研究院有限公司 | 软硬件联合验证系统及方法 |
CN113032002A (zh) * | 2021-03-31 | 2021-06-25 | 广东正芯智能微电子有限公司 | 一种嵌入式芯片智能通用开发平台 |
CN113470416A (zh) * | 2020-03-31 | 2021-10-01 | 上汽通用汽车有限公司 | 利用嵌入式系统实现车位检测的系统、方法和存储介质 |
CN112506516B (zh) * | 2020-11-30 | 2024-04-30 | 广州市智能软件产业研究院 | 一种安全协议的代码生成方法、计算机及存储介质 |
-
2006
- 2006-09-26 CN CN 200610124600 patent/CN1928816A/zh active Pending
Cited By (48)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101055521B (zh) * | 2007-04-04 | 2011-08-10 | 中兴通讯股份有限公司 | 映射规则的可视化生成方法及系统 |
CN101499115B (zh) * | 2008-12-19 | 2010-11-03 | 天津大学 | 基于攻击模式的用例图检测方法 |
CN101477463B (zh) * | 2009-01-22 | 2012-12-26 | 北京赛科世纪数码科技有限公司 | 用于数字电视机顶盒的软件平台与软件开发平台 |
CN101620535B (zh) * | 2009-07-29 | 2012-06-06 | 北京航空航天大学 | 一种机载计算机软件通用框架设计方法 |
CN106445494A (zh) * | 2009-10-14 | 2017-02-22 | 韦尔迈格服务有限公司 | 自动化企业软件开发 |
CN101794330B (zh) * | 2009-12-30 | 2011-11-09 | 中国科学院计算技术研究所 | 集成电路验证方法及其系统 |
CN102169458A (zh) * | 2011-04-18 | 2011-08-31 | 华东师范大学 | 汽车电控部件的软件正确性验证系统及其验证方法 |
CN102520949B (zh) * | 2011-12-13 | 2014-06-25 | 南京恩瑞特实业有限公司 | 形式化计算机联锁实现方法 |
CN102520949A (zh) * | 2011-12-13 | 2012-06-27 | 南京恩瑞特实业有限公司 | 形式化计算机联锁实现方法 |
CN102841837B (zh) * | 2012-06-26 | 2014-07-30 | 中国科学院声学研究所 | 一种基于模拟器的软硬件协同验证方法及系统 |
CN102841837A (zh) * | 2012-06-26 | 2012-12-26 | 中国科学院声学研究所 | 一种基于模拟器的软硬件协同验证方法及系统 |
CN102902540A (zh) * | 2012-09-25 | 2013-01-30 | 浙江创佳数字技术有限公司 | 嵌入式自动化开发方法 |
CN103019742B (zh) * | 2012-12-31 | 2016-02-10 | 清华大学 | 一种多dsp平台上的自动代码生成方法 |
CN103019742A (zh) * | 2012-12-31 | 2013-04-03 | 清华大学 | 一种多dsp平台上的自动代码生成方法 |
CN105051682A (zh) * | 2013-01-04 | 2015-11-11 | 微软技术许可有限责任公司 | 用于硬件设备的软件接口 |
CN105051682B (zh) * | 2013-01-04 | 2018-02-23 | 微软技术许可有限责任公司 | 用于硬件设备的软件接口 |
US9811319B2 (en) | 2013-01-04 | 2017-11-07 | Microsoft Technology Licensing, Llc | Software interface for a hardware device |
CN103176830A (zh) * | 2013-04-15 | 2013-06-26 | 西安电子科技大学 | 基于类图和活动图相结合生成c++代码的方法 |
CN103412747A (zh) * | 2013-07-25 | 2013-11-27 | 昆明康卓科技有限公司 | 一种基于模型驱动的嵌入式工业实时系统图形化设计方法 |
CN105204834A (zh) * | 2014-06-25 | 2015-12-30 | 成都普中软件有限公司 | 一种构造软件模型的可视软件建模编辑器 |
CN105204834B (zh) * | 2014-06-25 | 2018-06-29 | 成都普中软件有限公司 | 一种构造软件模型的可视软件建模编辑器 |
CN105630476A (zh) * | 2014-11-14 | 2016-06-01 | 中国航空工业第六一八研究所 | 一种gnc嵌入式系统的专用总线接口软件自动化开发方法 |
CN105653251A (zh) * | 2014-11-14 | 2016-06-08 | 中国航空工业第六八研究所 | 一种用于惯导系统的专用地面检测软件快速开发方法 |
CN105630476B (zh) * | 2014-11-14 | 2019-05-21 | 中国航空工业第六一八研究所 | 一种gnc嵌入式系统的专用总线接口软件自动化开发方法 |
CN107179903A (zh) * | 2016-03-11 | 2017-09-19 | 塔塔咨询服务有限公司 | 用于使用模型驱动开发来开发基于移动的应用的系统和方法 |
CN105930154B (zh) * | 2016-04-19 | 2019-02-15 | 烽火通信科技股份有限公司 | 网络操作系统中建立并使用设备硬件模型的方法及装置 |
CN105930154A (zh) * | 2016-04-19 | 2016-09-07 | 烽火通信科技股份有限公司 | 网络操作系统中建立并使用设备硬件模型的方法及装置 |
CN106020788A (zh) * | 2016-04-28 | 2016-10-12 | 齐鲁工业大学 | 一种智能化的软件编程方法 |
CN106055325A (zh) * | 2016-05-27 | 2016-10-26 | 克拉玛依红有软件有限责任公司 | 一种支撑多系统同时运行的服务构建方法 |
CN106055325B (zh) * | 2016-05-27 | 2019-02-12 | 克拉玛依红有软件有限责任公司 | 一种支撑多系统同时运行的服务构建方法 |
CN106528127A (zh) * | 2016-10-26 | 2017-03-22 | 合肥润客软件科技有限公司 | 一种基于软件构架驱动的分布式系统开发方法 |
CN106528128A (zh) * | 2016-10-26 | 2017-03-22 | 安徽扬远信息科技有限公司 | 一种基于mda的软件开发方法 |
CN106502677A (zh) * | 2016-10-30 | 2017-03-15 | 合肥微匠信息科技有限公司 | 一种基于模型驱动的嵌入式控制软件开发方法 |
CN106502676A (zh) * | 2016-10-30 | 2017-03-15 | 合肥微匠信息科技有限公司 | 一种基于simulink模型到UML模型转换的方法 |
CN107229478A (zh) * | 2017-06-09 | 2017-10-03 | 华东师范大学 | 一种可信飞行控制系统协同开发的任务分配建模方法 |
CN107229478B (zh) * | 2017-06-09 | 2020-01-10 | 华东师范大学 | 一种可信飞行控制系统协同开发的任务分配建模方法 |
CN107346249A (zh) * | 2017-07-13 | 2017-11-14 | 重庆电子工程职业学院 | 一种基于模型的计算机软件开发方法 |
CN107885607B (zh) * | 2017-10-20 | 2020-11-20 | 北京航空航天大学 | 一种基于嵌入式系统软件多视图事故模型的建模方法 |
CN107885607A (zh) * | 2017-10-20 | 2018-04-06 | 北京航空航天大学 | 一种基于嵌入式系统软件多视图事故模型及其建模方法 |
CN108008945A (zh) * | 2017-12-13 | 2018-05-08 | 天津津航计算技术研究所 | 一种linux系统下pci设备驱动开发方法 |
CN113470416A (zh) * | 2020-03-31 | 2021-10-01 | 上汽通用汽车有限公司 | 利用嵌入式系统实现车位检测的系统、方法和存储介质 |
CN113470416B (zh) * | 2020-03-31 | 2023-02-17 | 上汽通用汽车有限公司 | 利用嵌入式系统实现车位检测的系统、方法和存储介质 |
CN112416337A (zh) * | 2020-11-11 | 2021-02-26 | 北京京航计算通讯研究所 | 一种面向航天嵌入式系统的软件架构开发系统 |
CN112506516A (zh) * | 2020-11-30 | 2021-03-16 | 广州市智能软件产业研究院 | 一种安全协议的代码生成方法、计算机及存储介质 |
CN112506516B (zh) * | 2020-11-30 | 2024-04-30 | 广州市智能软件产业研究院 | 一种安全协议的代码生成方法、计算机及存储介质 |
CN112632885A (zh) * | 2020-12-25 | 2021-04-09 | 山东产研鲲云人工智能研究院有限公司 | 软硬件联合验证系统及方法 |
CN113032002A (zh) * | 2021-03-31 | 2021-06-25 | 广东正芯智能微电子有限公司 | 一种嵌入式芯片智能通用开发平台 |
CN113032002B (zh) * | 2021-03-31 | 2024-02-27 | 广东正芯智能微电子有限公司 | 一种嵌入式芯片智能通用开发平台 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN1928816A (zh) | 嵌入式系统软件的模型驱动与构件化开发方法 | |
CN100351811C (zh) | 一种软件产品健壮性的测试方法及装置 | |
CN110928783A (zh) | 基于RobotFramework自动化测试数据化改造的平台 | |
Guermazi et al. | Executable modeling with fuml and alf in papyrus: Tooling and experiments | |
CN101996131A (zh) | 基于xml封装关键字的gui自动测试方法及自动测试平台 | |
Arcaini et al. | AsmetaSMV: a way to link high-level ASM models to low-level NuSMV specifications | |
CN110222318A (zh) | 基于xml的数据生成工具开发方法 | |
Kirshin et al. | A UML simulator based on a generic model execution engine | |
Jia et al. | A system-level infrastructure for multidimensional mp-soc design space co-exploration | |
CN100347683C (zh) | 结构无关的微处理器验证及评测方法 | |
CN114020273A (zh) | 一种复杂系统软件集成方法 | |
CN105988792A (zh) | 核电软件开发自动化系统和方法 | |
CN103678485A (zh) | 虚拟试验流程节点驱动与活动封装系统 | |
Floch et al. | Model-driven engineering and optimizing compilers: A bridge too far? | |
CN112596737A (zh) | 一种函数调用关系的扫描方法、系统、设备及存储介质 | |
Mu et al. | Design and implementation of gui automated testing framework based on xml | |
Amparore | Reengineering the Editor of the GreatSPN Framework. | |
Lanoe et al. | A modeling and code generation framework for critical embedded systems design: From Simulink down to VHDL and Ada/C code | |
Diaz-Herrera et al. | Aspect-oriented UML modeling for developing embedded systems product lines | |
Graf et al. | Gaining insight into executable models during runtime: Architecture and mappings | |
Nagar et al. | MetaPSS: An Automation Framework for Generation of Portable Stimulus Model | |
Pradhan | User interface test automation and its challenges in an industrial scenario | |
Tielin et al. | A model transformation platform design based on model driven architecture | |
Andreassen | Modular Electrical Simulation Framework | |
Bai et al. | SyncTest: a Tool to Synchronize Source Code, Model and Testing. |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |