CN106547726A - 一种基于文档的自动化审查方法及审查装置 - Google Patents

一种基于文档的自动化审查方法及审查装置 Download PDF

Info

Publication number
CN106547726A
CN106547726A CN201510589357.2A CN201510589357A CN106547726A CN 106547726 A CN106547726 A CN 106547726A CN 201510589357 A CN201510589357 A CN 201510589357A CN 106547726 A CN106547726 A CN 106547726A
Authority
CN
China
Prior art keywords
document
software
title
source code
inspection
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
Application number
CN201510589357.2A
Other languages
English (en)
Inventor
田佳
武方方
赵亮
张丹涛
李刚
陈晰亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
No 618 Research Institute of China Aviation Industry
Original Assignee
No 618 Research Institute of China Aviation Industry
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by No 618 Research Institute of China Aviation Industry filed Critical No 618 Research Institute of China Aviation Industry
Priority to CN201510589357.2A priority Critical patent/CN106547726A/zh
Publication of CN106547726A publication Critical patent/CN106547726A/zh
Pending legal-status Critical Current

Links

Abstract

本发明属于计算机技术,具体涉及一种基于文档和代码的自动化审查方法,方法包括文档格式检查步骤、文档解析步骤、源代码解析步骤和一致性比较步骤。本发明还涉及一种基于文档的自动化审查装置,包括文档格式检查单元、文档解析单元、源代码解析单元和一致性比较单元。本发明能有效地避免人工检查中因为评审者工程经验不均而导致的评审结果有所差别,极大地提高一致性问题的发现率,从而在一定程度上降低测试成本。

Description

