The invention provides an automatic code generator based on the QP framework, which can transform the UML state diagram drawn according to a certain specification into a C++ code which can be run on the quantization platform. The tool uses ODG file and XML file, OpenOffice will be the first to draw a state diagram in the form of a ODG file into the corresponding XML file, and extract the node information including the program state diagram of the static and dynamic elements from Visual to Studio, 2012 environment automatic code generator tool will further state map information directly into a certain standard C++ code. The invention can effectively avoid tedious code writing, reduce the program debugging caused by code writing error, and greatly improve the efficiency of software development.
【技术实现步骤摘要】
本专利技术实现了一种可将按一定规范绘制的UML状态图转化成可在量子化平台上运行的C++代码的工具。
技术介绍
随着软件技术的不断普及与提高,软件产品的需求一直呈现出日益增长的趋势。人们一边在享受计算机在工作和生活中带来的巨大便利的同时,也对计算机软件和硬件的开发提出了更多的要求。这些要求具体表现在,一是软件的开发所要处理的环境变得越来越复杂,功能要求更加全面,二是用户的需求多变,三是系统要更加安全可靠和稳定。而在软件工程高度发展的今天,很多软件开发人员仍然使用手工编码的方法。这种传统的开发方式通常效率低而且开发周期长,并且存在大量的重复劳动。这样当遇到大型复杂软件项目会出现延期、成本超出计划,甚至中途夭折等问题,所以这将引起软件开发人员对于如何降低软件开发和维护成本、提高开发效率、减小需求变更对系统的影响以及延长系统的生命周期进行思考。可是传统的开发手段总是很难完善这种问题。这就需要一种可以避免低水平重复开发、能实现标准化生产的软件开发新方式,以帮助企业应对快速变化的市场环境,而自动代码生成技术在一定程序上解决了这个问题。(1)量子框架(QP)量子框架是是基于事件驱动并发状态机的一种应用框架。传统方法中用户主要考虑的是共享资源和各种同步机制,而量子框架将共享资源封装在一个专用的活动对象中,系统的其余部分共享活动对象,而不是直接共享资源。每一个活动对象都是一个单独的活动线程,对应着不同的任务。不同活动对象之间订阅和发布不同的事件实例,事件实例通过量子框架来进行分发。1)QF通用结构QF的结构对于任何基于活动对象的框架来说都是典型的。QF的通用结构具有以下特 ...
【技术保护点】
基于QP框架的代码自动生成器,其特征是包括以下步骤:步骤一,基于OpenOffice Draw的符合一定规范的状态图设计的步骤;步骤二,OpenOffice Draw文本信息的提取的步骤;步骤三,将提取的零散的信息整理成符合C/C++语言规范和QP编程规范的代码的步骤。
【技术特征摘要】
1.基于QP框架的代码自动生成器,其特征是包括以下步骤:步骤一,基于OpenOfficeDraw的符合一定规范的状态图设计的步骤;步骤二,OpenOfficeDraw文本信息的提取的步骤;步骤三,将提取的零散的信息整理成符合C/C++语言规范和QP编程规范的代码的步骤。2.根据权利要求1所述的基于QP框架的代码自动生成器,其特征是步骤一中包括:1)在OpenOffice的画图模块中设计第一个方框中State表示整个状态的名称,第二个方框中表示状态中的一些事件,将在此状态下需要处理的事件在第二个方框内进行描述;2)进行转换设计,将其属性名称设置为transition,用transition连接不同的两种状态信息,在满足转换条件guard1的情况下,状态state1向状态state2跳转;如果某一条件发生变化,那么状态state2转换成状态state1,其中transition的转换方向通过判断transition的起点状态ID和终点状态ID来判断;3)初始化Initial设计,导出xml文件后,状态初始的描述均在XML中的“initial”节点下,“initial”节点正是在进行状态图设计时所设计的状态初始化initial的属性名称;initial状态也有一个属于它的唯一的ID,此时结合transition的条件可以查找到初始状态的转换;4)预定义图设计,添加一个程序预...
【专利技术属性】
技术研发人员:陈胜勇,程徐,许金山,唐庭龙,刘梦娜,赵萌,
申请(专利权)人:天津理工大学,
类型:发明
国别省市:天津;12
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。