掌桥专利:专业的专利平台
掌桥专利
首页

设计报告文档的生成方法、装置以及处理器

文献发布时间:2023-06-19 19:20:08


设计报告文档的生成方法、装置以及处理器

技术领域

本申请涉及软件开发技术领域,具体而言,涉及一种设计报告文档的生成方法、装置、计算机可读存储介质以及处理器。

背景技术

随着软件开发工具的不断迭代和完善,新能源领域汽车控制器软件开发越来越多采用基于模型(Simulink)的图形开发模式,而非基于C语言的手写代码模式。

汽车软件开发有ASPICE规范的要求,在软件开发不同阶段,需要输出不同的工作产物,譬如:软件需求文档、软件架构设计文档、软件单元详细设计文档、软件单元测试报告、集成测试报告和软件合格性测试报告等,还要建立需求和设计的追溯性,需要占用工程师大量时间去完成,并且由于人为书写存在遗漏、出错等问题。

因此,汽车软件开发过程中,手动写详细设计报告需要花费大量时间,软件开发效率低下,是现有技术中亟需解决的技术问题。

在背景技术部分中公开的以上信息只是用来加强对本文所描述技术的背景技术的理解,因此,背景技术中可能包含某些信息,这些信息对于本领域技术人员来说并未形成在本国已知的现有技术。

发明内容

本申请的主要目的在于提供一种设计报告文档的生成方法、装置、计算机可读存储介质以及处理器,以解决现有技术中汽车软件开发过程中,手动写详细设计报告需要花费大量时间,造成软件开发效率低下的问题。

根据本发明实施例的一个方面,提供了一种设计报告文档的生成方法,包括:响应于预定操作,根据设计模型,生成对应的设计报告模板,所述设计模型为采用模型开发工具生成的汽车软件的模型,所述设计模型包括文件系统;获取文件系统信息,并将所述文件系统信息添加至所述设计报告模板中,得到初始设计报告文档,所述文件系统信息为所述文件系统的文件信息;获取所述文件系统对应的需求连接信息,所述需求连接信息为将所述文件系统与需求信息建立连接得到的,所述需求信息为从需求管理工具中获取的,所述需求管理工具用于管理所述汽车软件的业务需求;生成包括所述文件系统的名称、对应的所述需求连接信息以及对应的所述需求信息的追溯信息,并至少将所述追溯信息添加至所述初始设计报告文档中,得到设计报告文档。

可选地,响应于预定操作,根据设计模型,生成对应的设计报告模板,包括:响应于预定操作,启动所述模型开发工具的脚本程序,以生成模板信息、目录格式、版本章节页模板以及标题页,其中,所述模板信息包括所述设计报告模板的报告名称、存放路径以及文档格式;根据所述设计模型,确定所述设计模型的版本信息,所述版本信息包括所述设计模型的版本号以及修改时间信息;将所述版本信息添加至所述版本章节页模板,得到版本章节页;根据所述模板信息、所述目录格式以及所述版本章节页,生成所述设计报告模板。

可选地,获取文件系统信息,并将所述文件系统信息添加至所述设计报告模板中,得到初始设计报告文档,包括:生成步骤,生成第一章节页模板;获取步骤,获取所述文件系统的路径、描述信息、输入信号信息以及输出信号信息,所述描述信息包括所述文件系统的系统名称以及系统描述信息,所述输入信号信息为所述文件系统的输入信号的信号信息,所述输出信号信息为所述文件系统的输出信号的信号信息;截取步骤,根据所述文件系统的路径,从所述设计模型中截取所述文件系统的图像,得到第一图像信息;添加步骤,将所述第一图像信息、所述描述信息、所述输入信号信息以及所述输出信号信息分别添加至所述第一章节页模板,得到所述初始设计报告文档。

可选地,所述文件系统有多个,所述添加步骤包括:第一添加子步骤,将所述图像信息、所述描述信息、所述输入信号信息以及所述输出信号信息分别添加至所述第一章节页模板,添加后的所述第一章节页模板形成第一章节页;循环步骤,循环执行所述生成步骤、所述获取步骤、所述截取步骤以及所述第一添加子步骤至少一次,直到得到所有所述文件系统的第一章节页;第二添加子步骤,将所有的所述第一章节页添加至所述设计报告模板中,得到所述初始设计报告文档。

可选地,所述文件系统有多个,有对应的所述需求连接信息的所述文件系统为目标文件系统,生成包括所述文件系统的名称、对应的所述需求连接信息以及对应的所述需求信息的追溯信息,并至少将所述追溯信息添加至所述初始设计报告文档中,得到设计报告文档,包括:生成第二章节页模板;生成包括所述目标文件系统的名称、对应的所述需求连接信息以及对应的所述需求信息的追溯信息;根据所述目标文件系统的路径,从所述设计模型中截取所述目标文件系统的图像,得到第二图像信息;将所述追溯信息以及所述第二图像信息分别添加至所述第二章节页模板,得到第二章节页;至少将所述第二章节页添加至所述初始设计报告文档中,得到所述设计报告文档。

可选地,在至少将所述第二章节页添加至所述初始设计报告文档中,得到所述设计报告文档之前,所述方法还包括:生成第三章节页模板;获取所有的所述需求连接信息,并根据各所述需求连接信息以及所述需求连接信息对应的所述文件系统的系统名称,生成对应关系列表;将所述对应关系列表添加至所述第三章节页模板,得到第三章节页,至少将所述第二章节页添加至所述初始设计报告文档中,得到所述设计报告文档,包括:将所述第二章节页以及所述第三章节页添加至所述初始设计报告文档中,得到所述设计报告文档。

可选地,在至少将所述第二章节页添加至所述初始设计报告文档中,得到所述设计报告文档之前,所述方法还包括:生成第四章节页模板;获取所述设计报告文档的名词解释信息,并将所述名词解释信息添加至所述第四章节页模板,得到第四章节页,至少将所述第二章节页添加至所述初始设计报告文档中,得到所述设计报告文档,包括:将所述第二章节页以及所述第四章节页添加至所述初始设计报告文档中,得到所述设计报告文档。

根据本发明实施例的另一方面,还提供了一种设计报告文档的生成装置,包括:第一生成单元,用于响应于预定操作,根据设计模型,生成对应的设计报告模板,所述设计模型为采用模型开发工具生成的汽车软件的模型,所述设计模型包括文件系统;第一获取单元,用于获取文件系统信息,并将所述文件系统信息添加至所述设计报告模板中,得到初始设计报告文档,所述文件系统信息为所述文件系统的文件信息;第二获取单元,用于获取所述文件系统对应的需求连接信息,所述需求连接信息为将所述文件系统与需求信息建立连接得到的,所述需求信息为从需求管理工具中获取的,所述需求管理工具用于管理所述汽车软件的业务需求;第二生成单元,用于生成包括所述文件系统的名称、对应的所述需求连接信息以及对应的所述需求信息的追溯信息,并至少将所述追溯信息添加至所述初始设计报告文档中,得到设计报告文档。

根据本发明实施例的再一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序执行任意一种所述的方法。

