代码缺陷的通知方法及系统与流程

文档序号:11286022阅读:220来源:国知局
代码缺陷的通知方法及系统与流程

本发明涉及代码库管理技术领域,特别涉及一种代码缺陷的通知方法及系统。



背景技术:

代码库提供了一种将代码封装在单个文件中,允许继承和修改这些文件的方法。开发者可以将来自多个不同项目的代码文件合并到一个代码库中,每个项目的代码将作为代码库中的一个分支代码,相互之间进行调用,实现代码共享。例如,一款产品因目标市场不同,客户需求不同,所以软件代码也不尽相同,开发者可以将该产品不同的软件代码合并到一个代码库中,而每个软件代码将作为代码库的一个分支,以便于管理。

在软件尤其是大型软件中出现代码缺陷是不可避免的,因此在代码库管理技术领域,代码缺陷的管理、监控及修复也是开发者的重要工作之一。

现有技术当中,当发现一个代码缺陷时,通常情况是软件负责人将修复该代码缺陷的任务指派给某个工程师,而在一个代码库中可能存在很多代码缺陷,而软件负责人无法及时管控所有的代码缺陷,从而导致出现漏处理的代码缺陷,并且现有技术当中,通常是通过人工监测代码缺陷是否已被修复,当指派的工程师未按时间完成修复任务,且负责人没有注意到时,往往导致存在已发现代码缺陷的产品继续流向市场,造成潜在风险。



技术实现要素:

基于此,本发明的目的是提供一种代码缺陷的通知方法及系统,以使当达到指定修复时间时,能够自动的监测代码缺陷是否完全修复,且当未完全修复时,将发送通知信息。

根据本发明实施例的一种代码缺陷的通知方法,包括:

获取代码库内的所有分支代码中的缺陷子代码,对每种所述缺陷子代码分配对应的id及修复完成时间,并将所述id及所述修复完成时间记录到缺陷列表中;

当当前时间达到所述缺陷列表中记录的任一修复完成时间时,获取与所述任一修复完成时间对应的目标缺陷子代码及目标id,并判断在与所述目标缺陷子代码相关的所有目标分支代码中所述目标缺陷子代码是否均被修复;

若否,则将所述目标id及未修复所述目标缺陷子代码的所有所述目标分支代码的代号作为信息进行通知。

另外,根据本发明上述实施例的一种代码缺陷的通知方法,还可以具有如下附加的技术特征:

在所述对每种所述缺陷子代码分配对应的id及修复完成时间的步骤之后,所述代码缺陷的通知方法还包括:

对每种所述缺陷子代码分配对应的通知信息发送地址,并将所述通知信息发送地址记录到所述缺陷列表中。

所述将所述目标id及未修复所述目标缺陷子代码的所有所述目标分支代码的代号作为信息进行通知的步骤包括:

在所述缺陷列表中提取与所述目标id对应的目标通知信息发送地址;

将所述目标id及未修复所述目标缺陷子代码的所有所述目标分支代码的代号作为信息发送到所述目标通知信息发送地址。

所述判断在与所述目标缺陷子代码相关的所有目标分支代码中所述目标缺陷子代码是否均被修复的步骤包括:

判断在与所述目标缺陷子代码相关的所有所述目标分支代码中是否均存在所述目标id。

在所述判断在与所述目标缺陷子代码相关的所有目标分支代码中所述目标缺陷子代码是否均被修复的步骤之后,所述代码缺陷的通知方法还包括:

若是,则清除所述缺陷列表中记录的与所述目标id相关的所有内容。

在所述将所述目标id及未修复所述目标缺陷子代码的所有所述目标分支代码的代号作为信息进行通知的步骤之后,所述代码缺陷的通知方法还包括:

开启所述代码库的代码修复模式,以使需要指定权限的用户才能编辑所述代码库中的代码。

根据本发明实施例的一种代码缺陷的通知系统,包括:

代码信息记录模块,用于获取代码库内的所有分支代码中的缺陷子代码,对每种所述缺陷子代码分配对应的id及修复完成时间,并将所述id及所述修复完成时间记录到缺陷列表中;

判断模块,用于当当前时间达到所述缺陷列表中记录的任一修复完成时间时,获取与所述任一修复完成时间对应的目标缺陷子代码及目标id,并判断在与所述目标缺陷子代码相关的所有目标分支代码中所述目标缺陷子代码是否均被修复;

通知信息发送模块,用于当判断到所述目标缺陷子代码在所有的所述目标分支代码中不是均被修复时,将所述目标id及未修复所述目标缺陷子代码的所有所述目标分支代码的代号作为信息进行通知。

另外,根据本发明上述实施例的一种代码缺陷的通知系统,还可以具有如下附加的技术特征,

