研发任务的状态变更方法及电子设备与流程
本发明涉及研发管理,具体而言,涉及一种研发任务的状态变更方法及电子设备。
背景技术:
1、相关技术中,研发管理系统按业务功能拆分为多个独立单元,各单元独立维护本地状态副本,传统在研发过程中执行任务提测、阶段完成等状态变更操作时,依次调用各单元的接口或依赖人工在多个系统中分别操作,一旦某个环节出现网络超时、接口异常或操作遗漏,便会出现部分单元状态更新成功、其余单元数据滞后或更新失败的现象,最终造成任务状态的不一致性。因此,相关技术中,在研发过程中,由于状态数据分散存储于研发管理系统中的不同单元,导致变更任务的状态时,难以保证不同单元间的状态数据保持一致的技术问题。
2、针对上述的问题,目前尚未提出有效的解决方案。
技术实现思路
1、本发明实施例提供了一种研发任务的状态变更方法及电子设备,以至少解决相关技术中,在研发过程中,由于状态数据分散存储于研发管理系统中的不同单元,导致变更任务的状态时,难以保证不同单元间的状态数据保持一致的技术问题。
2、根据本发明实施例的一个方面,提供了一种研发任务的状态变更方法,包括:获取目标操作对象发起的状态变更请求,其中,所述状态变更请求用于请求将研发管理系统中的目标任务由第一状态变更为第二状态,所述状态变更请求中携带有触发事件,当前请求标识和所述目标任务的状态版本号;基于所述触发事件,所述第一状态,以及所述第二状态,确定与所述状态变更请求对应的变更校验条件;基于所述当前请求标识,所述状态版本号,以及所述变更校验条件,确定是否执行状态变更操作的执行校验结果;在执行校验结果为执行所述状态变更操作的情况下,将目标单元中记录的所述目标任务的所述第一状态变更为第二状态,并生成状态变更事件;基于所述第二状态,以及所述状态变更事件,对所述研发管理系统中的关联单元执行所述状态变更操作,其中,所述关联单元为所述研发管理系统中除所述目标单元之外的,且,与所述目标任务存在关联关系的其他单元。
3、可选地,所述基于所述当前请求标识,所述状态版本号,以及所述变更校验条件,确定是否执行状态变更操作的执行校验结果,包括:查询历史请求标识库中,是否存在历史请求标识与所述当前请求标识相同,得到标识确定结果;在标识确定结果为所述历史请求标识库中,不存在历史请求标识与所述当前请求标识相同的情况下,确定所述状态版本号是否与所述目标单元中记录的所述目标任务的参照版本号相同,得到版本号确定结果;在所述版本号确定结果为所述状态版本号与所述目标单元中记录的所述目标任务的参照版本号相同的情况下,确定所述目标任务的状态变更路径;基于所述目标任务的状态变更路径,以及所述变更校验条件,确定是否执行状态变更操作的执行校验结果。
4、可选地,所述基于所述目标任务的状态变更路径,以及所述变更校验条件,确定是否执行状态变更操作的执行校验结果,包括:确定所述状态变更路径是否符合变更路径约束,得到路径确定结果;在所述路径确定结果为所述状态变更路径符合变更路径约束的情况下,确定所述目标任务的当前变更条件;确定所述当前变更条件是否满足所述变更校验条件,得到是否执行状态变更操作的执行校验结果。
5、可选地,所述研发管理系统配置有研发对象的预定结构参数,其中,所述预定结构参数用于从数据结构层面表征所述研发对象,所述研发对象包括操作对象,研发任务,操作权限,研发项目中的至少一种。
6、可选地,所述基于所述第二状态,以及所述状态变更事件,对所述研发管理系统中的关联单元执行所述状态变更操作,包括:确定所述目标任务的父任务;基于所述状态变更事件,确定所述父任务的目标父任务状态;基于所述第二状态,以及所述目标父任务状态,对所述研发管理系统中的关联单元执行所述状态变更操作。
7、可选地,基于所述第二状态,以及所述状态变更事件,采用异步处理,对所述研发管理系统中的关联单元执行所述状态变更操作。
8、可选地,所述当前请求标识为幂等键。
9、可选地,所述状态变更事件配置有变更事件序号,所述变更事件序号为基于同一状态变更情境下的所有变更事件的变更顺序递增得到。
10、可选地,所述将目标单元中记录的所述目标任务的所述第一状态变更为第二状态之后,包括:将所述目标任务的状态版本号递增,得到更新版本号。
11、根据本发明实施例的一个方面,提供了一种电子设备,包括:处理器;用于存储所述处理器可执行指令的存储器;其中,所述处理器被配置为执行所述指令,以实现上述任一项所述的研发任务的状态变更方法。
12、在本发明实施例中,由于状态变更请求中携带有触发事件、请求标识及状态版本号,研发管理系统能够依据触发事件、当前状态与目标状态确定匹配的变更校验条件,并进一步结合请求标识的去重能力与状态版本号的乐观锁机制,在执行状态变更前完成重复请求过滤与并发冲突检测,从而确保只有通过完整校验的合法请求才能执行状态变更操作;通过将校验通过后的状态变更操作限定于目标单元中标准状态的写入,并同步生成状态变更事件,使得关联单元能够依据该事件及变更后的第二状态进行联动更新,而无需人工介入或定时轮询;由于所有状态更新均以目标单元中的标准状态为准,并通过事件驱动机制将变更结果同步传播至各关联单元,因而能够避免不同单元间状态数据出现不一致或分叉,确保整个研发管理系统中与目标任务相关的状态数据保持一致,进而解决了相关技术中,在研发过程中,由于状态数据分散存储于研发管理系统中的不同单元,导致变更任务的状态时,难以保证不同单元间的状态数据保持一致的技术问题。
1.一种研发任务的状态变更方法,其特征在于,包括:
2.根据权利要求1所述的方法,其特征在于,所述基于所述当前请求标识,所述状态版本号,以及所述变更校验条件,确定是否执行状态变更操作的执行校验结果,包括:
3.根据权利要求2所述的方法,其特征在于,所述基于所述目标任务的状态变更路径,以及所述变更校验条件,确定是否执行状态变更操作的执行校验结果,包括:
4.根据权利要求1所述的方法,其特征在于,所述研发管理系统配置有研发对象的预定结构参数,其中,所述预定结构参数用于从数据结构层面表征所述研发对象,所述研发对象包括操作对象,研发任务,操作权限,研发项目中的至少一种。
5.根据权利要求1所述的方法,其特征在于,所述基于所述第二状态,以及所述状态变更事件,对所述研发管理系统中的关联单元执行所述状态变更操作,包括:
6.根据权利要求1所述的方法,其特征在于,基于所述第二状态,以及所述状态变更事件,采用异步处理,对所述研发管理系统中的关联单元执行所述状态变更操作。
7.根据权利要求1所述的方法,其特征在于,所述当前请求标识为幂等键。
8.根据权利要求1所述的方法,其特征在于,所述状态变更事件配置有变更事件序号,所述变更事件序号为基于同一状态变更情境下的所有变更事件的变更顺序递增得到。
9.根据权利要求1至8任一项所述的方法,其特征在于,所述将目标单元中记录的所述目标任务的所述第一状态变更为第二状态之后,包括:
10.一种电子设备,其特征在于,包括:
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com