一种基于文档的自动化审查方法及审查装置
技术领域
本发明属于计算机技术,具体涉及一种基于文档的自动化审查方法及审查装置。
背景技术
软件文档与源代码是软件研制的主要工作产品,软件文档往往被视为软件源代码的附属物未被重视。从实际经验来看,软件文档的完备性和符合性从一定程度上反映了软件研制过程的规范程度和软件研制水平。随着军方对软件研制的要求越来越高,软件文档本身的错误也逐步纳入到软件缺陷统计之中。此外,民机适航方面,软件文档成为适航认证过程中的主要依据,软件文档的规范性和完整性直接决定了适航认证的成败。总之,软件文档的质量一定程度上也影响了软件产品的质量评价。
软件研制过程中,软件设计文档和源代码在交付测试之前必须经过文档评审和代码审查。文档和源代码的一致性问题在审查过程中极易发现较多问题,且利用人工比对的方式来检查此类问题既耗时又低效。一旦问题遗留到测试阶段,在软件静态测试和动态测试阶段会产生一致性问题单,而随后产生的文档修改及代码调整会极大影响测试进度和测试成本。
发明内容
本发明能够在文档审查过程中,发现软件设计文档和软件源代码中不一致性问题。有效地避免人工检查中因为评审者工程经验不均而导致的评审结果有所差别,极大地提高一致性问题的发现率,从而在一定程度上降低测试成本。
考虑到现有技术的上述问题,根据本发明公开的一个方面,本发明采用以下技术方案:
一种基于文档的自动化审查方法,其特征在于:在软件设计文档和软件源代码提交审查之后,依次完成以下步骤:
步骤1):文档格式检查:软件设计文档模板发布之后,软件设计文档必须严格按照软件设计文档模板要求进行编写,根据模板格式要求,定制检查规则,自动检查文档格式,以识别文档中不符合文档模板要求的内容,若发现格式问题,则视为文档格式检查不通过,并对不符合的内容进行输出;若检查无格式问题,则进入步骤2);
步骤2):文档解析:利用自动化脚本,依据软件设计文档的格式,自动解析所有函数模块名称、返回值类型、输入参数名称及参数类型信息,进入步骤4);
步骤3):源代码解析:利用自动化脚本或者第三方源代码编辑工具,从源代码中提取所有的函数模块名称、返回值类型、输入参数名称及参数类型信息,进入步骤4);
步骤4):一致性比较:根据步骤2)和步骤3)所获取的函数模块名称、返回值类型、输入参数名称及参数类型信息,自动比较两者一致性,若两者一致则视为检查通过;若不一致则视为检查不通过,并对不一致的信息进行输出。
一种基于文档的自动化审查装置,所述装置包括:
文档格式检查单元,根据模板格式要求,定制检查规则,自动检查文档格式,以识别文档中不符合文档模板要求的内容,若发现格式问题,则视为文档格式检查不通过,并对不符合的内容进行输出;若检查无格式问题,则由文档解析单元进行文档解析;
文档解析单元,利用自动化脚本,依据软件设计文档的格式,自动解析所有函数模块名称、返回值类型、输入参数名称及参数类型信息,解析完后将结果发送至一致性比较单元;
源代码解析单元,利用自动化脚本或者第三方源代码编辑工具,从源代码中提取所有的函数模块名称、返回值类型、输入参数名称及参数类型信息,解析完后将结果发送至一致性比较单元;
一致性比较单元,根据文档解析单元和源代码解析单元所获取的函数模块名称、返回值类型、输入参数名称及参数类型信息,自动比较两者一致性,若两者一致则视为检查通过;若不一致则视为检查不通过,并对不一致的信息进行输出。
本发明是一种基于文档和代码的自动化审查方法,通过这种方法,可以快速、准确地比较软件设计文档和软件源代码的基本信息一致性,能够在文档审查阶段就发现潜在的不一致所导致的问题,使评审专家只需要关注软件设计本身,而不需要再为基本信息的一致性问题消耗精力,极大的提高评审质量,从而有效保证了评审效果和执行效率。
附图说明
图1为本发明基于文档的自动化审查方法工作流程图。
具体实施方式
下面结合实施例对本发明作进一步地详细说明,但本发明的实施方式不限于此。
以下结合附图1对本发明的基于文档和代码的自动化审查方法过程进行描述:
步骤1)文档格式检查:
1.1)根据已发布的软件设计文档模板定制文档格式检查规则。(软件设计文档模板必须是经过专家评审且正式发布的有效软件产品,且该模板的应用必须是受到组织级认可并严格执行的)
检查规则制定原则一:文档检查规则可以借助脚本语言实现,主要根据文档的段落、格式、关键字等属性进行自动检查和匹配。
检查规则制定原则二:为了提高检查规则的兼容性,检查规则应支持文档中的手工编辑内容及多种数据表格。
检查规则制定原则三:文档检查规则与软件设计文档模板保持一致。一旦软件设计文档模板被修订或更新版本,该规则也必须进行相应的调整和更新。两者版本必须一一对应。
1.2)根据文档检查规则,对待审查的软件设计文档进行文档格式检查。
检查原则一:若文档格式检查通过,则输出提示“文档检查通过”,即可进行步骤2)。
检查原则二:若文档格式检查未通过,需输出所有检查未通过项,并提示“文档检查未通过”。此时,检查结果应反馈给该文档编制人进行修改,进入步骤1.3);
1.3)依据步骤1.2)所得到的检查未通过项,由软件设计文档编制人对文档进行修改和更新版本。待重新提交新的文档后按照步骤1.2)重新进行文档格式检查。
步骤2)从文档中解析函数基本信息,包括:函数名称、返回值类型、输入参数名称及输入参数类型。
解析原则一:软件设计文档模板中,每个函数模块的描述格式都必须符合要求。具体格式与步骤1.1)原则一描述一致;
解析原则二:文档解析功能可以借助脚本语言实现,需具备一定的异常处理功能,如文档描述内容中的分隔符处理及特殊字符的匹配等;
解析原则三:文档解析功能必须完成对整个软件设计文档的解析,并将解析出的所有函数基本信息转存成指定格式文件(如XML文件或DAT文件等),作为后续步骤的数据输入以及过程检查的依据。
步骤3)从源代码中解析函数基本信息,包括:函数名称、返回值类型、输入参数名称及输入参数类型。
解析原则一:源代码解析功能可利用脚本语言或者第三方源代码编辑工具实现;
解析原则二:源代码解析功能必须完成对整个源代码的解析,并将解析出的所有函数基本信息转存成指定格式文件(如XML文件或DAT文件等),作为后续步骤的数据输入以及过程检查的依据。
步骤4)依据步骤2)和步骤3)提取的所有函数基本信息,对所有函数进行一一匹配。若匹配全部一致,则视为软件设计文档和软件源代码基本信息一致,输出检查通过,检查结束并退出;若存在不匹配的函数模块,则输出该模块不匹配内容,并提示检查不通过,软件设计文档编制人根据反馈的不匹配信息确认修改文档或者修改源代码。修改完成后,转至步骤1.2)重新进行检查。
匹配原则一:对函数基本信息匹配时必须严格匹配,即大小写、个数及次序必须严格一致。
匹配原则二:比较当中发现的文档缺失的函数模块或者代码缺失的函数模块,软件设计人员必须确认是否有遗漏或者存在多余的内容,同时在修改时增加相应内容或删减多余内容。
对于上述方法,需要制定并发布统一的软件设计文档模板,并根据该模板定制自动化检查规则。一旦该模板及检查规则确定之后,只要模板不再改变即不需要更新检查规则。每次审查之前,只需要指定所提交的软件设计文档和对应的软件源代码作为输入,即可进行自动化审查。
经过上述方法获取的软件设计文档和软件源代码比对信息,可以作为软件设计文档或软件源代码修改的依据。若软件设计文档和软件源代码进行了修改,需重新使用该方法进行自动审查。
通过以上步骤,便实现了对文档的自动审查过程。

