發表文章

目前顯示的是有「ALM」標籤的文章

the DevOps journey (10) - 讓用戶輕鬆建立並管理Feedback/bug/Issue

圖片
Excel,是過去傳統軟體開發專案當中,管理Bugs/Issues常見而行之有年的工具。既然行之有年,表示有其存在的原因,然而,卻也帶來了不少問題。 Excel控管的Bugs/Issues,由於是檔案形式的存在,因此無法多人同時更新維護,即便現在可以透過雲端共用檔案來解決,但想要在Excel檔案上掌握bugs的狀態、控管處理進度實在很不容易,且一份Excel也無法完整描述出bugs/Issue的重現步驟(Step)、錯誤來源、以及用戶的電腦設備環境…等資訊。 既然,我們已經用VSTS來處理工項,一定會更希望這些bugs/issues的管理可以如同Backlogs一樣,輕鬆紀錄每一個狀態、讓各種問題有效的被追蹤處理。 上圖是VSTS中工作項目(Work Items)與Bugs的呈現畫面,過去開發人員或測試人員,可以在底下這個畫面中添加Bugs,便於管理: 但這樣,用戶得要先進入VSTS畫面,且填寫bugs時常常需要剪貼畫面,書寫comments,來來回回很是麻煩,有沒有更簡單的方式? 有的,Test & Feedback Tools,它在VSTS的Marketplace中,可以從 這個 網址進入,這絕對是一個優秀好物: 這是一個讓測試人員或stakeholder使用的工具,只要你為專案的測試人員或相關人員建立一個免費的stakeholder權限帳號,即可使用此工具,輕鬆截圖回報bugs。 測試人員點選上面install之後,會看到它目前支援Chrome/Firefox (對,尚未支援Edge和IE,why?不要問,何必問呢? ): 點選安裝之後,可以輕易地把這個外掛裝入Chrome瀏覽器: 安裝完成之後,你會發現瀏覽器多了這個圖示: 點選該圖示之後,會出現底下畫面,第一次使用時,請著點選齒輪: 點選齒輪之後,會看到底下畫面,請依序選擇Connected,填入你的VSTS/TFS網址,按下Next: 接著應該會出現一個登入畫面,如果有,請輸入你想要處理的專案的Microsoft Account(VSTS),驗證完身分之後,接著會出現底下畫面。 這個畫面中會出現你的帳號可以管理的專案,請選擇你的Project以及Team/Area,選定後按下Save: 這樣,Test與Feedback工具就與你的專案綁定了。接著可以怎麼用呢? 請看。 你可以先在網址列輸入你專案的...

the DevOps journey (9) – 在TFS/VSTS中使用Git版控

圖片
接著,我們來看如何在TFS/VSTS中使用Git形式的版控。 同樣的,請先建立一個支援Git版控的Team Project,與TFVC版控的Team Project不同,建立好該專案之後首先納入眼簾的是底下的畫面: 你可以透過SSH連線的方式來連接,也可以點選上圖(2)的地方,產生連線所需的帳號密碼。 如果你用開發工具是Visual Studio,那你可以很大方的按下上圖(3)的位置,即可直接Clone該專案並且設定Mapping的用戶端資料夾位置,如果你用的開發工具並非Visual Studio,但也是知名的開發工具,則可點上圖(4)的下拉清單,看看是否也支援直接Clone: 從VS2017連接TFS/VSTS上的Git版控伺服器 當然,你也可以用類似我們開啟TFVC版控專案的方式,直接從Visual Studio當中建立連線,請注意一樣是選擇Connect to Project,在出現的畫面中找到要連結的專案與repository: 接著,成功的連上之後,在Team Explorer中一樣會出現讓我們選擇用戶端Mapping版控檔案的儲存位置,也就是你要把雲端的原始程式碼Clone到用戶端的哪個資料夾。 請選定資料夾後(下圖A),按下Clone鈕即可: 如果伺服器端已經有其它開發人員先前push上去的程式碼,會被一起下載下來,但由於我們是建立一個新的專案,因此目前還沒有任何檔案被Clone下來。 我們可以點選下圖A的New,建立一個新專案: 你會發現預設的資料夾,應該也是先前我們Clone時設定的資料夾,你可以直接按下OK,建立該專案。完成後,切換到Solutions Explorer視窗後,會看到類似底下這樣的畫面,這時請留意,和TFVC版控有些許不同: 你會發現,在上圖A的位置,標示出了有12個檔案已變更(或新增),你可以點選該數字,會出現Commit程式碼的畫面。 將程式碼Commit並Push到伺服器端 你會發現,在下圖A的地方,和TFVC版控類似,也會讓你輸入此次Commit的Comment,而B的地方有三個選項,分別是Commit All, Commit All & Push, Commit All & Sync: 所謂的Commit,和TFVC的Check-in不同,Commit並...

