敏捷宣言第四條:持續學習

我認爲敏捷式管理的最終目的就是建立學習型組織,除了在 Scrum 的活動外,我們還可以經由結對編程,也就是兩個人同時一起處理一件事情,來讓彼此在工作中學習各自的專長。另外企業内外各種技術與學習的分享,比如建立企業中的實踐社區(Community of Practice,簡稱COP),參與產業中的社區活動,都是讓企業保持學習文化的具體方法。

『這個採購案不能進行,因爲去年預算沒有編列。』

聼到類似這種説明因爲去年沒有計劃到,所以今年不能做的説辭,我都會想這個計劃到底是幫助公司,還是限制了公司的成長。

敏捷宣言第四條中說到:回應變化 重於 遵循計劃。

這句話聽起來很簡單,就是如果現實環境改變了,我們應該要更改原本的計劃去適應新的情況,而不是一廂情願的按照原定計劃往下走。但我認爲是最難做的的一條,因爲不管是人還是組織都是由慣性的,人們會習慣跟著過去的計劃往下走,直到走不下去爲止。

在敏捷的各種方法論中,Scrum 是最專注在工作模式上的,所以 Scrum 中的各種活動,都是專注在檢視現狀,然後做出相對應的調整。

在 Scrum 短衝中,每日站會、回顧會議(Review meeting)、與自省會議(Retrospective meeting),都是爲了讓團隊慢下來,停止工作,看看目前的情況是否符合預期,只是檢視和調整的目標對象不同。

在每日站會中,團隊成員檢視的是在短衝中每天的工作情況,比如說工作進度是否有遇到阻礙,團隊成員是否有需要協助的地方,然後團隊成員進行協助或是尋求其他人的協助。

每個短衝結束前回顧會議的重點在於產品本身,藉由邀請利害關係人一同來看看這個短衝所做的成果,是否符合他們的預期,有沒有功能需要修改,或是其他可以讓產品更好的點子。除了這個短衝的成品,過去產品的功能績效也應該被追蹤與討論。產品負責人在會議上搜集這些反饋後,會在產品待辦清單上反應出來,比如新增、修改、或是刪除使用者故事。換句話説,有效的回顧會議應有的影響,就是讓產品代辦清單是活的,代表經常性的變動。如果產品代辦清單上的事項長期沒有改變優先級或是内容,這是一個需要注意的警訊,代表我們可能沒有取得反饋,或反饋沒有被接納並反應出來。

自省會議我認爲是 Scrum 的精華所在,也是讓團隊工作效能提升最重要的會議。在自省會議中團隊檢視的是該短衝中的工作情況,然後決定下個短衝中所需要改善的事情。自省會議最重要,也是最難開好的會議,如果處理的不好會流於形式,大家閑聊一會就散會了。所以在實務上,Scrum Master 需要找各種方法讓團隊願意坦誠面對問題、説出建設性的建議、并且還要保持新鮮感,真的是很有挑戰。自省會議中常見的方法包含時間軸回顧、+ – = (多做、少做、維持)、肯定與感謝、慶祝等等,在 Google 上搜尋 Retrospective games 也可以找到許多自省會議的點子。自省會議中最重要的產出是改善事項,即使只有一件再小的事情都好,只要我們每個短衝都比上一個跟好一點,經過一年團隊就會脫胎換骨了。

在原來你才是絆脚石一書中提到,敏捷宣言第四條:回應變化 重於 遵循計劃,背後的價值觀是持續學習,就如同上文在 Scrum 中的活動,都是觀察現況、做出改變、檢視成效的不斷循環,這就反應到團隊的能力是在持續提升的。

我認爲敏捷式管理的最終目的就是建立學習型組織,除了在 Scrum 的活動外,我們還可以經由結對編程,也就是兩個人同時一起處理一件事情,來讓彼此在工作中學習各自的專長。另外企業内外各種技術與學習的分享,比如建立企業中的實踐社區(Community of Practice,簡稱COP),參與產業中的社區活動,都是讓企業保持學習文化的具體方法。

敏捷宣言第二條:透明化

在『在原來你才是絆脚石』中提到,敏捷宣言中第二條:可用的軟體 重於 詳盡的文件,背後代表的價值觀是透明性。對顧客和利害關係人來說,透明性就是在每個迭代都看到團隊做好的產品,然後給意見。如果我們做的符合顧客需求,那很棒我們可以繼續做其他需求。萬一做的不是顧客要的,那我們最多也是損失一個短衝的時間,而不會像傳統的開發方法,都花了好幾個月的時間開發,顧客一句話就被打掉重練。

敏捷宣言第二條提到:可用的軟體 重於 詳盡的文件,為什麽要特別把文件與軟體做比較呢?

