IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

在我的上兩篇文章中,分別介紹瞭5WHY和關聯圖兩種根因分析方法,在本篇文章中我將介紹另外一種特別有名的根因分析方法,就是魚骨圖法。

在介紹5WHY方法時我使用瞭“波音737MAX墜毀分析”作為例子,而在介紹關聯圖方法時我使用瞭“焊接質量不良分析”作為例子。本篇介紹魚骨圖方法我將引入另外兩個實例,一個是“繼承測試時間過長分析”,另外一個是“控件功能不符合要求”。

魚骨圖法概述

魚骨圖也叫因果圖,是因為采用的圖形特別像一幅魚骨而得名:

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

魚骨圖示例

魚骨圖的魚頭為要解決的問題描述,魚骨的主幹上可以有多個引起問題的原因分類,而每一個原因分類上可以有一根或者多跟魚刺,代表引起問題的原因。原因可以是一層原因,就是引起問題發生的直接原因,如果一層原因還有進一步的原因細分,就可以繼續分解出二層原因,用更小的魚刺代替。逐步形成一副比較完整的魚骨。

魚骨圖主要有如下兩個特點:

  • 結構化的分析方法,便於快速識別問題產生原因
  • 可視化,促進溝通和理解

那麼如何用魚骨圖來分析具體問題呢?下邊我將結合兩個案例來具體說明。

魚骨圖方法一:小骨集約法(自下而上)

顧名思義,該方法是從最小的魚刺開始,從小刺逐步集約得出大刺,進而得到魚骨主幹。

本方法一共分為五個步驟,我結合”繼承測試時間長“這個實例來演示每個步驟如何操作。

第一步:準備和畫圖

這一步主要是把展開分析前的準備工作做充分,畫圖需要的紙、筆都準備好,筆要準備幾種顏色的以便標註重點因素等,紙最好找比較大一些的,畫圖要有足夠的空間。

然後可以簡單把魚骨的主幹先畫出來,以便後面方便的添加識別出的因素。

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

魚骨圖準備空骨架圖

準備工作完成後,就可以正式開始問題的分析瞭。

第二步:尋找問題疑因

這一步的操作與關聯圖的第一步操作有點像,就是要把這裡問題的所有可能的原因先找出來,盡量能夠找全面。具體方法上可以采用頭腦風暴法或者專傢識別法,總的來說,我們需要找到與這個問題相關的主要人員和真正的專傢,來進行深入的討論。

我們小組這次要解決的是“繼承測試時間長”這個問題,所以在識別問題疑因時需要找到我們小組內真正的測試專傢和真正執行測試過程的測試人員進行分析,才能得到比較準確和全面的原因集合。

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

第二步:識別的“繼承測試時間長”問題疑因

以上就是我們開會後識別的問題疑因,將疑因全部形成因素卡後就可以進入下一步瞭。

第三步:繪制魚骨圖

在繪制魚骨圖之前,首先要對已識別的問題疑因做一下親和,也就是將疑因分成不同的類別,比如經過討論,我們把問題分成瞭如下四類:

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

第三步:疑因親和

我們親和出的四類原因人力、環境、管理、用例,就是魚骨圖的四個主幹大刺,每一類下的具體因素就是大刺下邊的小刺,有瞭親和的結果就可以畫成魚骨圖瞭。

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

第三步:根據疑因親和作出的初步魚骨圖

其實做好疑因親和後畫出魚骨圖是比較簡單的,不過這個時候,我們還要組織小組成員審視一下這個魚骨圖,看找到的疑因是不是足夠全面,還有沒有其它疑因被遺漏。

按照我的經驗,一件事情往往形成結構化的圖形以後,讓圖形幫助人去思考,人的思維才能夠逐步趨向於完整,此時如果沿著四根魚大骨挨個審視,你會發現你的魚骨圖還可以做進一步的補充。

比如測試人力這個分支,除瞭人力不足以外,我們發現小組內的新員工比較多,在測試時新員工的測試技能是不過關的。而且當我們去找開發吐槽說他們支持不力的時候,開發人員又問我們到底哪些方面支持的不夠呢?顯然這個分支可以再補充幾個二級疑因。

同理,其它幾個大骨分支也可以做類似的審視,直到我們認為已經將所有疑因補充的基本完整為止。於是我們得到瞭更加完善的魚骨圖,其中藍色字體就是審視後補充的因素:

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

