雲棲社區經過爲期兩個月,對7032份有效調查問卷分析統計,2017年12月發佈了首份《2017中國開發者調查報告》。報告顯示,37.3%的開發者表示,協做工具主要來自企業內部自研的協做工具,有21%的調查者正在使用禪道項目管理軟件做爲項目開發協做工具,Jira以17%尾隨其後。禪道以其開源、專業贏得了國內衆多開發者用戶的青睞。
> 自給自足的開發者特性工具
從調查報告能夠看到,高達37.3%的開發者團隊在工做中採用企業本身研發的協做軟件。因爲其自身的開發者屬性,企業自研軟件首先具有了技術基礎,開發者們徹底能夠實現自給自足;其次,採用自研軟件能夠省去一部分軟件購買費用,爲企業節省開支;三,自研軟件按照企業需求定製,跟企業的契合度高。測試
> 專業軟件使用者佔四成優化
除了自研軟件,專業的協做軟件一樣擁有衆多青睞者。禪道和Jira的開發者用戶佔到了38%,跟自研軟件的使用者數量基本持平。spa
跟自研軟件相比,專業軟件擁有穩定的研發團隊和技術支持團隊,既能保證軟件的快速更新,也能隨時提供專業的技術支持和指導服務。並且專業軟件有着多年的市場和用戶基礎,極其貼合用戶需求,適合大多數公司的須要。.net
開發者使用人數最多的禪道是青島易軟天創公司出品的項目研發類管理工具,它集產品管理、項目管理、質量管理、文檔管理、組織管理和事務管理於一體,是一款專業的研發項目管理軟件,完整覆蓋了研發項目管理的核心流程。日誌
緊隨其後的Jira是Atlassian公司出品的項目與事務跟蹤工具,被普遍應用於缺陷跟蹤、客戶服務、需求收集、流程審批、任務跟蹤、項目跟蹤和敏捷管理等工做領域。blog
兩者做爲中國開發者最喜歡的協做管理軟件,不一樣點在於,Jira是商用軟件,禪道是開源軟件。相同的地方是,禪道和Jira都有着配置靈活、功能全面、部署簡單、擴展豐富的優勢,被普遍的應用在項目管理,任務、bug跟蹤,需求管理等方面。並且,禪道和Jira還擁有最大的一個共性是,都是基於Scrum的敏捷開發模式。也就是說,Scrum已成爲最受中國開發者歡迎的開發模式。排序
什麼是Scrum開發模式?
Scrum的英文意思是橄欖球運動的一個專業術語,表示「爭球」的動做;把一個開發流程的名字取名爲Scrum,能夠想象開發團隊在開發一個項目時,你們像打橄欖球同樣迅速、富有戰鬥激情、人人你爭我搶地完成它是怎樣一種高效的工做狀態。圖片
沒錯,Scrum正是這樣的一個開發流程,每一個環節都有一套完整的過程和嚴格的時間控制。也就是說,Scrum是圍繞流程控制展開的。事務
Scrum開發模式是怎樣運做的?
1.首先要明確Scrum裏的角色
Scrum由product owner(產品經理)、Scrum master和team(研發團隊)組成。
其中product owner負責整理user story(用戶故事),定義其商業價值,對其進行排序,制定發佈計劃,對產品負責。
Scrum master 負責召開各類會議,協調項目,爲研發團隊服務。
研發團隊則由不一樣技能的成員組成,經過緊密協同,完成每一次迭代的目標,交付產品。
2.快速迭代開發是Scrum的基本特徵
與瀑布不一樣,Scrum將產品的開發分解爲若干個小sprint(迭代),其週期從1周到4周不等,但不會超過4周。參與的團隊成員通常是5到9人。每期迭代要完成的user story是固定的。每次迭代會產生必定的交付。
3.Scrum的基本流程
Scrum的基本流程如上圖所示:
l 產品負責人負責整理user story,造成左側的product backlog。
l 發佈計劃會議:product owner負責講解user story,對其進行估算和排序,發佈計劃會議的產出就是制定出這一期迭代要完成的story列表,sprint backlog。
l 迭代計劃會議:項目團隊對每個story進行任務分解,分解的標準是完成該story的全部任務,終每一個任務都有明確的負責人,並完成工時的初估計。
l 每日例會:天天Scrum master召集站立會議,團隊成員回答昨天作了什麼今天計劃作什麼,有什麼問題。
l 演示會議:迭代結束以後,召開演示會議,相關人員都受邀參加,團隊負責向你們展現本次迭代取得的成果。期間你們的反饋記錄下來,由po整理,造成新的story。
l 回顧會議:項目團隊對本期迭代進行總結,發現不足,制定改進計劃,下一次迭代繼續改進,已達到持續改進的效果。
團隊協做過程當中最主要的問題是溝通不暢,成員各自爲戰,而協做軟件的做用正是打破彼此之間的隔閡,消除孤島,讓工做內容和流程透明化,成員在團隊master指揮下齊頭並進,協力推動項目進展。
協做軟件的Scrum如何體現?
1.明確角色定位,成員各司其職
咱們上面提到Scrum是由不一樣角色構成,也就是一個項目團隊由不一樣角色的成員組成,而每一個角色定位表明不一樣工做職責,分管任務不一樣。以禪道管理軟件爲例,就設置了多種角色定位,核心的三種角色是產品經理、研發團隊和測試團隊,這三者之間經過需求進行協做,實現了研發管理中的三權分立。其中產品經理整理需求,研發團隊實現任務,測試團隊則保障質量,其三者的關係以下圖:
基本流程以下:
l 產品經理建立產品
l 產品經理建立需求
l 項目經理建立項目
l 項目經理肯定項目要作的需求
l 項目經理分解任務,指派到人
l 測試人員測試,提交bug
2.分解任務,責任到人
項目開始之初,項目經理負責任務分解,工時估算,並在協做軟件中設置起止時間、可用工時、項目目標及團隊成員等要素。
接下來成員領取任務,並隨時更新已用和剩餘工時。已經作了多少工做,還剩多少工做一目瞭然。
3.開發和檢測並存的過程
項目經理通常充當着開發過程當中Scrum master的角色,燃盡圖、甘特圖、看板、工做日誌等多種方式爲項目經理提供了隨時掌控項目進度和成員工做狀況的可能。如出現誤差,可隨時指導和調動資源,始終將項目各要素掌控在手中。
禪道的任務看板以任務的狀態(未開始、進行中、已完成、已取消、已關閉)顯示,項目任務完成了哪些,還剩哪些,正在進行中的有哪些能夠直觀的看到。
燃盡圖是在項目完成以前,對須要完成的任務工時的一種可視化顯示。
燃盡圖有一個Y軸(任務)和X軸(時間)。
理想狀況下,該圖表是一個向下的曲線,隨着剩餘任務的完成,「燒盡」至零。
禪道中會根據項目中全部任務預計剩餘的時間累加起來,繪製成燃盡圖。
項目開發工做完成後交由測試團隊測試,測試完成後交由產品經理髮布。這其中的每一個過程都是一個透明化,可檢視和不斷調整適應的過程,產品在這個過程當中不斷迭代更新,功能愈發符合用戶需求,成員更加高效默契的工做。也正由於如此,Scrum已經成爲全球很是流行的開發模式。
Scrum的概念最先提出是在1990年代初,通過幾十年的運用和優化,Scrum呈現出了更加貼合開發流程的諸多特點,已經成爲很是成熟的開發模式。實踐證實,Scrum也確實是提高新產品開發速度和靈活性的有效方法。
不少人說Scrum的模式並不適合中國。其實,從《2017中國開發者調查報告》的數據中,Scrum開發模式的高佔比已經說明一切。