上一節(jié):3. 人 - 團隊管理
事 - 項目管理
前面團隊管理中說“團隊是由一群追求一個或多個共同目標的人組成,通過一些規(guī)則約束在一起工作”,而項目管理則是為了讓團隊能在資源、人員限定的情況下,能按預(yù)期達成目標的手段和方法。
核心思想:有的放矢
項目管理的注意3點:
- 目標清晰 - 要做什么、什么時候完成
- 控制節(jié)奏 - 有了目標,就要管理好節(jié)奏,是一步到位還是小步快跑
- 制定規(guī)范 - 無規(guī)矩不成方圓,現(xiàn)代化團隊作戰(zhàn)講究統(tǒng)一、標準、量化
1. 目標清晰
在項目開發(fā)中,有3點需要清晰:
- 需求清晰 - 要做什么,做給誰用,做成什么樣
- 任務(wù)清晰 - 安排什么人,在什么時候,具體做什么
- 節(jié)點清晰 - 要在什么時候做完
針對以上這3點我制定了以下文檔、規(guī)范:
- 明確需求 - [Beansmile PRD文檔規(guī)范]
- 明確任務(wù) - [Beansmile Trello使用規(guī)范]
- 明確節(jié)點 - [Beansmile Agenda]
下面分別說下具體的做法。
[Beansmile PRD文檔規(guī)范]
PRD(產(chǎn)品需求文檔),相當(dāng)于是產(chǎn)品的工程設(shè)計圖紙,是給開發(fā)人員使用的,它的主要目的是陳述產(chǎn)品是什么,有什么功能,給什么人用,是什么樣子。因此我認為一份PRD中應(yīng)包含以下7部分:產(chǎn)品說明文檔、產(chǎn)品信息結(jié)構(gòu)圖、產(chǎn)品功能結(jié)構(gòu)圖、邏輯流程圖、原型圖、功能點列表、設(shè)計文檔,如「圖4-1」,主要是說明每份文檔是什么、有什么用、大概長什么樣。
? 「圖4-1」Beansmile PRD 文檔規(guī)范
開發(fā)人員常說我不怕需求復(fù)雜也不怕需求太多,最怕的是我費心費力使用了優(yōu)雅的設(shè)計模式、重構(gòu)了代碼、加了單元測試后PM對我說句“xx需求不要了”。所以如果作為產(chǎn)品PM,當(dāng)整理過一份完整的PRD后,其實已經(jīng)對產(chǎn)品的邏輯性、合理性做了一次梳理,再傳達到開發(fā)團隊手里時,能有效減少返工、無效需求的“折騰”。在這里要認清的一個事實就是:沒有不變的需求!所以我們要做的只是盡量減少無效需求傳導(dǎo)到開發(fā)手中,讓開發(fā)的輸出更有價值。
[Beansmile Trello使用規(guī)范]
Trello是個看板風(fēng)格的協(xié)作工具,上手十分簡單,但由于Trello本身十分松散靈活,100個團隊有100種用法,因此為了方便統(tǒng)籌管理,我制定了一些使用流程并整理成規(guī)范文檔[Beansmile Trello使用規(guī)范](見「圖4-2」),包含對list、label使用以及card生命周期的流轉(zhuǎn),讓每個任務(wù)從需求轉(zhuǎn)化為任務(wù),到分配、評估、開發(fā)、部署、測試、上線,意圖讓每一步都清晰可預(yù)期,參與員之間協(xié)作配合清晰可見。
我們的項目管理布告版也會對客戶開放,我們希望讓客戶從一開始就可以參與到日常開發(fā)流程中,可以了解項目的開發(fā)具體進度,也方便收集對需求任務(wù)的討論、BUG反饋,以及給客戶分配一些他們所要配合的工作(如一些基礎(chǔ)服務(wù)帳號注冊),讓協(xié)作由內(nèi)而外都可以貫通。為此我特意把這個文檔寫了英文版,以發(fā)放給國外合作的客戶參閱以便了解我們是怎么使用Trello的。幫助客戶培養(yǎng)成合理的協(xié)作習(xí)慣,這其實對我們進行高效項目管理也會更有利。
? 「圖4-2」Beansmile Trello使用規(guī)范
[Beansmile Agenda]
一個項目開發(fā),需要定一些時間節(jié)點,如什么時候正式立項,以便項目經(jīng)理可以召集開發(fā)團隊、召開立項會議;什么時候做交付演示,以便讓QA工程師可以準備用戶故事;什么時候正式上線,以便項目組技術(shù)組長可以準備交付文檔;時候做營銷推廣以便運維人員可以做好服務(wù)器壓力測試調(diào)整服務(wù)器配置……
前面在說如何解決團隊協(xié)作清晰化中,提到了使用“團隊日歷共享計劃 - [Beansmile Agenda]”(見「圖3-16」),因此我要求項目經(jīng)理給每個項目添加2種事件類型,一個是CHECKPOINT(檢查點),一個是DEADLINE(最后期限)。CHECKPOINT是階段性的時間節(jié)點,DEADLINE是當(dāng)前版本最終的交付限期;一個開發(fā)版本內(nèi)可以有多個CHECKPOINT,但只有一個DEADLINE。
做事應(yīng)有始有終,我要求每個項目的每個大版本開發(fā),都要定一個DEADLINE(最后期限),期限是構(gòu)成目標的要素,沒有期限則沒有目標,沒有目標何從談管理。
CHECKPOINT則是一些階段性的目標,到達一個DEADLINE之前,可以有多個CHECKPOINT;一個CHECKPOINT可以是任何關(guān)鍵事件,如階段演示、交付演示,可安排階段小結(jié)會議來討論技術(shù)問題調(diào)整開發(fā)計劃。
個人todo管理tips
在日常工作中,往往又有一些個人的代辦事項,如某項技術(shù)調(diào)研、培訓(xùn)文檔準備等不適合放入?yún)f(xié)作的任務(wù)列表的,也要管理起來,我現(xiàn)在的做法如下:
- 不需要協(xié)作的,放入 Wunderlist(可跨多終端);
- 需要team范圍知曉的、有明確日程安排的,放Agenda;
- 跟具體項目相關(guān)的,放在對應(yīng)的項目trello board
2. 控制節(jié)奏
項目開發(fā)有如組織團隊賽跑,需要控制好節(jié)奏,什么時候要留力調(diào)整速度,什么時候要加速沖刺,都應(yīng)該有規(guī)劃。
我根據(jù)這些年來的項目開發(fā)經(jīng)驗,整理了一份開發(fā)流程規(guī)范 [Beansmile開發(fā)流程規(guī)范](見「圖 17」),劃分出幾個階段,每個階段有主要參與的角色及其主要任務(wù)、有輸入輸出的結(jié)果,以便項目參與者明確自己角色的任務(wù)。
項目開發(fā)流程大綱:
- 選定項目管理框架/風(fēng)格:Kanban + Scrum
- 選定項目管理工具:
- 默認:Trello + Scrum Extension
- 其他:Redmine,Teambition,Worktile,Tower
- 角色安排:項目經(jīng)理,產(chǎn)品經(jīng)理,項目組長,開發(fā),測試,運維
- 流程安排:
1. 需求確定 - 確立需求可行性
2. 項目評估 - 根據(jù)PRD評估開發(fā)量,確定項目周期
3. 項目確立 - 項目組角色安排,項目周期、確定技術(shù)棧
4. 開發(fā) - 日常開發(fā)迭代
5. 驗收交付 - 交付項目,收集客戶反饋
6. 項目結(jié)束 - 進行項目匯總,總結(jié)開發(fā)收獲、工作流程改進意見
- 會議安排:
* 項目啟動會議 - 成立開發(fā)組、通告項目背景、周期、技術(shù)棧
* 項目階段會議 - 階段性小結(jié),了解當(dāng)前實現(xiàn)進度及出現(xiàn)的問題,調(diào)整下階段的目標和做法
* 項目總結(jié)會議 - 進行項目匯總
?「圖3-15」Beansmile開發(fā)流程規(guī)范
3. 制訂規(guī)范
所謂無規(guī)矩不成方圓,在一個完整的開發(fā)流程中,每個環(huán)境牽扯到不少細節(jié),團隊會不時增補新人員,要形成統(tǒng)一的團隊風(fēng)格,少不了要制定一些規(guī)范文檔,讓團隊每個成員可以達到一致的行事風(fēng)格和輸出,其他對接同事協(xié)作時則有規(guī)可循。特別的,一些輸出文檔我都給出了樣例,這樣負責(zé)輸出文檔的同事只需做“填空題”,關(guān)注輸出內(nèi)容本身即可。
以下是我制定的跟項目開發(fā)流程相關(guān)的系列文檔例子:
- [Beansmile開發(fā)流程規(guī)范](見「圖 3-15」)
- [Beansmile PRD文檔規(guī)范](見「圖 4-1」)
- [Beansmile Trello使用規(guī)范](見「圖 4-2」)
- [Beansmile Trello board template]
- [Beansmile項目周報規(guī)范文檔]
- [Beansmile階段小結(jié)會議規(guī)范]
- [Beansmile項目總結(jié)會議規(guī)范](見「圖 4-3」)
- [Beansmile項目總結(jié)報告規(guī)范]
- [Beansmile會議記錄書寫規(guī)范]
? 「圖4-3」Beansmile項目總結(jié)會議規(guī)范
小結(jié)
如果有一些成熟完整的項目管理工具,可以輔助解決一些流程的規(guī)范、自動化,自然會省事不少,但工具很重要也只是輔助,我接觸了解過一些開發(fā)團隊,使用了一些復(fù)雜、強大的項目管理工具,然而管理層不去推行、監(jiān)督,執(zhí)行層不落實執(zhí)行,工具再多再強大也是沒有意義。因此在工具的使用上,適合自己團隊的才是最好的,不用過于糾結(jié)在工具選擇上。例如,我們使用Scrum管理框架,但也不是完全照搬Scrum全家桶,我們有每日站會、有Sprint 評審/回顧會議(我合并為“階段小結(jié)會議”)、使用Backlog列表、任務(wù)評估使用Story Point、使用User Story做驗收交付文檔,沒有Scrum Master(但有項目組長),根據(jù)團隊的實際情況做了簡化調(diào)整,可以落實執(zhí)行的方案才是好方案。
總的來說,即使團隊只有一個人時,做事也應(yīng)該有章法,才能做到事多不亂,團隊壯大了再由己及人,保持團隊一致的調(diào)性。只有做到以上這些,我們才能從復(fù)雜多變的環(huán)境中做到“有的放矢”,從容應(yīng)對變化。
關(guān)于項目管理有幾本書推薦閱讀:
- 《最后期限》 —— 被稱為“中國第一本項目管理小說”,以一個虛構(gòu)小說告知項目最重要的4個要素:找對人,分配正確的任務(wù),激勵,團隊建設(shè)。
- 《人月神話》 —— 本書自第一版以來,暢銷20余年不衰,是軟件領(lǐng)域絕無僅有的必讀經(jīng)典
- 《Scrum權(quán)威指南》 —— 不到20頁的文檔里簡明闡述了Scrum是什么、怎么進行Scrum,特別是在2016年版引入了“Scrum價值觀”的概念,鼓勵團隊成員相互敬重,彼此成為更有能力和獨立的人。
- 《技術(shù)管理之巔 : 如何從零打造高質(zhì)效互聯(lián)網(wǎng)技術(shù)團隊?》 —— 1號店技術(shù)總監(jiān)出品,推行扁平話、OKR目標管理、Scrum和Kanban的實踐、自動化測試等,從技術(shù)團隊組織架構(gòu)、產(chǎn)品開發(fā)流程、制度規(guī)范建立、企業(yè)文化、大數(shù)據(jù)與技術(shù)管理創(chuàng)新、移動技術(shù)開發(fā)、實用應(yīng)用架構(gòu)設(shè)計等方面。