根据本发明实施例的又一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行任意一种所述的方法。

在本发明实施例中,首先,响应于预定操作,生成设计模型对应的设计报告模板,所述设计模型包括文件系统;之后,获取所述文件系统的文件系统信息,并将所述文件系统信息添加至所述设计报告模板中,得到初始设计报告文档;之后,获取所述文件系统对应的需求连接信息;最后,生成包括所述文件系统的名称、对应的所述需求连接信息以及对应的所述需求信息的追溯信息,并至少将所述追溯信息添加至所述初始设计报告文档中,得到设计报告文档。相比现有技术中汽车软件开发过程中,手动写详细设计报告需要花费大量时间,造成软件开发效率低下的问题,本申请可以自动将包括设计模型的文件系统的文件信息、文件系统的名称、对应的需求连接信息以及需求信息等信息添加到设计报告模板中,来生成设计报告文档,无需人工手写报告,提升了汽车软件的开发效率。另外,本申请可以自动获取并生成设计模型与需求信息之间的追溯信息,无需人工进行关联,进一步地保证了开发效率较高。

附图说明

构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:

图1示出了根据本申请的实施例的设计报告文档的生成方法的流程示意图;

图2示出了根据本申请的实施例的设计报告文档的生成装置的示意图。

具体实施方式

需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。

为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。

需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

应该理解的是,当元件(诸如层、膜、区域、或衬底)描述为在另一元件“上”时,该元件可直接在该另一元件上,或者也可存在中间元件。而且,在说明书以及权利要求书中,当描述有元件“连接”至另一元件时,该元件可“直接连接”至该另一元件,或者通过第三元件“连接”至该另一元件。

正如背景技术中所说的,现有技术中的汽车软件开发过程中,手动写详细设计报告需要花费大量时间,造成软件开发效率低下,为了解决上述问题,本申请的一种典型的实施方式中,提供了一种设计报告文档的生成方法、装置、计算机可读存储介质以及处理器。

根据本申请的实施例,提供了一种设计报告文档的生成方法。

图1是根据本申请实施例的设计报告文档的生成方法的流程图。如图1所示,该方法包括以下步骤:

步骤S101,响应于预定操作,根据设计模型,生成对应的设计报告模板,上述设计模型为采用模型开发工具生成的汽车软件的模型,上述设计模型包括文件系统;

需要说明的是,本申请的上述方法通过在模型开发工具中运行脚本实现,上述预定操作可以为触发脚本运行的任意操作,如点击触发脚本运行的标识,再比如输入预定字符信息触发脚本运行等。

具体地,上述模型开发工具包括MATLAB,上述设计模型为用来说明汽车软件开发用例实现的对象模型,是实施模型机器源代码的抽象,上述文件系统用于表征汽车软件开发用例的单元颗粒度。

更为具体的一种实施例中,上述模型开发工具为MATLB,上述脚本为MATLB的M语言脚本。

为了进一步地实现设计报告文档的自动生成,从而进一步地解决现有技术中人工撰写设计报告文档,造成效率低下的问题,本申请的另一种实施例中,响应于预定操作,根据设计模型,生成对应的设计报告模板,包括:响应于预定操作,启动上述模型开发工具的脚本程序,以生成模板信息、目录格式、版本章节页模板以及标题页,其中,上述模板信息包括上述设计报告模板的报告名称、存放路径以及文档格式;根据上述设计模型,确定上述设计模型的版本信息,上述版本信息包括上述设计模型的版本号以及修改时间信息;将上述版本信息添加至上述版本章节页模板,得到版本章节页;根据上述模板信息、上述目录格式以及上述版本章节页,生成上述设计报告模板。

上述实施例中,先启动运行模型开发工具的脚本程序,来生成设计报告模板的模板信息、目录格式、版本章节页模板以及标题页,再将设计模型的版本号以及修改时间信息添加到版本章节页模板中,得到设计模型对应的版本章节页,最后根据模板信息、目录格式以及得到的版本章节页,生成设计报告模板,进一步地实现了自动生成包括设计模型的目录页、版本章节页以及标题页的设计报告模板,方便了后续向上述设计报告模板中添加设计模型的模型信息,得到最终的设计报告文档。

本申请的实施例中,上述标题页为记载有设计模型的标题、副标题、开发作者、发布公司以及发布日期的页面。上述目录格式用于记载各个章节页的标题以及对应的页码信息,上述目录格式为可设置字体格式、字号、颜色以及排版样式的目录页。上述版本章节页模板可以为记载有“版本号:;修改时间:;”等字样的页面。

上述文档格式可以为任意合适的文档格式,如WORD、PDF等格式。上述修改时间信息为上述设计模型距离当前时刻最近的一次修改操作。

具体地,通过脚本配置得到上述设计报告模板的过程如下:

步骤1)、在脚本中导入MATLB的slreportgen.report、slreportgen.finder以及mlreportgen.report三个类的函数群;

步骤2)、通过load_system函数加载设计模型的根文件系统;

步骤3)、调用slreportgen.report类中的slreportgen.report.Report函数定义生成设计报告文档的名字,存放路径和文档格式

步骤4)、通过调用TitlePage函数来定义设计报告文档的标题页,其中可以配置标题,副标题,作者,发布公司和发布日期等信息;

步骤5)、通过TableOfContents函数配置目录格式;

步骤6)、通过‘ch=Chapter("Title","ModelVersion");’添加版本章节页模板;

步骤7)、通过get_param函数获得设计模型的模型板本号和上次修改的时间;

步骤8)、通过append或者add函数将当前模型的版本号和上次修改的时间添加到版本章节页模板,得到版本章节页;

步骤9)、通过‘append(rpt,ch)’将版本章节页添加到设计报告模板中。

步骤S102,获取文件系统信息,并将上述文件系统信息添加至上述设计报告模板中,得到初始设计报告文档,上述文件系统信息为上述文件系统的文件信息;

通过上述步骤自动将设计模型中文件系统的文件信息添加到设计报告模板中,进一步地避免了人工撰写设计报告文档花费大量时间的问题,同时,由于人为书写存在遗漏、出错等问题,通过本申请的上述步骤将文件信息加入设计报告模板中,可以使得得到的设计报告文档的准确性更高。

为了进一步地保证设计报告文档的完整性,根据本申请的一种具体的实施例,获取文件系统信息,并将上述文件系统信息添加至上述设计报告模板中,得到初始设计报告文档,包括:生成步骤,生成第一章节页模板;获取步骤,获取上述文件系统的路径、描述信息、输入信号信息以及输出信号信息,上述描述信息包括上述文件系统的系统名称以及系统描述信息,上述输入信号信息为上述文件系统的输入信号的信号信息,上述输出信号信息为上述文件系统的输出信号的信号信息;截取步骤,根据上述文件系统的路径,从上述设计模型中截取上述文件系统的图像,得到第一图像信息;添加步骤,将上述第一图像信息、上述描述信息、上述输入信号信息以及上述输出信号信息分别添加至上述第一章节页模板,得到上述初始设计报告文档。

