# Hands-on: Azure Board Workshop - 登入 [Azure DevOps Service | where-workshop](https://dev.azure.com/where-workshop) - 第一次登入設定使用者資料 ![](https://i.imgur.com/FE14Iml.png) ## How DevOps Admin manage Azure DevOps Service - **介紹組織/專案概念** - **Organization Setting** - User : 添加人員至組織中 - Billing + Azure DevOps Pricing:[Azure DevOps 的定價](https://azure.microsoft.com/zh-tw/pricing/details/devops/azure-devops-services/) - Auditing : 輸出 log 資料 - Global Notification : 設定全域的通知訊息 - Azure Active Directory:連結到現有的 AAD - **Create Project** - Work Item Process - [Agile](https://docs.microsoft.com/en-us/azure/devops/boards/work-items/guidance/agile-process?view=azure-devops)([User Story Field](https://docs.microsoft.com/en-us/azure/devops/boards/work-items/guidance/agile-process-workflow?view=azure-devops)) - [Scrum](https://docs.microsoft.com/en-us/azure/devops/boards/work-items/guidance/scrum-process?view=azure-devops)([PBI Field](https://docs.microsoft.com/en-us/azure/devops/boards/work-items/guidance/scrum-process-workflow?view=azure-devops )) ## 1/ 需求及專案管理 ### 建立以 Scrum 為範本的新專案 - 建立新專案:**[首頁](https://dev.azure.com)** > **[+ New Project]** ![](https://i.imgur.com/8UouHlu.png) - 填寫 Project Name,Visibility 選擇 **[Private]**,點開 **[Advanced]**,Work item process 選擇 **[Scrum]** ![](https://i.imgur.com/Xu8BMhD.png =400x) - 如出現未授權,重新整理即可 ![](https://i.imgur.com/k3U8ny3.png) ### 邀請使用者加入 Project - 點選右上角的 **[invite]** ![](https://i.imgur.com/cX2RKwY.png) - 新增人員完整 email ![](https://i.imgur.com/NdBl1TI.png =400x) - 被加入的人員將會收到 Azure DevOps 的邀請信,首次需透過信中的驗證連結加入 - 畫面下方會顯示成功添加使用者訊息 ![](https://i.imgur.com/RO7Lojj.png =400x) - 或在 Members 的欄位中會看到新添加的人員 ![](https://i.imgur.com/IDT0zlW.png =400x) ### Feature 管理 - 在左方的 Boards 底下,點選 **[Work items]** 後選取 **[+ New Work Item]**,然後選擇 **[Feature]** ![](https://i.imgur.com/XhZiLTa.png) - 填寫 Feature 資訊,參考簡報中的專案,將標題填入 `公車動態`,可自行填寫底下欄位,完成後點選 **[Save]** ![](https://i.imgur.com/26iax0h.png) - 點選 **[Back to Work Items]** ![](https://i.imgur.com/9G7YqJp.png) - 再新增一個 Feature ![](https://i.imgur.com/nMTMrzz.png =400x) - 填寫 `班次時刻表` ![](https://i.imgur.com/V4poO4X.png) - 點選左邊欄位 Boards 下的 **[Boards]**,將右上角的 **[Backlog items]** 切換到 **[Features]** ![](https://i.imgur.com/dHkmlrJ.png) - 可以看到剛剛新增的兩則功能 ![](https://i.imgur.com/PKenV51.png) ### Product Backlog Items (PBI) 管理 - 在 `公車動態` 的 Feature 中選取 **[...]**,選擇 **[+ Add Product Backlog Item]** ![](https://i.imgur.com/RPxM8gs.png =500x) - 填寫 `即時動態查詢` ![](https://i.imgur.com/WrsEwhi.png =300x) - 依照上步驟再填入`出門提醒` - 在 `班次時刻表` 的 Featue 中依據先前步驟分別新增 PBI `時刻表查詢`和 `搭車提醒` - 填寫完成 ![](https://i.imgur.com/HyMLiCq.png =500x) ### Sprint 及 task 規劃 - 選擇左邊欄位中的 **[Backlogs]** ![](https://i.imgur.com/XzmVhqI.png) - 透過 **[+ New Work Item]** 再新增一個`DevOps Workshop` 的 PBI ![](https://i.imgur.com/W3SqY0g.png) - 點選右上角的拉霸圖示,選擇 Side Pane 下的 **[Planning]** ![](https://i.imgur.com/MkTDe5K.png) - 拖曳 `即時動態查詢` 這個 PBI 到右邊的 **[Sprint 1]** ![](https://i.imgur.com/tVUeJhj.png) - 點選 **[Sprint 1]** 跳轉到 Sprint 的頁面 ![](https://i.imgur.com/q31v7jn.png =400x) - 點選頁面上方 **[Taskboard]** ![](https://i.imgur.com/bJPB1VN.png) - 可以看到變成敏捷看板的視角,並且是在 Sprint 1 這個週期中 ![](https://i.imgur.com/wHUyOIG.png) - 在 `DevOps Workshop` PBI 的欄位點選 **[+]** 來新增以下 : - `修改 README` - `練習 Azure Board` - `設置 CI/CD pipeline` ![](https://i.imgur.com/8uUKUKM.png) - 在 `即時動態查詢` PBI 的欄位點選 **[+]** 來新增以下 task : - `整合公車動態即時資訊API` - `查詢欄位` - `動態資訊呈現頁面` - 完成填寫 ![](https://i.imgur.com/FsqRQCV.png) - 將 `練習 Azure Board` 拖曳到 **[In Progress]** 的欄位 ![](https://i.imgur.com/dDjLmfb.png) - 完成狀態的變更 ![](https://i.imgur.com/wwWnZjx.png) ### 工單搜索功能 - 點選左方欄位 Boards 下的 **[Queries]**,然後點選 **[+ New query]** ![](https://i.imgur.com/dvXFo96.png) - 在 Work Item Type 的地方,Value 選擇 **[Task]** ![](https://i.imgur.com/CA8qBz1.png) - 在 State 的地方,Value 選擇 **[In Progress]** ![](https://i.imgur.com/fxSpxKr.png) - 點選 **[Run query]** ![](https://i.imgur.com/mFgWA66.png) - 執行後的結果會顯示目前在 project 中哪些 task 狀態為 in progress ![](https://i.imgur.com/D739m61.png) - 點選 **[Save query]** ![](https://i.imgur.com/MuXQwj2.png) - 完成欄位填寫,將 **[Floder]** 選擇到 **[Shared Queries]**,點選 **[OK]** 即可儲存 ![](https://i.imgur.com/jl58Mrq.png =400x) ## 2/ (補充) 專案團隊及週期管理 ![](https://i.imgur.com/N8Ja4Cj.png) - 名詞解釋 - Team (團隊):將專案成員做分群,各別 Team 可有各自的 Area、Permission - Area Paths(區域路徑):區域路徑可將工作專案分組,可以依據小組所需時做的工作內容不同、產品功能的規畫等做劃分,Team 在新增時可選擇是否要 default 建置 Area Path - Iteration (迭代週期):每個 Sprint 的起始日期 - 管理專案 Team、Area 及 Iteration - 新增 Developer、Operation、PM 團隊,`Project Setting > Teams > New Team` ![](https://i.imgur.com/J7cveGM.png) - 設定專案的 iteration date - 設定專案時間,`Project Setting > Project configuration > <Project Name> > set dates` - 設定 Sprint 1 時間,`Project Setting > Project configuration > <Project Name> > set dates` ![](https://i.imgur.com/6EceOlf.png) - 設定團隊所屬的 Iteration 及 Area - 設定 Iteration `Project Setting > Team Configuration > <Team Name> > Iteration > Backlog iteration > <預設選項> > Set` ![](https://i.imgur.com/WqRpbIJ.png) - 設定 Area `Project Setting > Team Configuration > <Team Name> > Iteration > Area > <預設選項> > Set` ![](https://i.imgur.com/BjPEjQB.png) - 管理團隊的取用權限 `Project Setting > Permission` ![](https://i.imgur.com/I3iSipy.png) ## 3/ (補充) Create task template - **Design Template:Project Setting > Team Configuration > Templates** ![](https://i.imgur.com/pobbvcD.png) - **透過 template 建立新的 Task** ![](https://i.imgur.com/PiVN5hD.png) ## 4/ (補充) Customize Boards - Customizing Kanban boards,Boars > Boards - 新增狀態欄位 : `Settings > Board | Columns` - 新增一個狀態在 `New` 之後為 `Pending` ![](https://i.imgur.com/2j42lXD.png) - 新增泳道 : `Settings > Board | Swimlanes` ![](https://i.imgur.com/tTIydSt.png) - Sprint Board 新增狀態,Boards > Sprints - 選擇 `Column Option > + Add Column`,新增一個 Column Name 為 `Pending`,Task 為 `In Progress` ![](https://i.imgur.com/MJlUYp0.png) - 設定完成 ![](https://i.imgur.com/VGV0IbQ.png) <!-- - **客製化 Work item process** - `Org Setting > Process` - `Agile > … > Create inherited process` ![](https://i.imgur.com/h3mfuyK.png) - 添加新的類別工單 : `New Wrok Item Type` ![](https://i.imgur.com/2zMF4ii.png) - 添加 Task 工單欄位 : `Task > Layout > New Field` ![](https://i.imgur.com/zu4jOI6.png) - 添加 Task 工單狀態 : `Task > State > New State` --> ## Pricing - [Stakeholder / Basic](https://docs.microsoft.com/en-us/azure/devops/organizations/security/access-levels?view=azure-devops#stakeholder-access) ## Reference - [Agile Planning and Portfolio Management with Azure Boards](https://azuredevopslabs.com/labs/azuredevops/agile/) - [Use templates to add and update work items](https://docs.microsoft.com/en-us/azure/devops/boards/backlogs/work-item-template?view=azure-devops&tabs=browser)