一种基于模型信息的智能提取方法

文档序号:6460470阅读:183来源:国知局
专利名称:一种基于模型信息的智能提取方法
技术领域
本发明涉及嵌入式集成开发环境技术,尤其是涉及一种基于模型信息的智 能提取方法。
背景技术
随着控制软件复杂度的增长,软件工程师越来越难以通过传统的方式管理 庞大的代码,他们迫切需要通过模型进行交流、优化设计、管理代码、系统测 试以及管理文档。
在汽车电子嵌入式领域,由于功能的日益增加,汽车电子软件开发的时间 成本和人力成本也在飞速的增加,为了提高软件开发的效率,降低汽车电子软 件开发的成本,通过自动化工具,在以模型为中心的软件设计的基础上,自动 生成系统代码,自动生成图纸,动生成系统文档,以及自动生成系统测试案例 成为加快汽车电子软件开发进程必然的趋势,未来汽车电子开发方法的发展趋 势将遵循系统设计模型化和系统设计自动化的特点。
综合基于模型的嵌入式软件开发方法和模型驱动的软件开发方法,并将其 应用于汽车电子领域的一种嵌入式软件开发方法。基于模型的嵌入式软件开发 方法通过建模与模型验证解决了嵌入式软件开发的正确性问题;而模型驱动的 软件开发方法通过模型的自动转换与代码和文档的自动生成,解决了软件开发 过程中的设计、代码和文档的一致性问题。
支持基于模型驱动的集成开发环境SmartOSEK IDE有别于其他现行的通用 语言C、 C++、 Java的IDE,支持基于模型驱动的集成开发环境SmartOSEK IDE 对领域专用性要求较高,具有很强的针对性,为汽车电子嵌入式软件开发提供 一个高效便捷的开发环境。SmartOSEK IDE采用面向汽车电子控制的领域专用 建模语言SmartC,设计汽车电子控制软件模型,通过对模型进行形式化的验证, 保证软件设计的正确性。
发明一种针对汽车电子领域应用的,基于模型驱动的SmartOSEK IDE建模 模型信息的智能提取方法,充分体现基于模型驱动思想和自动化特点,保证各 开发阶段软件设计的一致性,从而提高汽车电子控制软件开发的效率和软件产 品的可靠性。
在SmartOSEK IDE层次化建模环境下对进行基于模型信息的汽车电子产品的嵌入式软件设计提供一种基于模型信息的智能提取方法。以SmartISEK IDE 为基础运行平台,结合SmartISEK IDE的四层建模环境,提取工程建模相关模 型信息自动生成相关软件工程开发文档,免去用户手动编写开发文档的繁琐工 作,提高用户的开发效率。

