CN108536577B - 程序代码信息处理方法及装置 - Google Patents

程序代码信息处理方法及装置 Download PDF

Info

Publication number
CN108536577B
CN108536577B CN201710120817.6A CN201710120817A CN108536577B CN 108536577 B CN108536577 B CN 108536577B CN 201710120817 A CN201710120817 A CN 201710120817A CN 108536577 B CN108536577 B CN 108536577B
Authority
CN
China
Prior art keywords
code
review
repaired
information
responsible person
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.)
Active
Application number
CN201710120817.6A
Other languages
English (en)
Other versions
CN108536577A (zh
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.)
Beijing Didi Infinity Technology and Development Co Ltd
Original Assignee
Beijing Didi Infinity Technology and Development Co Ltd
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 Beijing Didi Infinity Technology and Development Co Ltd filed Critical Beijing Didi Infinity Technology and Development Co Ltd
Priority to CN201710120817.6A priority Critical patent/CN108536577B/zh
Publication of CN108536577A publication Critical patent/CN108536577A/zh
Application granted granted Critical
Publication of CN108536577B publication Critical patent/CN108536577B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/362Software debugging
    • G06F11/3628Software debugging of optimised code

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明提供一种程序代码信息处理方法及装置,通过代码修改人向代码评审平台发出对已修代码的评审请求,代码评审平台根据评审请求和预存的代码责任人与代码目录名的配置关系表将从代码入库单元预存代码库中截获的已修代码调用后由代码责任人进行评审批注,并生成评审信息文件,以发送给代码入库单元,使代码入库单元根据评审信息文件实现代码入库,实现了对代码的强制评审,提高代码入库质量,避免垃圾代码的堆积,保证了软件的快速有效运行。

Description