我認爲這一條的背景是在傳統的軟體開發模式中,因爲比較像流水綫形式的分工,比如專案經理跟客戶訪談拿需求,專案經理訪談後要整理需求並撰寫需求文件,然後把需求文件交給軟體開發單位的主管,開發單位的主管再依據需求寫出技術設計文件,最後把技術開發文件交給開發人員進行程式開發,而這邊還沒有提到與其他單位所需要的文件,比如說給品質保證部門的測試案例,或是之後程式上綫前的發佈文件。

如果你能充滿耐心的看完上面的流程,就會發現依照傳統的瀑布式開發流程,在開始寫軟體之前,就會需要寫出一堆文件。而且在之後任何的需求變更或設計變更,都需要把文件更新,萬一沒有更新到,後續接手的人就會像是看天書一般,有看沒有懂。而在軟體業界混久的人,都會知道開發文件的作用不大,這主要有三個原因。

第一個原因是軟體專案時程都很急迫,在壓縮專案時程的同時,第一個被放棄掉的都是寫文件,然後把時間留給寫軟體。反正寫文件是爲了讓之後接手的人看懂,現在我顧自己都來不及了,哪有時間考慮未來的事情呢。好一點的就是寫個大概,差一點的就直接把以前的文件複製貼上,當作文件完成了。

第二個原因是軟體是相對抽象的概念,不像是蓋大樓,把藍圖畫好後看圖的人可以視覺化的看到完成的具體形狀。所以顧客只能大略的描述他想象中的情況,也許可以加上圖示 Mock up 幫助顧客想象使用的流程,但許多問題還是在實際使用的時候才會被發現。所以當專案經理在寫需求文件的時候,也沒辦法照顧到太多細節。

最後一個原因也是最根本的原因,更新軟體太容易了,改一行程式碼,也許就需要更新到好幾份文件。更新軟體的速度遠遠快過更新文件的速度,工程師就會想那我等更新程式碼多幾次後再來更新文件,省的麻煩,最後連更新文件都省了。造成很多的文件不如説是歷史記錄。

因爲以上的這些原因,在敏捷開發中提倡的做法是讓程式碼本身就是文件(Code as documentation),就是讓後續接手的人,可以光從程式碼與測試案例就知道大部分的資訊,並可以開始維護與更新程式碼。當然這是個理想中的狀態,所以宣言中説的是『詳盡的文件』而不是說『文件』。能被及時更新的關鍵文件,還是有需要的。

而爲什麽說『可用的軟體』而不直接說『軟體』呢?在傳統專案管理中,客戶大都是接近結案的時候才會看到產品的狀況,而如上面所說的軟體是個抽象的概念,客戶期待的都會跟實際做出來的差很多,然後團隊就會進入不斷修改需求的無間地獄。

俗話說:醜媳婦總得要見公婆。

所以敏捷開發中認爲與其早晚都要見公婆,不然早一點見,讓公婆給些意見和反饋,好讓我們可以儘快改善讓以後的生活更幸福。

在『在原來你才是絆脚石』中提到,敏捷宣言中第二條:可用的軟體 重於 詳盡的文件,背後代表的價值觀是透明性。對顧客和利害關係人來說,透明性就是在每個迭代都看到團隊做好的產品,然後給意見。如果我們做的符合顧客需求,那很棒我們可以繼續做其他需求。萬一做的不是顧客要的,那我們最多也是損失一個短衝的時間,而不會像傳統的開發方法,都花了好幾個月的時間開發,顧客一句話就被打掉重練。

而透明化這個價值觀的體現,在 Scrum 中則是團隊成員都彼此互相理解工作的情況。在企業中的透明化則包含對流程和制度的透明化,和可以方便地取得完成工作所需要的文件。比方説知道什麽職務可以決定交際預算的使用,或是產品的營運狀況如使用人數等等資訊。

透明化的目的是爲了讓大家工作更順暢,所以過度透明會造成資訊爆炸,比如過度會議,反而使得工作的效益降低,所以透明化拿捏要以工作為核心出發,而不是所有事情或資訊都要透明化。

回首來時路 – 管理、領導、引導、教練、正念、NLP 學習心得

NLP 中説到,我們每個人腦中都有一張『地圖』,而且每個人的都不一樣,地圖包含了我們的假設、知識和感受。

依照地圖,我們會產生想要和欲望,也就是『意圖』。意圖讓我們選擇了想做的『行爲』,在這同時我們也持續和其他人『溝通與交流』。

行爲與交流造成了不同『事物』的發生,事物包含了流程、工具、文化、組織、產品等等,這些事物也造成了某些『結果』,不管是人或團隊的改變,或是產品大賺錢,或是組織文化的轉換。

