【CSDN開源專訪】禅道創始人王春生:覆蓋項目全周期,回歸管理的本質。
本文出處:
CSDN中文IT社區
http://www.csdn.net/article/2013-09-13/2816928-zentao-project-management
摘要:禅道是一款优秀的国产开源项目管理软件,集産品管理、项目管理、质量管理、文档管理、组织管理和事务管理于一体。CSDN记者采访了禅道项目创始人王春生,请他来介绍禅道项目的方方面面,以及开源项目商业化的经验。
禅道项目在“ 2013年度中国优秀开源项目评选 ”中获得较高票数,并被专家评审团评为“2013年度中国优秀开源项目”。
禅道官網: http://www.zentao.net/
Github地址: https://github.com/easysoft/
CSDN記者采訪了禅道項目創始人王春生,請他來詳細介紹禅道項目的由來、發展等方面的情況。

(禅道项目创始人 王春生)
CSDN:先做個自我介紹吧!
王春生:大家好,我叫王春生,2001年畢業于北京師範大學。我的主修專業是漢語言文學,聽了一學期課之後感覺特別無聊,正好學校開設計算機課程,就迷上了計算機,然後就自學,玩各種軟件。那時候非常有幸認識了幾位非常有黑客精神的老師,在他們的指引下接觸了Linux、開源,並開始玩各種各樣的開源軟件。我畢業後在很多家公司工作過,所從事的基本上都是互聯網行業。做過老本行的編輯,兼職做過銷售,後來轉向開發,並開始帶項目。我于2006年加入阿裏巴巴,並先後在雅虎中國、阿裏媽媽和淘寶工作過,主要負責後端引擎自動化測試工作。
我个人的成长受开源思想和软件影响颇深,所以也先后做了几款開源軟件。2004年到2007年,我作为主要开发者开发维护了 BugFree;2006年作为项目leader主持开发了ECShop1.0版本;2009年初启动禅道项目;2010年正式开始创业,全职从事禅道開源軟件的开发。
CSDN:禅道是一個什麽樣的項目?提供了哪些功能?
王春生:禅道( www.zentao.net)是一款项目管理软件,它可以有效地把研发项目过程中涉及的方方面面元素、流程有效地跟踪管理起来。软件研发项目有自己的特殊性,有産品、研发和测试三种角色的互动,涉及的基本元素有需求、任务和缺陷。禅道軟件可以把这三种角色、三种基本元素之间的过程跟踪和流转有效地跟踪管理起来。
禅道从功能上来讲,可以分为三个大部分:産品、项目和测试。其中産品层面是给産品经理使用的,涉及需求的管理、计划的制定,版本的发布和路线图等功能。项目层面是给研发团队使用的,涉及项目的计划、任务、版本等功能。测试是给测试团队使用的,主要涉及测试用例、测试计划和和缺陷跟踪管理。
CSDN:當初爲什麽會想到做一個開源的項目管理軟件?爲什麽取名爲“禅道”?
王春生:我在阿裏巴巴工作的三年裏面,因爲職位的特殊性,需要同時參與多個項目。三年下來,感覺做得很累,壓力很大,很多項目終也不了了之。然後我就思考,找原因。原因有很多,有高層的戰略問題,有研發團隊的問題,等等。然後我就想自己可以提供什麽樣的解決方案,想來想去,我覺得自己可以在工具的支撐方面提供幫助。
当时,我们的项目管理开始时是用Sharepoint + Excel(一个共享文件,大家来编辑),后来用Sharepoint + BugFree + XPlanner。産品经理需求整理到Sharepoint中,然后项目计划用XPlanner,测试跟踪用BugFree。不胜其烦,信息需要在各个系统中手工同步更新关联,非常糟糕。当时我曾经提出到过程改进部门工作,来做内部的支撑工具。但由于种种原因,未能如愿。后来就带着这个想法,开始了禅道这个开源的项目管理软件的开发。
禅道這個名字是我在讀《編程之道》和《編程之禅》這兩本書時受到的啓發,然後就老實不客氣地把中國文化中難解釋的兩個字當成了我們軟件的名字。從深層次講,也是有我們的一些訴求,其實項目管理也很簡單,只要我們抓住本質的東西就可以了。我們往往太多關注表面的東西了,忽略了真正的管理之道、管理之禅!
CSDN:禅道項目有哪些創新點?
王春生:禅道的主要創新點在于集成的項目管理,在一個軟件裏面把研發項目的完整過程做到有效跟蹤和覆蓋。開源的項目管理軟件有很多,比如Dotproject、Redmine、Trac,還有其他很多的缺陷跟蹤軟件,比如Mantis、Testlink、BugFree等等。這些軟件功能都太單一,更多的是基于事務管理的:一個issue打上feature、task或者bug的標簽,缺少嚴謹的管理思想和過程的跟蹤。
CSDN:講講禅道從立項到發布首個版本之間的故事吧。有什麽讓你印象深刻的事情?
王春生:禅道项目正式启动是2009年初,春节过后。当时花了很久的时间在做整体功能、技术架构和商务模式方面的设计,当时整理了一个脑图文件(现在基本上还在按照这个脑图文件在走)。印象比较深刻的是我的一个朋友说要做禅道軟件的第一个用户,然后我们就用短的时间发布了0.01 alpha版本。但是那个朋友也从来没有用过,哈哈。得到的启示就是,国人太忙,朋友的承诺不要太当真,靠人不如靠己。
CSDN:介紹一下禅道項目的架構。它的設計理念是什麽?
王春生:禅道項目是公司內部的管理軟件,對性能、並發要求並不是很高。所以我們在做技術架構的時候,更多考慮的是代碼的可維護性以及用戶擴展的方便性。因此我們在發布禅道軟件之前,先花了半年的時間做了我們自己的zentaophp框架。這個框架也是典型的MVC結構,它主要的特點就是簡單、合理。大家有興趣可以關注下: devel.zentao.net
就像前面所講,我們開發這個框架,一方面是爲了控制自己項目的進度(不可能依賴于第三方的框架,受制于人),另外一方面就是擴展機制。禅道的擴展機制都是靠這個框架來實現的,禅道軟件的商務模式也是基于這套擴展機制的。
CSDN:禅道使用了哪些技術來實現?選擇這些技術的理由是什麽?
王春生:禅道軟件使用的開發語言是PHP,數據庫是MySQL,WebServer沒有特定要求,Apache、nginx、IIS都可以使用。
選擇PHP,是因爲一直在用PHP,它簡單、開發效率高、跨平台、解釋執行、功能豐富、表現力強。選擇Apache和MySQL,也主要是因爲它們是跨平台的,安裝維護都非常的簡單(Apache和MySQL運行環境可以精簡爲只需要幾個核心文件)
前端的我們采用了jQuery作爲JS框架,還有很多第三方的前端擴展,比如自動提示、樹狀列表之類的。
CSDN:開發項目管理系統的難點是什麽?開發過程中,你們遇到了哪些困難?是如何解決的?
王春生:開發項目管理系統的難點在于跨界,你需要知道項目管理的各個流程,懂得項目管理的方法和理論,同時還需要你把它提煉成通用的需求,然後用技術合理的實現出來。
這中間涉及到太多的取舍和平衡。比如權限的控制,太松和太嚴都不好;比如各種涉及流程控制的字段,多了,使用麻煩,少了,跟蹤和管理就弱了。所以更多的是在這些方面糾結,找到比較合適的解決方案。
開發過程中難點不多,技術層面的問題都是可以解決的,解決不了還可以繞。
CSDN:禅道項目已經誕生4年了,講講這期間的發展情況吧。
王春生:2009年是起步期,這段時間我是業余時間在做,主要完善框架,完成了核心的功能。
2010年正式創業,成立公司,專職來做這件事情。版本發布到1.x,核心功能已經基本完備,有了自己的小團隊,用戶群初步形成。
2011年是比较关键的一年,这一年里面我们得到了朋友的帮助,加速了发展,核心团队也初步形成,産品功能进一步完善。
2012年我們正式推出專業版本,開始嘗試商業路線,並取得了預想中的結果,2012年下半年開始有盈利。
2013年産品已经发布到了5.0版本,团队也进一步壮大,收入一直比较稳定。
CSDN:禅道開發團隊目前有多少人?你們是如何分工和協作的?
王春生:我们团队现在有12个人。我主要负责産品方面的工作,还有3位同事负责研发,1位同事负责前端交互(近刚刚加盟),1位做技术支持,1位做商务销售,1位做运营策划,1位做财务,还有1位帮我们做设计工作。
还有2位同事,在做我们的新産品——蝉知企业门户系统( www.chanzhi.org),這也是個開源軟件,主要幫助企業快速搭建企業營銷門戶。
王春生:我們得不到確切的用戶數字,初步估計應該有幾萬家公司或者團隊在使用禅道做項目跟蹤。這其中有很小的創業團隊,也有很大的集團公司,有軟件公司,也有知名的互聯網企業。有遊戲公司,也有軟硬結合的公司。還有很多軍隊和學校的單位也都在使用禅道做項目管理。
CSDN:禅道目前有開源版本,也有專業版,在特性選擇上,哪些特性會進入專業版,哪些會進入開源版,你們的標准是什麽?
王春生:主要的標准是看功能的通用性,如果是每個企業都可能會用到的功能,我們會優先考慮放在開源版本中。專業版本更多的提供的一些增強的功能,比如更多的統計、更多的任務查看方式等等。
我們之前專業版本有批量添加、編輯的功能,後來我們覺得這個大家都需要,我們就把批量操作功能模塊放到了開源版本中。我們不會爲了推銷我們的收費版本而故意在開源版本中做很多的功能限制,那樣是不道德的。
其實開源版本的功能已經足夠豐富和完善了,以至于我們銷售大的對手就是我們自己,哈哈。很多用戶試用了開源版和專業版,說開源版足夠了。
CSDN:禅道目前的盈利模式是什麽?在開源項目商業化上,你們有哪些經驗可以分享?
王春生:其實所有的盈利模式核心都是用戶數。沒有用戶,再好的模式也沒有用。簡單來說就是通過爲用戶提供開源的、免費的、專業的項目管理軟件,並爲他們提供及時有效的支持,獲得大量的用戶,然後再通過增值的功能或者服務來收費。這就是禅道的模式。禅道的收入有專業版本的授權、培訓、在線托管、定制開發、插件銷售等多種渠道。
開源項目商業化不容易,有一些體會和開源的同行分享:
産品的选型很重要。国内开源的朋友大部分做的都是框架之类的东西,但其实你想想,框架的使用者是开发者,而赚开发者的钱太难了。企业也不会为了一个框架的技术支持或者培训买单,很难。应用类的開源軟件就比较好,因为用户可以实实在在地感受到你的软件给他带来的价值。
好是专职来做。兼职来做,更多的是兴趣,想来做商业化,确实还是需要成立公司,专职来做。别的不说,人家买你东西,要开发票,你兼职来做,怎么办呢?成立公司,人家也会觉得你的産品有保障,可以持续下去。
做開源軟件很不容易,不是單單把軟件開源出來就可以了。要整理文檔,回答問題,要做宣傳推廣,要堅持更新版本。我們自己的體會,這些工作差不多占到了一半左右的時間。也就是我們一半時間開發軟件,一半時間在做周邊的這些支持工作。
考虑问题的角度很重要。搞开源的,都是技术的高手,考虑问题更多从技术层面考虑。但真正做産品,需要我们转变考虑问题的角度,更多地站在用户的角度来考虑。比如我们开始配置发信功能,是通过配置文件来设置的。后来发现大家对smtp端口、发信账户这些都搞不懂。就逼着我们简化配置,后我们就简化为只需要用户输入一个邮箱地址,各种参数就可以自动计算出来。用户使用也方便,也减少了我们大量的支持工作。
王春生:開放平台和禅道的插件機制是有直接關系的。禅道的用戶可以按照禅道的擴展機制對禅道的功能進行修改或者定制以滿足個性化的需要。當某個用戶做完了某個功能,發現這個功能其他人也可能需要,他可以把插件代碼打包成一個zip文件,發布到我們的開放平台上面了,這樣其他用戶就可以在禅道軟件的插件管理中心中浏覽到這個插件,然後可以在線自動安裝、禁用、卸載或者升級,非常方便。
做這個開放平台,也是受Wordpress和Drupal的啓發。它們的社區有成千上萬的插件功能,形成了一個生機勃勃的生態體系,也奠定了它們在這個領域的領先地位。我們做這個開放平台,除了方便大家分享交流插件之外,也是想吸引第三方的朋友來分享插件,可以是開源的,也可以是收費的。
CSDN:簡單介紹一下開放平台目前的情況。如何實現與開發者共贏?
王春生:開放平台目前有四十多個插件,來自第三方的插件大概能占到1/3。
和開發者利益分享這塊我們是這樣處理的——開發者可以把他開發的插件發布上來,然後標價出售,如果有用戶購買的話,他可以獲得70%的分成,平台占30%。
但開放平台也存在一些問題,主要是有時間且有能力開發禅道插件又可以和大家分享的開發者太少了。很多插件也沒有及時隨禅道新版本升級。這是中國的開發者現狀吧,沒有辦法,只能慢慢來。
CSDN:禅道項目今後的發展規劃是什麽?
王春生:禅道計劃有兩條線,一個是前面和大家介紹的我們新的項目蟬知企業門戶,這個主要是解決企業對外營銷的問題。另外就是對禅道的交互做進一步的優化和加強。專業版本的功能進一步完善和豐富。我們的願景:管公司,用禅道;做營銷,用蟬知!
CSDN:多謝王春生接受采訪,祝願禅道項目發展越來越好!

