打造Worktile敏捷開發(fā)管理工具的思與惑

作者:Terry

從2019年初,我們團隊準備開發(fā)一款適合研發(fā)團隊使用的敏捷開發(fā)管理工具,那時候我們也在思考,到底什么樣的工具才算是優(yōu)秀的研發(fā)管理工具,研發(fā)管理的場景、方法和流派有很多,市面上關于研發(fā)管理工具的產(chǎn)品也是層出不窮,我們從哪里入手才能真正幫助研發(fā)團隊提高研發(fā)效能?基于以下兩點考慮,我們選擇了從敏捷開發(fā)管理進入:

1. 敏捷開發(fā)自1999年以來,經(jīng)過20多年的發(fā)展,已經(jīng)被大多數(shù)開發(fā)團隊所接受,近幾年DevOps的流行,更是把敏捷推向了更高的位置,國內(nèi)太多的團隊需要做敏捷轉(zhuǎn)型。

2. 敏捷開發(fā)在中國落地的專業(yè)度還不夠,以至于出現(xiàn)了“中華田園敏捷”的說法,中國的開發(fā)者需要一款簡單易上手的、專業(yè)的敏捷開發(fā)管理工具,來幫助他們在團隊中更好的落地敏捷。雖然只靠一款敏捷開發(fā)工具并不能幫助企業(yè)在敏捷轉(zhuǎn)型中成功,但好的工具卻能讓企業(yè)敏捷轉(zhuǎn)型事半功倍。

專業(yè)的Scrum流程管理

在Scrum Guide中已經(jīng)對于Scrum過程中的活動、事件、產(chǎn)出等定義的非常清晰,這里不再重復,只想重點解釋一下在落地Scrum過程中經(jīng)常被忽視的兩個問題。

1. 絕大部分團隊在實施Scrum過程中只重視迭代管理,不重視版本管理,當然這已經(jīng)超出了Scrum本身的范疇,但是好的研發(fā)管理中應該是迭代管理和版本管理并存,他們之間是一個互相依賴的關系。

迭代管理是針對Scrum團隊的,它定義的是一個時間盒的概念,用于團隊容量管理和進度管理,對于不同的團隊來說,明確在一個迭代的時間盒內(nèi)的產(chǎn)出,這個產(chǎn)出最終以迭代Review為標準,通過了Review并不意味著一定發(fā)布出去。

版本管理是針對產(chǎn)品的,它定義的是一個批量的概念,用于版本進度管理和交付風險管理,明確在一個版本中最終的交付物。目前市面上大部分敏捷開發(fā)管理工具,都能夠很好的支持迭代管理,卻忽視了版本管理。

打造Worktile敏捷開發(fā)管理工具的思與惑

圖1 Worktile Agile中的版本管理

2. 在Scrum Guid中定義一個迭代中的四個活動,即迭代計劃會議、每日立會、迭代評審會和迭代回顧會,我們發(fā)現(xiàn)在大部分敏捷團隊中其實只有前三個活動,而自動忽略迭代回顧會議,恰恰相反,迭代回顧會是Scrum迭代實踐中的最后一環(huán),也是最重要的一環(huán),迭代回顧會將整個迭代形成了閉環(huán)。Scrum小組都是自組織的,只有通過迭代回顧會不斷的總結問題,提出改進項,才能幫助團隊不斷精進。

打造Worktile敏捷開發(fā)管理工具的思與惑

圖2 Worktile Agile中的迭代回顧面板

什么才是真正的Kanban

Kanban理論已經(jīng)存在了很長的時間,其適用范圍也從最初的車間管理,到現(xiàn)在的硬件制造、軟件開發(fā)。在軟件開發(fā)領域內(nèi),很多團隊都在使用Kanban管理自己的團隊,有的使用電子看板,有的使用物理看板。Worktile團隊在做電子看板上已經(jīng)有了7年的經(jīng)驗,一直以來我們也在探索,到底什么樣的看板才是真正的Kanban。在我看來,一個真正意義上的電子看板系統(tǒng),要能夠幫助團隊達到以下三點:

幫助團隊可視化整個鏈條的價值流動

幫助團隊識別價值流動中的風險點

幫助團隊度量價值流動中的各種浪費,并加以消除

基于以上考慮,在一個可視化的電子看板系統(tǒng)中,至少要具備以下一些能力:

能夠清晰定義在制品WIP

能夠清晰定義在制品限制WIP Limit

明確定義DoD

支持多泳道分割

在制品流轉(zhuǎn)中某些操作自動化

達到某些風險點時,在制品能夠高亮顯示

打造Worktile敏捷開發(fā)管理工具的思與惑

圖3 Worktile Agile中的Kanban管理

需求管理如何做

不管是采用哪種敏捷方法實踐,需求管理都是敏捷開發(fā)中非常重要的一環(huán)。Scrum中定義了兩個重要的概念:產(chǎn)品待辦事項Product Backlog和迭代待辦事項Sprint Backlog;Kanban中一般采用在制品WIP的概念。

在Worktile Agile中,我們決定采用業(yè)界大家共識的三級需求管理體系,這種表示方式并沒有一個真正意義上的標準:

Epic:史詩,表示比較大的特性,開發(fā)周期一般是1-3月,用于產(chǎn)品路線圖的規(guī)劃

Feature:特性,表示相對小一些的特性,開發(fā)周期一般是1-3周,用于產(chǎn)品版本的規(guī)劃