the DevOps journey (8) – 使用TFVC程式碼版控

圖片
我們先看採用TFVC的部分,請先建立一個以TFVC為版控的Team Project: 當你在VSTS/TFS中把專案建立好之後,首要工作就是從用戶端的Visual Studio連上伺服器,請開啟Visual Studio,找出Team Explorer視窗: 在Team Explorer視窗中,最上方(上圖1)的位置,有一個連線按鈕,點選後接著會出現Manage Connections選項,理論上會有兩個,一個是上圖2的『Connect to Project』,另一個是『Connect to Github』。 上面的Project指的就是VSTS/TFS的TFVC或Git Repository,而Connect to Github指的當然就是網路上那個Guthub。 請注意,不管你在team project建立時,選擇的是TFVC或Git版控,都是點選上圖2那個『Connect to Project』 接著會出現底下這樣的畫面,這是VS2017的UI,你會看到所有你的登入帳號可以連上的TFS Server或VSTS站台: 留意上圖,其中(1)的部分是你的連線帳號,由於該帳號可以連上我建立於區域網路的TFS以及internet上的VSTS,因此上圖(2)和(3)分別就是TFS伺服器以及VSTS站台,而展開的項目當然就是Team Project(上圖6),而(4)和(5)所指的分別是位於VSTS站台上的Team Project裡面的Git版控的repository和TFVC repository。 新版VS2017的連線UI設計的很完整,一次把所有需要連線的對象全列了出來,你只需要點選後,按下Connect鈕即可。 Mapping工作區並下載檔案 當你連上了伺服器端之後,會看到類似下圖的畫面,由於範例是剛建立的Team Project,因此下圖中你會看到還沒有其他開發人員先前已經簽入(Check-in)的source code,只有一個預設的資料夾: 由於第一次連上,你必須先Mapping你的Workspace,你會發現上圖(2)的地方,可以設定你的用戶端工作區位置,一但設定,未來該位置就可與伺服器端做同步,設定後按下『Map & Get』,如果先前有其它開發人員已經簽入程式碼,也會被下載下來。 你也可以點選下圖(1)的地方,也可...

the DevOps journey (6) - 安排與設定專案的迭代

圖片
當專案啟動後,我們會用VSTS來管理專案中的每一個Features/work items,以及source code。 Source code管理的部分我猜大多數的開發人員比較熟悉,畢竟版控這幾乎是開發人員吃飯的工具,我們就暫且先不說了,主要是因為有用過TFS的開發人員肯定知道怎麼用,而VSTS在版控上的操作完全相同,因此不需贅言。 但由於最近幾次的改版之後,VSTS除了過去支援的TFVC,現在還支援GIT,因此似乎也必須稍微整理一下,如果以後有機會我再補齊,讀者可參考後面的篇幅。 因此,這一個部份我們先focus在work items在iterations中的處理。 回顧先前所提過的,敏捷開發的核心精神之一,就是把開發周期縮短成多個iterations,在Scrum中我們叫做Sprint。(其實想一想,我覺得不管是不是敏捷開發,只是要面對需求快速變更的近代軟體開發專案,都應該盡可能的切分出iterations) 前面曾經說過,這個Sprint可能是 1-4 周,一般來說我自己喜歡用2周。但這個長度完全取決於你希望專案有多透明,衝刺有多密集。 經驗上來說,2周是一個比較舒服愉快的周期,1周多半意味著Team Members和PO/PO, Stakeholders都得要上緊發條;但 3 or 4周我自己覺得有些鬆散了,比較適合人數比較多、或是整個專案時程預估會超過一年以上的開發團隊,或是長期抗戰永無休止日的軟體產品開發團隊。 要在VSTS當中設置iterations相當容易,你會發現當一個新的專案被建立起來之後,就已經建立好了預設的迭代了,只是系統還沒有幫你安上迭代的時間日期: 當你點選專案主選單的『Work』選項(上圖1)之後,會發現初始建立的專案已經有預設的Sprint1-6(上圖2)。但每一個Sprint的日期則還沒設定(上圖3),而中央黃色區域的地方則是輸入工作項目的位置(上圖5)。 這別請特別留意,上面的『Sprint 1』這個名稱,是依照你選的流程版型Scrum而定,如果一開始你選的是Agile或CMMI,則Sprint會變成Iteration 原則上每一個迭代(Sprint)的週期應該一樣長 , 當專案建立好之後,你其實可以直接修改預設已經存在的迭代名稱和日期區間: 動作很簡單,請依照上圖的操作順序,最後點選(1)的Set ...