第三步:補充疑因後的魚骨圖

得到瞭這個令我們滿意的魚骨圖以後,就可以進入第四步瞭。

第四步:確定主因

經過之前幾個步驟的分析我們看到,測試時間過長問題的原因分四個大類,每個大類裡面又有一些一層原因和二層原因,這麼多的原因裡面,到底哪些是引起問題的主要原因呢?找出的主要原因決定瞭我們後續的改進方向,我們需要用最低的代價取得最好的效果。

標記主因的方法與另一篇文章的關聯圖法相對應的步驟類似,主因一般要從葉子原因中找,就是那些隻有輸出箭頭而沒有輸入箭頭的因素。

經過我們集體討論以後,找到瞭我們問題的主因,並在魚骨圖上做好瞭標記:

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

第四步:確定主因後的魚骨圖

第五步:補充必要信息

作為一次正式的根因識別活動,我們需要把參加人和具體時間等信息補充完整,補充哪些信息可以根據你們的具體要求進行定制,不是一成不變的。

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

第五步:繼承測試時間長魚骨圖

到此為止,我們的小骨集約法四個步驟就全部完成瞭,我們得到瞭完整的根因魚骨圖,也找到瞭問題主因,後續改進問題的具體措施針對找到的主因去擬定即可。

魚骨圖方法二:大骨展開法(自上而下)

本節介紹的大骨展開法跟小骨集約法正好相反,小骨集約法是先識別零散的疑因,然後通過疑因親和找到原因分類,就是先找魚的小刺再親和出魚的大刺,而大骨展開法是先找出魚骨的主幹大刺,然後再針對不同的大刺分支找出對應的小刺,一層一層展開到疑因葉子節點。

本節我基於一個具體的問題“控件功能不符合要求”來演示一下大骨展開法具體如何操作。其實做過軟件開發的同學都知道,當我們開發完成一個產品交付給客戶的時候,經常遇到交付的功能跟客戶的需要有較大差異的情況,本實例分析的就是這類問題。

第一步:準備工作和確定問題

正式開始制作魚骨圖前照例還是要把準備工作做好,畫圖工具可以用紙和筆,如果你有投影儀的話,也可以使用工具軟件來畫,很多工具裡面是支持魚骨圖繪制的,比如最常見的XMind,如果實在找不到趁手的工具,直接用PPT也是可以的。

然後請把涉及“控件功能不符合要求”問題的骨幹人員都召集到會議地點,就可以開始我們的魚骨圖一層層展開瞭。

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

召集個開放的討論會吧

第二步:確定原因大類

首先我們要確定的是造成我們開發的控件功能不符合要求的原因主要有幾類。分類的方式有很多,我們自行選取適合的分類方法即可。比如經過討論,我們認為按照開發者角色進行分類比較方便,在控件開發過程中,主要的角色為設計、開發、測試,我們就以這三個角色作為三個大類。

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

第二步:確定原因大類

第三步:逐層識別並展開所有疑因

這一步就要分別針對每一個大類識別疑因,在這個例子中,就是要分別針對設計、開發、測試三根主魚骨做進一步的分析,也就是從上到下做展開,第一層展開後的魚骨圖如下:

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

第三步:展開一層

復雜一點的問題僅僅展開一層是不夠的,本實例對上圖繼續往下深入挖掘疑因,繼續展開後得到下面的魚骨圖:

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

第三步:展開三層的魚骨圖

對於一般的問題,展開到第二層就夠瞭,如果問題特別復雜,根據需要還可以繼續往下挖掘,直到達到能夠獲得有效的解決方案為止,當然,挖掘的過深有可能導致魚骨圖太過龐大難以閱讀。

第四步:確定主因

這一步跟小骨集約法的第四步一樣,都是識別並標註主要原因,以便後續制定解決措施:

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

第四步:確定主因後的魚骨圖

第五步:補充信息

這一步將相關信息補充完整以後,整個魚骨圖就做完瞭,後續針對這個魚骨圖識別的主因制定解決方案,自然是事半功倍:

IT工程方法應用(3):魚骨圖法分析測試時間長和控件不符合要求

控件功能不符合問題完整魚骨圖

本文結合兩個實例著重介紹瞭用魚骨圖分析根因的兩個方法:小骨集約法和大骨展開法,如果感覺對您有所幫助,請點贊並關註我,感謝!

Published in News by Awesome.

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *