<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>SOP on Tom 除錯中</title><link>https://tomleesm.github.io/tags/sop/</link><description>Recent content in SOP on Tom 除錯中</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><lastBuildDate>Sun, 17 Dec 2023 17:50:21 +0800</lastBuildDate><atom:link href="https://tomleesm.github.io/tags/sop/index.xml" rel="self" type="application/rss+xml"/><item><title>遵守檢查表，好處多多</title><link>https://tomleesm.github.io/posts/2023/12/sop-is-good/</link><pubDate>Sun, 17 Dec 2023 17:50:21 +0800</pubDate><guid>https://tomleesm.github.io/posts/2023/12/sop-is-good/</guid><description>&lt;p&gt;盡可能建立與遵守檢查表，因為有許多好處：&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;檢查表把事情分得很細，所以有&lt;a href="https://tomleesm.github.io/posts/2025/01/vim-small-todo/"&gt;用 Vim 把事情分得很細&lt;/a&gt;提到的好處&lt;/li&gt;
&lt;li&gt;運用原子習慣的「兩分鐘法則」，檢查表的開頭只要兩分鐘，然後你就會繼續做下去&lt;/li&gt;
&lt;li&gt;照著檢查表完美的完成事情，感覺很好&lt;/li&gt;
&lt;li&gt;做對一次，以後都能做對。不論再累，甚至感冒都能做對&lt;/li&gt;
&lt;li&gt;節省腦力，有餘力兼顧多個工作（畫畫、運動、寫程式、做料理、讀小說）&lt;/li&gt;
&lt;li&gt;針對每一條檢查表檢討並改進，不斷進步&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;在原子習慣這本書提到，英國自行車國家代表隊累積幾百個微小的改善，造就非凡成就。這麼多改善都會記得做嗎？&lt;/p&gt;
&lt;p&gt;英國自行車代表隊的改善包含：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;重新設計單車坐墊，使其更為舒適：改變坐墊一次就行了，不需要記得&lt;/li&gt;
&lt;li&gt;在輪胎上塗抹酒精，增加抓地力：所以這是在什麼時候做呢？比賽開始前，因為酒精會揮發&lt;/li&gt;
&lt;li&gt;要求選手穿上電熱式緊身褲，讓肌肉在騎車時維持理想溫度：訓練和比賽前都要記得穿&lt;/li&gt;
&lt;li&gt;使用生物回饋感應器監控每個選手對不同訓練的反應：訓練時要記得開啟感應器&lt;/li&gt;
&lt;li&gt;在風洞測試不同的布料，讓室外比賽的選手換穿室內比賽服：訓練和比賽前要記得穿的是「室內」比賽服&lt;/li&gt;
&lt;li&gt;測試不同的按摩油，看哪種能讓肌肉最快恢復：出國比賽打包時要記得帶按摩油，訓練和比賽後要記得擦&lt;/li&gt;
&lt;li&gt;雇用一位外科醫生來教導選手如何洗手，以減少感冒的機率：何時要洗手呢？&lt;/li&gt;
&lt;li&gt;為每個選手找出能帶來最佳睡眠品質的枕頭與床墊：出國比賽打包時要記得帶&lt;/li&gt;
&lt;li&gt;把後勤卡車的內壁漆成純白，以便察覺到往往會被看漏的細小塵埃，避免其影響到精確調校過的比賽用車：漆一次就行了，但是比賽用車搬進後勤卡車前都要記得檢查內壁有沒有塵埃&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;光是上述的改善，就只有第一個是做一次就就行了，其他都要記得做，所以建立和遵守檢查表，才會每天或每次都記得做。&lt;/p&gt;
&lt;p&gt;以下是柯文哲接受&lt;a href="https://www.managertoday.com.tw/articles/view/38785"&gt;經理人雜誌訪問時的文章&lt;/a&gt;：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;這17年來，我們嚴格遵守標準作業程序（SOP），有需要修正就及時修正，出錯就改SOP，已經到達全面品質管理（TQM，Total Quality Management）。&lt;/p&gt;
&lt;p&gt;Ｑ：你如何改善流程？&lt;/p&gt;
&lt;p&gt;Ａ：我在美國留學時，發現美國人成功很大的原因是「protocol」（正式的程序或規則），說成中文就是凡事按表操課。protocol其實就是檢查表（checklist），我花了17年建立起這些檢查表，分為醫師用和護理人員用。比方說，我把醫師的工作拆解為一張檢查表，交由專科護理師來做檢查表上需要確認的工作，像是逐一確認葉克膜每日檢查清單（ECMO Check List）上的工作，正常就打○，不正常就打Ｘ。&lt;/p&gt;
&lt;p&gt;如果發現不正常的狀況，立刻報告技術員，再由技術員報告主治醫師。檢查表可以把高階複雜的工作拆解之後，讓人按表操課，然後層層往上呈報。我不重視學歷，切實執行檢查表反而比較重要。即使是剛進來的小護士，不用緊張、也不必焦慮，只要靠著檢查表，就可以把工作做好。&lt;/p&gt;
&lt;p&gt;把複雜的工作逐一拆解為檢查表，也可以避免「高階低就」的情形發生。台灣的醫院裡，經常可以看到主治醫師做住院醫師的工作，住院醫師做實習醫師的工作，實習醫師做工友的工作，這樣只會造成「無效醫療」，平白耗損珍貴的健保資源。&lt;/p&gt;
&lt;p&gt;比較理想的做法應該是讓醫師成為醫療團隊的指揮者，以充分授權取代事必躬親，像是慢性病長期追蹤或簡單的換藥工作，都可以交給專科護理師來處理，或者專心照顧住院病人，然而，主治醫師通常時間花在門診。&lt;/p&gt;
&lt;p&gt;以前我自己照顧使用葉克膜的病患時，發現長期下來要兼顧住院和門診病人，主治醫師會撐不下去，實在太累了，所以就把複雜的工作逐一拆解成為檢查表。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;以下出自書籍&lt;a href="https://www.cheers.com.tw/article/article.action?id=5072283&amp;amp;page=4"&gt;柯P模式：柯文哲的SOP跟你想的不一樣&lt;/a&gt;：&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;ＳＯＰ的基本精神是八二法則，先解決八成的普通問題之後，再去處理後續的兩成少見問題，不要幻想ＳＯＰ一次建立後就可以處理所有事情，或是所有情況都適用。通常就是因為這樣，ＳＯＰ才會寫不起來，所以，心理上必須上先擺脫這個錯誤思維。&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;建立檢查表後，可以處理 80% 的普通程式設計工作，你就可以輕鬆很多。例如記下建立一個 CRUD 網站的所有步驟，寫成部落格文章，之後只要照著作就能在幾個小時內產生基本的網站程式碼(80% 的工作)，集中精力在需要特別處理的部分(20% 的工作)，例如額外的功能。&lt;/p&gt;</description></item><item><title>寫程式時需要檢查表</title><link>https://tomleesm.github.io/posts/2023/12/programming-need-sop/</link><pubDate>Thu, 14 Dec 2023 17:50:21 +0800</pubDate><guid>https://tomleesm.github.io/posts/2023/12/programming-need-sop/</guid><description>&lt;ul&gt;
&lt;li&gt;想要很快把事情做完？而且不出錯？使用檢查表&lt;/li&gt;
&lt;li&gt;寫程式很複雜，想要把它弄的簡單，容易駕馭？使用檢查表&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;所謂的檢查表，其實很簡單，就只是一邊做、一邊記下做了什麼。例如食譜，一邊做菜、一邊記下剛剛是清洗、切菜還是下鍋油炸。日劇 Grand Maison Tokyo，開發新菜時，需要在牆上記下步驟、加了什麼食材、加了多少，失敗了就劃掉，直到成功為止。醫生動手術必須遵循一定的步驟，例如割盲腸並不是隨便拿刀把肚子切開，找到盲腸，然後切除，詳情可參考漫畫仁醫單行本第七卷陣之章第3話西鄉。常規手術代表各種典型的疾病與對應的手術步驟，所以寫程式應該也有典型的需求與對應的撰寫步驟。&lt;/p&gt;
&lt;p&gt;安裝開發環境很無聊，而且常常卡住不知道怎麼辦，我們程式設計師笑說那是測試人品好壞的時刻，於是一邊安裝、一邊記錄安裝的指令，新增修改的檔案名稱與內容。之後進一步用程式自動完成安裝步驟，也就是 &lt;a href="https://zh.wikipedia.org/zh-tw/Ansible_%28%E8%BB%9F%E9%AB%94%29"&gt;Ansible&lt;/a&gt;, &lt;a href="https://en.wikipedia.org/wiki/Terraform_%28software%29"&gt;Terraform&lt;/a&gt;, &lt;a href="https://zh.wikipedia.org/wiki/Puppet"&gt;Puppet&lt;/a&gt;, &lt;a href="https://zh.wikipedia.org/wiki/Chef"&gt;Chef&lt;/a&gt;, 和 &lt;a href="https://en.wikipedia.org/wiki/Salt_%28software%29"&gt;Salt&lt;/a&gt; 這些工具。一開始安裝要用到二、三天，記下步驟後，下次複製貼上執行指令只要一小時，最後用 Ansible 之類的程式自動執行只要五分鐘，沒有比這更快了。&lt;/p&gt;
&lt;p&gt;所以我就在想，安裝開發環境很複雜，為了控制複雜，想要把它弄的簡單，容易駕馭，減少出錯，於是記下過程，為什麼寫程式不這樣呢？可以寫文章記錄整個安裝過程，之後自己有需要時直接拿來用，寫網站也一樣吧？記下自己建立一個 CRUD 網站的所有步驟，寫成部落格文章，之後只要照著做就能在幾個小時內產生基本的網站程式碼(80% 的工作)，集中精力在需要特別處理的部分(20% 的工作)，例如額外的功能。&lt;/p&gt;
&lt;p&gt;而且檢查表可以不斷累加，更新成更好的設計。例如有單元測試和沒有之間會有多大變化？如果有記錄步驟，就能清楚比較，並用在新的程式上。&lt;/p&gt;</description></item></channel></rss>