經(jīng)過仔細(xì)比對伙单,發(fā)現(xiàn)禪道的bug查詢有些不靠譜(后來發(fā)現(xiàn)是運維失誤導(dǎo)致的,docker鏡像數(shù)據(jù)庫和分析庫沒同步導(dǎo)致的哈肖。吻育。。淤井。)布疼,自己動手豐衣足食摊趾,呵呵
用下面這個SQL,你就可以構(gòu)建一個簡單的分析模型了
/*create by lky*/
SELECT
(select name from zt_product where id=zt_bug.product) as 產(chǎn)品id,
m2.`name`? as 模塊名稱,
m1.`name`? as 子模塊名稱,
zt_bug.id as bug編號,
zt_bug.title as bug標(biāo)題,
zt_bug.assignedTo 指派給_id,
zt_bug.type as 類型,
zt_bug.`status` as 狀態(tài),
zt_bug.openedBy as 提交人,
date_format(zt_bug.openedDate,'%Y-%m-%d') as 激活時間,
zt_bug.resolvedBy as 解決人,
date_format(zt_bug.assignedDate,'%Y-%m-%d')as? 指派時間,
date_format(zt_bug.resolvedDate,'%Y-%m-%d')as? 解決時間,
zt_bug.closedBy as 關(guān)閉人,
date_format(zt_bug.closedDate,'%Y-%m-%d') as 關(guān)閉時間,
case `status` when 'active' then TIMESTAMPDIFF(Day,zt_bug.openedDate,NOW()) else TIMESTAMPDIFF(Day,zt_bug.openedDate,zt_bug.resolvedDate) end as 解決耗時,
case `status` when 'closed' then TIMESTAMPDIFF(Day,zt_bug.openedDate,zt_bug.closedDate) ELSE TIMESTAMPDIFF(Day,zt_bug.openedDate,now()) end as 總耗時
FROM
zt_bug ,
zt_module AS m1 ,
zt_module AS m2
WHERE
zt_bug.module = m1.id AND
m1.path LIKE concat('%,',m2.id,',%') AND
m2.grade = 1
and zt_bug.deleted='0'
然后就可以用各種姿勢讓數(shù)據(jù)來說話了
不喜歡看柱子的游两,咱們換餅子
看看誰提交的bug最多
然后把這一系列圖表做成可穿透可聯(lián)動的看板
接下來的按照時間的趨勢圖砾层,圍繞計劃任務(wù)的項目燃盡圖、掙值分析等等贱案,就看我們質(zhì)量和開發(fā)管理部門的伙伴們的了