发明内容
为了解决上述现有汽车电子软件开发的缺陷,本发明的目的在于提供一种 基于模型信息的智能提取方法。
本发明解决其技术问题所采用的技术方案的步骤如下在SmartOSEK IDE 集成开发环境中建立SmartC四层层次化建模模型,包括系统层、构件层、任务 层和组件层,首先读取SmartC的四层层次化建模模型,其次智能提取SmartC 模型信息,再次智能提取SmartC模型层次化逻辑结构信息进行文档定位和模型 描述信息嵌入,最后将智能提取后的模型信息自动生成充分表达智能提取模型 信息的说明文档。
所述的SmartC模型信息的智能提取包括l)模型图信息智能提取;2)模型 描述信息智能提取;3)模型属性信息智能提取;4)底层模型算法函数信息智能提 取。
所述的模型图信息智能提取步骤如下l)设置模型图智能抓取机器人Robot;
2) 设置模型图抓取范围,包括左上顶点的坐标和右下顶点距离左上顶点的位移;
3) Robot自顶向下依次抓取各层模型图;4)缓存模型图到默认路径,包括设置模 型图格式和缓存模型图的默认路径;5)新建文件输出流;6)译码模型图格式;7) 关闭文件输出流;8)返回模型图保存路径。
所述的模型描述信息智能提取步骤如下l)打开系统层模型;2)读取系统层 模型结点;3)解析系统层模型结点;4)判断是否为系统层模型描述结点;如果是
则提取系统层模型描述结点内部隐藏信息,并存放此系统层模型描述结点内部
隐藏信息;否则继续解析系统层模型结点,找到并打开构件模型结点,读取解 析构件层模型结点;5)判断解析构件层模型结点是否为构件层模型描述结点;如 果是则提取构件层模型描述结点内部隐藏信息,并存放此构件层模型描述结点 内部隐藏信息;否则继续解析构件层模型结点,找到任务层模型描述节点后的 操作同系统层、构件层对应步骤操作。
所述的模型属性信息智能提取步骤如下l)打开构件层模型;2)读取构件层 模型结点;3)解析构件层模型结点;4)找到Task任务模型节点;5)读取Task任 务模型节点;6)解析Task任务模型节点;7)提取Task任务模型属性列表;8)存放Task任务模型属性列表信息,包括Task任务模型属性列表信息1、 Task任务 模型属性列表信息2......Task任务模型属性列表信息n。
所述的底层模型算法函数信息智能提取步骤如下l)打开任务层模型;2) 读取任务层模型结点;3)解析任务层模型结点;4)找到局部组件模型节点;5)读 取局部组件模型节点;6)解析局部组件模型节点;7)提取局部组件模型内部信息; 8)存放局部组件模型内部信息,包括底层算法函数定义1、底层算法函数定义 2......底层算法函数定义n。
所述的智能提取SmartC模型层次化逻辑结构信息进行文档定位和模型描述 信息嵌入步骤如下l)用与模型有关的文档一级标题定位模型的层次,包括嵌入 系统结构、构件层设计、任务层设计、模型属性说明、底层算法库设计说明; 2)用与模型有关的文档二级标题定位模型的内部信息,系统结构包括嵌入系统层 结构图及功能描述、构件层设计包括嵌入不同构件层的结构图及描述、任务层 设计包括嵌入每个构件层的子层即任务层的结构图及描述、模型属性说明包括 嵌入构件层模块的Task属性,底层算法库设计说明包括嵌入构件层下任务层不 同模块的局部组件Localcomponent; 3)用与模型有关的文档三级标题定位具体的 颗粒信息,模型属性嵌入一级目录下面构件层模块的Task任务的不同属性列表、 底层算法库设计嵌入一级目录下面任务层不同模块的不同局部组件 Localcomponent的函数定义。
所述的智能提取后的模型信息自动生成充分表达智能提取模型信息的说明 文档的处理步骤如下l)建立文档生成的底层支持;2)设计自上而下的文档层次 化内容生成接口; 3)接受来自智能提取的SmartC模型信息和SmartC模型层次 化逻辑结构信息;4)最后生成充分表达智能提取模型信息后的模型信息说明文 档。
所述的自上而下的文档层次化内容生成接口包括l)模型图接口; 2)图片信 息的层次化标号接口; 3)模型描述结点的内部隐藏信息接口; 4)模型属性信息接 口; 5)底层模型算法函数信息接口; 6)层次化模型高低级别的大小标题接口。
本发明具有的有益效果是
1. 本发明的智能提取方法能够较充分阐述SmartOSEKIDE四层建模的含义 和各个层次的设计内容f生成的文档结构规范、内容清晰,较好的表达了模型 的层次化关系,有效提高了文档编写的高效性和自动化特性。
2. 本发明把SmartC建模的四层模型信息的提取智能化,使对层次化模型的 抓取更加方便。如果设计好一个完整的SmartC建模模型,就可以把该建模模型的最上层文件即系统层文件设置为模型信息自动抓取的入口点,当需要抓取模 型并保存图片插入文档时,该模型智能抓取功能就从系统层模型开始运行,主 动自顶向下依次完成其他层模型的智能抓取功能,就不需要逐一手动完成四层 模型抓取的一系列操作。
3. 本发明提供了模型图、层次化模型描述信息的智能抓取嵌入、Task任务模 型属性列表信息、底层模型算法函数信息的提取,以及模型层次化逻辑结构提 取文档定位等一种基于模型的智能提取方法,充分读取、解析、提取、表达了 模型信息。
4. 在本发明中,实现模型信息的智能提取所需要的时间开销和空间开销很 少。在使用此基于模型信息的智能提取方法的时候实现了完全自动化、智能化, 能提取模型相关信息并自动生成文档,生成的文档结构规范、内容清晰,较好 的表达了模型的层次化关系。
5. 本发明支持领域专用的SmartC汽车电子嵌入式软件开发的领域专用的特 点,有效提高了文档产出的高效性和自动化特性。
6. 设计通过此智能提取方法生成的文档能够充分阐述四层建模的含义和各 个层次的设计内容,从而尽量充分的表达模型的层次化逻辑关系。