經由『觀察』結果,然後改寫腦海中的地圖,周而復始,就是一個『學習與改變』的過程。

在過去的學習歷程中,2011 我是先從『管理』開始,管理著重的是行爲與事物的關系,如何設計架構,如何安排工作,這都是讓企業組織有效運作的重要元素。而在實踐管理的過程中,我發現對於知識工作者來說,因爲工作大部分是在腦海中形成,要靠『領導』來校準整個組織的意圖和行爲,而領導,靠的是願景、溝通和同理心。總結來說,就是『管理事、領導人』。

在 2014 開始接觸『敏捷式管理』後,體悟團隊要能有效協作,需要擴大彼此的溝通頻寛。經由 『引導』,就能讓每個人的想法互相交流,摩擦出火花,並收斂形成共同的目標,眾志成城。

今年接觸了『NLP』、『正念』和『教練』,又讓自己對觀察力的提升更進一步。NLP 提供了加强感官學習,還有改寫腦海中地圖的方法。正念幫助我更專注,更能察覺内心的漣漪。而教練,探索的是如何善用腦中的地圖和資源,幫助釐清需求和渴望,讓意圖更清晰,知道自己的方向想要往那邊走。

不論是管理、領導、引導、教練、正念或 NLP,都是非常實務與務實,因爲都很關注於最終的結果是什麽。就是經由觀察結果,我們才能持續改善,找出更有效的方法。而結果,也是由以上種種技能和心法,彼此調合、共振和激盪所產生的。

回首來時路,真的很感激一路上的老師和學習伙伴,讓我有幸能接觸到那麼多有趣的事物和新奇的體驗。

善用引導技巧來克服團隊領導的五大障礙

五年前讀了克服團隊領導的五大障礙,感覺書中的故事生動,說的道理也淺白易懂,但沒有頭緒如何去實踐。

最近因爲要準備團隊溝通相關的課程,因緣巧合之下五年後重新讀了這本書,發現了有效會議在團隊協作上的重要性,而有效的會議靠的是引導的技巧。

成爲有效團隊的五大障礙

第一個障礙:喪失信賴

使用深度匯談 (Dialogue) 中的技巧、善用 4F (Fact 事實、Feeling 感覺、Finding 發現、Future 未來) 的技巧幫助傾聽和同理、説話時運用焦點討論法 ORID讓自己的觀點和感受透明化。 閱讀全文 善用引導技巧來克服團隊領導的五大障礙

十分鐘活用專案管理15 – 專案管理懶人包(敏捷瀑布通用)

專案管理看起來是很專業的學問,但其實人生就是一個專案。

e17285f5595211e2726eaa61b581917f

大寶一家人住在大廈的二十六樓。

有一天,他們三兄弟正要回家時,發現電梯壞了,於是他們只好爬樓梯,剛爬到第二樓時,大寶說:「我們一邊講笑話一邊爬樓梯才不會覺得無聊啊!」

當大寶和二寶講完笑話時,他們已經走到二十四樓了,這時輪到小寶講了,於是小寶說:「我不知道好不好笑,但鑰匙好像在車上……。」


專案管理看起來是很專業的學問,但其實人生就是一個專案(基礎入門篇)

不論是傳統的瀑布式(Waterfall)管理還是最近崛起的敏捷式管理(Agile)如 Scrum 方法,目的都是在讓我們可以做更有效的事情,得到最有價值的成果。

閱讀全文 十分鐘活用專案管理15 – 專案管理懶人包(敏捷瀑布通用)

也許你需要的是多一點瀑布 – 敏捷八不

English version published on T.8YTES 本篇文章為 Agile Me 2018 2019 台灣敏捷高峰會準備講稿,請按此觀看『敏捷八不』投影片

大道之行也,天下為公,選賢與能,講信修睦,故人不獨親其親,不獨子其子,使老有所終,壯有所用,幼有所長,鰥寡孤獨廢疾者皆有所養;男有分,女有歸,貨惡其棄於地也不必藏於己,力惡其不出於身也不必為己,是故謀閉而不興,盜竊亂賊而不作,故外戶而不閉,是謂大同。

– 《禮運大同篇》

在 2014 年我剛剛開始接觸敏捷(Agile)時,當時我的角色是新加坡商鈦坦科技的總經理,我覺得敏捷(包含敏捷開發敏捷專案敏捷管理)在描繪的是一幅理想中的世界。就拿敏捷大家族中熱門的 Scrum方法 舉例來說,在 Scrum 團隊中沒有主管發號司令,工作由大家一起分工合作完成,也沒有主管指派工作,每個人自行選擇工作事項。團隊成員不會偷懶,會盡力把事情做好,最後的工作成果則是由團隊共享。(註:產品待辦事項是由產品負責人 Product Owner 決定,但如何完成工作是由團隊決定)

