研發(fā)痛點(diǎn)
軟件項(xiàng)目的研發(fā),不只是“寫(xiě)寫(xiě)代碼,改改Bug”這么簡(jiǎn)單。
創(chuàng)業(yè)團(tuán)隊(duì)早期注重野蠻生長(zhǎng)和快速擴(kuò)展,隨著人員越多,業(yè)務(wù)越復(fù)雜,涉及的技術(shù)領(lǐng)域越廣,更需要一套完整、清晰、規(guī)范的研發(fā)協(xié)作流程。否則,就會(huì)容易陷入團(tuán)隊(duì)混亂、流程混亂、項(xiàng)目混亂、系統(tǒng)混亂的窘境。
一旦陷入混亂,就會(huì)對(duì)以下常見(jiàn)的研發(fā)痛點(diǎn)更加深有體會(huì):
- 都是“一句話(huà)需求”,開(kāi)發(fā)不知要做什么,測(cè)試人員不知要測(cè)什么,只能邊做邊想,很可能做到最后做不下去,前面的時(shí)間白白浪費(fèi),需求擱置;
- 需求混亂,需求方或產(chǎn)品經(jīng)理直接找一線開(kāi)發(fā)人員,誰(shuí)提的需求急就先做誰(shuí)的,開(kāi)發(fā)人員每天都很忙,天天在加班,但總感覺(jué)整體的產(chǎn)能不是那么理解;
- 時(shí)不時(shí)出現(xiàn)線上故障,不知道又是誰(shuí)在發(fā)布了什么系統(tǒng),不斷“救火”;
- 內(nèi)部的溝通協(xié)作沖突明顯,消息得不到有效的流轉(zhuǎn)和同步,甚至開(kāi)會(huì)時(shí)公然拍桌子叫板;
- 團(tuán)隊(duì)不穩(wěn)定,人員流動(dòng)率高……
嚴(yán)控兩個(gè)源頭:需求 源代碼
軟件工程是一門(mén)學(xué)科,引自百度百科的定義:
軟件工程是一門(mén)研究用工程化方法構(gòu)建和維護(hù)有效、實(shí)用和高質(zhì)量的軟件的學(xué)科。
為了構(gòu)建和維護(hù)有效、實(shí)用和高質(zhì)量的軟件,勢(shì)必會(huì)存在對(duì)應(yīng)的解決方案。
追本溯源,我建議可以從兩個(gè)源頭進(jìn)行嚴(yán)格的控制。
一方面,嚴(yán)控需求源頭。
需求提出后,產(chǎn)品經(jīng)理要對(duì)需求進(jìn)行文檔化。不管是用Word文檔,還是使用Axure的專(zhuān)業(yè)制作工具。好的需求文檔,是整個(gè)協(xié)作流程的起點(diǎn)。壞的需求,自提出后,就會(huì)持續(xù)污染下游和后續(xù)的協(xié)作流程,包括:開(kāi)發(fā)對(duì)需求不明確、測(cè)試對(duì)需求不理解、上線后客服和用戶(hù)對(duì)需求的價(jià)值不清晰、后續(xù)發(fā)生了故障無(wú)法維護(hù)。更重要的是,需求不明確或沒(méi)有記載,非常容易產(chǎn)生“糾紛”和“扯皮”,影響內(nèi)部協(xié)作的氛圍,增加內(nèi)耗,損失時(shí)間成本不說(shuō),還損傷心情和增加心理負(fù)擔(dān)。除了做好需求記錄,還要做好需求評(píng)審。千萬(wàn)不要各自去猜產(chǎn)品的需求。
圖片來(lái)自于網(wǎng)絡(luò)
另一方面,嚴(yán)控代碼質(zhì)量。
需求規(guī)劃和整理得再好,如果施工執(zhí)行不當(dāng),也會(huì)大打折扣。Bug問(wèn)題多,上線后容易出故障,維護(hù)成本高,存在安全漏洞,用戶(hù)使用困難和體驗(yàn)差,對(duì)不同終端設(shè)備兼容性差等。嚴(yán)控代碼質(zhì)量,更為有效的方式是三角驗(yàn)證,通過(guò)第三方來(lái)評(píng)定。例如:測(cè)試驗(yàn)收、進(jìn)行相互code reivew、使用Sonar等專(zhuān)業(yè)工具分析評(píng)估靜態(tài)代碼質(zhì)量、通過(guò)自動(dòng)化測(cè)試測(cè)試進(jìn)行360度全方位的白盒測(cè)試、要求開(kāi)發(fā)人員針對(duì)復(fù)雜和核心的需求提供技術(shù)開(kāi)發(fā)文檔并進(jìn)行審查。
需求是方向,方向不明確則越走越步履維艱;代碼是根基,根基不穩(wěn)則越蓋越可怕。
系統(tǒng)非常穩(wěn)定,圖片來(lái)自于網(wǎng)絡(luò)
閉環(huán)管理的意義
作為技術(shù)負(fù)責(zé)人,或者作為老板,要考慮研發(fā)的整體閉環(huán)管理。
首先,要對(duì)整個(gè)團(tuán)隊(duì)和最終的結(jié)果負(fù)責(zé)任。
其次,要基于對(duì)結(jié)果負(fù)責(zé)的目標(biāo),制定和構(gòu)建團(tuán)隊(duì)的協(xié)作流程和規(guī)范,以敏捷開(kāi)發(fā)為藍(lán)本,結(jié)合人員、業(yè)務(wù)特點(diǎn)、每周的時(shí)間線、內(nèi)部的習(xí)慣和偏好,搭建閉環(huán)管理。
最后,落地實(shí)施。
閉環(huán)管理的意義在于形成正向的反饋和閉環(huán),使得技術(shù)人員有成長(zhǎng)、項(xiàng)目可以更快更穩(wěn)持續(xù)迭代升級(jí)、公司的業(yè)務(wù)持續(xù)增長(zhǎng)和迎來(lái)新的突破。猶如種子破土而出,向陽(yáng)而生,開(kāi)枝散葉,欣欣向榮。
所以,從個(gè)人、到項(xiàng)目、再到企業(yè),分為三個(gè)閉環(huán)。
個(gè)人小閉環(huán):注重高效的個(gè)人工作和習(xí)慣偏好,同時(shí)也要注意讓團(tuán)隊(duì)成員每個(gè)人能充分發(fā)揮各自的優(yōu)勢(shì)和主觀能動(dòng)性,發(fā)揮集成智慧的力量。明確好職責(zé)和分工。
項(xiàng)目閉環(huán):軟件開(kāi)發(fā)是一個(gè)需要高智力、頻繁溝通和密切協(xié)作的過(guò)程。從一個(gè)抽象的需求提出來(lái),到最終發(fā)布上線交付有價(jià)值且可正常運(yùn)行的軟件,這個(gè)過(guò)程需要多個(gè)部門(mén)、多個(gè)學(xué)科領(lǐng)域進(jìn)行通力配合。由此,每次項(xiàng)目迭代的時(shí)間越緊湊,這個(gè)組織就越有活力;迭代得越頻繁,企業(yè)的產(chǎn)品和業(yè)務(wù)就越有市場(chǎng)競(jìng)爭(zhēng)力。當(dāng)然,前提是,不以過(guò)度損壞項(xiàng)目質(zhì)量為前提。
創(chuàng)業(yè)大閉環(huán):把軟件產(chǎn)品做出來(lái)是一回事,把產(chǎn)品賣(mài)出去又是另一回事,把產(chǎn)品賣(mài)出去同時(shí)提供好售后技術(shù)服務(wù)又是另一回事。如果要贏得客戶(hù)的信任和口碑,需要整個(gè)企業(yè)組織更加密切地配合。大閉環(huán)跑通,通過(guò)MVP以最小的代價(jià)成本和風(fēng)險(xiǎn)驗(yàn)證產(chǎn)品,把產(chǎn)品賣(mài)出去以贏得付費(fèi)客戶(hù),跑出ROI、ARR、付費(fèi)漏斗和“性感的”增長(zhǎng)曲線。
軟件研發(fā)全流程閉環(huán)管理
結(jié)合我們自己在使用以及研發(fā)的YesDev工具,粗略分享下如何構(gòu)建自己創(chuàng)業(yè)團(tuán)隊(duì)的閉環(huán)管理。分別五個(gè)主要步驟:
- Step 1. 需求池維護(hù)(需求越簡(jiǎn)陋,協(xié)作越痛苦)
- Step 2. 項(xiàng)目迭代(計(jì)劃、統(tǒng)籌和協(xié)調(diào)能力)
- Step 3. 即時(shí)研發(fā)協(xié)作流(專(zhuān)注當(dāng)下的高效工作)
- Step 4. 增量跟蹤(風(fēng)險(xiǎn)把控,積極達(dá)成目標(biāo))
- Step 5. 一鍵發(fā)布(持續(xù)交付)
依次介紹如下。
Step 1. 需求池維護(hù)(需求越簡(jiǎn)陋,協(xié)作越痛苦)
堅(jiān)持:一切需求,統(tǒng)一記錄到需求池里。
針對(duì)需求,可以由產(chǎn)品經(jīng)理或產(chǎn)品專(zhuān)員統(tǒng)一收集和記錄,并整理成需求文檔,在產(chǎn)品內(nèi)部評(píng)審?fù)ㄟ^(guò)后,再流轉(zhuǎn)給研發(fā)部門(mén)進(jìn)行需求評(píng)審。
1、直接用富文本編輯器(會(huì)記錄需求的歷史變更)
2、上傳Axure制作的PRD,并關(guān)聯(lián)到需求
3、上傳word或excel等需求文檔的附件(word可以直接粘貼)
4、如果是使用第三方平臺(tái)制作PRD,可以以鏈接形式提交,例如:墨刀、藍(lán)湖的鏈接。
需求要記得做好記錄,切莫以龐大的大版本需求為主,應(yīng)以具體、細(xì)小、清晰的需求為工作單元。
Step 2. 項(xiàng)目迭代(計(jì)劃、統(tǒng)籌和協(xié)調(diào)能力)
梳理好需求后,下一步就是進(jìn)行需求評(píng)審,然后由技術(shù)負(fù)責(zé)人員組織開(kāi)發(fā)人員和測(cè)試人員進(jìn)行開(kāi)發(fā)排期。細(xì)說(shuō)下來(lái)就是:
1、需求評(píng)審?fù)ㄟ^(guò)后(若需求評(píng)審不通過(guò),應(yīng)打回,下次再評(píng)),規(guī)劃好迭代的需求,指定項(xiàng)目負(fù)責(zé)人;
2、由負(fù)責(zé)開(kāi)發(fā)的人員和測(cè)試人員評(píng)估工時(shí)和計(jì)劃完成時(shí)間;
評(píng)估后的任務(wù)列表:
3、匯總項(xiàng)目總工時(shí)、項(xiàng)目排期和開(kāi)發(fā)計(jì)劃。
項(xiàng)目總工時(shí)體現(xiàn)了本次項(xiàng)目迭代需要投入的人力成本,
項(xiàng)目排期,可以讓你提前知道項(xiàng)目的里程碑和計(jì)劃完成時(shí)間,
開(kāi)發(fā)計(jì)劃表,可以讓你更精確地把控每個(gè)計(jì)劃的細(xì)節(jié)和更充分的信息,
4、使用項(xiàng)目燃盡圖持續(xù)跟進(jìn)項(xiàng)目的進(jìn)度和把控延期風(fēng)險(xiǎn),直到項(xiàng)目完成。
Step 3. 即時(shí)研發(fā)協(xié)作流(專(zhuān)注當(dāng)下的高效工作)
高效的協(xié)作,離不開(kāi)頻繁的溝通,包括:面對(duì)面交流、每日站會(huì)、會(huì)議、視頻,這些都需要實(shí)時(shí)和被動(dòng)的通知。
為此,我們需要在日常辦公中使用最多最頻繁的企業(yè)微信群、釘釘群或飛書(shū)群中,和項(xiàng)目干系人等其他部門(mén),一起圍繞某個(gè)項(xiàng)目或產(chǎn)品線接收公開(kāi)、實(shí)時(shí)的項(xiàng)目動(dòng)態(tài)消息。
例如需求指派的通知:
又如Bug修復(fù)的通知:
群消息的意義和作用在于,讓項(xiàng)目成員同步接收公開(kāi)、透明和一致的實(shí)時(shí)消息動(dòng)態(tài)。同時(shí),郵件通知?jiǎng)t是針對(duì)具體的工作負(fù)責(zé)人,進(jìn)行的點(diǎn)對(duì)點(diǎn)的精準(zhǔn)通知和推送。
例如Bug指派時(shí)的郵件通知:
更為重要的是,除了給開(kāi)發(fā)人員提供實(shí)時(shí)的消息通知外,還要在減少對(duì)開(kāi)發(fā)人員的干擾和不增加額外的人工操作成本,實(shí)現(xiàn)更高效、自動(dòng)化和簡(jiǎn)單易用的協(xié)作流。這時(shí),就需要用到GitOps了,即通過(guò)集成Git代碼提交和關(guān)聯(lián)到Y(jié)esDev,同時(shí)實(shí)現(xiàn)智能通知和自動(dòng)流轉(zhuǎn)。
例如,按以下格式,
需求注釋格式是:
需求#{需求ID}:開(kāi)發(fā)人員填寫(xiě)的注釋內(nèi)容
其中,{需求ID}對(duì)應(yīng)YesDev的需求ID,注釋示例:
需求#666:首頁(yè)靜態(tài)頁(yè)面開(kāi)發(fā)
在開(kāi)發(fā)人員提交注釋后,就可以自動(dòng)完成以下事情和動(dòng)作。
1、需求狀態(tài),自動(dòng)更新為【研發(fā)中】,方便更新和提供最新最準(zhǔn)確的開(kāi)發(fā)進(jìn)度;
2、自動(dòng)備注和上屏,方便針對(duì)需求進(jìn)行code review(現(xiàn)有的Git工具都是針對(duì)分支的code review);
3、自動(dòng)為開(kāi)發(fā)人員添加當(dāng)天的任務(wù),減少每天登記工時(shí)的煩惱;
4、發(fā)送必要、精準(zhǔn)的郵件通知和IM群通知推送;
5、聯(lián)動(dòng)記錄變更,形成操作記錄。
你也可以通過(guò)統(tǒng)計(jì)報(bào)表,查看團(tuán)隊(duì)成員最近的活躍程度。
Step 4. 增量跟蹤(風(fēng)險(xiǎn)把控,積極達(dá)成目標(biāo))
項(xiàng)目迭代顆粒度大時(shí),你可以使用有效的工具和方式,進(jìn)行更有針對(duì)性的管控,抓住核心,有的放矢。
一方面,你可以使用項(xiàng)目的任務(wù)看板,和敏捷看板,在每日站會(huì)時(shí),實(shí)時(shí)更新團(tuán)隊(duì)的最新動(dòng)態(tài)和遇到的問(wèn)題。
另一方面,除了可以用項(xiàng)目的燃盡圖跟蹤單個(gè)項(xiàng)目的進(jìn)度和風(fēng)險(xiǎn)外,你也可以使用項(xiàng)目甘特圖和導(dǎo)出Excel,對(duì)多個(gè)項(xiàng)目或項(xiàng)目集進(jìn)行宏觀的分析和統(tǒng)籌。
還有,就是要學(xué)會(huì)看懂?dāng)?shù)據(jù),并使用郵件進(jìn)行有效地向上匯報(bào)。
為此,針對(duì)單個(gè)項(xiàng)目,可以使用項(xiàng)目匯總郵件,自動(dòng)對(duì)比上一次的發(fā)送結(jié)果,從而可以有效地追蹤在此的持續(xù)變化和增量?jī)?nèi)容。
在時(shí)間周期維度,可以按周或按每周二、每周四等時(shí)間頻率進(jìn)行匯總匯報(bào),結(jié)合郵件和清晰完整的Excel附件,為上級(jí)提供簡(jiǎn)要和充分的數(shù)據(jù)和信息,輔助上級(jí)做出決策。
Step 5. 一鍵發(fā)布(持續(xù)交付)
最后,還可以接入一鍵發(fā)布。
在工作臺(tái)上,找到一鍵發(fā)布。
進(jìn)入一鍵發(fā)布后,就可以選擇需要發(fā)布的系統(tǒng),并關(guān)聯(lián)到項(xiàng)目。
也可以查看發(fā)布?xì)v史記錄,
以及發(fā)布成功后的群通知:
至此,從一個(gè)需求提出到發(fā)布上線,中間的研發(fā)閉環(huán)已經(jīng)跑通。
更多的功能,以及具體的作用,可以直接免費(fèi)注冊(cè)YesDev體驗(yàn)使用。
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶(hù)自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。