SlideShare una empresa de Scribd logo
1 de 48
0~200的故事
我與我們的Scrum
About me
Kuma Syu
Java TA/Lecturer
Developer (Scrum Master) @ Simbo Software
---
Lazy, Bad tempered
Hate to do coding
Hate ugly codes...
那些披荊斬棘、那些篳路藍縷
孤軍奮戰
難兄難弟
瞎子摸象
像不像三分樣
重金禮聘
當你發現,這才是軟體業...
Coding → build → copy → run → trace code → debug → coding...
說好的敏捷開發呢?
說好的軟體工程呢?
說好的DevOps呢?
草創期,相忍為...
那就從自己開始吧 -- 從第一個Test Case開始
捨Unit Test
擇Functional Test
0 → 1
孤軍奮戰期
開始懷疑自己...
這樣真的對嗎
這麼做值得嗎
軟體工程是不是累贅
我是不是拖累了大家
...
難兄難弟期
你寫我測、我寫你測
技術討論、互補不足
規劃架構、分進合擊
1 → 30
無頭蒼蠅?
Scrum, lets’ try!
瞎子摸象期
Problem 1: Short Period
Tasks從來做不完
Problem 2: Team Members
QA in (backend) scrum team?
有人睡著了!
30 → 100
當Scrum的會議
全部變成例行公事
那就讓專業的來吧!
原來如此!
重大變革
兩階段
確實估算
2週Sprint
公開Code Review
回顧會議
確實更新剩餘時間
確實撰寫User Story
(包含急件)
團隊重組
像不像三分樣
飽暖...?
手動配置:
● 編譯binary檔
● 登入伺服器
● 下載新版設定檔
● 上傳binary檔
● 重啟
問題:
● 如何保證版本?
● 設定檔修改紀錄?
● 背指令?
● 下錯指令?
● 改錯設定?
● 處處都要小心 → 好懶喔...
重金禮聘
受版控的bash指令,取代所有手動操作
bash自動記錄版本
● 人生重來了
● 動作有紀錄
● 不怕手滑
問題
● 同一個環境一次只能放一個版本
● 多專案並行時,要輪流使用
● 輪流時,佈版還是要我佈
● 好懶喔...
重金禮聘
一台機器啟動多個Docker Image
● 多專案同時測試
● 可以隨時新增、刪除測試環境
● 當然,dockerfile要入版控
問題
● 還是得依序下數個bash
● 不同環境要登入不同機器
● 好懶喔...
重金禮聘
用Ansible控制遠端機器執行腳本
● 免登入多台機器
● 『一鍵佈署』
● 佈署後有簡短報告
● 當然,ansible腳本要入版控
問題
● 還是要登入一台機器
● 還是要下一行指令
● 還要通知QA版本
● 好懶喔...
重金禮聘
Develop有任何Push,就觸發:
● Maven Test + Package
● Ansible佈署
● 通知結果 + 版號至Slack群組
沒有最懶,只有更懶
一定可以,我再想想...
DevOps = 懶人的天堂
100 → 200
DevOps很潮,但...
DevOps從敏捷開始
● Agile: 頻繁、持續、快速交付
○ 注重開發,較忽略運維
● DevOps包含Agile
○ 沒有穩定持續集成交付,沒有好的DevOps
○ 或是有沒有也無所謂
敏捷很潮,但...
敏捷從自動測試開始
成功的敏捷流程:
● 固定的產出頻率
● 測試案例會累加
● QA加班 or 壓垮QA or 放棄品質
我2分鐘跑200個test,你呢?
自動測試很潮,但...
自動測試從第一個開始
● 你總是要先點火柴
● 『一開始做好全部事情不重要,最後做好全部事情才重要』
關於工程師 59 條搞笑但卻真實無比的語錄
你還是要小心
Hard Code是本性
懶惰是天性
公司不支持怎麼辦?
對的時間做對的事
而且
一定要被看到
你可以這麼做 → Tell the Whole World
你一定要這麼做:
Build fail → Everybody stops! → Until back to normal
你一定要這麼做:
Build fail → Everybody stops! → Until back to normal
你要慎選朋友
你要慎選主管
尋求專業協助
Further Questions...
https://medium.com/kuma老師的軟體工程教室
外約可

Más contenido relacionado

Similar a 敏捷小酒館 Kuma分館

自我探索的資訊教育
自我探索的資訊教育自我探索的資訊教育
自我探索的資訊教育Chris Wang
 
我要活下來 - Ruby Junior 工程師的存活術
我要活下來 - Ruby Junior 工程師的存活術我要活下來 - Ruby Junior 工程師的存活術
我要活下來 - Ruby Junior 工程師的存活術Li Hsuan Hung
 
Dreaming Infrastructure
Dreaming InfrastructureDreaming Infrastructure
Dreaming Infrastructurekyhpudding
 
银弹!银弹! 徐毅@Italk salon 2011
银弹!银弹! 徐毅@Italk salon 2011银弹!银弹! 徐毅@Italk salon 2011
银弹!银弹! 徐毅@Italk salon 2011Yi Xu
 
少年科技人雜誌 2015 年六月
少年科技人雜誌 2015 年六月少年科技人雜誌 2015 年六月
少年科技人雜誌 2015 年六月鍾誠 陳鍾誠
 
Java script 全面逆襲!使用 node.js 打造桌面環境!
Java script 全面逆襲!使用 node.js 打造桌面環境!Java script 全面逆襲!使用 node.js 打造桌面環境!
Java script 全面逆襲!使用 node.js 打造桌面環境!Fred Chien
 