所述代码缺陷的通知系统还包括:

地址分配记录模块,用于对每种所述缺陷子代码分配对应的通知信息发送地址,并将所述通知信息发送地址记录到所述缺陷列表中。

所述通知信息发送模块包括:

地址获取单元,用于在所述缺陷列表中提取与所述目标id对应的目标通知信息发送地址;

通知信息发送子单元,用于将所述目标id及未修复所述目标缺陷子代码的所有所述目标分支代码的代号作为信息发送到所述目标通知信息发送地址。

所述判断模块包括:

判断子单元,用于判断在与所述目标缺陷子代码相关的所有所述目标分支代码中是否均存在所述目标id。

所述代码缺陷的通知系统还包括:

清除模块,用于当判断到所述目标缺陷子代码在所有的所述目标分支代码中均被修复时,清除所述缺陷列表中记录的与所述目标id相关的所有内容。

所述代码缺陷的通知系统还包括:

修复模块开启模块,用于当所述通知信息发送模块发送通知信息后,开启所述代码库的代码修复模式,以使需要指定权限的用户才能编辑所述代码库中的代码。

上述代码缺陷的通知方法及系统,通过获取所述代码库中的所有缺陷子代码,并对每个缺陷子代码分配对应的id及修复完成时间(相同缺陷子代码的id及修复完成时间相同),然后将所有的id及对应的修复完成时间记录到所述缺陷列表中,通过所述缺陷列表即可自动且及时的管控所述代码库中的所有缺陷子代码,然后当当前时间达到所述缺陷列表中记录的某个修复完成时间时,获取与此修复完成时间对应的目标缺陷子代码及目标id,并判断在与所述目标缺陷子代码相关的所有目标分支代码中所述目标缺陷子代码是否均被修复,当判断到没有均被修复时,将所述目标id及未修复所述目标缺陷子代码的目标分支代码作为信息进行通知,相关负责人根据通知信息,即可了解到,在指定期限内,仍然存在缺陷子代码未完全修复,同时还可以知道未完全被修复的缺陷子代码的id及对应未修复的分支代码,因此所述代码缺陷的通知方法能够在当达到指定修复时间时,自动的监测代码缺陷是否完全修复,且当对应的代码缺陷未完全修复时,将发送通知信息,以便于相关负责人及时处理,以存在已发现代码缺陷的产品继续流向市场。

附图说明

图1为本发明第一实施例中代码缺陷的通知方法的流程图。

图2为本发明第二实施例中代码缺陷的通知方法的流程图。

图3为本发明第三实施例中代码缺陷的通知系统的结构示意图。

主要元件符号说明

如下具体实施方式将结合上述附图进一步说明本发明。

具体实施方式

为了便于理解本发明,下面将参照相关附图对本发明进行更全面的描述。附图中给出了本发明的若干实施例。但是,本发明可以以许多不同的形式来实现,并不限于本文所描述的实施例。相反地,提供这些实施例的目的是使对本发明的公开内容更加透彻全面。

需要说明的是,当元件被称为“固设于”另一个元件,它可以直接在另一个元件上或者也可以存在居中的元件。当一个元件被认为是“连接”另一个元件,它可以是直接连接到另一个元件或者可能同时存在居中元件。本文所使用的术语“垂直的”、“水平的”、“左”、“右”以及类似的表述只是为了说明的目的。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。

请参阅图1,所示为本发明第一实施例中的代码缺陷的通知方法的流程图,包括步骤s01至s03。

步骤s01,获取代码库内的所有分支代码中的缺陷子代码,对每种所述缺陷子代码分配对应的id及修复完成时间,并将所述id及所述修复完成时间记录到缺陷列表中。

可以理解的,一个代码库当中,通常包括多个分支代码,而每个分支代码当中存在多个子代码,而在众多的子代码中难免会存在缺陷(如子代码错误),而发送缺陷的子代码即为所述缺陷子代码。

在所述步骤s01当中,将获取所述代码库内所有的缺陷子代码,而获取的缺陷子代码可能存在重复出现的现象,而所述步骤s01将对相同的缺陷子代码分配一次id及修复完成时间。

需要指出的是,每种缺陷子代码只有唯一一个id,id为对应的缺陷子代码的唯一身份识别码,通过id即可查询到对应的缺陷子代码。其中,对每种缺陷子代码分配对应的id的目的在于,通常的子代码可能较为复杂,而id(较为简单)用户可以预设,相比之下,通过分配id的方式来映射对应的缺陷子代码,便于后续的管理,同时便于作为通知信息进行发送。

具体实施时,在所述步骤s01之前,可以通过人工(工程师)或相关程序来查找所述代码库内的所有分支代码中的缺陷子代码。

