狠狠撸

狠狠撸Share a Scribd company logo
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...
敏捷小酒館 Kuma分館
敏捷小酒館 Kuma分館
敏捷小酒館 Kuma分館
那些披荊斬棘、那些篳路藍縷
孤軍奮戰
難兄難弟
瞎子摸象
像不像叁分样
重金禮聘
當你發現,這才是軟體業...
Coding → build → copy → run → trace code → debug → coding...
說好的敏捷開發呢?
說好的軟體工程呢?
說好的DevOps呢?
草創期,相忍為...
那就從自己開始吧 -- 從第一個Test Case開始
捨Unit Test
擇Functional Test
0 → 1
孤军奋战期
敏捷小酒館 Kuma分館
開始懷疑自己...
這樣真的對嗎
這麼做值得嗎
軟體工程是不是累贅
我是不是拖累了大家
...
敏捷小酒館 Kuma分館
難兄難弟期
你寫我測、我寫你測
技術討論、互補不足
規劃架構、分進合擊
1 → 30
敏捷小酒館 Kuma分館
敏捷小酒館 Kuma分館
无头苍蝇?
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檔
● 重啟
問題:
● 如何保證版本?
● 設定檔修改紀錄?
● 背指令?
● 下錯指令?
● 改錯設定?
● 處處都要小心 → 好懶喔...
敏捷小酒館 Kuma分館
重金禮聘
受版控的bash指令,取代所有手動操作
bash自動記錄版本
● 人生重來了
● 動作有紀錄
● 不怕手滑
問題
● 同一個環境一次只能放一個版本
● 多專案並行時,要輪流使用
● 輪流時,佈版還是要我佈
● 好懶喔...
重金禮聘
一台機器啟動多個Docker Image
● 多專案同時測試
● 可以隨時新增、刪除測試環境
● 當然,dockerfile要入版控
問題
● 還是得依序下數個bash
● 不同環境要登入不同機器
● 好懶喔...
重金禮聘
用Ansible控制遠端機器執行腳本
● 免登入多台機器
● 『一鍵佈署』
● 佈署後有簡短報告
● 當然,ansible腳本要入版控
問題
● 還是要登入一台機器
● 還是要下一行指令
● 還要通知QA版本
● 好懶喔...
敏捷小酒館 Kuma分館
重金禮聘
Develop有任何Push,就觸發:
● Maven Test + Package
● Ansible佈署
● 通知結果 + 版號至Slack群組
沒有最懶,只有更懶
一定可以,我再想想...
DevOps = 懶人的天堂
100 → 200
DevOps很潮,但...
DevOps從敏捷開始
● Agile: 頻繁、持續、快速交付
○ 注重開發,較忽略運維
● DevOps包含Agile
○ 沒有穩定持續集成交付,沒有好的DevOps
○ 或是有沒有也無所謂
敏捷很潮,但...
敏捷從自動測試開始
成功的敏捷流程:
● 固定的產出頻率
● 測試案例會累加
● QA加班 or 壓垮QA or 放棄品質
我2分鐘跑200個test,你呢?
自動測試很潮,但...
自動測試從第一個開始
● 你總是要先點火柴
● 『一開始做好全部事情不重要,最後做好全部事情才重要』
關於工程師 59 條搞笑但卻真實無比的語錄
敏捷小酒館 Kuma分館
你還是要小心
Hard Code是本性
懶惰是天性
公司不支持怎麼办?
對的時間做對的事
而且
一定要被看到
你可以這麼做 → Tell the Whole World
你一定要這麼做:
Build fail → Everybody stops! → Until back to normal
你一定要這麼做:
Build fail → Everybody stops! → Until back to normal
你要慎选朋友
你要慎选主管
寻求专业协助
敏捷小酒館 Kuma分館
Further Questions...
https://medium.com/kuma老師的軟體工程教室
外約可

More Related Content

敏捷小酒館 Kuma分館

Editor's Notes

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