一种具体的实施例中,上述描述信息、上述输入信号信息以及上述输出信号信息均为表格形式。上述输入信号信息包括信号名称、信号描述、信号数据类型、信号单位、信号输出最大值以及信号输出最小值,上述输出信号信息包括信号名称、信号描述、信号数据类型、信号单位、信号输出最大值以及信号输出最小值。

通过遍历查询上述设计模型,得到每个上述文件系统的输入信号信息以及输出信号信息。

本申请的再一种实施例中,上述文件系统有多个,上述添加步骤包括:第一添加子步骤,将上述图像信息、上述描述信息、上述输入信号信息以及上述输出信号信息分别添加至上述第一章节页模板,添加后的上述第一章节页模板形成第一章节页;循环步骤,循环执行上述生成步骤、上述获取步骤、上述截取步骤以及上述第一添加子步骤至少一次,直到得到所有上述文件系统的第一章节页;第二添加子步骤,将所有的上述第一章节页添加至上述设计报告模板中,得到上述初始设计报告文档。通过循环执行上述生成步骤、上述获取步骤、上述截取步骤以及上述第一添加子步骤,来将上述设计模型所有的上述文件系统对应的第一章节页,进一步地保证了可以较为快速且完整地得到设计模型的设计报告文档,进一步地避免了现有技术中汽车软件开发过程中,手动写详细设计报告需要花费大量时间,造成软件开发效率低下的问题。

需要说明的是,多个上述文件系统由一个根文件系统以及多个子文件系统构成,上述根文件系统对应的第一章节页为根系统章节页,上述子文件系统对应的第一章节页为子系统章节页。

上述的获取文件系统信息,并将上述文件系统信息添加至上述设计报告模板中,得到初始设计报告文档的过程中,先配置并生成上述根文件系统的第一章节页,再依次配置并生成各个子文件系统的第一章节页。

并且,相比MATLAB自带的模型生成设计文档,是将设计模型所有的系统统一平铺到同一级章节下,造成结构十分混乱的问题,本申请的上述实施例可以面向设计模型的每个文件系统,将每个文件系统的信息拆分添加至对应的章节页中,保证了得到的设计报告文档的结构以及脉络都较为清晰,可读性强,便于工作人员查阅。

具体的,通过脚本将根文件系统的相关信息添加至初始设计报告文档的具体过程如下:

步骤1’)、通过‘ch=Chapter("Title","RootSystem");’生成根文件系统对应的根系统章节页模板;

步骤2’)、通过SystemDiagramFinder函数查找根文件系统;

步骤3’)、通过add函数将根系统的截图插入根系统章节页模板中;

步骤4’)、通过BaseTable获得包括根文件系统的名字和根文件系统的描述信息的表格;

步骤5’)、添加步骤4’)中得到的表格至根系统章节页模板中;

步骤6’)、通过‘sect=Section("Title","Inport Blocks");’获取根文件系统的输入信号信息,并添加输入信号信息到根系统章节页模板中;

具体通过BlockFinder函数查找根系统中的block(块),并且通过定义BlockTypes为Inport来限定查找的Block的类型为输入信号,遍历查找出来输入信号,并且将输入信号的信号名称、信号描述、信号数据类型、信号单位、信号输出最大值以及信号输出最小值这些信息以表格形式添加到根系统章节页模板中;

步骤7’)、通过‘sect=Section("Title","Outport Blocks");’获取根文件系统的输出信号信息,并添加输出信号信息到根系统章节页模板中;

具体通过BlockFinder函数查找根系统中的block,并且通过定义BlockTypes为Outport来限定查找的Block的类型为输出信号,遍历查找出来输出信号,并且将输出信号的信号名称、信号描述、信号数据类型、信号单位、信号输出最大值以及信号输出最小值这些信息以表格形式添加到到根系统章节页模板中;

步骤8’)、将根文件系统的根系统章节页添加到设计报告模板中。

通过脚本将子文件系统的相关信息添加至初始设计报告文档的具体过程如下:

步骤11’)、通过‘ch=Chapter("Title","SubSystems");’生成各个子文件系统对应的子系统章节页模板;

步骤12’)、通过DiagramFinder函数查找子文件系统;

步骤13’)、通过hasNext函数遍历所有的子文件系统;

步骤14’)、添加子文件系统的名字至对应的子系统章节页模板中;

步骤15’)、通过add函数将子文件系统的截图插入;

步骤16’)、通过BlockFinder函数查找子文件系统中的block,遍历查找出来输入信号,并且将输入信号的信号名字、信号描述、信号数据类型、信号单位、信号输出最大值以及信号输出最小值作为表格添加到子系统章节页模板中,得到子系统章节页;

步骤17’)、将各个子系统章节页添加到设计报告模板中。

步骤S103,获取上述文件系统对应的需求连接信息,上述需求连接信息为将上述文件系统与需求信息建立连接得到的,上述需求信息为从需求管理工具中获取的,上述需求管理工具用于管理上述汽车软件的业务需求;

通过将上述文件系统与需求信息建立连接,得到需求连接信息,从而实现了需求和设计自动建立追溯的目的,无需人工一一将两者进行关联,同时进一步地方便了将该需求连接信息添加至设计报告文档,来保证自动生成的设计报告文档的完整性。

上述需求管理工具包括CodeBeamer。更为具体的一种实施例中,上述需求管理工具为CodeBeamer。CodeBeamer是一款Java编写的项目管理软件(免费非开源),CodeBeamer的特点在于让整个开发团队可以协同办公。通过CodeBeamer来管理汽车软件的需求,以帮助决策。

具体地,将上述文件系统与需求信息建立连接的具体实现方式如下:

步骤S201,采用模型开发工具建立用户界面(User Interface,简称为UI),上述模型开发工具用于生成并在显示界面上显示汽车软件的设计模型,上述设计模型包括多个文件系统,上述用户界面包括多个第一选择标识,上述第一选择标识包括选择需求类型的标识;

上述实施例通过可视化的用户界面,方便工作人员配置信息,方便后续建立与需求管理工具的连接。

具体地,上述模型开发工具为MATLAB,其中,建立用户界面是通过MATLAB中的Appdesigner,App designer是专门做UI开发的工具,生成上述设计模型是通过MATLAB中的Simulink。Simulink是一种可视化仿真工具,是一个模块图环境,用于多域仿真以及基于模型的设计。它支持系统设计、仿真、自动代码生成以及嵌入式系统的连续测试和验证。Simulink提供图形编辑器、可自定义的模块库以及求解器,能够进行动态系统建模和仿真。Simulink与MATLAB相集成,能够在Simulink中将MATLAB算法融入模型,还能将仿真结果导出至MATLAB做进一步分析。

上述设计模型为用来说明汽车软件开发用例实现的对象模型,是实施模型机器源代码的抽象。上述文件系统用于表征汽车软件开发用例的单元颗粒度。

步骤S202,响应于作用在上述用户界面上的第一操作,建立上述用户界面与需求管理工具的访问连接,并从上述需求管理工具中获取目标需求类型中多个对象的需求信息,上述目标需求类型为被操作的上述第一选择标识对应的上述需求类型,上述需求管理工具用于管理上述汽车软件的业务需求;

