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