簡單的說,就是『各盡所能、各取所需』,這也是共產主義中理想社會的呈現。

各盡所能、各取所需

– 馬克思《哥達綱領批判》

但等到真的把頭洗下去,才發現完完全全不是這樣一回事! 閱讀全文 也許你需要的是多一點瀑布 – 敏捷八不

別高談敏捷式管理說說如何落地(2) – 企業敏捷轉型工具箱

企業使用敏捷式管理的目標是讓企業可以快速反應市場的變化。讓產品或服務儘快推出面對市場,並依據取得的反饋來改善企業所提供的產品或服務,使其在市場上更有競爭力。具體的做法包含從大批量生產的思維,改為小批量生產試賣。

『面對敏捷轉型的浪潮,你準備好了嗎?』一文中我們介紹了敏捷轉型(Agile Transformation)的由來和精神,這一切聽起來都無限美好,但具體要如何落實敏捷式管理呢?

上一篇我們談了如何讓團隊敏捷化,現在我們來看看如何讓企業敏捷轉型。

如果你可以預測未來,你並不需要敏捷

但變革不是重點,重點是為什麼要變革。同樣的,在讓企業敏捷化之前,我們要先知道為什麼企業需要敏捷化。 閱讀全文 別高談敏捷式管理說說如何落地(2) – 企業敏捷轉型工具箱

別高談敏捷式管理說說如何落地(1) – 手把手打造敏捷團隊

為了更好的應對變化和增加企業的可持續性,敏捷式管理以團隊為核心來運作,並希望團隊可以:
擁有共同的目標、自行交付端到端的產品或服務、跨職能的團隊成員、穩定的團隊組成、依照 Scrum 或看板的方式來運作

『面對敏捷轉型的浪潮,你準備好了嗎?』一文中我們介紹了敏捷轉型(Agile Transformation)的由來和精神,這一切聽起來都無限美好,但具體要如何落實呢?

我們接下來分別來看看針對團隊和企業的敏捷方法,這篇文章的重點在於如何讓團隊敏捷化。

以團隊為核心的敏捷工作方法

敏捷式管理是以團隊為運作的核心,對主管的要求是成爲僕人式領導,也就是支持團隊的成功與成長,而對團隊的組成有下面幾個要求:

團隊需要有共同目標

團隊成員要有個共同的目標,通常是提供給顧客某一種產品或服務。如果團隊沒有共同的目標,那就只是一群人,不能稱之為團隊。 閱讀全文 別高談敏捷式管理說說如何落地(1) – 手把手打造敏捷團隊

面對敏捷轉型的浪潮,你準備好了嗎?

『你今天敏捷了嗎?』

近期『敏捷』兩字開始在商業企業的書籍雜誌上出現,而到底敏捷是什麼意思呢?導入敏捷對企業組織的好處是什麼?會帶來什麼影響?有什麼缺點呢?

源於軟體開發的敏捷

敏捷(Agile)一詞是在 2001 年由一群軟體輕量型開發的實踐者在美國猶他州的聚會上提出的,以他們十多年的實踐經驗為基礎,他們提出了敏捷開發的四大價值觀:

個人與互動 重於 流程與工具
可用的軟體 重於 詳盡的文件
與客戶合作 重於 合約協商
回應變化 重於 遵循計劃

也就是說,雖然右側項目有其價值,但我們更重視左側項目。

在過去的十多年,敏捷開發的各種方法論,如 Scrum看板方法極限編程(Extreme Programming, XP)在軟體和新創圈引起了一股旋風,也改變了如何軟體開發與製造產品的傳統觀念,大家耳熟能詳的許多公司如 Google、Facebook、Netflix 都已大量運用敏捷的方法在他們的日常營運中。在國外的資訊產業,大家在談論的已經是如何更好的使用敏捷,而不是要不要使用敏捷。 閱讀全文 面對敏捷轉型的浪潮,你準備好了嗎?

原來你才是絆腳石 – 書名花絮

值得一提的是在準備本書出版的時候,有兩件事情琢磨了許久。

一個是書的目錄結構,為了讓華文世界的讀者更容易帶入,從原本音樂的比喻改成武俠的比喻。另一個就是書名了。

語不驚人死不休的書名

我自己也是喜歡酸中文書名跟原文差很多的眾多酸民之一,如之前談弄合制的無主管公司,明明弄合制的設計中還是有主管角色的。所以在設定書名的時候特別傷腦筋怕被酸閱讀全文 原來你才是絆腳石 – 書名花絮