图1是本发明基于模型信息智能提取总体设计框架图。
图2是本发明智能提取结构图
图3是本发明智能提取模型信息说明文档部署图。
图4是本发明文档自动生成控制功能关系图。
图5是本发明新文档的创建流程图。
图6是本发明列表标题的文档嵌入流程图。
图7是本发明表格的文档嵌入流程图。
图8是本发明页眉页脚页码的设置流程图。
图9是本发明模型图信息智能提取流程图。
图IO是本发明模型描述信息智能提取流程图。
图11是本发明模型属性信息智能提取流程图。 图12是本发明底层模型算法函数信息的智能提取流程图。 图13是本发明自上而下的文档层次化内容生成接口结构图 图14是本发明智能提取SmartC模型层次化逻辑结构信息进行文档定位和 模型描述信息嵌入流程图。
具体实施例方式
下面结合附图和实例对本发明作进一步介绍
一种基于模型信息的智能提取方法主要与SmartOSEK IDE的SmartC层次 化建模关系密切。本发明智能提取方法将层次化模型作为输入,文档生成技术 作为中间桥梁,模型信息智能提取后自动生成的说明文档作为输出。
图1指出了本发明基于模型信息的智能提取总体设计框架图,表明了模型 信息的智能提取与模型信息说明文档自动生成的同步关系,将模型信息的智能 提取作为操作的横向,将模型信息说明文档自动生成作为操作的纵向。具体如 下
a) 横向操作的模型信息和模型层次化逻辑结构信息的智能提取,具体如下:
1. 读入模型信息;
2. 解析模型信息
3. 智能提取模型信息和模型层次化逻辑结构信息;
b) 纵向操作的充分表达智能提取模型信息的模型说明文档自动生成,具体 如下
1. 建立文档生成的底层支持;
2. 设计自上而下的文档层次化内容生成接口;
3. 接受来自横向(a)的输出即智能提取的SmartC模型信息和SmartC模型 层次化逻辑结构信息;
4. 根据(b)中的2和3最后生成充分表达智能提取模型信息后的模型信息 说明文档。
图2指出了本发明智能提取结构图,智能提取包括
1. 模型图信息;
2. 模型描述信息;
3. 模型属性信息;
4. 底层模型算法函数信息;
5. 模型层次化逻辑结构信息;
6. 模型信息文档定位及嵌入。
图3指出了本发明智能提取模型信息说明文档部署图,模型信息说明文档 部署包括
1. 生成说明文档的前几页HeadPage;
2. Word文档生成函数集GeneratorDoc;3. Word控制集WordController。
图4指出了本发明文档自动生成控制功能关系图,文档自动生成控制功能
包括
1. 打开和关闭Word;
2. 文档操作,包括新建文档、打开、关闭文档、保存文档;
3. 插入文本,包括插入带级别的段落、用指定格式插入文本、用当前格式 插入文本、插入多行空行;
4. 插入其他,包括插入图片、插入分页符、插入表格并填充表项、插入页 眉页脚页码;
5. 设置字体,包括设置字体样式、设置粗体、设置斜体、设置下划线、设 置字体大小、设置字体颜色、设置文字各个属性、设置文字底纹;
6. 文本处理,包括设置文本排列方式、查找并选中文本、査找并修改文本 格式。
图5指出了本发明新文档的创建流程图,具体如下-
1. 开始;
2. 得到word的Documents组件Documents代表当前文档集合;
3. 往文档列表里添加新文档;
4. 得到word的selection组件以供后续使用;
5. 得到selection的字体组件以供后续使用;
6. 得到selection的寻找组件以供后续使用;
7. 得到当前文档的范围组件以供后续使用;
8. 结束。
图6指出了本发明列表标题的文档嵌入流程图,具体如下-
1. 开始;
2. 得到当前文本的结束位置也就是将插入文本的开头位置;
3. 设置字体大小;
4. 设置是否粗体;
5. 设置是否斜体;
6. 设置是否下划线;
7. 设置字体颜色;
8. 插入文本;
9. 光标右移;10. 得到当前文本的结束位置,也就是被插入文本的结束位置;
11. 设置一个包含插入文本的范围;
12. 得到该范围列表格式;
13. 用默认方案将该范围的文本变为标题;
14. 结束。
图7指出了本发明列表标题的文档嵌入流程图,具体如下
1. 开始;
2. 得到当前文本的表格集合组件;
3. 得到当前文档的范围组件;
4. 得到当前文档的结束位置,也就是将插入表格的开头位置;
5. 将范围位置设为当前文档尾部,且将范围大小设置为0;
6. 依指定行数和列数新建一个表格;
7. 填入表格表项;
8. 得到新建表格的列集合组件;
9. 循环读取每列组件,设置其列宽;
10. 结束。
图8指出了本发明页眉页脚页码的设置流程图,具体如下
1. 开始;
2. 得到当前文档的段集合组件;
3. 得到当前段;
4. 得到当前段的页眉集合组件;
5. 得到页眉集合组件的第一个页眉;
6. 得到页眉组件中的范围组件;
7. 将所有范围得文本设置为指定得页眉文本;
8. 以类似的方式设置页脚;
9. 得到页脚的页码组件;
10. 添加页码;
11. 结束。
图9指出了本发明模型图信息智能提取流程图,具体如下
1. 设置模型图智能抓取机器人Robot;
2. 设置模型图抓取范围,主要设置左上顶点的坐标、右下顶点距离左上顶 点的位移;3. Robot抓取模型4. 缓存模型图到默认路径,包括设置模型图格式和缓存模型图的默认路径;
5. 新建文件输出流;
6. 译码模型图格式;
7. 关闭文件输出流;
8. 返回模型图保存路径。
图IO指出了本发明模型描述信息智能提取流程图,具体如下
1. 打开系统层模型;
2. 读取系统层模型结点;
3. 解析系统层模型结点;
4. 判断是否为系统层模型描述结点;如果是则提取系统层模型描述结点内 部隐藏信息,并存放此系统层模型描述结点内部隐藏信息;否则继续解析系统 层模型结点,找到并打开构件模型结点,读取解析构件层模型结点;
5. 判断解析构件层模型结点是否为构件层模型描述结点;如果是则提取构 件层模型描述结点内部隐藏信息,并存放此构件层模型描述结点内部隐藏信息; 否则继续解析构件层模型结点,找到任务层模型描述节点后的操作同系统层、 构件层对应步骤操作。
图11指出了本发明模型属性信息智能提取流程图,具体如下
1. 打开构件层模型;
2. 读取构件层模型结点;
3. 解析构件层模型结点;
4. 找到Task任务模型节点;
5. 读取Task任务模型节点;
6. 解析Task任务模型节点;
7. 提取Task任务模型属性列表;
8. 存放Task任务模型属性列表信息,包括Task任务模型属性列表信息1、 Task任务模型属性列表信息2......Task任务模型属性列表信息n;
9. 结束。
图12指出了本发明底层模型算法函数信息智能提取流程图,具体如下
1. 打开任务层模型;
2. 读取任务层模型结点;
3. 解析任务层模型结点;4. 找到局部组件模型节点;
5. 读取局部组件模型节点;
6. 解析局部组件模型节点;
7. 提取局部组件模型内部信息;
8. 存放局部组件模型内部信息,包括底层算法函数定义l、底层算法函数定 义2......底层算法函数定义n;
9. 结束。
图13指出了本发明的自上而下的文档层次化内容生成接口结构图,生成接 口包括
1. 模型图接口;
2. 图片信息的层次化标号接口;
3. 模型描述结点的内部隐藏信息接口 ;
4. 模型属性信息接口;
5. 底层模型算法函数信息接口;
6. 层次化模型高低级别的大小标题接口 。
图14指出了本发明智能提取SmartC模型层次化逻辑结构信息进行文档定 位和模型描述信息嵌入流程图,具体如下-
1. 用与模型有关的文档一级标题定位模型的层次,包括嵌入系统结构、构 件层设计、任务层设计、模型属性说明、底层算法库设计说明;
2. 用与模型有关的文档二级标题定位模型的内部信息,系统结构包括嵌入 系统层结构图及功能描述、构件层设计包括嵌入不同构件层的结构图及描述、 任务层设计包括嵌入每个构件层的子层即任务层的结构图及描述、模型属性说 明包括嵌入构件层模块的Task属性,底层算法库设计说明包括嵌入构件层下任 务层不同模块的局部组件Localcomponent;
3. 用与模型有关的文档三级标题定位具体的颗粒信息,模型属性嵌入一级 目录下面构件层模块的Task任务的不同属性列表、底层算法库设计嵌入一级目 录下面任务层不同模块的不同局部组件Localcomponent的函数定义。
1权利要求
1. 一种基于模型信息的智能提取方法,其特征在于该方法的步骤如下在SmartOSEK IDE集成开发环境中建立SmartC四层层次化建模模型,包括系统层、构件层、任务层和组件层,首先读取SmartC的四层层次化建模模型,其次智能提取SmartC模型信息,再次智能提取SmartC模型层次化逻辑结构信息进行文档定位和模型描述信息嵌入,最后将智能提取后的模型信息自动生成充分表达智能提取模型信息的说明文档。
2、 根据权利要求1所述的一种基于模型信息的智能提取方法,其特征在于 所述的SmartC模型信息的智能提取包括l)模型图信息智能提取;2)模型描述 信息智能提取;3)模型属性信息智能提取;4)底层模型算法函数信息智能提取。
3、 根据权利要求2所述的一种基于模型信息的智能提取方法,其特征在于 所述的模型图信息智能提取步骤如下l)设置模型图智能抓取机器人Robot; 2) 设置模型图抓取范围,包括左上顶点的坐标和右下顶点距离左上顶点的位移; 3)Robot自顶向下依次抓取各层模型图;4)缓存模型图到默认路径,包括设置模 型图格式和缓存模型图的默认路径;5)新建文件输出流;6)译码模型图格式;7) 关闭文件输出流;8)返回模型图保存路径。
4、 根据权利要求2所述的一种基于模型信息的智能提取方法,其特征在于 所述的模型描述信息智能提取步骤如下l)打开系统层模型;2)读取系统层模型 结点;3)解析系统层模型结点;4)判断是否为系统层模型描述结点;如果是则提取系统层模型描述结点内部隐藏信息,并存放此系统层模型描述结点内部隐藏信息;否则继续解析系统层模型结点,找到并打开构件模型结点,读取解析构 件层模型结点;5)判断解析构件层模型结点是否为构件层模型描述结点;如果是 则提取构件层模型描述结点内部隐藏信息,并存放此构件层模型描述结点内部 隐藏信息;否则继续解析构件层模型结点,找到任务层模型描述节点后的操作 同系统层、构件层对应步骤操作。
5、 根据权利要求2所述的一种基于模型信息的智能提取方法,其特征在于-所述的模型属性信息智能提取步骤如下l)打开构件层模型;2)读取构件层模型 结点;3)解析构件层模型结点;4)找到Task任务模型节点;5)读取Task任务模 型节点;6)解析Task任务模型节点;7)提取Task任务模型属性列表;8)存放Task 任务模型属性列表信息,包括Task任务模型属性列表信息1、 Task任务模型属 性列表信息2......Task任务模型属性列表信息n。
6、 根据权利要求2所述的一种基于模型信息的智能提取方法,其特征在于: 所述的底层模型算法函数信息智能提取步骤如下l)打开任务层模型;2)读取任 务层模型结点;3)解析任务层模型结点;4)找到局部组件模型节点;5)读取局部 组件模型节点;6)解析局部组件模型节点;7)提取局部组件模型内部信息;8)存 放局部组件模型内部信息,包括底层算法函数定义l、底层算法函数定义2......底层算法函数定义n。
7、 根据权利要求1所述的一种基于模型信息的智能提取方法,其特征在于:所述的智能提取SmartC模型层次化逻辑结构信息进行文档定位和模型描述信息 嵌入步骤如下l)用与模型有关的文档一级标题定位模型的层次,包括嵌入系统 结构、构件层设计、任务层设计、模型属性说明、底层算法库设计说明;2)用与 模型有关的文档二级标题定位模型的内部信息,系统结构包括嵌入系统层结构 图及功能描述、构件层设计包括嵌入不同构件层的结构图及描述、任务层设计 包括嵌入每个构件层的子层即任务层的结构图及描述、模型属性说明包括嵌入 构件层模块的Task属性,底层算法库设计说明包括嵌入构件层下任务层不同模 块的局部组件Localcomponent; 3)用与模型有关的文档三级标题定位具体的颗粒 信息,模型属性嵌入一级目录下面构件层模块的Task任务的不同属性列表、底层算法库设计嵌入一级目录下面任务层不同模块的不同局部组件 Localcomponent的函数定义。
8、 根据权利要求1所述的一种基于模型信息的智能提取方法,其特征在于:所述的智能提取后的模型信息自动生成充分表达智能提取模型信息的说明文档的处理步骤如下l)建立文档生成的底层支持;2)设计自上而下的文档层次化内 容生成接口; 3)接受来自智能提取的SmartC模型信息和SmartC模型层次化逻 辑结构信息;4)最后生成充分表达智能提取模型信息后的模型信息说明文档。
9、 根据权利要求8所述的一种基于模型信息的智能提取方法,其特征在于: 所述的自上而下的文档层次化内容生成接口包括l)模型图接口; 2)图片信息的 层次化标号接口; 3)模型描述结点的内部隐藏信息接口; 4)模型属性信息接口; 5)底层模型算法函数信息接口 ; 6)层次化模型高低级别的大小标题接口 。
全文摘要
本发明公开了一种基于模型信息的智能提取方法,本发明针对SmartOSEKIDE集成开发环境中SmartC四层层次化建模模型,智能提取SmartC模型信息和SmartC模型层次化逻辑结构信息并自动生成文档,主要包括模型图信息智能提取、模型描述信息智能提取、模型属性信息智能提取、底层模型算法函数信息智能提取、模型层次化逻辑结构信息的智能提取、模型信息文档定位及嵌入和模型信息文档生成等。本发明的智能提取方法能够较充分阐述SmartC四层建模的含义和各个层次的设计内容。生成的文档结构规范、内容清晰,较好的表达了模型的层次化关系,有效提高了文档编写的高效性和自动化特性。
文档编号G06F9/44GK101295245SQ20081006192
公开日2008年10月29日 申请日期2008年5月27日 优先权日2008年5月27日
发明者吴朝晖, 张莉苹, 红 李, 凯 黄 申请人:浙江大学
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1