公开/公告号CN105243490A
专利类型发明专利
公开/公告日2016-01-13
原文格式PDF
申请/专利权人 湖南快乐阳光互动娱乐传媒有限公司;
申请/专利号CN201510655315.4
申请日2015-10-12
分类号G06Q10/06;
代理机构长沙正奇专利事务所有限责任公司;
代理人王娟
地址 410001 湖南省长沙市金鹰影视文化城湖南国际会展中心北2U层
入库时间 2023-12-18 13:28:42
法律状态公告日
法律状态信息
法律状态
2018-12-25
授权
授权
2016-02-10
实质审查的生效 IPC(主分类):G06Q10/06 申请日:20151012
实质审查的生效
2016-01-13
公开
公开
技术领域
本发明属于KPI统计领域,特别涉及一种KPI统计系统及KPI统计方法。
背景技术
KPI统计指的是关键绩效指标(KPI:KeyPerformanceIndicator)统计,是通过将总任务进行分解量化成多类小任务,再统计每个工作人员对各类小任务的完成情况和完成时间,得到KPI统计结果。决策和管理层以KPI统计结果来衡量工作人员的工作绩效,并动态有效分配各类资源。
在传统KPI统计中,需要软件工程师每天或每周手动书写工作量表单,然后交给上级或其他部门进行每月或每年的KPI统计。这些KPI还需要人工进行分项目,分团队,并关联到具体的项目进度,给相关人员来带来了除项目开发外额外的任务量,浪费了大量的时间。
由于软件工程师是一个以高强度脑力劳动为主,以逻辑连贯性和紧密性为工作基础的职业,书写KPI报告这类文档性工作对于软件工程师来说是一项比较繁琐且浪费时间的任务。
为了解决工程师书写KPI时间问题和KPI整理繁琐问题,研发出此解决方案。git软件是一个开源的分布式版本控制系统,用以有效、高速地进行各种类型的项目版本管理。每个软件工程师在利用git软件进行项目开发时,都可以随时向公共的git服务器提交结果。利用软件工程师的源码管理工具git软件打通KPI报表,项目进度之间的关系,自动生成,整理员工KPI,项目报表。
发明内容
由于现有的手动书写及统计KPI费时费力、任务繁琐,本发明的目的在于,提供一种KPI统计系统及KPI统计方法。
为解决上述技术问题,本发明所采用的技术方案是:
一种KPI统计系统,包括
git软件,所述git软件包括git仓库和git服务器;
项目-仓库关联数据库,用于保存项目与git仓库之间的关联关系;
服务端,其中git仓库中的webhook指向所述服务端;
指令分析模块,当git仓库收到一个commit指令信息时,git服务器自动触发webhook将所述commit指令转发到所述指令分析模块,所述指令分析模块根据指令词法分析库解析出commit指令中的项目信息,其中commit指令中的项目信息包括任务编号、任务所属版本号、任务类别、任务所属分组、任务状态;
工作流模块,用于接收指令分析模块传递来的项目信息,若任务编号所需关联的任务点已存在,则将项目信息与任务点关联,若任务编号所需关联的任务点不存在,则创建新的任务点并将项目信息与任务点关联;同时工作流模块根据所述commit指令所属的git仓库,从项目-仓库关联数据库中获取git仓库所关联的项目名称;工作流模块查找该git仓库的拥有者账号,从账号体系中找到对应的员工ID;工作流模块将包含任务编号、任务所属版本号、任务类别、任务所属分组、任务状态、项目名称、对应的员工ID信息的KPI信息带上时间戳保存;
KPI报表模块,用于读取工作流模块保存的KPI信息,根据所述KPI信息分团队、个人或日期分别统计KPI。
基于同一个发明构思,本发明还提供了一种KPI统计方法,使用所述的系统,包括以下步骤:
A.将项目和git仓库建立关联关系,并把该关联关系存入项目-仓库关联数据库;
B.当git仓库收到一个commit指令信息时,git服务器自动触发webhook将所述commit指令转发到所述指令分析模块,指令分析模块根据指令词法分析库解析出commit指令中的项目信息,并将项目信息传递给工作流模块,其中commit指令中的项目信息包括任务编号、任务所属版本号、任务类别、任务所属分组、任务状态;
C.工作流模块接收指令分析模块传递来的项目信息,若任务编号所需关联的任务点已存在,则将项目信息与任务点关联,若任务编号所需关联的任务点不存在,则创建新的任务点并将项目信息与任务点关联;同时工作流模块根据所述commit指令所属的git仓库,从项目-仓库关联数据库中获取git仓库所关联的项目名称;工作流模块查找该git仓库的拥有者账号,从账号体系中找到对应的员工ID;工作流模块将包含任务点、任务所属版本号、任务类别、任务所属分组、任务状态、项目名称、对应的员工ID信息的KPI信息带上时间戳保存;
D.KPI报表模块读取工作流模块保存的KPI信息,根据所述KPI信息分团队、个人或日期分别统计KPI。
作为一种优选方式,所述KPI报表模块根据当前登录的用户信息判断当前用户是否属于管理层,若当前用户属于管理层,则输出团队KPI报表、项目KPI报表、个人KPI报表中的一种或多种;若当前用户不属于管理层,则输出个人KPI报表。
进一步地,所述commit指令中的项目信息按照设定的格式进行提交,所述指令分析模块对commit指令的提交格式进行正则匹配,过滤掉不合规范限制的信息。
与现有技术相比,本发明能够减少软件工程师书写KPI时间,高效、准确地集中得到KPI报表所需的数据,自动提供KPI报表,供决策、管理层参考,从而动态有效地分配项目资源,极大地提高了工作效率,出错率极低。
具体实施方式
本发明的一实施例包括git软件,所述git软件包括git仓库和git服务器;
项目-仓库关联数据库,用于保存项目与git仓库之间的关联关系;
服务端,其中git仓库中的webhook指向所述服务端;
指令分析模块,当git仓库收到一个commit指令信息时,git服务器自动触发webhook将所述commit指令转发到所述指令分析模块,所述指令分析模块根据指令词法分析库解析出commit指令中的项目信息,其中commit指令中的项目信息包括任务编号、任务所属版本号、任务类别、任务所属分组、任务状态;
工作流模块,用于接收指令分析模块传递来的项目信息,若任务编号所需关联的任务点已存在,则将项目信息与任务点关联,若任务编号所需关联的任务点不存在,则创建新的任务点并将项目信息与任务点关联;同时工作流模块根据所述commit指令所属的git仓库,从项目-仓库关联数据库中获取git仓库所关联的项目名称;工作流模块查找该git仓库的拥有者账号,从账号体系中找到对应的员工ID;工作流模块将包含任务编号、任务所属版本号、任务类别、任务所属分组、任务状态、项目名称、对应的员工ID信息的KPI信息带上时间戳保存;
KPI报表模块,用于读取工作流模块保存的KPI信息,根据所述KPI信息分团队、个人或日期分别统计KPI。
本发明的一实施方式使用所述系统,包括以下步骤:
A.将项目和git仓库建立关联关系,并把该关联关系存入项目-仓库关联数据库;
B.当git仓库收到一个commit指令信息时,git服务器自动触发webhook将所述commit指令转发到所述指令分析模块,指令分析模块根据指令词法分析库解析出commit指令中的项目信息,并将项目信息传递给工作流模块,其中commit指令中的项目信息包括任务编号、任务所属版本号、任务类别、任务所属分组、任务状态;
C.工作流模块接收指令分析模块传递来的项目信息,若任务编号所需关联的任务点已存在,则将项目信息与任务点关联,若任务编号所需关联的任务点不存在,则创建新的任务点并将项目信息与任务点关联;同时工作流模块根据所述commit指令所属的git仓库,从项目-仓库关联数据库中获取git仓库所关联的项目名称;工作流模块查找该git仓库的拥有者账号,从账号体系中找到对应的员工ID;工作流模块将包含任务点、任务所属版本号、任务类别、任务所属分组、任务状态、项目名称、对应的员工ID信息的KPI信息带上时间戳保存;
D.KPI报表模块读取工作流模块保存的KPI信息,根据所述KPI信息分团队、个人或日期分别统计KPI。
所述KPI报表模块根据当前登录的用户信息判断当前用户是否属于管理层,若当前用户属于管理层,则输出团队KPI报表、项目KPI报表、个人KPI报表中的一种或多种;若当前用户不属于管理层,则输出个人KPI报表。
所述commit指令中的项目信息按照设定的格式进行提交,所述指令分析模块对commit指令的提交格式进行正则匹配,过滤掉不合规范限制的信息。
commit指令中的项目信息设定的提交格式为“#编号<数字>!版本号<字符串>分类态<字符串>#分组<字符串>##完成状态<字符串>”。其中“#编号<数字>”表示关联到相关编号的任务点。当数字为0时,表示新建一个新的任务,“#0”为创建新任务指令。“#123”表示关联到编号为123的任务点。“!版本号<字符串>”指定当前提交版本的版本号,以便区分和统计。“任务状态<字符串>”为标记当前任务的完成状态,共有三种状态,分别是doing(正在做,创建新任务后的默认状态),done(已经完成),pause(暂停该任务,以后再处理)。“类别”表示该任务所属类别,如“bug”表示该任务属于bug类别。“#分组#”表示该任务的分组,如“#设计#”表示该任务属于设计组,便于任务检索。
机译: KPI树创建支持系统和KPI树创建支持方法
机译: KPI改进辅助系统和KPI改进辅助方法
机译: KPI改进支持系统和KPI改进支持方法