項目管理的要旨:假設每個環(huán)節(jié)一定會出問題,提前準備,慎重行動。
所以,你需要知道:
1、軟件開發(fā)項目的整個流程有哪些環(huán)節(jié) ?
2、這些環(huán)節(jié)可能會出什么樣的問題?
3、有哪些可選的預案?
4、這些預案應該在什么時候啟動?
產(chǎn)品開發(fā)項目管理4個階段:出需求→啟動→開發(fā)→上線。下面將按照這4個階段來梳理各階段的項目管理要點。
出需求
可能出現(xiàn)的問題:
1、花很多時間做的需求,在需求評審會上唄開發(fā)團隊拍回來
2、開發(fā)團隊沒有參與過整個需求的思考過程,無法跟上你的思路。對場景和目標理解有誤,導致你認為是理所當然的事情,但是開發(fā)團隊不理解
3、需求中含有大量的按規(guī)則和前導知識,給開發(fā)團隊埋下無數(shù)的坑
4、你深知需求中有很多不確定、不統(tǒng)一的意見,但是沒有告知項目關鍵人。沒有提前考慮任何可能的變化
要
1、提前溝通:出原型之前找項目負責人或架構師聊一聊你的想法和粗略的需求
2、告訴項目負責人或架構師,你的問題是什么,讓他們來提供解決方案
3、講述業(yè)務價值,明確項目或需求的意義。一定要講解典型的業(yè)務場景
4、把不統(tǒng)一的意見也告訴項目負責人或架構師,提前打預防針
不要
1、需求評審之前沒有人知道你要做什么、大概想怎么做
2、只告訴項目負責人或架構師你的解決方案是什么
3、項目開始之后,告訴大家,這個功能其實在XXX那邊還有分歧
警惕
1、你完全不知道項目的關鍵角色是哪些人(項目負責人/架構師/QA)
2、項目負責人只關心你要的feature,不關心問題和場景
3、開發(fā)團隊告訴你,以前就這么做過/考慮過,后來沒有做,但原因現(xiàn)在未知
項目啟動
可能出現(xiàn)的問題:
1、業(yè)務分析做的不夠好,導致無法估算工作量或者需求做漏
2、拆卡不合理,對測試不友好。導致大家都說不清楚一張卡是否開發(fā)完成了
3、拆卡不合理,項目帶寬太小,加人加不進去
4、技術架構沒有經(jīng)過review,導致后期上線不順利
5、開發(fā)環(huán)境和測試環(huán)境沒有提前準備好,導致后期不斷花時間搞環(huán)境
6、與設計師銜接出現(xiàn)問題,常見表現(xiàn)在:RD等設計圖、設計圖與產(chǎn)品原型不一致
7、集成店準備不足,導致團隊要等其他項目(或其他團隊)準備聯(lián)調(diào)的接口
8、沒有引入QA,QA對業(yè)務、拆卡、開發(fā)進度了解太少,或者來不及給出測試用例,開發(fā)不知道怎么算是達到質量標準
9、為評估人員風險,項目啟動后才發(fā)現(xiàn)有人需要休假,或者有人員還需要培訓
10、沒有交互計劃,QA不知道什么時候應該測試什么。導致QA工作無法與RD并行,項目開發(fā)完成后花大量的時間測試
要
1、第一時間引入BA、QA、架構師、設計師。要求BA參與拆卡、QA準備測試用例、架構師負責出技術方案(架構方案+部署方案)
2、檢查拆卡是否完成、是否合理、是否充分
3、與BA、QA共同制定開發(fā)的優(yōu)先級和順序,需要設計師按照時間點出圖、QA按照時間點測試
4、要求QA開始準備測試用并告知開發(fā),保證卡片+測試用例就是完整的完成標準
5、要求架構師列出系統(tǒng)集成點,提前預約集成測試
6、明確團隊的休假計劃
7、問問項目中的每個人:你是否已經(jīng)非常清楚地知道你的職責、目標和接下來兩天要做什么?
8、建立項目看板(worktile+物理墻),明確完成時間
不要
1、對著太大、太模糊的需求評估時間。一定不準確
2、只列舉要開發(fā)的功能,為明確列出具體的時間和完成標準
3、人員角色重疊,但并不完全明確每個人的職責
警惕
1、完全不了解團隊成員,不知道誰偏樂觀、誰偏謹慎。需要向可信任的同事求證
2、團隊告訴你這個項目很簡單,不用太考慮架構和部署
3、團隊沒有明確的技術責任人,環(huán)境和技術上出了問題不知道該找誰
4、項目的關鍵人員有太多項目外的并行任務,對此保持謹慎且開放的態(tài)度
5、團隊告訴你,某個工作有誰+誰+誰共同負責。這將意味著沒有人負責
6、出現(xiàn)一些任務,你根本無法認定它是否被完成了
開發(fā)
可能出現(xiàn)的問題
1、開卡太草率,沒有明確完成標準。不停返工
2、完成質量太低,提測的功能完全不達標,導致團隊辛苦但是沒有成效
3、不停調(diào)整架構和技術,不停倒騰代碼,但是沒有產(chǎn)出
4、沒有人知道現(xiàn)在的進度是提前還是落后,沒有人能判斷局面
5、前期QA沒有事情做,后期QA忙成狗
6、測試環(huán)境不斷被干擾,大量時間用來搞環(huán)境
7、士氣低落、相互抱怨,對目標失去信心
8、項目帶寬不足,即使家人都無法加速
9、項目出現(xiàn)單點,少部分人忙成狗,大部分人在等待依賴項
要
1、迭代!迭代!迭代!要求大家按照順序來做卡,盡量保證每張卡片做完了都能驗證,做完一張測一張,把QA的工作攤開,避免開發(fā)完成后一次性提交測試
2、每天早上晨會,每個人都參與發(fā)言。講一講昨天的任務是否完成,遇到什么問題,需要什么協(xié)助。項目經(jīng)理要告訴大家現(xiàn)在的進度如何,是否延遲。一定要表揚按時完成任務的同事,給沒有按時完成的人足夠的壓力
3、利用榮譽新和羞恥心來驅動團隊
4、每隔幾天找架構師聊一聊,問他是否清楚地知道項目目前的架構、部署存在哪些問題和風險
5、每隔幾天找需求方聊一聊,告訴他們目前的進展和系統(tǒng)功能,詢問是否存在需求變更的可能
6、項目過程保持透明,出了問題不要捂著,第一時間暴露、第一時間求助
7、在執(zhí)行過程中不斷了解每個同事的風格,哪些人偏樂觀、哪些人偏保守
8、對內(nèi)嚴格、公證、透明,對外要給團隊足夠的保護,讓大家有尊嚴地工作。搞好氣氛,讓大家high
9、可以為項目考慮一定的buffer,但是一定要有合理的理由,并且讓團隊知道
不要
1、晨會的時候一個人在那說
2、對于按時完成任務的同事和未按時完成任務的同事,你的態(tài)度沒有太大的差別
3、用錢驅動團隊
4、出了問題不求助、不報警,總是試圖自己解決
5、只考慮自己項目的成敗,不看產(chǎn)品和研發(fā)的大局
警惕
1、項目初期的幾天很輕松,這會導致項目后期忙成狗
2、RD告訴你,雖然出了問題,但是問題不大,很快能夠解決。一定要要求對方承諾解決時間并按時檢查,同時問問可能了解類似情況的同事,是否真的很簡單
3、希望你抽資源來支援其他工作的時候,要保持謹慎且開放的態(tài)度
4、團隊人員自行為自己的工作預留buffer,buffer可以留在明處,不能留在暗處
5、如果項目時間過半,你還非常忙,說明項目即將失敗。成功的項目一定是前期非常忙,后期越來越閑
上線
對于項目經(jīng)理來說,如果上線階段還非常忙,說明項目已經(jīng)失敗
可能出現(xiàn)的問題
1、Bug很多,越修越多
2、上線時發(fā)現(xiàn)部署環(huán)境和你計劃的完全是兩回事
3、性能和體驗查到無法忍受
4、代碼合并導致計劃外的bug
5、項目雖然成功了,團隊散了
要
1、遵循QA制定的上線流程
2、明確上線后系統(tǒng)應該如何被監(jiān)控,并保證監(jiān)控措施已經(jīng)實施
3、系統(tǒng)上線后通知需求方
4、安排項目總結工作,列出好的、不好的、需要改進的和后續(xù)行動項,落實到責任人
項目管理,服務而不是管理。