# 協作與敏捷: 外部廠商如何融入我們的DevOps環境那條漫長道路 - 邱繼平(山姆大叔) {%hackmd @HWDC/BJOE4qInR %} >#### 》[議程介紹](https://hwdc.ithome.com.tw/2024/session-page/3214) >#### 》[填寫議程滿意度問卷|回饋建言給辛苦的講者](https://forms.gle/o9P2Z5uy9xfT9AhQ8) - RFP產出及招商 - 開始時間:1 月 - 選商及意見 - 開始時間:4 月 - 簽約 - 開始時間:6 月 - Kickoff - 開始時間:7 月 - 需求分析 - 開始時間:8 月 - 認真開發 - 開始時間:9 月 - 測試環境部署 - 開始時間:1 年 4 月 - Beta 版測試 - 開始時間:1 年 5 月 開始開發都已經過了一年,要怎麼保證開發項目與品質與當初簽約時相同? --- - 品質的保證 vs 現實的殘酷 - CMMI - ISO20000 - ISO27001 - 有這幾樣品質真的就是有保證嗎??? --- - 實戰外包專案管理困境 1. ==團隊溝通==上存在障礙 2. ==專案項目==追蹤不易 3. 開發展物==交付==不易 4. 交付標的與==預期不一致== --- - 看到的問題 - 溝痛障礙 - 交付不易 --- 因果圖的循環 - 專案投入 - 溝通效率 - 僅以 email 及雙週例會溝通 - 交付頻率 - 交付品質 - 現況交付門檻過高,故慣性降低交付節奏 --- 引入 DevOps Platform 的 POWERS 分析 - Process 流程 - Objective 目標 - Single source - 議題追蹤 - 產物交付 - 知識保留 - 開發協作 - Azure DevOps - Repos - Pipleline - Boards - Test Plan - Window 窗口 - Evaluate 評估 - Relation 互動關係 - Structure 結構 --- 名詞很多?還有哪些會冒出來?又要怎麼做?? - Boards - Repos / Pull Request - Pipelines - Test plans 查核員興奮中 試辦團隊開啟 104 中XD --- 強摘的瓜不會甜,試辦先選擇適合的成員與專案 但是解渴 :smile_cat: --- 試辦先選擇適合的成員及專案 - 綠地專案 - 棕地專案 - 哪個專案不重要 重要的是要找適合的團隊,照現行狀況越痛苦的團隊越好 --- 改變的步驟 - 引入 DevOps Platform 的 ADKAR - Awareness 認知 - 組織的支持 - 現況的問題 - 外部最佳實踐 - Desire 渴望 - 獎勵措施 - 自我成長 - 盡力消除負力 - Knowledge 知識 - 密切的分享 - 教學知識庫 - 沙盒環境 - Ability 能力 - 心理安全環境 - 容許犯錯改善 - 對事不對人 - Reinforcement 鞏固 - 文件化且制度化 - 建立次一目標 - 共享交流機制 - 持續宣導與培訓 - 持續傾聽困擾 - 要了解每個成員的痛點 --- Case 1 使用wiki (Markdown 語言) 作為專案知識集中庫 - 現況(平衡) - 驅力(有利因素) - 好查好追蹤,有可以即時更新,省去文件版本落差 - wiki 的會議紀錄可以結合任務 - mermaid 很潮 - 增加趨力 - 改變發生 - 阻力(不利因素) - 習慣都適用 word+mail - Markdown 和 Mermaid 有學習門檻 - --- Case 2 使用 Boards 以 User Story 基礎來紀錄、分析與分派工作 - 現況(平衡) - 驅力(有利因素) - Agile Product Backlog 非常直觀 - User Story 蘊含 Bug and Test 觀念 - User Story 狀態可以作為交付邊界依據 - 增加趨力 - User Story 由雙方共同撰寫,並告知廠商老闆請配合協作模式 - 阻力(不利因素) - 不熟悉 User story 開立需求的形式 - 現況開發團隊會以系統分析文件拆分工作於 Jira - 廠商老闆要求 Project 管理在自己的 --- Case 3 使用 Boards + Repo + Pipeline + PR 作為自動化交付邊界 - 現況(平衡) - 驅力(有利因素) - 原有交付方式要廠商每個月到甲方耗兩天很痛苦 - Pull Request 可以作為交付邊界確認工作項目 - Pipeline 自動化工程可以大量降低人工作業缺漏 - 增加趨力 - 山姆叔叔代勞寫 Pipeline,大家順便一起學習 - 阻力(不利因素) - 廠商的 Repo 在 Github - 現況已開發團隊已有約定俗成交付方式 - 我們不會寫 Pipeline(<- 去除阻力) --- 我們真實的里程碑 第一次實際可測試,提早八個月