上述实施例中,通过在用户界面上的第一操作,来建立用户界面与需求管理工具的连接,从而使得用户界面可以从需求管理工具中获取需要的需求信息,方便了后续根据这些需求信息来建立需求与设计的关联。

上述第一操作可以为作用在用户界面上的勾选、点击、长按、拖拽以及双击等操作方式,本领域技术人员可以根据实际情况灵活设置第一操作的具体操作方式。

上述需求管理工具包括CodeBeamer、Jira、Doors、Visual Source Safe、Subversion以及ClearCase中至少一个。更为具体的一种实施例中,上述需求管理工具为CodeBeamer。CodeBeamer是一款Java编写的项目管理软件(免费非开源),CodeBeamer的特点在于让整个开发团队可以协同办公。通过CodeBeamer来管理汽车软件的需求,以帮助决策。

上述第一选择标识为软件需求、系统需求和测试用例等选择标识,在需求管理工具中属于tracker类,该需求管理工具当前只涉及软件需求,即Software Requirement。

本申请的一种实施例中,上述用户界面还包括输入标识,上述输入标识为输入用户的名称、用户的密码以及服务器地址的标识,上述服务器地址为上述需求管理工具的访问地址,上述需求管理工具运行在网页上,响应于作用在上述用户界面上的第一操作,建立上述用户界面与需求管理工具的访问连接,并从上述需求管理工具中获取目标需求类型中多个对象的需求信息,包括:响应于作用在上述输入标识上的输入操作,运行网页访问函数,以建立与上述需求管理工具的访问连接,上述网页访问函数用于访问上述网页;响应于作用在上述第一选择标识上的选择操作,从上述需求管理工具中获取上述用户的权限下上述目标需求类型中所有的上述需求信息。

具体地,用户只能通过REST(Representational State Transfer,表述性状态传递)API(Application Programming Interface,应用程序接口)进行CodeBeamer的访问。在公司局域网内,访问CodeBeamer可以通过浏览器,以用户名和密码的形式登录。

需要说明的是,对于一个汽车软件开发项目,上述需求管理工具中包括该汽车软件的多个需求类型(Project Tracker)、该需求类型下的项目类型(Project)、该项目类型对应的追踪器(Tracker)以及该追踪器下属于该项目类型的所有对象(Item)。因此,响应于作用在上述第一选择标识上的选择操作,从上述需求管理工具中获取上述用户的权限下上述目标需求类型中所有的上述需求信息,包括:响应于作用在上述第一选择标识上的选择操作,在上述用户界面上显示上述目标需求类型下所有项目类型(Project)选择标识的第一列表;响应于作用在上述第一列表上的选择操作,在上述用户界面上显示目标项目类型的追踪器列表,上述目标项目类型为被选择上述项目类型选择标识对应的项目类型,上述追踪器列表包括多个追踪器选择标识;响应于作用在上述追踪器列表中目标追踪器选择标识上选择操作,上述目标追踪器选择标识为多个追踪器选择标识中的一个,获取在上述用户的权限下,上述目标需求类型中目标追踪器对应的所有对象的上述需求信息。

另外,上述用户界面还包括第三选择标识,上述第三选择标识为表征保存操作的第一子选择标识以及取消操作的第二子选择标识,通过在用户界面上的输入标识中输入用户的名称、用户的密码以及服务器地址,以进行需求管理工具的服务器地址、用户名和密码的配置,模型开发工具就会自动调用并访问需求管理工具的服务器。再从用户界面上的第一选择标识中选择需要的需求类型,再选择第三选择标识,即可触发从需求管理工具中获取需求信息的操作,模型开发工具就会调用需求管理工具中类型为Software Requirement的Tracker。

上述实施例的具体代码实现过程如下:

Opt=weboptions('Username',UserName,'Password',Password,'ContentType','json')

Usr=webread([URL'/rest/user/self'],Opt)

其中,URL(Uniform Resource Locator,统一资源定位系统)为上述服务器地址的标识中输入内容,UserName为上述用户的名称的标识中输入的内容,Password为上述用户的名称的标识中输入内容,函数webread为网页访问函数,weboptions为其附属形参。

为了进一步地实现汽车软件需求与设计的自动关联与追溯,根据本申请的另一种具体的实施例,从上述需求管理工具中获取上述用户的权限下上述目标需求类型中所有的上述需求信息,包括:从上述需求管理工具中获取上述目标需求类型中各上述对象的对象编号、对象名称以及对象描述信息;按照预定排列顺序将上述对象编号、上述对象名称以及上述对象描述信息,得到上述需求信息。

一种实施例中,上述预定排序为顺序排列上述对象编号、上述对象名称以及上述对象描述信息。上述对象编号为对象ID号。

由于需求管理工具中的对象名称只包括标题,无法获取对象的描述信息,因此上述实施例需要额外的属性拓展获取,再进行字符串拼接,得到上述包括对象名称、对象编号以及对象描述信息。

步骤S203,根据多个上述需求信息与多个文件系统的对应关系,建立上述文件系统与上述需求信息的关系函数;

上述实施例中,根据需求信息与文件系统的对应关系,建立两者的关系函数,便于后续根据该关系函数,将文件系统与对应的需求进行快速关联,从而实现了需求和设计自动建立追溯的目的,解决了现有技术中人工去追溯需求和设计的关联关系,造成开发效率低下的问题。

上述需求信息与文件系统的对应关系可以根据实际情况设置,如一个文件系统对应一个需求信息,或者一个文件系统对应多个需求信息等。

为了进一步地实现需求与设计的快速自动地关联,本申请的又一种实施例中,根据多个上述需求信息与多个文件系统的对应关系,建立上述文件系统与上述需求信息的关系函数,包括:根据上述对应关系,基于上述模型开发工具的二次开发接口,生成各上述文件系统对对应的上述需求信息的回调函数;生成运行上述回调函数的第二选择标识。通过建立设计与需求的快捷关联菜单,进一步地实现了需求和设计自动建立追溯的效果。

具体地,可以基于MATLAB提供的二次开发接口:ReqMgr函数,进行CodeBeamer的上述快捷菜单开发,得到界面,其中,上述第二选择标识位于下拉选择菜单中。具体代码实现过程如下:

%Create a blank requirement target

LinkTyp=ReqMgr.LinkTyp;

LinkTyp.Registration=mfilename;

%Label describing this link type

LinkTyp.Label='codeBeamer'

LinkTyp.SelectionLinkLabel='Link to codeBeamer'。

步骤S204,响应于作用在目标文件系统上的第二操作,运行对应的上述关系函数,得到目标需求信息并控制上述显示界面显示上述目标需求信息,上述目标需求信息为上述目标文件系统对应的上述需求信息,上述目标文件系统为多个上述文件系统中的一个。

上述实施例中,通过在显示界面上的第二操作,运行对应的上述关系函数,来获取第二操作所选的目标文件系统对应的需求信息,实现了快速便捷的调用设计模型中各个文件系统对应的需求信息的效果,方便了工作人员确认设计是否满足软件需求,并且可以使得工作人员在开发过程中正确验证了这些需求。