Claims (2)

1.一种基于文档的自动化审查方法,其特征在于:在软件设计文档和软件源代码提交审查之后,依次完成以下步骤:
步骤1):文档格式检查:软件设计文档模板发布之后,软件设计文档必须严格按照软件设计文档模板要求进行编写,根据模板格式要求,定制检查规则,自动检查文档格式,以识别文档中不符合文档模板要求的内容,若发现格式问题,则视为文档格式检查不通过,并对不符合的内容进行输出;若检查无格式问题,则进入步骤2);
步骤2):文档解析:利用自动化脚本,依据软件设计文档的格式,自动解析所有函数模块名称、返回值类型、输入参数名称及参数类型信息,进入步骤4);
步骤3):源代码解析:利用自动化脚本或者第三方源代码编辑工具,从源代码中提取所有的函数模块名称、返回值类型、输入参数名称及参数类型信息,进入步骤4);
步骤4):一致性比较:根据步骤2)和步骤3)所获取的函数模块名称、返回值类型、输入参数名称及参数类型信息,自动比较两者一致性,若两者一致则视为检查通过;若不一致则视为检查不通过,并对不一致的信息进行输出。
2.一种基于文档的自动化审查装置,所述装置包括:
文档格式检查单元,根据模板格式要求,定制检查规则,自动检查文档格式,以识别文档中不符合文档模板要求的内容,若发现格式问题,则视为文档格式检查不通过,并对不符合的内容进行输出;若检查无格式问题,则由文档解析单元进行文档解析;
文档解析单元,利用自动化脚本,依据软件设计文档的格式,自动解析所有函数模块名称、返回值类型、输入参数名称及参数类型信息,解析完后将结果发送至一致性比较单元;
源代码解析单元,利用自动化脚本或者第三方源代码编辑工具,从源代码中提取所有的函数模块名称、返回值类型、输入参数名称及参数类型信息,解析完后将结果发送至一致性比较单元;
一致性比较单元,根据文档解析单元和源代码解析单元所获取的函数模块名称、返回值类型、输入参数名称及参数类型信息,自动比较两者一致性,若两者一致则视为检查通过;若不一致则视为检查不通过,并对不一致的信息进行输出。
CN201510589357.2A 2015-09-16 2015-09-16 一种基于文档的自动化审查方法及审查装置 Pending CN106547726A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510589357.2A CN106547726A (zh) 2015-09-16 2015-09-16 一种基于文档的自动化审查方法及审查装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510589357.2A CN106547726A (zh) 2015-09-16 2015-09-16 一种基于文档的自动化审查方法及审查装置

Publications (1)

Publication Number Publication Date
CN106547726A true CN106547726A (zh) 2017-03-29

Family

ID=58361563

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510589357.2A Pending CN106547726A (zh) 2015-09-16 2015-09-16 一种基于文档的自动化审查方法及审查装置

Country Status (1)