User Story:用戶故事,最小的開發(fā)粒度,開發(fā)周期一般是1-3天,在Scrum中用User Story來作為Backlog,在Kanban中可以用User Story作為WIP。

打造Worktile敏捷開發(fā)管理工具的思與惑

圖4 Worktile Agile中的Epic、Feature、User Story三級需求管理

聯(lián)動起來才有價值

在研發(fā)場景下,對于團隊成員來說經(jīng)常整理需求/缺陷是個常態(tài),另外在基于單個工作項溝通時,往往會提及另一個工作項,作為高效的研發(fā)管理工具,要能夠清晰的定義工作項之間各種可能的關系。Worktile Agile中我們定義了超過10種工作項之間的關系:

parent:定義工作項之間的父子關系

duplicates:表示兩個工作項之間的重復關系

blocks:表示兩個工作項之間的阻塞關系

其他的如mention、clone、causes關系等

只能夠定義關系還不夠,Worktile Agile還做到了在發(fā)生某些操作的情況下,自動生成他們之間的關系,如果團隊成員在某個工作項評論中提到了另外一個工作項,則會在他們之間自動建立一條mention關系。

打造Worktile敏捷開發(fā)管理工具的思與惑

圖5 Worktile Agile中定義工作項之間的關系

工程化不可或缺

在研發(fā)管理過程中,項目管理是很重要的一塊,但項目管理本身并不會關注工程化的過程,在我看來,項目管理和工程化實踐是確保研發(fā)順利的兩個支柱,缺少哪一個都會造成不可預知的影響,把工程化數(shù)據(jù)與管理過程結合起來,將會極大的減小管理成本,提升研發(fā)效率。

工程化的過程環(huán)節(jié)眾多,涉及到的工具數(shù)量龐大,如代碼托管、單元測試、代碼掃描、流水線、打包、制品、部署等等,在Worktile Agile中可以通過REST API的方式,把工程化數(shù)據(jù)發(fā)送到工作項上面并與之關聯(lián),這樣對于開發(fā)人員可以清晰的看到每一次提交涉及到的工作項是哪個,觸發(fā)了哪些構建,構建的結果如何,以及當前工作項部署在了哪些個環(huán)境。(注:REST API正在內(nèi)測中,目前還未對外正式發(fā)布。)

打造Worktile敏捷開發(fā)管理工具的思與惑

圖6 Worktile Agile中接入DevOps數(shù)據(jù)

讓一切皆可測試

在User Story的INVEST原則中,明確表示一個好的用戶故事要必須是可測試的Testable。敏捷開發(fā)過程本身是頻繁迭代、周期性強并且能夠及時、持續(xù)地響應客戶的反饋,如何正確建立測試策略,確認客戶的需求能得以實現(xiàn)并且確保及時的交付最終產(chǎn)品是值得思考的一件事。

在Worktile Testhub中,測試人員可以輕松編寫測試用例并且制定相應的測試計劃,同時每個測試用例也可以用Worktile Agile中的User Story關聯(lián),讓開發(fā)人員和產(chǎn)品經(jīng)理知道這個User Story會如何測試,同時測試的結果也會及時的與Worktile Agile同步。

打造Worktile敏捷開發(fā)管理工具的思與惑

圖7 Worktile Testhub自動生成的測試報告

關于未來的一點想法

最后,簡單的談談對于未來的一些想法。對于當下來說最重要的事情把現(xiàn)有的產(chǎn)品進一步打磨好,關于未來我們也在探索以下幾個可能的思路:

1. 簡化手工操作,未來一定是智能的世界,在研發(fā)管理工具中,要盡可能的簡化手工操作,讓工作自動化起來,對于開發(fā)人員來說更是如此,他們寧可編寫一段自動化腳本,也不愿一遍一遍的執(zhí)行重復性的操作。

2. 擴大人員覆蓋,目前Worktile研發(fā)產(chǎn)品矩陣已經(jīng)覆蓋了需求人員、產(chǎn)品、設計、研發(fā)和測試等人員,未來我們還會進一步加大人員的覆蓋面,讓更多的團隊角色可以在Worktile中完成他們的工作,比如對于中高層管理人員、PMO等。

3. 擴大場景覆蓋,當下我們的關注點在于如何做好敏捷項目管理和測試管理這兩個場景上,未來不排除還會延伸到別的場景,比如多項目組合管理等。

極客網(wǎng)企業(yè)會員

免責聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準確性及可靠性,但不保證有關資料的準確性及可靠性,讀者在使用前請進一步核實,并對任何自主決定的行為負責。本網(wǎng)站對有關資料所引致的錯誤、不確或遺漏,概不負任何法律責任。任何單位或個人認為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識產(chǎn)權或存在不實內(nèi)容時,應及時向本網(wǎng)站提出書面權利通知或不實情況說明,并提供身份證明、權屬證明及詳細侵權或不實情況證明。本網(wǎng)站在收到上述法律文件后,將會依法盡快聯(lián)系相關文章源頭核實,溝通刪除相關內(nèi)容或斷開相關鏈接。

2020-03-30
打造Worktile敏捷開發(fā)管理工具的思與惑
作者:Terry從2019年初,我們團隊準備開發(fā)一款適合研發(fā)團隊使用的敏捷開發(fā)管理工具,那時候我們也在思考,到底什么樣的工具才算是優(yōu)秀的研發(fā)管理工具,研發(fā)管理的

長按掃碼 閱讀全文