上述第二操作可以为作用在显示界面上的勾选、点击、长按、拖拽以及双击等操作方式,本领域技术人员可以根据实际情况灵活设置第一操作的具体操作方式。

根据本申请的再一种具体的实施例,响应于作用在目标文件系统上的第二操作,运行对应的上述关系函数,包括:响应于作用在上述目标文件系统上的第一选择操作,在上述显示界面上显示上述第二选择标识;响应于作用在上述第二选择标识上的第二选择操作,运行上述目标文件系统对应的上述回调函数。

响应于作用在上述第二选择标识上的第二选择操作,运行上述目标文件系统对应的上述回调函数,包括:响应于作用在上述第二选择标识上的第二选择操作,在上述显示界面上显示第四选择标识;响应于作用在上述第四选择标识上的第三选择操作,运行上述目标文件系统对应的上述回调函数。通过上述第二选择操作,打开上述第二选择标识的选择菜单,再从选择菜单中找到上述第四选择标识,运行该目标文件系统对应的回调函数,来调取其对应的需求信息。

具体的一种实施例中,上述第一选择操作为右击操作,上述第二选择操作以及上述第四选择操作为左击操作。

步骤S205,建立上述目标文件系统与上述目标需求信息的需求连接(RequirementLink)。

通过建立需求连接,实现了汽车软件的设计模型与需求的关联与追溯。

步骤S104,生成包括上述文件系统的名称、对应的上述需求连接信息以及对应的上述需求信息的追溯信息,并至少将上述追溯信息添加至上述初始设计报告文档中,得到设计报告文档。

在实际的应用过程中,并不是所有的文件系统都有对应的需求信息,这种情况下,为了保证设计报告文档可阅读性较强,本申请的再一种实施例中,上述文件系统有多个,有对应的上述需求连接信息的上述文件系统为目标文件系统,生成包括上述文件系统的名称、对应的上述需求连接信息以及对应的上述需求信息的追溯信息,并至少将上述追溯信息添加至上述初始设计报告文档中,得到设计报告文档,包括:生成第二章节页模板;生成包括上述目标文件系统的名称、对应的上述需求连接信息以及对应的上述需求信息的追溯信息;根据上述目标文件系统的路径,从上述设计模型中截取上述目标文件系统的图像,得到第二图像信息;将上述追溯信息以及上述第二图像信息分别添加至上述第二章节页模板,得到第二章节页;至少将上述第二章节页添加至上述初始设计报告文档中,得到上述设计报告文档。

上述实施例中,通过生成第二章节页模板,并把包括需求连接信息的追溯信息以及其对应的文件系统截图添加至第二章节页模板中,得到第二章节页,并将第二章节页添加至初始设计报告文档中,得到设计报告文档,使得工作人员在查阅该设计报告文档时,通过第二章节页可以清楚的看到文件系统与其对应的需求连接信息,从而保证生成的设计报告文档可阅读性较强。

上述的得到第二章节页,并将第二章节页添加至初始设计报告文档中的具体实现过程可以如下:遍历含有需求连接信息的所有的子文件系统,得到目标文件系统;添加目标文件系统的截图至第二章节页模板中,并通过BaseTable将目标文件系统的名称、关联需求的描述和需求连接信息添加至第二章节页模板中,得到第二章节页;将上述第二章节页添加至初始设计报告文档中,得到设计报告文档。

在本申请的一种示例性地实施例中,在至少将上述第二章节页添加至上述初始设计报告文档中,得到上述设计报告文档之前,上述方法还包括:生成第三章节页模板;获取所有的上述需求连接信息,并根据各上述需求连接信息以及上述需求连接信息对应的上述文件系统的系统名称,生成对应关系列表;将上述对应关系列表添加至上述第三章节页模板,得到第三章节页,至少将上述第二章节页添加至上述初始设计报告文档中,得到上述设计报告文档,包括:将上述第二章节页以及上述第三章节页添加至上述初始设计报告文档中,得到上述设计报告文档。这样可以进一步地方便工作人员查看设计模型文件系统与需求连接信息的对应关系。

具体地,通过‘ch=Chapter("Title","Requirements Traceability");’生成上述第三章节页模板;通过slreq.load函数加载设计模型;通过getLinks函数获取设计模型中的所有需求连接信息;将子文件系统的名称、需求连接信息合并在表中,添加到第三章节页模板中,得到第三章节页。

在其他实施例中,在至少将上述第二章节页添加至上述初始设计报告文档中,得到上述设计报告文档之前,上述方法还包括:生成第四章节页模板;获取上述设计报告文档的名词解释信息,并将上述名词解释信息添加至上述第四章节页模板,得到第四章节页,至少将上述第二章节页添加至上述初始设计报告文档中,得到上述设计报告文档,包括:将上述第二章节页以及上述第四章节页添加至上述初始设计报告文档中,得到上述设计报告文档。

具体地,先通过‘ch=Chapter("Title","About this Report");’生成第四章节页模板;再将设计报告文档相关的信息和名词解释通过设置字符串添加至第四章节页模板中,得到第四章节页;最后将第四章节页添加至初始设计报告文档中,得到最终的设计报告文档。

另外,生成设计报告文档的流程为:

1)打开MATLAB并加载设计模型,具体为首先打开MATLAB,然后加载设计模型及环境,最后通过CodeBeamer RMI关联MATLAB和CodeBeamer;

2)、通过MATLAB将设计模型的文件系统和Codebeamer中的需求关联起来;

3)运行生成设计报告文档的脚本,具体为首先点击配置好的生成设计报告文档的M脚本并运行,然后得到设计报告文档。

上述的设计报告文档的生成方法中,首先,响应于预定操作,生成设计模型对应的设计报告模板,上述设计模型包括文件系统;之后,获取上述文件系统的文件系统信息,并将上述文件系统信息添加至上述设计报告模板中,得到初始设计报告文档;之后,获取上述文件系统对应的需求连接信息;最后,生成包括上述文件系统的名称、对应的上述需求连接信息以及对应的上述需求信息的追溯信息,并至少将上述追溯信息添加至上述初始设计报告文档中,得到设计报告文档。相比现有技术中汽车软件开发过程中,手动写详细设计报告需要花费大量时间,造成软件开发效率低下的问题,本申请可以自动将包括设计模型的文件系统的文件信息、文件系统的名称、对应的需求连接信息以及需求信息等信息添加到设计报告模板中,来生成设计报告文档,无需人工手写报告,提升了汽车软件的开发效率。另外,本申请可以自动获取并生成设计模型与需求信息之间的追溯信息,无需人工进行关联,进一步地保证了开发效率较高。

并且,相比现有技术中人工手写设计报告文档,容易出现遗漏以及出错的问题,本申请的上述设计报告文档的生成方法中,由于设计报告文档中的信息都是根据设计模型获取的,保证了设计报告文档的准确性。

需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且,虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。

本申请实施例还提供了一种设计报告文档的生成装置,需要说明的是,本申请实施例的设计报告文档的生成装置可以用于执行本申请实施例所提供的用于设计报告文档的生成方法。以下对本申请实施例提供的设计报告文档的生成装置进行介绍。