具体实施时,所述对每种所述缺陷子代码分配对应的id及修复完成时间的步骤可以按照以下步骤进行实施:首先按照预设的id生成方式(如数字从大到小的生成方式)对当前缺陷子代码生成一个对应的id,然后获取当前时间,并在当前时间的基础上增加一预设时间段,以作为所述当前缺陷子代码的修复完成时间。

步骤s02,当当前时间达到所述缺陷列表中记录的任一修复完成时间时,获取与所述任一修复完成时间对应的目标缺陷子代码及目标id,并判断在与所述目标缺陷子代码相关的所有目标分支代码中所述目标缺陷子代码是否均被修复。

其中,所述目标分支代码是指存在所述目标缺陷子代码的分支代码,由于所述目标分支代码可能存在多个分支代码中,固所述目标分支代码可能为多个。

可以理解的,在所述步骤s01当中,已经对缺陷子代码、id及修复完成时间进行了关联对应,并存储在所述缺陷列表中,当当前时间达到所述缺陷列表中记录的任一修复完成时间时,根据所述任一修复完成时间时即可获取到对应的缺陷子代码及id,即所述的目标缺陷子代码及目标id。

具体实施时,所述id将作为对应的缺陷子代码的修复标识,即当相关工作人员对某个分支代码上的某个缺陷子代码进行修复时,可以在修复完成后,在当前分支代码上记录当前修复的缺陷子代码对应的id,也就是说当修复一个缺陷子代码时,即在对应的分支代码上备注对应的id。因此所述判断在与所述目标缺陷子代码相关的所有目标分支代码中所述目标缺陷子代码是否均被修复的步骤,可以按照以下的方式进行具体实施:判断在与所述目标缺陷子代码相关的所有所述目标分支代码中是否均存在所述目标id,若均存在所述目标id,则代表所述目标缺陷子代码在所有的所述目标分支代码中均已修复,反之则代表所述目标缺陷子代码在所有的所述目标分支代码中未完全被修复。

当所述步骤s02判断到在与所述目标缺陷子代码相关的所有目标分支代码中所述目标缺陷子代码不是均被修复时,代表在指定的修复完成时间内,所有所述目标分支代码中的所述目标缺陷子代码不是均被修复(未修复或未全部修复),此时将执行所述步骤s03,当所述步骤s02判断到在与所述目标缺陷子代码相关的所有目标分支代码中所述目标缺陷子代码均被修复时,代表在指定的修复完成时间内,所有所述目标分支代码中的所述目标缺陷子代码均被修复,此时无需进行操作。

步骤s03,将所述目标id及未修复所述目标缺陷子代码的所有所述目标分支代码的代号作为信息进行通知。

其中,所述目标分支代码的代号可以为所述目标分支代码在所述代码库当中的名称、编号等。

具体实施时,可以将所述目标id及未修复所述目标缺陷子代码的目标分支代码作为信息发送到相关人员的邮箱、手机或者电脑当中,而相关人员的邮箱、手机号可以预先存储,或者事先与相关人员的电脑建立连接。

综上,上述代码缺陷的通知方法,通过获取所述代码库中的所有缺陷子代码,并对每个缺陷子代码分配对应的id及修复完成时间(相同缺陷子代码的id及修复完成时间相同),然后将所有的id及对应的修复完成时间记录到所述缺陷列表中,通过所述缺陷列表即可自动且及时的管控所述代码库中的所有缺陷子代码,然后当当前时间达到所述缺陷列表中记录的某个修复完成时间时,获取与此修复完成时间对应的目标缺陷子代码及目标id,并判断在与所述目标缺陷子代码相关的所有目标分支代码中所述目标缺陷子代码是否均被修复,当判断到没有均被修复时,将所述目标id及未修复所述目标缺陷子代码的目标分支代码作为信息进行通知,相关负责人根据通知信息,即可了解到,在指定期限内,仍然存在缺陷子代码未完全修复,同时还可以知道未完全被修复的缺陷子代码的id及对应未修复的分支代码,因此所述代码缺陷的通知方法能够在当达到指定修复时间时,自动的监测代码缺陷是否完全修复,且当对应的代码缺陷未完全修复时,将发送通知信息,以便于相关负责人及时处理,以存在已发现代码缺陷的产品继续流向市场。

请参阅图2,所示为本发明第二实施例中代码缺陷的通知方法的流程图,包括步骤s11至s17。

步骤s11,获取代码库内的所有分支代码中的缺陷子代码,对每种所述缺陷子代码分配对应的id、修复完成时间及通知信息发送地址,并将所述id、所述修复完成时间及所述通知信息发送地址记录到缺陷列表中。

其中,所述通知信息发送地址可以为相关人员的邮箱、手机或者电脑当中的至少一种。