Country Link
CN (1) CN106547726A (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562808A (zh) * 2017-08-10 2018-01-09 浙江众合科技股份有限公司 一种异构双链自动化数据的验证方法
CN107783780A (zh) * 2017-11-21 2018-03-09 中国银行股份有限公司 一种代码复查方法和系统
CN107992306A (zh) * 2017-12-03 2018-05-04 中国直升机设计研究所 一种航电软件接口实现一致性自动检查方法
CN109375525A (zh) * 2018-10-15 2019-02-22 中国核电工程有限公司 一种基于验证平台的仪控成品文件导入建模方法
CN113159969A (zh) * 2021-05-17 2021-07-23 广州故新智能科技有限责任公司 一种金融长文本复核系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7123376B2 (en) * 2002-04-16 2006-10-17 Pitney Bowes, Inc. Method for using printstream bar code information for electronic document presentment
CN101763343A (zh) * 2008-12-23 2010-06-30 上海晨鸟信息科技有限公司 一种支持格式比对和剽窃检查的文档编辑器原理与方法
CN104317711A (zh) * 2014-10-22 2015-01-28 牟永敏 一种基于路径的软件实现与设计一致性验证方法及系统
CN104346319A (zh) * 2013-08-05 2015-02-11 北大方正集团有限公司 检查文档样式的方法及系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7123376B2 (en) * 2002-04-16 2006-10-17 Pitney Bowes, Inc. Method for using printstream bar code information for electronic document presentment
CN101763343A (zh) * 2008-12-23 2010-06-30 上海晨鸟信息科技有限公司 一种支持格式比对和剽窃检查的文档编辑器原理与方法
CN104346319A (zh) * 2013-08-05 2015-02-11 北大方正集团有限公司 检查文档样式的方法及系统
CN104317711A (zh) * 2014-10-22 2015-01-28 牟永敏 一种基于路径的软件实现与设计一致性验证方法及系统

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107562808A (zh) * 2017-08-10 2018-01-09 浙江众合科技股份有限公司 一种异构双链自动化数据的验证方法
CN107562808B (zh) * 2017-08-10 2021-03-05 浙江众合科技股份有限公司 一种异构双链自动化数据的验证方法
CN107783780A (zh) * 2017-11-21 2018-03-09 中国银行股份有限公司 一种代码复查方法和系统
CN107992306A (zh) * 2017-12-03 2018-05-04 中国直升机设计研究所 一种航电软件接口实现一致性自动检查方法
CN109375525A (zh) * 2018-10-15 2019-02-22 中国核电工程有限公司 一种基于验证平台的仪控成品文件导入建模方法
CN113159969A (zh) * 2021-05-17 2021-07-23 广州故新智能科技有限责任公司 一种金融长文本复核系统

Similar Documents

Publication Publication Date Title
CN110716852B (zh) 用于生成自动化测试脚本的系统、方法和介质
US9760602B1 (en) System for exploring data in a database
US9621601B2 (en) User collaboration for answer generation in question and answer system
US9740685B2 (en) Generation of natural language processing model for an information domain
WO2020233330A1 (zh) 批量测试方法、装置及计算机可读存储介质
CN106547726A (zh) 一种基于文档的自动化审查方法及审查装置
US8375061B2 (en) Graphical models for representing text documents for computer analysis
US20150026556A1 (en) Systems and Methods for Extracting Table Information from Documents
CN107797916B (zh) Ddl语句审核方法和装置
US9418066B2 (en) Enhanced document input parsing
CN105335360B (zh) 生成文档结构的方法和装置
KR101617696B1 (ko) 데이터 정규표현식의 마이닝 방법 및 장치
TWI682287B (zh) 知識圖譜產生裝置、方法及其電腦程式產品
CN108255837B (zh) 一种sql解析器及方法
CN112612664B (zh) 电子设备的测试方法、装置、电子设备和存储介质
CN110837356A (zh) 一种数据处理方法和装置
CN116467171A (zh) 自动化测试用例构建装置、方法、电子设备及存储介质
US10229105B1 (en) Mobile log data parsing
CN116629215A (zh) 教学文档生成方法、装置、电子设备、存储介质
CN115795046A (zh) 数据加工方法、装置、系统、电子设备和存储介质
CN111492364A (zh) 数据标注方法、装置及存储介质
CN112733517B (zh) 需求模板符合性检查的方法、电子设备及存储介质
CN115146634A (zh) 应急预案转化待办流程图的处理方法及相关装置
CN114997154A (zh) 一种对话机器人语料自动构造方法及系统
CN114896141A (zh) 测试用例的去重方法、装置、设备及计算机可读存储介质

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20170329

WD01 Invention patent application deemed withdrawn after publication