图2是根据本申请实施例的设计报告文档的生成装置的示意图。如图2所示,该装置包括:

第一生成单元10,用于响应于预定操作,根据设计模型,生成对应的设计报告模板,上述设计模型为采用模型开发工具生成的汽车软件的模型,上述设计模型包括文件系统;

需要说明的是,本申请的上述方法通过在模型开发工具中运行脚本实现,上述预定操作可以为触发脚本运行的任意操作,如点击触发脚本运行的标识,再比如输入预定字符信息触发脚本运行等。

具体地,上述模型开发工具包括MATLAB,上述设计模型为用来说明汽车软件开发用例实现的对象模型,是实施模型机器源代码的抽象,上述文件系统用于表征汽车软件开发用例的单元颗粒度。

更为具体的一种实施例中,上述模型开发工具为MATLB,上述脚本为MATLB的M语言脚本。

为了进一步地实现设计报告文档的自动生成,从而进一步地解决现有技术中人工撰写设计报告文档,造成效率低下的问题,本申请的另一种实施例中,上述第一生成单元包括:启动模块,用于响应于预定操作,启动上述模型开发工具的脚本程序,以生成模板信息、目录格式、版本章节页模板以及标题页,其中,上述模板信息包括上述设计报告模板的报告名称、存放路径以及文档格式;确定模块,用于根据上述设计模型,确定上述设计模型的版本信息,上述版本信息包括上述设计模型的版本号以及修改时间信息;第一添加模块,用于将上述版本信息添加至上述版本章节页模板,得到版本章节页;第一生成模块,用于根据上述模板信息、上述目录格式以及上述版本章节页,生成上述设计报告模板。

上述实施例中,先启动运行模型开发工具的脚本程序,来生成设计报告模板的模板信息、目录格式、版本章节页模板以及标题页,再将设计模型的版本号以及修改时间信息添加到版本章节页模板中,得到设计模型对应的版本章节页,最后根据模板信息、目录格式以及得到的版本章节页,生成设计报告模板,进一步地实现了自动生成包括设计模型的目录页、版本章节页以及标题页的设计报告模板,方便了后续向上述设计报告模板中添加设计模型的模型信息,得到最终的设计报告文档。

本申请的实施例中,上述标题页为记载有设计模型的标题、副标题、开发作者、发布公司以及发布日期的页面。上述目录格式用于记载各个章节页的标题以及对应的页码信息,上述目录格式为可设置字体格式、字号、颜色以及排版样式的目录页。上述版本章节页模板可以为记载有“版本号:;修改时间:;”等字样的页面。

上述文档格式可以为任意合适的文档格式,如WORD、PDF等格式。上述修改时间信息为上述设计模型距离当前时刻最近的一次修改操作。

具体地,通过脚本配置得到上述设计报告模板的过程如下:

步骤1)、在脚本中导入MATLB的slreportgen.report、slreportgen.finder以及mlreportgen.report三个类的函数群;

步骤2)、通过load_system函数加载设计模型的根文件系统;

步骤3)、调用slreportgen.report类中的slreportgen.report.Report函数定义生成设计报告文档的名字,存放路径和文档格式

步骤4)、通过调用TitlePage函数来定义设计报告文档的标题页,其中可以配置标题,副标题,作者,发布公司和发布日期等信息;

步骤5)、通过TableOfContents函数配置目录格式;

步骤6)、通过‘ch=Chapter("Title","ModelVersion");’添加版本章节页模板;

步骤7)、通过get_param函数获得设计模型的模型板本号和上次修改的时间;

步骤8)、通过append或者add函数将当前模型的版本号和上次修改的时间添加到版本章节页模板,得到版本章节页;

步骤9)、通过‘append(rpt,ch)’将版本章节页添加到设计报告模板中。

第一获取单元20,用于获取文件系统信息,并将上述文件系统信息添加至上述设计报告模板中,得到初始设计报告文档,上述文件系统信息为上述文件系统的文件信息;

通过上述步骤自动将设计模型中文件系统的文件信息添加到设计报告模板中,进一步地避免了人工撰写设计报告文档花费大量时间的问题,同时,由于人为书写存在遗漏、出错等问题,通过本申请的上述步骤将文件信息加入设计报告模板中,可以使得得到的设计报告文档的准确性更高。

为了进一步地保证设计报告文档的完整性,根据本申请的一种具体的实施例,上述第一获取单元包括:第二生成模块,用于生成步骤,生成第一章节页模板;获取模块,用于获取步骤,获取上述文件系统的路径、描述信息、输入信号信息以及输出信号信息,上述描述信息包括上述文件系统的系统名称以及系统描述信息,上述输入信号信息为上述文件系统的输入信号的信号信息,上述输出信号信息为上述文件系统的输出信号的信号信息;第一截取模块,用于截取步骤,根据上述文件系统的路径,从上述设计模型中截取上述文件系统的图像,得到第一图像信息;第二添加模块,用于添加步骤,将上述第一图像信息、上述描述信息、上述输入信号信息以及上述输出信号信息分别添加至上述第一章节页模板,得到上述初始设计报告文档。

一种具体的实施例中,上述描述信息、上述输入信号信息以及上述输出信号信息均为表格形式。上述输入信号信息包括信号名称、信号描述、信号数据类型、信号单位、信号输出最大值以及信号输出最小值,上述输出信号信息包括信号名称、信号描述、信号数据类型、信号单位、信号输出最大值以及信号输出最小值。

通过遍历查询上述设计模型,得到每个上述文件系统的输入信号信息以及输出信号信息。

本申请的再一种实施例中,上述文件系统有多个,上述第二添加模块包括:第一添加子模块,用于第一添加子步骤,将上述图像信息、上述描述信息、上述输入信号信息以及上述输出信号信息分别添加至上述第一章节页模板,添加后的上述第一章节页模板形成第一章节页;循环子模块,用于循环步骤,循环执行上述生成步骤、上述获取步骤、上述截取步骤以及上述第一添加子步骤至少一次,直到得到所有上述文件系统的第一章节页;第二添加子模块,用于第二添加子步骤,将所有的上述第一章节页添加至上述设计报告模板中,得到上述初始设计报告文档。通过循环执行上述生成步骤、上述获取步骤、上述截取步骤以及上述第一添加子步骤,来将上述设计模型所有的上述文件系统对应的第一章节页,进一步地保证了可以较为快速且完整地得到设计模型的设计报告文档,进一步地避免了现有技术中汽车软件开发过程中,手动写详细设计报告需要花费大量时间,造成软件开发效率低下的问题。

需要说明的是,多个上述文件系统由一个根文件系统以及多个子文件系统构成,上述根文件系统对应的第一章节页为根系统章节页,上述子文件系统对应的第一章节页为子系统章节页。

上述的获取文件系统信息,并将上述文件系统信息添加至上述设计报告模板中,得到初始设计报告文档的过程中,先配置并生成上述根文件系统的第一章节页,再依次配置并生成各个子文件系统的第一章节页。