從廢柴到成材 - 那 20 個 sprints 教會我們的事 C.C Agile #40
從廢柴到成材 - 那 20 個 sprints 教會我們的事 C.C Agile #40從廢柴到成材 - 那 20 個 sprints 教會我們的事 C.C Agile #40
從廢柴到成材 - 那 20 個 sprints 教會我們的事 C.C Agile #40diro fan
 
No more fractures MingLiu font!
No more fractures MingLiu font!No more fractures MingLiu font!
No more fractures MingLiu font!Yuan CHAO
 
【1110ROS社群開講】如何打造與人一起學習的機器檯燈_鄭凱文
【1110ROS社群開講】如何打造與人一起學習的機器檯燈_鄭凱文【1110ROS社群開講】如何打造與人一起學習的機器檯燈_鄭凱文
【1110ROS社群開講】如何打造與人一起學習的機器檯燈_鄭凱文MAKERPRO.cc
 

Similar a 敏捷小酒館 Kuma分館 (11)

自我探索的資訊教育
自我探索的資訊教育自我探索的資訊教育
自我探索的資訊教育
 
我要活下來 - Ruby Junior 工程師的存活術
我要活下來 - Ruby Junior 工程師的存活術我要活下來 - Ruby Junior 工程師的存活術
我要活下來 - Ruby Junior 工程師的存活術
 
Dreaming Infrastructure
Dreaming InfrastructureDreaming Infrastructure
Dreaming Infrastructure
 
银弹!银弹! 徐毅@Italk salon 2011
银弹!银弹! 徐毅@Italk salon 2011银弹!银弹! 徐毅@Italk salon 2011
银弹!银弹! 徐毅@Italk salon 2011
 
少年科技人雜誌 2015 年六月
少年科技人雜誌 2015 年六月少年科技人雜誌 2015 年六月
少年科技人雜誌 2015 年六月
 
Java script 全面逆襲!使用 node.js 打造桌面環境!
Java script 全面逆襲!使用 node.js 打造桌面環境!Java script 全面逆襲!使用 node.js 打造桌面環境!
Java script 全面逆襲!使用 node.js 打造桌面環境!
 
Taiwanese Experience in IT
Taiwanese Experience in ITTaiwanese Experience in IT
Taiwanese Experience in IT
 
從廢柴到成材 - 那 20 個 sprints 教會我們的事 C.C Agile #40
從廢柴到成材 - 那 20 個 sprints 教會我們的事 C.C Agile #40從廢柴到成材 - 那 20 個 sprints 教會我們的事 C.C Agile #40
從廢柴到成材 - 那 20 個 sprints 教會我們的事 C.C Agile #40
 
No more fractures MingLiu font!
No more fractures MingLiu font!No more fractures MingLiu font!
No more fractures MingLiu font!
 
【1110ROS社群開講】如何打造與人一起學習的機器檯燈_鄭凱文
【1110ROS社群開講】如何打造與人一起學習的機器檯燈_鄭凱文【1110ROS社群開講】如何打造與人一起學習的機器檯燈_鄭凱文
【1110ROS社群開講】如何打造與人一起學習的機器檯燈_鄭凱文
 
SCJP ch01
SCJP ch01SCJP ch01
SCJP ch01
 

敏捷小酒館 Kuma分館

Notas del editor

  1. 當時也是在半醉半醒的情況下... 遊戲式的活動並不太擅長 跟PO討論後,決定以分享團隊成長歷程的方式進行
  2. 想辦法減少”未來”可能遇到的麻煩事
  3. 你每天聽那些成功者分享他們的成功經驗, 今天給你不一樣的...
  4. 一路走來...
  5. 德國電商 => 美國電商 => 台灣新創... ...剛好一個新遊戲要開始了,於是...
  6. ...所以,當沒時間時,至少要有跨component的Functional Tests
  7. 自己做,沒人懂,沒人討論,有時會陷入思緒的困境 新公司、新專案的需求 = 快 + 小 + 一直改 又要多花時間測試:開始有雜音出現了...
  8. “這不是很小的功能嗎?不是應該很快嗎?” “明明半天就寫好了,為什麼不趕快送QA?” “寫了自動測試有什麼用,QA還不是要再測一次?” “影響整體進度” 你們以為我聽不到,其實我都知道。
  9. ...然而,當大家都知道你們動作其實很快... 系統團隊,需求來自四方
  10. 資訊不對等 一下這個很趕,一下那個很急,一下這個不做了
  11. 一開始說有多趕又多趕 做好測好卻胎死腹中的專案... 心理累...
  12. 於是想到了以前用過的這個東西 把PM跟QA都拉進來
  13. 沒有專業人士帶領,悶著頭摸索
  14. Newegg: 只知其招 一開始: 一招半式 上課後: 內功心法
  15. ..AND AFTER PARTY!!!!
  16. 例如:Kuma話太多 的改善項目
  17. 想辦法減少”未來”可能遇到的麻煩事
  18. 到底是有多懶?
  19. CI/CD做得不好,沒有穩定產出,沒有頻繁交付, 有沒有DevOps也不是很需要了 趕快寫一寫推出去給QA和維運人員煩惱就好了 Agile → CI/CD → DevOps
  20. 引用陳 91的圖表
  21. 隨時注意coding style 隨時注意敏捷精神 Ex. 隨便的plan meeting故事
  22. 公司憑什麼支持你 成果拿出來大家看先 Worst case: 生活會比較輕鬆一點
  23. ...至於如何被看到:
  24. 要怎麼讓大家看得到
  25. 書瑋、Enya 組成好的Team 有共同目標
  26. 支持、擋箭
  27. 剩下很多摸索與撞牆的時間 (我沒有打廣告喔!!!!) 那是你心裡的投射