事後剖析中的心理安全問題
情緒問題往往會在發生事故時凸顯出來。在做免責事後剖析(blameless post-mortems)中,心理安全對於從事故中汲取經驗教訓至關重要。事後剖析會必須完全適度,最好由局外人主持,並讓每位與會者輪流發言,避免妄加批評。在對事故的實際發生情況達成明確的共識之前,不要著手去分析事故。
在ofollow,noindex">Atlassian歐洲2018峰會 上,Adaptavist公司的DevOps主管Matt Saunders 做演講介紹了免責事後剖析中的心理安全問題。InfoQ以問答、彙總報道和文章覆蓋大會全程。
InfoQ採訪了Saunder,問答內容涉及:應於何時開展免責事後剖析、免責事後剖析與敏捷回顧(retrospective)的差異之處、如何處理好情緒問題、如何讓事後剖析會的每位與會者具有安全感,以及如何有效地開展免責事後剖析。
InfoQ:您建議應於何時開展免責事後剖析?
Matt Saunders:最好的回答是:在每次發生導致客戶服務中斷事故時,都應該做事後剖析。此外,還應該百分之一百地確保事故的完全免責。對執行事故的分析很容易演變為揪出追魁禍首,但問題的根源卻很少在此。當有人犯了錯誤時,如果我們不去分析為什麼會將該人置於可能出錯的位置,那麼我們就會犯短視的錯誤。因此,每次發生事故時,甚至是出現意外情況時,都應該做免責事後剖析。
InfoQ: 敏捷回顧和免責事後剖析這兩者間存在著哪些差異和類似之處?
Saunders:兩者使用的一些技術非常相似。敏捷回顧的一個關鍵原則是從團隊的角度分析已發生的事情,事後剖析也是如此。然而,事後剖析通常是在困難的環境下開展的。例如,企業因服務中斷而發生了客戶流失,為此大家誠惶誠恐,並且開始查詢原因。當然,有時在敏捷回顧中也會存在類似的壓力,但是事後剖析常常是在充斥壓力和步步緊逼方式下開展的。
InfoQ:您在演講中深入探討了情緒對事故處理以及對工程人員的影響。您能否再展開介紹一下。
Saunders:工程師總是希望能正確做事。這不僅僅關乎職業自豪感,而且由於人們在一些情況下很難保持冷靜,尤其是發生事故時,因此情緒也往往會發作。每個人都希望能儘快解決服務中斷問題,因而表現出情緒激動,大喊大叫。人們會帶著情緒去重新審視那些在很久以前做出的決定,通常這樣毫無裨益。理查德·庫克(Richard Cook)博士有一篇廣為引用的論文,“複雜系統是如何發生失敗的”(How Complex Systems Fail)。該論文解釋了計算機系統為何變得非常複雜。後見之明通常會令事後剖析產生偏差,導致人們感到愚蠢、心懷戒備,甚至會導致他們的職位受到威脅。在開展事後剖析時,應將這些問題銘記於心。
InfoQ: 在免責事後剖析中,存在哪些可能出錯的關鍵因素?
Saunders:一個常見的問題是預判輸出結果。當導致問題的現實情況非常複雜時,我們在前面提到的那些後見之明會導致事後剖析給出存在明顯問題的結論。另一類常見問題是情緒反覆無常和人們自行其是,此外還應該考慮到高層員工的影響問題。或許一位僱員在經理在位的情況下,他(她)會依照經理的建議做事,而經理的建議最終被證明是錯誤的。這會令員工處於兩難境地,他(她)會感覺到無法自由地發表意見。
此外,強加於團隊的組織約束可能也會導致錯誤。部署或許會出錯,因為部署是由一位中心團隊的員工執行的,而中心團隊不瞭解該系統與其它系統間存在的一些關鍵差異。雖然該可導致事故的因素並非團隊可控制的,但仍然需要加以考慮。
InfoQ: 如何能讓每位參與者在整個過程中具有安全感?
Saunders:關鍵在於我們是對事故而非犯錯誤者做事後剖析(如果的確是由單一問題引發的事故)。應該從此著手並以此為中心開展事後剖析。關鍵一點是,應從一開始就澄清這是團隊或組織的一次學習過程,而不是開批鬥大會。
責備他人並不是一種好的做法,對此人們目前已形成共識,因為這可能會導致人們日後在做事時畏手畏腳。不敢去運維繫統,系統執行的順暢性普遍放緩。反之,正確的做法應該是以如何改進團隊流程的學習過程作為事後剖解的基礎,使得系統幫助運維人員避免再次犯錯誤。
如果我們能夠將工作場景設定為這種方式,並且讓高階利益相關者確信輸出結果就是如此,那麼人們將會具有安全感,願意為組織做出貢獻,並幫助組織設計更適用於未來的系統。
InfoQ: 要有效地開展免責事後剖析,您有哪些建議?
Saunders:應確保會議的正確組織。最好是由一位局外人主持,並讓每位與會者輪流發言,避免妄加批評。並且在大家對事故的實際發生情況達成明確共識之前,不要著手去分析事故。會議應分為三個階段,即對時間表達成共識、對問題出現位置達成共識,以及更關鍵的是,對需要採取哪些措施來防止問題的再次發生達成共識。這是一種開展免責事後剖析的好做法。