一、項(xiàng)目經(jīng)理和項(xiàng)目管理流程的價(jià)值
? ? 芯片或者復(fù)雜智能硬件基礎(chǔ)上的軟件開發(fā)是一項(xiàng)復(fù)雜的系統(tǒng)工程望忆,它需要不同模塊和專業(yè)的分工和協(xié)作开呐,隨著公司發(fā)展、項(xiàng)目和開發(fā)人員增多搜骡,在軟件內(nèi)部各部門以及軟件和其上下游(芯片/硬件/測試/市場等)之間的協(xié)同和溝通工作將成為整個(gè)項(xiàng)目交付的關(guān)鍵路徑拂盯。此時(shí)因?yàn)榭绮块T的溝通渠道不暢或流程缺失通常會(huì)帶來一系列問題:比如項(xiàng)目進(jìn)度延誤(進(jìn)度管理),前期需求不明確记靡、中后期需求變更頻繁(范圍管理)谈竿,前期交付標(biāo)準(zhǔn)不清晰、后期交付質(zhì)量不達(dá)標(biāo)(質(zhì)量管理)摸吠,部門間職責(zé)不清空凸、關(guān)鍵事項(xiàng)丟球漏球無人check、研發(fā)士氣低落(資源/溝通管理)寸痢,成本超支(成本管理)等呀洲。
? ? 而初創(chuàng)公司由于團(tuán)隊(duì)是新組建的特點(diǎn),上述問題可能會(huì)更加突出,主要原因是團(tuán)隊(duì)成員來自不同背景的公司两嘴,在研發(fā)流程和習(xí)慣甚至一些專業(yè)術(shù)語丛楚、文檔撰寫邏輯上都存在差異族壳,如果沒有建立統(tǒng)一的規(guī)范憔辫,造成項(xiàng)目前期團(tuán)隊(duì)文化打磨時(shí)間長影響效率;另外初創(chuàng)公司對(duì)產(chǎn)品的快速交付有較大的壓力仿荆,對(duì)研發(fā)進(jìn)度和產(chǎn)品交付周期有較高的要求贰您,而上述的公司可能的問題就會(huì)對(duì)項(xiàng)目的交付形成掣肘,雖然各個(gè)部門都在努力奮戰(zhàn)拢操,但整體產(chǎn)出效果并不明顯锦亦。
? ? 為解決以上問題就需要一位經(jīng)驗(yàn)豐富的項(xiàng)目經(jīng)理從軟件整體交付的角度出發(fā),對(duì)公司現(xiàn)有流程進(jìn)行梳理和總結(jié)令境,對(duì)已得到證明的項(xiàng)目管理理論(PMP/ACP)和過往的實(shí)踐經(jīng)驗(yàn)進(jìn)行裁剪和定制杠园,逐步建立一套完整但輕量的的研發(fā)/項(xiàng)目管理體系和流程來建立跨部門、跨專業(yè)協(xié)同和溝通的渠道和規(guī)范舔庶。項(xiàng)目經(jīng)理從項(xiàng)目的范圍抛蚁、進(jìn)度、成本惕橙、質(zhì)量四個(gè)方面按PDCA循環(huán)的流程不斷監(jiān)控項(xiàng)目狀態(tài)瞧甩,并通過風(fēng)險(xiǎn)/溝通/干系人等方面的協(xié)同管理,分析出當(dāng)前項(xiàng)目狀態(tài)和存在的重大問題弥鹦,并組織資源解決實(shí)際狀態(tài)和目標(biāo)之間的差異肚逸,從而使項(xiàng)目受控。對(duì)于開發(fā)和測試人員來講項(xiàng)目經(jīng)理是喊號(hào)子的人彬坏,統(tǒng)一大家的步伐朦促,使各個(gè)模塊的分力能夠合成最大的合力,推動(dòng)項(xiàng)目的正乘ㄊ迹快速前進(jìn)务冕,保證項(xiàng)目的交付。
? ? 公司維度的項(xiàng)目管理流程體系建立后混滔,項(xiàng)目的過程文檔使得項(xiàng)目變得可回溯洒疚,項(xiàng)目中或者項(xiàng)目結(jié)束后通過對(duì)問題的回溯把人的問題轉(zhuǎn)化為流程缺失或不健全的問題,進(jìn)而去補(bǔ)全和優(yōu)化流程坯屿。然后通過另外的項(xiàng)目檢驗(yàn)這些流程油湖,最終形成組織過程資產(chǎn),再去指導(dǎo)新的項(xiàng)目和新的項(xiàng)目成員领跛。長此以往乏德,就建立了研發(fā)/測試人員對(duì)這套流程和體系的整體認(rèn)識(shí),進(jìn)一步減少溝通成本,提高工程效率喊括,保證新項(xiàng)目的正常交付胧瓜。
二、項(xiàng)目管理體系在的芯片和互聯(lián)網(wǎng)硬件公司的探索
? ? 以下項(xiàng)目管理理論在傳統(tǒng)瀑布模式(芯片公司)和敏捷模式(互聯(lián)網(wǎng)+智能硬件產(chǎn)品)兩種形式下的不同展現(xiàn)和探索郑什。
? ? 2.1 芯片公司的瀑布模式
? ? X訊是一家芯片Turkey方案廠商府喳,它有一套成熟的產(chǎn)品開發(fā)流程。流程是一種系統(tǒng)化的管理方法蘑拯,是建立在對(duì)以往成功經(jīng)驗(yàn)的總結(jié)钝满,通用流程是對(duì)項(xiàng)目共性的總結(jié),提取出了工程過程的一致性申窘,而在執(zhí)行具體項(xiàng)目時(shí)要注意處理好共性和個(gè)性之間的關(guān)系弯蚜,處理好經(jīng)驗(yàn)和創(chuàng)新之間的平衡。這套管理系統(tǒng)通過產(chǎn)品開發(fā)流程協(xié)同了市場剃法、產(chǎn)品碎捺、芯片、硬件贷洲、軟件收厨、測試、售后等各個(gè)部門恩脂,完成了項(xiàng)目最終的turnkey solution交付帽氓。同時(shí)在具體項(xiàng)目的實(shí)踐中一定程度上也推動(dòng)了流程優(yōu)化和組織能力提升。
? ? 分解到軟件的子開發(fā)流程和項(xiàng)目管理模式俩块,一脈相承的思想是要建立結(jié)構(gòu)化的項(xiàng)目管理流程黎休,將整個(gè)軟件產(chǎn)品的開發(fā)過程納入一個(gè)邏輯框架中,以保證相關(guān)人員能有共同的認(rèn)識(shí)玉凯,知曉項(xiàng)目的每個(gè)里程碑势腮、知道如何相互協(xié)調(diào)好配合。
? ? 軟件的具體開發(fā)階段如下:
? ? 1漫仆、需求定義/風(fēng)險(xiǎn)評(píng)估/儲(chǔ)備技術(shù)提前開發(fā)階段
? ? 2捎拯、FPGA/Zebu驗(yàn)證階段(verification)
? ? ? ? pre-silicon verification階段目標(biāo)是通過測試左移提前發(fā)現(xiàn)芯片設(shè)計(jì)問題,軟件需要關(guān)注代碼在驗(yàn)證環(huán)境和芯片環(huán)境存在的不同盲厌,以便代碼后續(xù)移植
? ? 3署照、BringUp(芯片/硬件/軟件)和Pre-PTR0
? ? ? ? post-silicon validation:ATE -> 小code -> 大code
? ? 4、PTR0(項(xiàng)目準(zhǔn)入階段)
? ? 5吗浩、PTR1(全功能和功耗測試階段)
? ? ? ? DDR/CPU固定頻點(diǎn)建芙,保證穩(wěn)定調(diào)試軟件功能
? ? 6、PTR2(功能/功耗/性能/穩(wěn)定性調(diào)優(yōu)階段)
? ? ? ? 逐步打開和合入DFS/DVFS/CPU hotplug/thermal策略等系統(tǒng)級(jí)feature懂扼, 同步進(jìn)行穩(wěn)定性測試和性能測試禁荸,比如高低溫/mp4軟硬解播放/掉電測試/adb push/Monkey/MTBF等
? ? 7右蒲、PTR3(RC階段,支持alpha客戶量產(chǎn))
? ? 在上述的每個(gè)階段赶熟,都有準(zhǔn)入和準(zhǔn)出的標(biāo)準(zhǔn)瑰妄,包括必要的文檔/測試報(bào)告和評(píng)審結(jié)論,比如PTR0階段的檢查項(xiàng)目和準(zhǔn)出標(biāo)準(zhǔn)如下表
? ? 通過上述每個(gè)檢查項(xiàng)的準(zhǔn)備映砖,將項(xiàng)目的狀態(tài)/工作包/風(fēng)險(xiǎn)和計(jì)劃進(jìn)行了充分的梳理和確認(rèn)间坐,在項(xiàng)目前期各個(gè)部門明晰了工作責(zé)任/計(jì)劃、識(shí)別了風(fēng)險(xiǎn)并形成了應(yīng)對(duì)方案啊央,將極大的保證了項(xiàng)目的如期成功交付(特別是軟件部分)眶诈。
? ? 2.2 互聯(lián)網(wǎng)+智能硬件產(chǎn)品的敏捷探索
? ? X戶是一家有互聯(lián)網(wǎng)基因的機(jī)器人產(chǎn)品公司,在機(jī)器人量產(chǎn)之后瓜饥,我們根據(jù)公司的實(shí)際情況對(duì)敏捷開發(fā)模式進(jìn)行裁剪和改善,在整體為Scrum框架并且遵照3355儀式的情況下浴骂,探索出了軟件版本列車的"班車"和"搭車"制度乓土、四級(jí)灰度制度、需求評(píng)審和需求變更流程溯警、用戶反饋流程等趣苏;在開發(fā)過程中也吸收了kanban(看板)、XP(極限編程)等一些開發(fā)實(shí)踐來提高工程效率梯轻。
? ? 互聯(lián)網(wǎng)開發(fā)模式講究小步快跑食磕、快速迭代業(yè)務(wù),快速試錯(cuò)喳挑,通過用戶反饋來優(yōu)化業(yè)務(wù)設(shè)計(jì)和流程彬伦;而機(jī)器人的系統(tǒng)和算法是底層能力,對(duì)穩(wěn)定性要求高伊诵,需要充分驗(yàn)證和盡量少更新单绑;為了解決“快業(yè)務(wù)”、“穩(wěn)系統(tǒng)”曹宴、“準(zhǔn)算法”之間的矛盾搂橙,我們制定了版本列車規(guī)則,系統(tǒng)和算法需要滿足一定的條件(專項(xiàng)測試流程)才能進(jìn)入版本列車笛坦,具體如下:
? ? ? ? 業(yè)務(wù):采用“班車制”区转,Scrum兩周一個(gè)版本,班車不晚點(diǎn)版扩;
? ? ? ? 系統(tǒng):“搭車制”废离,對(duì)于輪轂驅(qū)動(dòng)、底層時(shí)序等相關(guān)修改资厉,專項(xiàng)壓測通過后才能“搭車”->系統(tǒng)測試厅缺;
? ? ? ? 算法:“搭車制”,視覺/語音/SLAM算法更新后,需要經(jīng)過研發(fā)自測->專項(xiàng)測試->系統(tǒng)測試湘捎。
? ? 這樣在整體版本為敏捷模式的情況下诀豁,將系統(tǒng)/算法也納入流程,統(tǒng)一了版本節(jié)奏窥妇,減少了開發(fā)/測試中的人的因素的影響舷胜,通過這個(gè)流程和例行的儀式來代替人的個(gè)例溝通,極大的減少了溝通成本和因溝通渠道不暢或個(gè)體原因造成的返工活翩。
? ? 在版本灰度制度上烹骨,整體有四級(jí)灰度(參見下表),一個(gè)月兩個(gè)版本材泄,一個(gè)穩(wěn)定版(主要修bug/少量feature)沮焕,一個(gè)開發(fā)版(大量feature/新鮮功能體驗(yàn)),穩(wěn)定版本會(huì)全量發(fā)布拉宗,開發(fā)版進(jìn)行到三級(jí)灰度(客戶可以申請(qǐng)進(jìn)入此灰度名單)峦树。
? 通過四級(jí)灰度和穩(wěn)定版/開發(fā)版的版本縱深,既滿足了業(yè)務(wù)快速迭代的需求旦事,保證了穩(wěn)定版全量時(shí)rom的驗(yàn)證的時(shí)間魁巩,確保了版本質(zhì)量。