程序代码信息处理方法及装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种程序代码信息处理方法及装置。
背景技术
计算机技术和网络迅速发展的今天,各类应用软件,仪器设备已经融入人们的工作、学习及生活中。工作网络化、生产自动化及服务自动化,已经成为各大中小型企业提高工作效率、减少成本及开发客户等的主要方法,对这些企业来说软件和设备一旦出现故障就可能造成灾难性的和不可挽回的损失,因此软件质量变得尤为重要,而代码的质量直接影响软件质量。故需要进行代码审查,代码审查不仅能够及时发现后期测试中难以发现的问题,还可以帮助团队成员提高编码既能,统一编码风格,从而提升代码质量及代码可维护性,保证软件质量。
当前代码审查中都是由代码修改者发起代码评审,然后代码审查通过后进行代码提交。由于这个流程不具有强制性,因此无法保证每一次重要的代码提交都必须要通过代码评审通过。因此目前主流的方式是通过在代码仓库端部署一个钩子函数(HOOK)来配合代码审查平台的评审流程,强制保证代码入库的时候必须要通过代码审查。但从代码责任制来考虑,代码审查并不一定是负责每段代码的开发者完成评审,而是被其他相关代码评审人实现代码评审。
发明内容
本发明提供一种程序代码信息处理方法及装置,用于解决现有技术中在代码评审过程中无法实现代码责任制的问题。
第一方面,本发明提供一种程序代码信息处理方法,包括:
代码评审平台接收评审请求,所述评审请求包括代码评审人信息和已修代码明细;
对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;
将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;
若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;
根据代码责任人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
优选地,还包括:代码评审平台在接收所述评审请求之前,将所述代码责任人与代码目录名的配置关系表发送给所述代码入库单元,
以使所述代码入库单元在接收到代码修改人提交的已修代码、已修代码明细和代码修改人信息后,对已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息,将所述代码责任人信息与所述代码修改人信息进行匹配,生成第二匹配结果,根据第二匹配结果确定已修代码是否入库。
优选地,还包括:若第一匹配结果为相同,根据所述已修代码明细从代码入库单元中调用已修代码,使代码评审人对所述已修代码进行代码评审批注;
根据代码评审人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
第二方面,本发明提供一种程序代码信息处理方法,包括:
所述代码入库单元在接收代码修改人提交的已修代码、已修代码明细和代码修改人信息后,向代码评审平台发送评审请求,所述评审请求包括代码评审人信息和已修代码明细,以使代码评审平台对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;根据代码责任人的评审批注信号,生成评审信息文件;
接收到代码评审平台发来的评审信息文件,并根据评审信息文件将已修代码入库。
优选地,还包括:
在发送评审请求之前,所述代码入库单元在接收到代码修改人提交的已修代码、已修代码明细和代码修改人信息后,对已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息,将所述代码责任人信息与所述代码修改人信息进行匹配,生成第二匹配结果,根据第二匹配结果确定已修代码是否入库。
优选地,若第二匹配结果为否,则确定所述已修代码不能入库,向代码评审平台发送评审请求。
优选地,若第二匹配结果为是,则确定所述已修代码入库。
第三方面,本发明提供一种程序代码信息处理装置,包括:
接收模块,用于接收评审请求,所述评审请求包括代码评审人信息和已修代码明细;
评审模块,用于对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;
将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;
若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;
发送模块,用于根据代码责任人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
优选地,所述发送模块还用于,在接收所述评审请求之前,将所述代码责任人与代码目录名的配置关系表发送给所述代码入库单元,
以使所述代码入库单元在接收到代码修改人提交的已修代码、已修代码明细和代码修改人信息后,对已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息,将所述代码责任人信息与所述代码修改人信息进行匹配,生成第二匹配结果,根据第二匹配结果确定已修代码是否入库。
优选地,所述评审模块还用于:
若第一匹配结果为相同,根据所述已修代码明细从代码入库单元中调用已修代码,使代码评审人对所述已修代码进行代码评审批注;
根据代码评审人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
第四方面,本发明提供一种程序代码信息处理装置,包括:
获取模块,用于在接收代码修改人提交的已修代码、已修代码明细和代码修改人信息后,向代码评审平台发送评审请求,所述评审请求包括代码评审人信息和已修代码明细,以使代码评审平台对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;根据代码责任人的评审批注信号,生成评审信息文件;
入库处理模块,用于接收到代码评审平台发来的评审信息文件,并根据评审信息文件将已修代码入库。
优选地,还包括:
入库处理模块还用于在发送评审请求之前,接收到代码修改人提交的已修代码、已修代码明细和代码修改人信息后,对已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息,将所述代码责任人信息与所述代码修改人信息进行匹配,生成第二匹配结果,根据第二匹配结果确定已修代码是否入库。
优选地,所述入库处理模块具体用于:
若第二匹配结果为否,则确定所述已修代码不能入库,向代码评审平台发送评审请求。
优选地,所述入库处理模块具体用于:
若第二匹配结果为是,则确定所述已修代码入库。
由上述技术方案可知,本发明提供的程序代码信息处理方法及装置,通过代码修改人向代码评审平台发出对已修代码的评审请求,代码评审平台根据评审请求和预存的代码责任人与代码目录名的配置关系表将从代码入库单元预存代码库中截获的已修代码调用后由代码责任人进行评审批注,并生成评审信息文件,以发送给代码入库单元,使代码入库单元根据评审信息文件实现代码入库,实现了对代码的强制评审,提高代码入库质量,避免垃圾代码的堆积,保证了软件的快速有效运行。
附图说明
图1为本发明实施例1提供的程序代码信息处理方法的流程示意图;
图2为本发明实施例2提供的程序代码信息处理方法的流程示意图;
图3为本发明实施例3提供的程序代码信息处理装置的结构示意图;
图4为本发明实施例4提供的程序代码信息处理装置的结构示意图。
具体实施方式
下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。
图1示出了本发明实施例1提供的一种程序代码信息处理方法,包括:
S11、代码评审平台接收评审请求,所述评审请求包括代码评审人信息和已修代码明细。
在本步骤中,需要说明的是,对于一个软件的开发需要软件开发者进行代码开发去实现。代码开发后会存入代码库中。当已入库代码被修改后,进行代码修改的代码修改人需将已修代码进行提交。代码修改人对已入库代码进行修改后向代码评审平台发出评审请求,所述评审请求包括代码评审人信息和已修代码明细。代码评审人为代码修改人向系统推荐的评审已修代码的代码开发者。已修代码明细为已修代码在代码库中代码文件中的具体哪些段的代码。
S12、对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息。
在本步骤中,需要说明的是,在本发明实施例中,软件中每一段代码的开发都会配置一个代码责任人去开发及管理。不同的代码责任人会对不同功能下的代码进行开发,开发后保存在代码库中。
代码评审平台此时会建立代码责任人与代码目录名的配置关系表,该代码责任人与代码目录名的配置关系表是对已入库代码的代码责任人以及其对应负责的代码进行目录标识。
如git@git.xxx.com:yyyy/zzzz.git代码库中“src/”目录下的代码的责任人是A。即:“A”→“git@git.xxx.com:yyyy/zzzz.git/src/”,在“src/”目录下存储有代码责任人A的代码文件。
由于步骤S11中提到的代码评审人为代码修改人向系统推荐的评审已修代码的代码开发者。但不能保证推荐的代码评审人就是代码库中对应代码的实际代码责任人。故代码评审平台会对已修代码明细进行解析,根据解析结果可获得配置代码库中代码目录名。在本实施例中,由于在代码评审平台中预存有代码责任人与代码目录名的配置关系表,因此,可将解析到的代码目录名从配置关系表中匹配获得对应代码责任人信息。
S13、将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注。
在本步骤中,需要说明的是,在本实施例中,若第一匹配结果表明代码责任人信息与代码评审人信息相不匹配,则说明代码修改人推荐的代码评审人无权对已修代码进行评审。
此时,代码评审平台会将根据已修代码明细从代码入库单元中调用的已修代码,并由代码责任人对已修代码进行代码评审批注。
另外,还需要说明的是,已修代码为代码修改人向代码入库单元提交的且被拦截下的已修代码,该已修代码可存储在代码入库单元的预存代码库中。故在代码评审平台接收所述评审请求之前,将所述代码责任人与代码目录名的配置关系表发送给所述代码入库单元,以使所述代码入库单元在接收到代码修改人提交的已修代码、已修代码明细和代码修改人信息后,对已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息,将所述代码责任人信息与所述代码修改人信息进行匹配,生成第二匹配结果,根据第二匹配结果确定已修代码是否入库。
若第二匹配结果为否,则确定所述已修代码不能入库,向代码评审平台发送评审请求。若第二匹配结果为是,则确定所述已修代码入库。
在本发明实施例中对已修代码的入库处理,代码入库单元可通过代码库钩子函数去实现。钩子函数实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。
另外,还需要说明的是,若第一匹配结果为相同,根据所述已修代码明细从代码入库单元中调用已修代码,使代码评审人对所述已修代码进行代码评审批注;
根据代码评审人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
S14、根据代码责任人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
在本步骤中,需要说明的是,在本发明实施例中,待评评审平台会接收到代码责任人的评审批注信号,生成评审信息文件。
若代码责任人认为已修代码出现错误,对其进行修改批注,则生成的评审信息文件表明已修代码不合格,在代码入库单元接收到该评审信息文件后拒绝已修代码入库。
若代码责任人认为已修代码无错误,对其进行确认批注,则生成的评审信息文件表明已修代码合格,在代码入库单元接收到该评审信息文件后允许已修代码入库。
本发明实施例1提供的程序代码信息处理方法,通过代码修改人向代码评审平台发出对已修代码的评审请求,代码评审平台根据评审请求和预存的代码责任人与代码目录名的配置关系表将从代码入库单元预存代码库中截获的已修代码调用后由代码责任人进行评审批注,并生成评审信息文件,以发送给代码入库单元,使代码入库单元根据评审信息文件实现代码入库,实现了对代码的强制评审,提高代码入库质量,避免垃圾代码的堆积,保证了软件的快速有效运行。
图2示出了本发明实施例2提供的一种程序代码信息处理方法,包括:
S21、所述代码入库单元在接收代码修改人提交的已修代码、已修代码明细和代码修改人信息后,向代码评审平台发送评审请求,所述评审请求包括代码评审人信息和已修代码明细,以使代码评审平台对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;根据代码责任人的评审批注信号,生成评审信息文件。
在本步骤中,需要说明的是,当代码入库单元接收到代码修改人对已入库代码进行修改后的提交请求后,代码入库单元会将已修代码数据流进行拦截,并向代码评审平台发送评审请求。
代码入库单元可通过代码库钩子函数去实现对已修代码入库前的拦截。钩子函数实际上是一个处理消息的程序段,通过系统调用,把它挂入系统。每当特定的消息发出,在没有到达目的窗口前,钩子程序就先捕获该消息,亦即钩子函数先得到控制权。这时钩子函数即可以加工处理(改变)该消息,也可以不作处理而继续传递该消息,还可以强制结束消息的传递。
对于是否进行拦截,可从所述代码入库单元在接收到代码修改人提交的已修代码、已修代码明细和代码修改人信息后,对已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息,将所述代码责任人信息与所述代码修改人信息进行匹配,生成第二匹配结果,根据第二匹配结果确定已修代码是否入库。
若第二匹配结果为否,则确定所述已修代码不能入库,向代码评审平台发送评审请求。若第二匹配结果为是,则确定所述已修代码入库。
代码评审平台接收到评审请求后,代码评审平台对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;根据代码责任人的评审批注信号,生成评审信息文件。
在本发明实施例中,软件中每一段代码的开发都会配置一个代码责任人去开发及管理。不同的代码责任人会对不同功能下的代码进行开发,开发后保存在代码库中。
代码评审平台此时会建立代码责任人与代码目录名的配置关系表,该代码责任人与代码目录名的配置关系表是对已入库代码的代码责任人以及其对应负责的代码进行目录标识。
如git@git.xxx.com:yyyy/zzzz.git代码库中“src/”目录下的代码的责任人是A。即:“A”→“git@git.xxx.com:yyyy/zzzz.git/src/”,在“src/”目录下存储有代码责任人A的代码文件。
代码评审人为代码修改人向系统推荐的评审已修代码的代码开发者。但不能保证推荐的代码评审人就是代码库中对应代码的实际代码责任人。故代码评审平台会对已修代码明细进行解析,根据解析结果可获得配置代码库中代码目录名。在本实施例中,由于在代码评审平台中预存有代码责任人与代码目录名的配置关系表,因此,可将解析到的代码目录名从配置关系表中匹配获得对应代码责任人信息。
若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注。
在本步骤中,需要说明的是,在本实施例中,若第一匹配结果表明代码责任人信息与代码评审人信息相不匹配,则说明代码修改人推荐的代码评审人无权对已修代码进行评审。
此时,代码评审平台会将根据已修代码明细从代码入库单元中调用的已修代码,并由代码责任人对已修代码进行代码评审批注。
另外,若第一匹配结果为相同,根据所述已修代码明细从代码入库单元中调用已修代码,使代码评审人对所述已修代码进行代码评审批注;
根据代码评审人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
S22、接收到代码评审平台发来的评审信息文件,并根据评审信息文件将已修代码入库。
在本步骤中,需要说明的是,在本发明实施例中,待评评审平台会接收到代码责任人的评审批注信号,生成评审信息文件。
若代码责任人认为已修代码出现错误,对其进行修改批注,则生成的评审信息文件表明已修代码不合格,在代码入库单元接收到该评审信息文件后拒绝已修代码入库。
若代码责任人认为已修代码无错误,对其进行确认批注,则生成的评审信息文件表明已修代码合格,在代码入库单元接收到该评审信息文件后允许已修代码入库。
本发明实施例2提供的程序代码信息处理方法,通过代码修改人向代码评审平台发出对已修代码的评审请求,代码评审平台根据评审请求和预存的代码责任人与代码目录名的配置关系表将从代码入库单元预存代码库中截获的已修代码调用后由代码责任人进行评审批注,并生成评审信息文件,以发送给代码入库单元,使代码入库单元根据评审信息文件实现代码入库,实现了对代码的强制评审,提高代码入库质量,避免垃圾代码的堆积,保证了软件的快速有效运行。
图3示出了本发明实施例3提供的一种程序代码信息处理装置,包括接收模块31、解析模块32、匹配模块33和处理模块34,其中:
接收模块31,用于代码评审平台接收评审请求,所述评审请求包括代码评审人信息和已修代码明细;
解析模块32,用于对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;
匹配模块33,用于将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;
处理模块34,用于根据代码责任人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
由于本发明实施例3所述装置与上述实施例1所述方法的原理相同,对于更加详细的解释内容在此不再赘述。
需要说明的是,本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
本发明实施例3提供的程序代码信息处理方法,通过代码修改人向代码评审平台发出对已修代码的评审请求,代码评审平台根据评审请求和预存的代码责任人与代码目录名的配置关系表将从代码入库单元预存代码库中截获的已修代码调用后由代码责任人进行评审批注,并生成评审信息文件,以发送给代码入库单元,使代码入库单元根据评审信息文件实现代码入库,实现了对代码的强制评审,提高代码入库质量,避免垃圾代码的堆积,保证了软件的快速有效运行。
图4示出了本发明实施例4提供的一种程序代码信息处理装置,包括发送模块41和存储模块32,其中:
发送模块41,用于所述代码入库单元在接收代码修改人提交的已修代码、已修代码明细和代码修改人信息后,向代码评审平台发送评审请求,所述评审请求包括代码评审人信息和已修代码明细,以使代码评审平台对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;根据代码责任人的评审批注信号,生成评审信息文件;
存储模块42,用于接收到代码评审平台发来的评审信息文件,并根据评审信息文件将已修代码入库;
由于本发明实施例4所述装置与上述实施例2所述方法的原理相同,对于更加详细的解释内容在此不再赘述。
需要说明的是,本发明实施例中可以通过硬件处理器(hardware processor)来实现相关功能模块。
本发明实施例4提供的程序代码信息处理装置,通过代码修改人向代码评审平台发出对已修代码的评审请求,代码评审平台根据评审请求和预存的代码责任人与代码目录名的配置关系表将从代码入库单元预存代码库中截获的已修代码调用后由代码责任人进行评审批注,并生成评审信息文件,以发送给代码入库单元,使代码入库单元根据评审信息文件实现代码入库,实现了对代码的强制评审,提高代码入库质量,避免垃圾代码的堆积,保证了软件的快速有效运行。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本领域普通技术人员可以理解:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明权利要求所限定的范围。

