Ruddy Lee 分享空間

Emergent Design 演化設計

Archive for 八月 2014

用來提升個人效能的「個人看板系統」– Personal Kanban

with one comment

images9CTXEYN5

用來提升工作效能的個人看板

(我在 Techdays2014 課程的資料: http://1drv.ms/1xyToMp )

用來提升個人效能的「個人看板系統」Personal Kanban ,創始人 Jim Benson

  • 一個人需要執行敏捷開發 Scrum ?

這是一個經常被問到的問題,

請問: 工程師一個人要如何來執行敏捷開發Scrum呢? 有必要嗎?

過去我的答覆都是這樣的: 由於Scrum對角色的要求,因此一個人沒有必要執行Scrum,只要符合敏捷開發的精神就可以了。但是在經年累月的scrum課程中這個問題始終沒有間斷過,確實有很多工程師屬於長時間、一個人單打獨鬥的環境下進行開發作業,但又渴望能有提升效能的方法,那要怎麼辦呢? 現在增加一個答案可以回答了,請嘗試「個人看板系統Personal Kanban

.

「 個人看板起始於先弄清楚自己現在的狀態,然後逐漸的邁向對未來的願景。」

.

(上面的問題在我的書裡頭說得較詳細。書裏頭用「類專案」來談一個人如何敏捷的做專案。「類文件」:一個人開發需要些甚麼文件。書名:" 精實開發與看板方法)

.

用來提升個人效能的個人看板系統

個人看板是用來增進個人理解自己的工作和進一步透過分析來改善流程使得更有效工作的方法。它透過視覺化目前手頭上的工作,然後運用WIP(work in process: 半成品,對軟體工作者而言,指的是還在coding中的程式 )的管制來調整個人對工作進行的流程管理,進而能夠經由有效的管理工作流程來提升工作效能。真是很有效率,也很有趣! 特別是採用微軟系列開發工具的工程師,若能夠透過 Visual Studio 所提供的看板機制,實際管理一下自己的工作與生活瑣事,讓撰寫程式的工具與個人的生活事物相結合也是一種提升個人工作效能的好方法。(看板方法之父 David J Anderson 實際上是出身自微軟, Kanban Method 也是首先運用於微軟的專案上。)當然如果你已經採用了個人看板系統;透過自身的實行,對於整個開發團隊一起實施Kanban Method時,能夠事半功倍是可以預見的。 要深入解釋這種運作,首先要有一種概念:「多工造成效能不佳」談起。(請試著在網路上搜尋: Multitasking is evil 後面在加上 “哈佛” 就有參考文獻了,或是參考這段影片 https://www.youtube.com/watch?v=US9Sff8BFx0 )就很容易了解是怎麼回事了。

多工反而降低了工作效能 — Multitasking is evil

人們總是不自覺的同時處理多件事情。對電腦而言,它能很有效的做到多工(multitask)的動作,而且相當有效率。但人腦卻很難這麼做,我們太容易分心了,對於外界所傳達的訊息我們幾乎來者不拒,是這些干擾的訊息造成我們很容易就開啟了另一個工作而對原來的工作降低了該有的專注力,這一點;對程式設計言;這當然是 BUG的好來源,對測試而言;萬惡則莫過於邏輯思維受到中斷所埋下的缺陷(這是種比較難被測試出來的疏失)。所以針對專注力不夠的朋友,我想推薦Personal Kanban,透過運用它來管理你的工作,運用工具來有效管理手頭上的工作讓生活更好過些。

實行 Personal Kanban 三步驟

  1. 視覺化: 把你手頭的工作用流程畫出來。(Gerry Kirk 在youtube 上的幾篇個人看板運用說明,值得一看!  畫出你的第一個看板)。
  2. 限制WIP(Work In Progress進行中的工作)。(為 Dave Lowe 所製作的一段默片,他運用了Drive through窗口點餐作範例,再清楚不過的說明了WIP的功用,以及我們該注意甚麼。) 試著設定WIP值,請參考這裡WIP 0
  3. 管理工作流(透過反省、分析最佳化你的工作,這是最有價值的一段)。 依稀記得在第一次閱讀 David J. Anderson 所寫的「看板方法」時,就發現給 Comment的許多人中,一致認為看板不只是如此而已,它潛在的可運用空間很大。我想指的就是這裡。(可以參考Gerry Kirk 在youtube 上的其他說明)

(Personal Kanban 的創始人Jim Benson 在書上只列了前二個步驟,並且認為它可以適用在家庭、學校… 任何有人的地方,它能讓人們能更有效的工作(我完全讚成!)。但在這裡我還是加了第三條執行原則,也就是善加管理你的流程。所以這裡就多列了原始Kanban的第三項步驟! )

※ 先介紹 David J. Anderson 所寫的「看板方法」 一書: 如果你想採用 Kanban Method 的話,這是必讀的經典參考書籍。但請務必去看更新資料 http://www.djaa.com/ 查看他最新的定義,這是一個用功的傢伙,隨著時事的改變他也不斷在精進自己所創的理論。(Kanban Method 的開發原則,目前已經稱為6個 practices了)

※ Personal Kanban「個人看板」 Jim Benson 所著。很有參考價值。

kanban

簡體中文版,看板方法:科技企业渐进变革成功之道

personal kanban

原文版

已經沉浸在 Kanban的信息分配多時了,真是有太多麟麟角角,很多只能意會難以言傳的東西,希望找到更好的說詞。想想那些教授看板理論的老師真是難為了。以下是看板方法的六個核心實務(6 practices),前三個常常被稱為3大準則 3 Principles。

6 core practices for kanban

個人看板讓你掌握時間《做自己

個人看板不只是拿來提升個人工作效能, 它更能拿來管理自己生活與工作流程,讓你知道如何掌握時間《做自己》。如何做呢? 靠分析瓶頸來達成改進的需求。

分析三步驟:
(1) 注意自己開始和完成工作的速率。
(2) 每個工作是否按步就班在自己能夠容忍範圍之內完成。
(3) 超過 WIP 限制的情況嚴重嗎? 應該採用寬鬆的方法(加大WIP值),還是緊縮的方法,讓現象能夠改善呢?

(Queue 跟 Buffer 的運用,有一點複雜找機會再來詳細說明)

當然;日子要過得快樂才對,但為了在龐大的工作壓力下還能笑得出來,來試試 Personal Kanban吧!

kanban tools 0

一開始;我覺得越簡單越好,就直接用 OneNote 自己畫看板(如圖中最左邊的),後來因為經常坐在床上更新工作事項(當然用iPad了,也就換成 trello了),最近已經換成 KanbanFlow (非常好用!),因為它多了番茄鐘,可以提醒我專注在工作上的時間。建議大家不遑多試試看,用習慣了就是好的。

為何不直接使用 Visual Studio呢?

答案是當然可以! 不過我會建議你用角色的方式來運用 Visual Studio,因為它比較適合團隊運作的方式,你若能將在家裡的角色、在公司的角色或區分成更多角色,分開來運用,則更能跳脫那種公私不分的枷鎖(這是良心的建議)。

附上一張個人使用看板方法的參考圖示。 (想試試看嗎? 參考: 運用個人看板做時間管理)

.

personal kanban

.

結論

你想增進自己的工作效能嗎?你想讓自己活得更愉快嗎?首先;你要先弄清楚此時此刻你要的是什麼?現在什麼事對你是最重要的,你最在乎的是什麼?然後把每天所作的工作,花費多少時間去做,記錄下來。再從記錄上去分析你是否把時間都用在自己最想要的工作上了,如果不是的話,就設法增加它的比重、調高它的優先順序,然後再執行ㄧ陣子看看,持續改善它,讓自己為自己所想要的東西而活。

.

廣告

Written by ruddyllee

2014 年 08 月 25 日 at 13:30:21

輪迴是累積經驗的最佳方式,但閱讀可以將別人的經驗化作自己的知識

leave a comment »

demo_3(這部電影在大陸的名稱: 明日邊界 = 明日邊緣 = 生死輪迴)

【明日邊界】砍掉重練幕後獨家 (HD)

這是我上 SCRUM 課程談到「經驗主義」的時候總是拿電影主題作繪聲繪影的說明,是誇張了些;電影當然跟現實大大不同,但為了加深學員們的映象,引用他的效果可能遠遠勝過死板的教條不知要強過多少。(歷年來都是在台灣先講過才會在到大陸講的,但今年比較特別,剛剛從大陸巡迴演講回來,所以在大陸已經講過了,這一段通常放在下午第一堂課講,可以趕走瞌睡蟲!),同時鼓吹閱讀,因為他實在好好。

 

電影 ”明日邊界”  Edge of tomorrow 演的是根據日本小說家 櫻坂洋 的輕小說《All You Need Is Kill》所改編。描述的是男主角不斷地在戰場的一天裡死去活來的輪迴故事。電影的表現當然跟原著的內容相差甚多,但整部片子相當值得程式設計人員觀賞。這類穿越時空的片子雖然很多,但在闡述輪迴的手法上,導演的表現應該算是夠乾淨俐落的。男主角雖然只是在一天內不斷的進行死去活來的輪迴,但拿它來描述敏捷開發法中的迭代 iteration 過程,還真能發人深省,以下是我的演講稿,因為怕沒機會show off,就寫在這裡跟大家分享。

 

簡單的規則,可以創造絕佳的開發環境 — 做為團隊自我管理的依據,便是需要設定這樣簡單的規則。

沒有太多繁文縟節,簡單的規範就能讓整個電影開始鋪陳出迷人劇情,工作劇組的協同合作就宛如敏捷開發團隊在進行專案開發一般的精采(但酬勞和成本都相差太遠了),只有適當的環境,才能觸發團隊做到超出他們能力所能做到的事,這不是金錢的重賞所能達到的,而是團隊協作完美的產出物。

規則一死亡之後會回到出擊前一天的早上 — 計畫: Planning Meeting,計畫可以引領我們走向成功之路

demo_1

每天的開始都要有一個明確的目標,既便只是一天的輪迴都需要規劃。"經驗" 對效能的提升有著顯著的幫助,因為它告訴我們要懂得放棄一些不重要的或是末枝細節的事(例如: 男主角每次空降下來總想救那個一起跳下來的胖夥伴,但後來他放棄了,因為那…)。

規則二無論在何地、以何種方式死去,都適用規則一   — 每日站立會議 daily Standup meeting, 懂得如何為團隊做出犧牲與奉獻。

每天都以昨天為團隊達成了多少貢獻,今天準備做些什麼為目標,充實的去經營每一個輪迴。

demo_2

規則三無法逃離這種循環  — 認清是機會或命運?

只有認清事實,然後勇於接受才是敏捷,選擇逃避並無法真正的解決問題。 創始XP的 Kent Back 常把有沒有勇氣來突破現狀用來鼓勵人們思維敏捷勇於去挑戰傳統,並接受現實的挑戰。

demo_3

規則四記憶將被繼承  — 對於經驗而言;如果沒有好好檢討,把好的經驗留下來,不好的部分尋求改善的話,經驗也將顯得浪費。

對程式設計人員而言,創造 BUG 然後再去解決 BUG 應該是最大的浪費吧! 敏捷對於測試而言,應該是在開發的過程將品質不斷植入程式中才是。這也說明了測試的結果可以讓我們看清楚程式執行的真正路徑。也唯有透過測試才能真正的信賴他。

demo_4

規則五 發生的事,不一定與之前相同  — 創造由此而生

這便是我們經常在說的: 當我們看著未來時,未來正一步一步的在改變中,這便是創造未來。也是軟體工作者每日努力思考如何改善人類生活的意義所在。經驗若不能轉化為創造力,也是一種浪費。

kill

 

你或許也願意像男主角阿湯哥一樣,為了理想用辛苦的死去活來的方式換得無比的經驗,但說實在的讓我悄悄的告訴你: “閱讀的能力其實更勝於此“。

輪迴是累積經驗的最佳方式,但閱讀可以將別人的經驗化作自己的知識。

 

每每有人問我為何這麼喜歡送書時 … ,回答是:

當康斯坦丁把闖入人世的惡魔demon打回地獄時,應該算是給自己積公德吧– 行善。 哈! 算是我送書的初衷吧。

 

Written by ruddyllee

2014 年 08 月 08 日 at 12:04:46