一種kpi統(tǒng)計(jì)系統(tǒng)及kpi統(tǒng)計(jì)方法
【技術(shù)領(lǐng)域】
[0001]本發(fā)明屬于ΚΡΙ統(tǒng)計(jì)領(lǐng)域,特別涉及一種ΚΡΙ統(tǒng)計(jì)系統(tǒng)及ΚΡΙ統(tǒng)計(jì)方法。
【背景技術(shù)】
[0002]ΚΡΙ統(tǒng)計(jì)指的是關(guān)鍵績(jī)效指標(biāo)(KP1:Key Performance Indicator)統(tǒng)計(jì),是通過(guò)將總?cè)蝿?wù)進(jìn)行分解量化成多類小任務(wù),再統(tǒng)計(jì)每個(gè)工作人員對(duì)各類小任務(wù)的完成情況和完成時(shí)間,得到KPI統(tǒng)計(jì)結(jié)果。決策和管理層以KPI統(tǒng)計(jì)結(jié)果來(lái)衡量工作人員的工作績(jī)效,并動(dòng)態(tài)有效分配各類資源。
[0003]在傳統(tǒng)KPI統(tǒng)計(jì)中,需要軟件工程師每天或每周手動(dòng)書寫工作量表單,然后交給上級(jí)或其他部門進(jìn)行每月或每年的KPI統(tǒng)計(jì)。這些KPI還需要人工進(jìn)行分項(xiàng)目,分團(tuán)隊(duì),并關(guān)聯(lián)到具體的項(xiàng)目進(jìn)度,給相關(guān)人員來(lái)帶來(lái)了除項(xiàng)目開發(fā)外額外的任務(wù)量,浪費(fèi)了大量的時(shí)間。
[0004]由于軟件工程師是一個(gè)以高強(qiáng)度腦力勞動(dòng)為主,以邏輯連貫性和緊密性為工作基礎(chǔ)的職業(yè),書寫KPI報(bào)告這類文檔性工作對(duì)于軟件工程師來(lái)說(shuō)是一項(xiàng)比較繁瑣且浪費(fèi)時(shí)間的任務(wù)。
[0005]為了解決工程師書寫KPI時(shí)間問(wèn)題和KPI整理繁瑣問(wèn)題,研發(fā)出此解決方案。git軟件是一個(gè)開源的分布式版本控制系統(tǒng),用以有效、高速地進(jìn)行各種類型的項(xiàng)目版本管理。每個(gè)軟件工程師在利用git軟件進(jìn)行項(xiàng)目開發(fā)時(shí),都可以隨時(shí)向公共的git服務(wù)器提交結(jié)果。利用軟件工程師的源碼管理工具git軟件打通KPI報(bào)表,項(xiàng)目進(jìn)度之間的關(guān)系,自動(dòng)生成,整理員工KPI,項(xiàng)目報(bào)表。
【發(fā)明內(nèi)容】
[0006]由于現(xiàn)有的手動(dòng)書寫及統(tǒng)計(jì)KPI費(fèi)時(shí)費(fèi)力、任務(wù)繁瑣,本發(fā)明的目的在于,提供一種KPI統(tǒng)計(jì)系統(tǒng)及KPI統(tǒng)計(jì)方法。
[0007]為解決上述技術(shù)問(wèn)題,本發(fā)明所采用的技術(shù)方案是:
一種KPI統(tǒng)計(jì)系統(tǒng),包括
git軟件,所述git軟件包括git倉(cāng)庫(kù)和git服務(wù)器;
項(xiàng)目-倉(cāng)庫(kù)關(guān)聯(lián)數(shù)據(jù)庫(kù),用于保存項(xiàng)目與git倉(cāng)庫(kù)之間的關(guān)聯(lián)關(guān)系;
服務(wù)端,其中g(shù)it倉(cāng)庫(kù)中的webhook指向所述服務(wù)端;
指令分析模塊,當(dāng)git倉(cāng)庫(kù)收到一個(gè)commit指令信息時(shí),git服務(wù)器自動(dòng)觸發(fā)webhook將所述commit指令轉(zhuǎn)發(fā)到所述指令分析模塊,所述指令分析模塊根據(jù)指令詞法分析庫(kù)解析出commit指令中的項(xiàng)目信息,其中commit指令中的項(xiàng)目信息包括任務(wù)編號(hào)、任務(wù)所屬版本號(hào)、任務(wù)類別、任務(wù)所屬分組、任務(wù)狀態(tài);
工作流模塊,用于接收指令分析模塊傳遞來(lái)的項(xiàng)目信息,若任務(wù)編號(hào)所需關(guān)聯(lián)的任務(wù)點(diǎn)已存在,則將項(xiàng)目信息與任務(wù)點(diǎn)關(guān)聯(lián),若任務(wù)編號(hào)所需關(guān)聯(lián)的任務(wù)點(diǎn)不存在,則創(chuàng)建新的任務(wù)點(diǎn)并將項(xiàng)目信息與任務(wù)點(diǎn)關(guān)聯(lián);同時(shí)工作流模塊根據(jù)所述commit指令所屬的git倉(cāng)庫(kù),從項(xiàng)目-倉(cāng)庫(kù)關(guān)聯(lián)數(shù)據(jù)庫(kù)中獲取git倉(cāng)庫(kù)所關(guān)聯(lián)的項(xiàng)目名稱;工作流模塊查找該git倉(cāng)庫(kù)的擁有者賬號(hào),從賬號(hào)體系中找到對(duì)應(yīng)的員工ID ;工作流模塊將包含任務(wù)編號(hào)、任務(wù)所屬版本號(hào)、任務(wù)類別、任務(wù)所屬分組、任務(wù)狀態(tài)、項(xiàng)目名稱、對(duì)應(yīng)的員工ID信息的KPI信息帶上時(shí)間戳保存;
KPI報(bào)表模塊,用于讀取工作流模塊保存的KPI信息,根據(jù)所述KPI信息分團(tuán)隊(duì)、個(gè)人或日期分別統(tǒng)計(jì)KPI。
[0008]基于同一個(gè)發(fā)明構(gòu)思,本發(fā)明還提供了一種KPI統(tǒng)計(jì)方法,使用所述的系統(tǒng),包括以下步驟:
A.將項(xiàng)目和git倉(cāng)庫(kù)建立關(guān)聯(lián)關(guān)系,并把該關(guān)聯(lián)關(guān)系存入項(xiàng)目-倉(cāng)庫(kù)關(guān)聯(lián)數(shù)據(jù)庫(kù);
B.當(dāng)git倉(cāng)庫(kù)收到一個(gè)commit指令信息時(shí),git服務(wù)器自動(dòng)觸發(fā)webhook將所述commit指令轉(zhuǎn)發(fā)到所述指令分析模塊,指令分析模塊根據(jù)指令詞法分析庫(kù)解析出commit指令中的項(xiàng)目信息,并將項(xiàng)目信息傳遞給工作流模塊,其中commit指令中的項(xiàng)目信息包括任務(wù)編號(hào)、任務(wù)所屬版本號(hào)、任務(wù)類別、任務(wù)所屬分組、任務(wù)狀態(tài);
C.工作流模塊接收指令分析模塊傳遞來(lái)的項(xiàng)目信息,若任務(wù)編號(hào)所需關(guān)聯(lián)的任務(wù)點(diǎn)已存在,則將項(xiàng)目信息與任務(wù)點(diǎn)關(guān)聯(lián),若任務(wù)編號(hào)所需關(guān)聯(lián)的任務(wù)點(diǎn)不存在,則創(chuàng)建新的任務(wù)點(diǎn)并將項(xiàng)目信息與任務(wù)點(diǎn)關(guān)聯(lián);同時(shí)工作流模塊根據(jù)所述commit指令所屬的git倉(cāng)庫(kù),從項(xiàng)目-倉(cāng)庫(kù)關(guān)聯(lián)數(shù)據(jù)庫(kù)中獲取git倉(cāng)庫(kù)所關(guān)聯(lián)的項(xiàng)目名稱;工作流模塊查找該git倉(cāng)庫(kù)的擁有者賬號(hào),從賬號(hào)體系中找到對(duì)應(yīng)的員工ID ;工作流模塊將包含任務(wù)點(diǎn)、任務(wù)所屬版本號(hào)、任務(wù)類別、任務(wù)所屬分組、任務(wù)狀態(tài)、項(xiàng)目名稱、對(duì)應(yīng)的員工ID信息的KPI信息帶上時(shí)間戳保存;
D.KPI報(bào)表模塊讀取工作流模塊保存的KPI信息,根據(jù)所述KPI信息分團(tuán)隊(duì)、個(gè)人或日期分別統(tǒng)計(jì)KPI。
[0009]作為一種優(yōu)選方式,所述KPI報(bào)表模塊根據(jù)當(dāng)前登錄的用戶信息判斷當(dāng)前用戶是否屬于管理層,若當(dāng)前用戶屬于管理層,則輸出團(tuán)隊(duì)KPI報(bào)表、項(xiàng)目KPI報(bào)表、個(gè)人KPI報(bào)表中的一種或多種;若當(dāng)前用戶不屬于管理層,則輸出個(gè)人KPI報(bào)表。
[0010]進(jìn)一步地,所述commit指令中的項(xiàng)目信息按照設(shè)定的格式進(jìn)行提交,所述指令分析模塊對(duì)commit指令的提交格式進(jìn)行正則匹配,過(guò)濾掉不合規(guī)范限制的信息。
[0011]與現(xiàn)有技術(shù)相比,本發(fā)明能夠減少軟件工程師書寫KPI時(shí)間,高效、準(zhǔn)確地集中得到KPI報(bào)表所需的數(shù)據(jù),自動(dòng)提供KPI報(bào)表,供決策、管理層參考,從而動(dòng)態(tài)有效地分配項(xiàng)目資源,極大地提高了工作效率,出錯(cuò)率極低。
[0012]
【具體實(shí)施方式】
[0013]本發(fā)明的一實(shí)施例包括git軟件,所述git軟件包括git倉(cāng)庫(kù)和git服務(wù)器; 項(xiàng)目-倉(cāng)庫(kù)關(guān)聯(lián)數(shù)據(jù)庫(kù),用于保存項(xiàng)目與git倉(cāng)庫(kù)之間的關(guān)聯(lián)關(guān)系;
服務(wù)端,其中g(shù)it倉(cāng)庫(kù)中的webhook指向所述服務(wù)端;
指令分析模塊,當(dāng)git倉(cāng)庫(kù)收到一個(gè)commit指令信息時(shí),git服務(wù)器自動(dòng)觸發(fā)webhook將所述commit指令轉(zhuǎn)發(fā)到所述指令分析模塊,所述指令分析模塊根據(jù)指令詞法分析庫(kù)解析出commit指令中的項(xiàng)目信息,其中commit指令中的項(xiàng)目信息包括任務(wù)編號(hào)、任務(wù)所屬版本號(hào)、任務(wù)類別、任務(wù)所屬分組、任務(wù)狀態(tài);
工作流模塊,用于接收指令分析模塊傳遞來(lái)的項(xiàng)目信息,若任務(wù)編號(hào)所需關(guān)聯(lián)的任務(wù)點(diǎn)已存在,則將項(xiàng)目信息與任務(wù)點(diǎn)關(guān)聯(lián),若任務(wù)編號(hào)所需關(guān)聯(lián)的任務(wù)點(diǎn)不存在,則創(chuàng)建新的任務(wù)點(diǎn)并將項(xiàng)目信息與任務(wù)點(diǎn)關(guān)聯(lián);同時(shí)工作流模塊根據(jù)所述commit指令所屬的git倉(cāng)庫(kù),從項(xiàng)目-倉(cāng)庫(kù)關(guān)聯(lián)數(shù)據(jù)庫(kù)中獲取git倉(cāng)庫(kù)所關(guān)聯(lián)的項(xiàng)目名稱;工作流模塊查找該git倉(cāng)庫(kù)的擁有者賬號(hào),從賬號(hào)體系中找到對(duì)應(yīng)的員工ID ;工作流模塊將包含任務(wù)編號(hào)、任務(wù)所屬版本號(hào)、任務(wù)類別、任務(wù)所屬分組、任務(wù)狀態(tài)、項(xiàng)目名稱、對(duì)應(yīng)的員工ID信息的KPI信息帶上時(shí)間戳保存;
KPI報(bào)表模塊,用于讀取工作流模塊保存的KPI信息,根據(jù)所述KPI信息分團(tuán)隊(duì)、個(gè)人或日期分別統(tǒng)計(jì)KPI。
[0014]本發(fā)明的一實(shí)施方式使用所述系統(tǒng),包括以下步驟:
A.將項(xiàng)目和git倉(cāng)