Claims (14)

1.一种程序代码信息处理方法,其特征在于,包括:
代码评审平台接收评审请求,所述评审请求包括代码评审人信息和已修代码明细;
对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;
将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;
若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;
根据代码责任人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
2.根据权利要求1所述的方法,其特征在于,还包括:代码评审平台在接收所述评审请求之前,将所述代码责任人与代码目录名的配置关系表发送给所述代码入库单元,
以使所述代码入库单元在接收到代码修改人提交的已修代码、已修代码明细和代码修改人信息后,对已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息,将所述代码责任人信息与所述代码修改人信息进行匹配,生成第二匹配结果,根据第二匹配结果确定已修代码是否入库。
3.根据权利要求1所述的方法,其特征在于,还包括:若第一匹配结果为相同,根据所述已修代码明细从代码入库单元中调用已修代码,使代码评审人对所述已修代码进行代码评审批注;
根据代码评审人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
4.一种程序代码信息处理方法,其特征在于,包括:
代码入库单元在接收代码修改人提交的已修代码、已修代码明细和代码修改人信息后,向代码评审平台发送评审请求,所述评审请求包括代码评审人信息和已修代码明细,以使代码评审平台对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;根据代码责任人的评审批注信号,生成评审信息文件;
接收到代码评审平台发来的评审信息文件,并根据评审信息文件将已修代码入库。
5.根据权利要求4所述的方法,其特征在于,还包括:
在发送评审请求之前,所述代码入库单元在接收到代码修改人提交的已修代码、已修代码明细和代码修改人信息后,对已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息,将所述代码责任人信息与所述代码修改人信息进行匹配,生成第二匹配结果,根据第二匹配结果确定已修代码是否入库。
6.根据权利要求5所述的方法,其特征在于,若第二匹配结果为否,则确定所述已修代码不能入库,向代码评审平台发送评审请求。
7.根据权利要求5所述的方法,其特征在于,若第二匹配结果为是,则确定所述已修代码入库。
8.一种程序代码信息处理装置,其特征在于,包括:
接收模块,用于接收评审请求,所述评审请求包括代码评审人信息和已修代码明细;
评审模块,用于对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;
将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;
若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;
发送模块,用于根据代码责任人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
9.根据权利要求8所述的装置,其特征在于,所述发送模块还用于,在接收所述评审请求之前,将所述代码责任人与代码目录名的配置关系表发送给所述代码入库单元,
以使所述代码入库单元在接收到代码修改人提交的已修代码、已修代码明细和代码修改人信息后,对已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息,将所述代码责任人信息与所述代码修改人信息进行匹配,生成第二匹配结果,根据第二匹配结果确定已修代码是否入库。
10.根据权利要求8所述的装置,其特征在于,所述评审模块还用于:
若第一匹配结果为相同,根据所述已修代码明细从代码入库单元中调用已修代码,使代码评审人对所述已修代码进行代码评审批注;
根据代码评审人的评审批注信号,生成评审信息文件,并将所述评审信息文件发送给代码入库单元,以使所述代码入库单元根据评审信息文件将已修代码入库。
11.一种程序代码信息处理装置,其特征在于,包括:
获取模块,用于在接收代码修改人提交的已修代码、已修代码明细和代码修改人信息后,向代码评审平台发送评审请求,所述评审请求包括代码评审人信息和已修代码明细,以使代码评审平台对所述已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息;将所述代码责任人信息与所述代码评审人信息进行匹配,生成第一匹配结果;若第一匹配结果为不相同,则根据所述已修代码明细从代码入库单元中调用已修代码,使代码责任人对所述已修代码进行代码评审批注;根据代码责任人的评审批注信号,生成评审信息文件;
入库处理模块,用于接收到代码评审平台发来的评审信息文件,并根据评审信息文件将已修代码入库。
12.根据权利要求11所述的装置,其特征在于,还包括:
入库处理模块还用于在发送评审请求之前,接收到代码修改人提交的已修代码、已修代码明细和代码修改人信息后,对已修代码明细进行解析,获得配置代码库中代码目录名,并根据预设的代码责任人与代码目录名的配置关系表获得代码责任人信息,将所述代码责任人信息与所述代码修改人信息进行匹配,生成第二匹配结果,根据第二匹配结果确定已修代码是否入库。
13.根据权利要求12所述的装置,其特征在于,所述入库处理模块具体用于:
若第二匹配结果为否,则确定所述已修代码不能入库,向代码评审平台发送评审请求。
14.根据权利要求13所述的装置,其特征在于,所述入库处理模块具体用于:
若第二匹配结果为是,则确定所述已修代码入库。
CN201710120817.6A 2017-03-02 2017-03-02 程序代码信息处理方法及装置 Active CN108536577B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201710120817.6A CN108536577B (zh) 2017-03-02 2017-03-02 程序代码信息处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201710120817.6A CN108536577B (zh) 2017-03-02 2017-03-02 程序代码信息处理方法及装置