步骤s12,当当前时间达到所述缺陷列表中记录的任一修复完成时间时,获取与所述任一修复完成时间对应的目标缺陷子代码及目标id,并将所述目标id备份存储。

其中,由于每个id对应一种缺陷子代码,将所述目标id备份存储的目的在于,便于后续的记录查询。

步骤s13,判断在与所述目标缺陷子代码相关的所有所述目标分支代码中是否均存在所述目标id。

具体实施时,当相关工作人员对某个分支代码上的某个缺陷子代码进行修复时,可以在修复完成后,在当前分支代码上记录当前修复的缺陷子代码对应的id,也就是说当修复一个缺陷子代码时,即在对应的位置上备注对应的id。因此可以通过判断所述目标分支代码中是否存在所述目标id的方式,来判断所述目标分支代码中的所述目标缺陷子代码是否被修复。

当所述步骤s13判断到在与所述目标缺陷子代码相关的所有目标分支代码中均存在所述目标id时,代表在指定的修复完成时间内,所述目标缺陷子代码在所有的所述目标分支代码中均被修复,此时将执行步骤s14,当所述步骤s13判断到在与所述目标缺陷子代码相关的所有目标分支代码中不是均存在所述目标id时,代表在指定的修复完成时间内,所述目标缺陷子代码在所有的所述目标分支代码中未全部被修复,此时将将执行步骤s15至步骤s17。

步骤s14,清除所述缺陷列表中记录的与所述目标id相关的所有内容。

由于,所述步骤s13已经判断出,所述目标缺陷子代码在所有的所述目标分支代码中均被修复,此时所述代码库当中将不存在所述目标缺陷子代码,通过清除所述缺陷列表中记录的与所述目标id相关的所有内容,以对所述缺陷列表进行整理,而所述步骤s12已经将所述目标id进行了存储,因此所述步骤s14清除数据后,相关人员仍然可以通过保存的id来进行查询。

步骤s15,在所述缺陷列表中提取与所述目标id对应的目标通知信息发送地址。

步骤s16,将所述目标id及未修复所述目标缺陷子代码的所有所述目标分支代码的代号作为信息发送到所述目标通知信息发送地址。

步骤s17,开启所述代码库的代码修复模式,以使需要指定权限的用户才能编辑所述代码库中的代码。

需要指出的是,开启了所述代码库的代码修复模式后,除相关技术人员以外,将无法对所述代码库的代码进行编辑(如调用、继承、分发等),以强制相关技术人员对超限的缺陷子代码进行修复。

本发明另一方面,还提供一种代码缺陷的通知系统,请参阅图3,所示为本发明第三实施例中的代码缺陷的通知系统的结构示意图,包括代码信息记录模块11、判断模块12及通知信息发送模块13。

所述代码信息记录模块11,用于获取代码库内的所有分支代码中的缺陷子代码,对每种所述缺陷子代码分配对应的id及修复完成时间,并将所述id及所述修复完成时间记录到缺陷列表中。

所述判断模块12,用于当当前时间达到所述缺陷列表中记录的任一修复完成时间时,获取与所述任一修复完成时间对应的目标缺陷子代码及目标id,并判断在与所述目标缺陷子代码相关的所有目标分支代码中所述目标缺陷子代码是否均被修复。

所述通知信息发送模块13,用于当判断到所述目标缺陷子代码在所有的所述目标分支代码中不是均被修复时,将所述目标id及未修复所述目标缺陷子代码的所有所述目标分支代码的代号作为信息进行通知。

进一步地,所述代码缺陷的通知系统还包括:

地址分配记录模块14,用于对每种所述缺陷子代码分配对应的通知信息发送地址,并将所述通知信息发送地址记录到所述缺陷列表中。

进一步地,所述通知信息发送模块13包括:

地址获取单元131,用于在所述缺陷列表中提取与所述目标id对应的目标通知信息发送地址;

通知信息发送子单元132,用于将所述目标id及未修复所述目标缺陷子代码的所有所述目标分支代码的代号作为信息发送到所述目标通知信息发送地址。

进一步地,所述判断模块12包括:

判断子单元121,用于判断在与所述目标缺陷子代码相关的所有所述目标分支代码中是否均存在所述目标id。

所述代码缺陷的通知系统还包括:

清除模块15,用于当判断到所述目标缺陷子代码在所有的所述目标分支代码中均被修复时,清除所述缺陷列表中记录的与所述目标id相关的所有内容。

所述代码缺陷的通知系统还包括:

修复模块开启模块16,用于当所述通知信息发送模块13发送通知信息后,开启所述代码库的代码修复模式,以使需要指定权限的用户才能编辑所述代码库中的代码。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成。所述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,包括上述方法所述的步骤。所述的存储介质,包括:rom/ram、磁碟、光盘等。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1