并且,相比MATLAB自带的模型生成设计文档,是将设计模型所有的系统统一平铺到同一级章节下,造成结构十分混乱的问题,本申请的上述实施例可以面向设计模型的每个文件系统,将每个文件系统的信息拆分添加至对应的章节页中,保证了得到的设计报告文档的结构以及脉络都较为清晰,可读性强,便于工作人员查阅。

具体的,通过脚本将根文件系统的相关信息添加至初始设计报告文档的具体过程如下:

步骤1’)、通过‘ch=Chapter("Title","RootSystem");’生成根文件系统对应的根系统章节页模板;

步骤2’)、通过SystemDiagramFinder函数查找根文件系统;

步骤3’)、通过add函数将根系统的截图插入根系统章节页模板中;

步骤4’)、通过BaseTable获得包括根文件系统的名字和根文件系统的描述信息的表格;

步骤5’)、添加步骤4’)中得到的表格至根系统章节页模板中;

步骤6’)、通过‘sect=Section("Title","Inport Blocks");’获取根文件系统的输入信号信息,并添加输入信号信息到根系统章节页模板中;

具体通过BlockFinder函数查找根系统中的block(块),并且通过定义BlockTypes为Inport来限定查找的Block的类型为输入信号,遍历查找出来输入信号,并且将输入信号的信号名称、信号描述、信号数据类型、信号单位、信号输出最大值以及信号输出最小值这些信息以表格形式添加到根系统章节页模板中;

步骤7’)、通过‘sect=Section("Title","Outport Blocks");’获取根文件系统的输出信号信息,并添加输出信号信息到根系统章节页模板中;

具体通过BlockFinder函数查找根系统中的block,并且通过定义BlockTypes为Outport来限定查找的Block的类型为输出信号,遍历查找出来输出信号,并且将输出信号的信号名称、信号描述、信号数据类型、信号单位、信号输出最大值以及信号输出最小值这些信息以表格形式添加到到根系统章节页模板中;

步骤8’)、将根文件系统的根系统章节页添加到设计报告模板中。

通过脚本将子文件系统的相关信息添加至初始设计报告文档的具体过程如下:

步骤11’)、通过‘ch=Chapter("Title","SubSystems");’生成各个子文件系统对应的子系统章节页模板;

步骤12’)、通过DiagramFinder函数查找子文件系统;

步骤13’)、通过hasNext函数遍历所有的子文件系统;

步骤14’)、添加子文件系统的名字至对应的子系统章节页模板中;

步骤15’)、通过add函数将子文件系统的截图插入;

步骤16’)、通过BlockFinder函数查找子文件系统中的block,遍历查找出来输入信号,并且将输入信号的信号名字、信号描述、信号数据类型、信号单位、信号输出最大值以及信号输出最小值作为表格添加到子系统章节页模板中,得到子系统章节页;

步骤17’)、将各个子系统章节页添加到设计报告模板中。

第二获取单元30,用于获取上述文件系统对应的需求连接信息,上述需求连接信息为将上述文件系统与需求信息建立连接得到的,上述需求信息为从需求管理工具中获取的,上述需求管理工具用于管理上述汽车软件的业务需求;

通过将上述文件系统与需求信息建立连接,得到需求连接信息,从而实现了需求和设计自动建立追溯的目的,无需人工一一将两者进行关联,同时进一步地方便了将该需求连接信息添加至设计报告文档,来保证自动生成的设计报告文档的完整性。

上述需求管理工具包括CodeBeamer。更为具体的一种实施例中,上述需求管理工具为CodeBeamer。CodeBeamer是一款Java编写的项目管理软件(免费非开源),CodeBeamer的特点在于让整个开发团队可以协同办公。通过CodeBeamer来管理汽车软件的需求,以帮助决策。

第二生成单元40,用于生成包括上述文件系统的名称、对应的上述需求连接信息以及对应的上述需求信息的追溯信息,并至少将上述追溯信息添加至上述初始设计报告文档中,得到设计报告文档。

在实际的应用过程中,并不是所有的文件系统都有对应的需求信息,这种情况下,为了保证设计报告文档可阅读性较强,本申请的再一种实施例中,上述文件系统有多个,有对应的上述需求连接信息的上述文件系统为目标文件系统,上述第二生成单元包括:第三生成模块,用于生成第二章节页模板;第四生成模块,用于生成包括上述目标文件系统的名称、对应的上述需求连接信息以及对应的上述需求信息的追溯信息;第二截取模块,用于根据上述目标文件系统的路径,从上述设计模型中截取上述目标文件系统的图像,得到第二图像信息;第三添加模块,用于将上述追溯信息以及上述第二图像信息分别添加至上述第二章节页模板,得到第二章节页;第四添加模块,用于至少将上述第二章节页添加至上述初始设计报告文档中,得到上述设计报告文档。

上述实施例中,通过生成第二章节页模板,并把包括需求连接信息的追溯信息以及其对应的文件系统截图添加至第二章节页模板中,得到第二章节页,并将第二章节页添加至初始设计报告文档中,得到设计报告文档,使得工作人员在查阅该设计报告文档时,通过第二章节页可以清楚的看到文件系统与其对应的需求连接信息,从而保证生成的设计报告文档可阅读性较强。

上述的得到第二章节页,并将第二章节页添加至初始设计报告文档中的具体实现过程可以如下:遍历含有需求连接信息的所有的子文件系统,得到目标文件系统;添加目标文件系统的截图至第二章节页模板中,并通过BaseTable将目标文件系统的名称、关联需求的描述和需求连接信息添加至第二章节页模板中,得到第二章节页;将上述第二章节页添加至初始设计报告文档中,得到设计报告文档。

在本申请的一种示例性地实施例中,上述装置还包括:第三生成单元,用于在至少将上述第二章节页添加至上述初始设计报告文档中,得到上述设计报告文档之前,生成第三章节页模板;第三获取单元,用于获取所有的上述需求连接信息,并根据各上述需求连接信息以及上述需求连接信息对应的上述文件系统的系统名称,生成对应关系列表;添加单元,用于将上述对应关系列表添加至上述第三章节页模板,得到第三章节页,上述第四添加模块包括:第三添加子模块,用于将上述第二章节页以及上述第三章节页添加至上述初始设计报告文档中,得到上述设计报告文档。这样可以进一步地方便工作人员查看设计模型文件系统与需求连接信息的对应关系。

具体地,通过‘ch=Chapter("Title","Requirements Traceability");’生成上述第三章节页模板;通过slreq.load函数加载设计模型;通过getLinks函数获取设计模型中的所有需求连接信息;将子文件系统的名称、需求连接信息合并在表中,添加到第三章节页模板中,得到第三章节页。

在其他实施例中,上述装置还包括:第四生成单元,用于在至少将上述第二章节页添加至上述初始设计报告文档中,得到上述设计报告文档之前,生成第四章节页模板;第四获取单元,用于获取上述设计报告文档的名词解释信息,并将上述名词解释信息添加至上述第四章节页模板,得到第四章节页,上述第四添加模块包括:第四添加子模块,用于将上述第二章节页以及上述第四章节页添加至上述初始设计报告文档中,得到上述设计报告文档。