Publications (2)

Publication Number Publication Date
CN108536577A CN108536577A (zh) 2018-09-14
CN108536577B true CN108536577B (zh) 2021-04-20

Family

ID=63489326

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710120817.6A Active CN108536577B (zh) 2017-03-02 2017-03-02 程序代码信息处理方法及装置

Country Status (1)

Country Link
CN (1) CN108536577B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109783128A (zh) * 2018-12-13 2019-05-21 平安普惠企业管理有限公司 代码改动通知方法、设备、存储介质及装置
CN111274127B (zh) * 2020-01-14 2023-04-07 北京百度网讯科技有限公司 代码评审中的代码跳转方法、装置、设备和介质

Family Cites Families (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080295085A1 (en) * 2007-05-25 2008-11-27 Microsoft Corporation Integrated code review tool
CN103677831B (zh) * 2013-12-12 2017-02-08 迈普通信技术股份有限公司 在线代码审查系统及方法
CN105512034A (zh) * 2015-12-04 2016-04-20 北京京东尚科信息技术有限公司 一种评审方法和评审系统

Also Published As

Publication number Publication date
CN108536577A (zh) 2018-09-14

Similar Documents

Publication Publication Date Title
US20230067084A1 (en) System and method for monitoring of software applications and health analysis
EP3139320A1 (en) System and method for optimizing testing of software production incidents
US20170075790A1 (en) Integrating quality analysis with a code review tool
US20150227452A1 (en) System and method for testing software applications
US20190325323A1 (en) Knowledge management
US20180322508A1 (en) Identifying clusters for service management operations
US9569782B1 (en) Automated customer business impact assessment upon problem submission
CN113138927B (zh) 一种软件功能测试方法和装置
CN109254912A (zh) 一种自动化测试的方法及装置
EP3511834A1 (en) System and method for tool chain data capture through parser for empirical data analysis
US20160103678A1 (en) Maintaining the integrity of process conventions within an alm framework
CN111444080A (zh) 持续测试方法和装置
US10922207B2 (en) Method, apparatus, and computer-readable medium for maintaining visual consistency
US9208194B2 (en) Expanding high level queries
US11144930B2 (en) System and method for managing service requests
CN111221727A (zh) 测试方法、装置、电子设备和计算机可读介质
CN108536577B (zh) 程序代码信息处理方法及装置
US20120023371A1 (en) Xml-schema-based automated test procedure for enterprise service pairs
CN112905492B (zh) 验证方法及装置
CN111813765B (zh) 一种异常数据处理的方法、装置、电子设备、计算机可读介质
CN116719817B (zh) 一种面向科技资源的数字对象关系溯源方法及系统
CN110580216B (zh) 一种应用提测的方法和装置
CN113672497B (zh) 无埋点事件的生成方法、装置、设备及存储介质
CN117557206A (zh) 流程处理方法、装置、电子设备及可读存储介质
CN111045915A (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
GR01 Patent grant
GR01 Patent grant