具体地,先通过‘ch=Chapter("Title","About this Report");’生成第四章节页模板;再将设计报告文档相关的信息和名词解释通过设置字符串添加至第四章节页模板中,得到第四章节页;最后将第四章节页添加至初始设计报告文档中,得到最终的设计报告文档。

另外,生成设计报告文档的流程为:

1)打开MATLAB并加载设计模型,具体为首先打开MATLAB,然后加载设计模型及环境,最后通过CodeBeamer RMI关联MATLAB和CodeBeamer;

2)、通过MATLAB将设计模型的文件系统和Codebeamer中的需求关联起来;

3)运行生成设计报告文档的脚本,具体为首先点击配置好的生成设计报告文档的M脚本并运行,然后得到设计报告文档。

上述的设计报告文档的生成装置中,通过第一生成单元响应于预定操作,生成设计模型对应的设计报告模板,上述设计模型包括文件系统;通过第一获取单元获取上述文件系统的文件系统信息,并将上述文件系统信息添加至上述设计报告模板中,得到初始设计报告文档;通过第二获取单元获取上述文件系统对应的需求连接信息;通过第二生成单元生成包括上述文件系统的名称、对应的上述需求连接信息以及对应的上述需求信息的追溯信息,并至少将上述追溯信息添加至上述初始设计报告文档中,得到设计报告文档。相比现有技术中汽车软件开发过程中,手动写详细设计报告需要花费大量时间,造成软件开发效率低下的问题,本申请可以自动将包括设计模型的文件系统的文件信息、文件系统的名称、对应的需求连接信息以及需求信息等信息添加到设计报告模板中,来生成设计报告文档,无需人工手写报告,提升了汽车软件的开发效率。另外,本申请可以自动获取并生成设计模型与需求信息之间的追溯信息,无需人工进行关联,进一步地保证了开发效率较高。

并且,相比现有技术中人工手写设计报告文档,容易出现遗漏以及出错的问题,本申请的上述设计报告文档的生成装置中,由于设计报告文档中的信息都是根据设计模型获取的,保证了设计报告文档的准确性。

上述设计报告文档的生成装置包括处理器和存储器,上述第一生成单元、上述第一获取单元、上述第二获取单元以及上述第二生成单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。

处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来解决现有技术中汽车软件开发过程中,手动写详细设计报告需要花费大量时间,造成软件开发效率低下的问题。

存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。

本发明实施例提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现上述设计报告文档的生成方法。

本发明实施例提供了一种处理器,上述处理器用于运行程序,其中,上述程序运行时执行上述设计报告文档的生成方法。

本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现至少以下步骤:

步骤S101,响应于预定操作,根据设计模型,生成对应的设计报告模板,上述设计模型为采用模型开发工具生成的汽车软件的模型,上述设计模型包括文件系统;

步骤S102,获取文件系统信息,并将上述文件系统信息添加至上述设计报告模板中,得到初始设计报告文档,上述文件系统信息为上述文件系统的文件信息;

步骤S103,获取上述文件系统对应的需求连接信息,上述需求连接信息为将上述文件系统与需求信息建立连接得到的,上述需求信息为从需求管理工具中获取的,上述需求管理工具用于管理上述汽车软件的业务需求;

步骤S104,生成包括上述文件系统的名称、对应的上述需求连接信息以及对应的上述需求信息的追溯信息,并至少将上述追溯信息添加至上述初始设计报告文档中,得到设计报告文档。

本文中的设备可以是服务器、PC、PAD、手机等。

本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有至少如下方法步骤的程序:

步骤S101,响应于预定操作,根据设计模型,生成对应的设计报告模板,上述设计模型为采用模型开发工具生成的汽车软件的模型,上述设计模型包括文件系统;

步骤S102,获取文件系统信息,并将上述文件系统信息添加至上述设计报告模板中,得到初始设计报告文档,上述文件系统信息为上述文件系统的文件信息;

步骤S103,获取上述文件系统对应的需求连接信息,上述需求连接信息为将上述文件系统与需求信息建立连接得到的,上述需求信息为从需求管理工具中获取的,上述需求管理工具用于管理上述汽车软件的业务需求;

步骤S104,生成包括上述文件系统的名称、对应的上述需求连接信息以及对应的上述需求信息的追溯信息,并至少将上述追溯信息添加至上述初始设计报告文档中,得到设计报告文档。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。

从以上的描述中,可以看出,本申请上述的实施例实现了如下技术效果:

1)、本申请上述的设计报告文档的生成方法中,首先,响应于预定操作,生成设计模型对应的设计报告模板,上述设计模型包括文件系统;之后,获取上述文件系统的文件系统信息,并将上述文件系统信息添加至上述设计报告模板中,得到初始设计报告文档;之后,获取上述文件系统对应的需求连接信息;最后,生成包括上述文件系统的名称、对应的上述需求连接信息以及对应的上述需求信息的追溯信息,并至少将上述追溯信息添加至上述初始设计报告文档中,得到设计报告文档。相比现有技术中汽车软件开发过程中,手动写详细设计报告需要花费大量时间,造成软件开发效率低下的问题,本申请可以自动将包括设计模型的文件系统的文件信息、文件系统的名称、对应的需求连接信息以及需求信息等信息添加到设计报告模板中,来生成设计报告文档,无需人工手写报告,提升了汽车软件的开发效率。另外,本申请可以自动获取并生成设计模型与需求信息之间的追溯信息,无需人工进行关联,进一步地保证了开发效率较高。

2)、本申请上述的设计报告文档的生成装置中,通过第一生成单元响应于预定操作,生成设计模型对应的设计报告模板,上述设计模型包括文件系统;通过第一获取单元获取上述文件系统的文件系统信息,并将上述文件系统信息添加至上述设计报告模板中,得到初始设计报告文档;通过第二获取单元获取上述文件系统对应的需求连接信息;通过第二生成单元生成包括上述文件系统的名称、对应的上述需求连接信息以及对应的上述需求信息的追溯信息,并至少将上述追溯信息添加至上述初始设计报告文档中,得到设计报告文档。相比现有技术中汽车软件开发过程中,手动写详细设计报告需要花费大量时间,造成软件开发效率低下的问题,本申请可以自动将包括设计模型的文件系统的文件信息、文件系统的名称、对应的需求连接信息以及需求信息等信息添加到设计报告模板中,来生成设计报告文档,无需人工手写报告,提升了汽车软件的开发效率。另外,本申请可以自动获取并生成设计模型与需求信息之间的追溯信息,无需人工进行关联,进一步地保证了开发效率较高。

以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

相关技术
  • 一种基于VBScript的帮助文档生成方法及装置
  • 一种根据接口文档自动生成文件的方法及装置
  • 印尼语文档摘要生成方法、装置、存储介质及终端设备
  • 一种文档生成方法、装置、服务器和存储介质
  • 一种生成记录文档的方法、装置及系统
  • 文档模板生成方法、报告在线生成方法及装置
  • 报告文档生成的方法、装置、计算机设备和存储介质
技术分类

06120115870130