日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問(wèn)題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營(yíng)銷解決方案
一文告訴你為什么代碼提交要關(guān)聯(lián)需求和任務(wù)信息

記得原來(lái)有一次聽(tīng)到一個(gè)開(kāi)發(fā)同學(xué)抱怨說(shuō)為啥每次Commit都必須要填寫commit message呢?他覺(jué)得有些浪費(fèi)時(shí)間,因此想出了各種辦法來(lái)應(yīng)對(duì),比如輸入一個(gè)句點(diǎn)或復(fù)制粘貼上個(gè)commit message等。這種一時(shí)偷懶的做法,卻會(huì)給其他合作開(kāi)發(fā)的伙伴帶來(lái)很多煩惱,這些不知所云的commmit message不僅不能很好代表每次代碼提交的用途,還會(huì)成為垃圾信息給團(tuán)隊(duì)帶來(lái)干擾。

成都創(chuàng)新互聯(lián)主要從事成都網(wǎng)站建設(shè)、成都做網(wǎng)站、網(wǎng)頁(yè)設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)隆堯,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價(jià)格優(yōu)惠、服務(wù)專業(yè),歡迎來(lái)電咨詢建站服務(wù):028-86922220

git commit -m “.”

不過(guò)現(xiàn)在很多開(kāi)發(fā)團(tuán)隊(duì)已經(jīng)通過(guò)約定代碼提交規(guī)范來(lái)約束提交信息的規(guī)范化,比如必須包含類型(新功能、修復(fù)缺陷或者增加測(cè)試等)和主題(提交代碼的簡(jiǎn)短描述)信息。

git commit -m “feature:用戶查詢接口開(kāi)發(fā)”

可以看到在代碼提交信息中增加目的描述,是為了使代碼的作用通過(guò)文字顯式地展示出來(lái)。比如一看提交信息就知道這段代碼是為了開(kāi)發(fā)某個(gè)新的需求功能,而不用去通過(guò)逐行瀏覽代碼才能了解其含義。更進(jìn)一步的做法是,直接使代碼的提交與需求、任務(wù)或者缺陷等建立關(guān)聯(lián)。拿GitHub舉例,需求和缺陷都可以通過(guò)issue來(lái)進(jìn)行管理,而只每次在代碼提交信息中輸入issue的ID就可以了,如下:

git commit -m “#10 issueid”

還可以通過(guò)在commit信息中輸入close等指令來(lái)實(shí)現(xiàn)issue狀態(tài)的修改,如下:

git commit -m “close #10 issueid”

直接通過(guò)git命令就實(shí)現(xiàn)了issue的關(guān)閉:

為什么代碼提交要關(guān)聯(lián)需求和任務(wù)信息

看到這里,我想你可能要問(wèn):我為什么要每次提交代碼的時(shí)候,要費(fèi)勁地先去查詢下IssueID呢,這樣做能帶來(lái)什么收益呢?下面我就來(lái)給你捋一捋:

1. 研發(fā)過(guò)程資產(chǎn)的可度量

代碼是一種很重要的研發(fā)過(guò)程資產(chǎn),而其原生狀態(tài)又是一種非結(jié)構(gòu)化的數(shù)據(jù)信息,無(wú)法很直觀的與管理者所關(guān)注的項(xiàng)目或者需求關(guān)聯(lián)起來(lái)。如果沒(méi)有好的數(shù)據(jù)管理和度量機(jī)制,管理者角度就只能通過(guò)會(huì)議和溝通等手段從一線工程師那里獲取一些主觀的描述。如需求和任務(wù)的工作量大小、細(xì)化到需求和任務(wù)維度的代碼質(zhì)量和風(fēng)險(xiǎn)等數(shù)據(jù),這些數(shù)據(jù)在做項(xiàng)目復(fù)盤、資源評(píng)估、質(zhì)量和風(fēng)險(xiǎn)評(píng)估等環(huán)節(jié)都是非常重要的參考依據(jù)。

通過(guò)提交信息中關(guān)聯(lián)需求和任務(wù)ID,就可以得到以下的數(shù)據(jù):

以上是基礎(chǔ)數(shù)據(jù)的匯總計(jì)算,還可以引入需求和任務(wù)維度的代碼復(fù)雜度、代碼當(dāng)量和測(cè)試覆蓋率等數(shù)據(jù)。

2. 精細(xì)化的代碼質(zhì)量和風(fēng)險(xiǎn)管控

質(zhì)量和風(fēng)險(xiǎn)的管控都是需要投入成本的,而通過(guò)實(shí)現(xiàn)代碼和需求及任務(wù)的關(guān)聯(lián),可以設(shè)計(jì)更細(xì)粒度的質(zhì)量和風(fēng)險(xiǎn)管控策略,在早期的質(zhì)量預(yù)防、中期的風(fēng)險(xiǎn)發(fā)現(xiàn)和后期的問(wèn)題復(fù)盤都可以很大程度上減少成本投入。目前大家所說(shuō)的精準(zhǔn)化測(cè)試的方法就是基于此策略,設(shè)計(jì)測(cè)試策略時(shí)可以依據(jù)需求來(lái)劃定代碼變更范圍,再針對(duì)一定范圍內(nèi)的代碼變更來(lái)設(shè)計(jì)高覆蓋率的測(cè)試策略,從而避免由于全量執(zhí)行測(cè)試用例帶來(lái)的高成本。

另外還可以把代碼掃描、單元測(cè)試和代碼評(píng)審等質(zhì)量卡點(diǎn)與需求和任務(wù)的流轉(zhuǎn)狀態(tài)相關(guān)聯(lián),做到需求和任務(wù)維度的質(zhì)量?jī)?nèi)建和測(cè)試左移。

3. 開(kāi)發(fā)者視角的收益

如果你是一位一線工程師,看完以上兩點(diǎn)收益,肯定會(huì)覺(jué)得這都是管理的訴求,那從工程師的視角來(lái)看又會(huì)有哪些收益呢?

(1) 減少為了研發(fā)效能度量而做一些額外工作

研發(fā)效能度量,需要度量需求的在各個(gè)階段的停留時(shí)長(zhǎng),比如開(kāi)發(fā)時(shí)長(zhǎng),比較傳統(tǒng)的做法是需要研發(fā)同學(xué)開(kāi)始寫代碼的時(shí)候,在研發(fā)協(xié)同平臺(tái)上更新下需求和任務(wù)的狀態(tài),寫完了提交測(cè)試后再去更新?tīng)顟B(tài)。這些重復(fù)性的工作,還是需要占用不少時(shí)間的,那么通過(guò)需求任務(wù)和代碼提交建立關(guān)聯(lián),就可以通過(guò)代碼提交等事件來(lái)自動(dòng)化觸發(fā)需求和任務(wù)狀態(tài)的流轉(zhuǎn),這樣還能自動(dòng)把對(duì)應(yīng)的開(kāi)始時(shí)間和結(jié)束時(shí)間都自動(dòng)記錄下來(lái),從而便于高效和準(zhǔn)確地開(kāi)展研發(fā)效能度量。

(2) 從代碼為主的技術(shù)視角逐步擴(kuò)展到關(guān)注需求價(jià)值的全局視角

由于管理者和業(yè)務(wù)方更關(guān)注需求價(jià)值和項(xiàng)目交付進(jìn)度,而一線研發(fā)工程師往往更加關(guān)注技術(shù)細(xì)節(jié),這樣就容易造成管理者和業(yè)務(wù)視角獲得的信息和工程師視角之間的割裂,比如作為研發(fā)leader為了緊急的項(xiàng)目或者需求焦慮不已,而作為一線工程師又各自在沉浸在自己的代碼世界里不明所以。那么通過(guò)代碼提交和需求任務(wù)建立關(guān)聯(lián),開(kāi)發(fā)工程師關(guān)注代碼本身的同時(shí),還可以通過(guò)匯總代碼倉(cāng)庫(kù)級(jí)或者版本所實(shí)現(xiàn)的需求價(jià)值和完成的開(kāi)發(fā)任務(wù),從而能夠更加關(guān)注業(yè)務(wù)價(jià)值,通過(guò)技術(shù)視角和業(yè)務(wù)視角的結(jié)合,助推技術(shù)職業(yè)生涯的更好發(fā)展。

代碼關(guān)聯(lián)需求和任務(wù)的功能擴(kuò)展

文章的前面只是介紹了從命令行提交代碼的時(shí)候,如何與需求和任務(wù)信息建立關(guān)聯(lián)。而要帶來(lái)更多的收益,只有這個(gè)功能就不能完全滿足了。完整的功能一般通過(guò)與協(xié)作工具的配合來(lái)完成,如Jira就實(shí)現(xiàn)需求/任務(wù)和開(kāi)發(fā)分支的關(guān)聯(lián),還可以通過(guò)配置工作流來(lái)實(shí)現(xiàn)在線創(chuàng)建分支的同時(shí)觸發(fā)需求/任務(wù)的狀態(tài)變化(進(jìn)入開(kāi)發(fā)狀態(tài))。下圖為需求/任務(wù)卡片詳情頁(yè)面的開(kāi)發(fā)信息的展示,可以看到關(guān)聯(lián)了一個(gè)開(kāi)發(fā)分支,可以通過(guò)點(diǎn)擊分支到代碼庫(kù)的分支詳情頁(yè)面。

“功能拓展建議:在需求/任務(wù)已經(jīng)關(guān)聯(lián)一個(gè)代碼分支的前提下,可以通過(guò)規(guī)則設(shè)定實(shí)現(xiàn)該分支下的所有代碼提交都自動(dòng)關(guān)聯(lián),這樣就不需要每個(gè)Commit信息里都填寫需求和任務(wù)ID信息了。”

目前很多協(xié)同平臺(tái)的做法是,除了實(shí)現(xiàn)除了提交信息和分支與需求/任務(wù)的關(guān)聯(lián),還可以關(guān)聯(lián)代碼庫(kù)的合并請(qǐng)求。另外還可以實(shí)現(xiàn)需求/任務(wù)與測(cè)試過(guò)程資產(chǎn)的關(guān)聯(lián)。

具體的實(shí)現(xiàn)方式有兩種:一種是在協(xié)同平臺(tái)的需求/任務(wù)卡片上通過(guò)手動(dòng)操作來(lái)選擇需要關(guān)聯(lián)的信息,第二種是通過(guò)代碼倉(cāng)庫(kù)和測(cè)試管理系統(tǒng)這樣的三方工具平臺(tái)主動(dòng)上報(bào)關(guān)聯(lián)的需求和任務(wù)信息。

結(jié)語(yǔ)

代碼提交關(guān)聯(lián)需求和任務(wù)的功能雖然不大,確實(shí)一個(gè)良好習(xí)慣的養(yǎng)成,在此基礎(chǔ)上逐步實(shí)現(xiàn)更加豐富的代碼過(guò)程資產(chǎn)與需求和任務(wù)的關(guān)聯(lián),從而為效能度量、質(zhì)量和風(fēng)險(xiǎn)管控等提供更多的便利。研發(fā)效能提升包含兩個(gè)層面,一個(gè)是單點(diǎn)任務(wù)的效能提升,如環(huán)境部署和測(cè)試等;另外一個(gè)就是不同角色成員之間的協(xié)同效能提升,而代碼信息與需求任務(wù)信息的關(guān)聯(lián),就是通過(guò)過(guò)程數(shù)據(jù)的可視化使關(guān)注需求和任務(wù)的角色成員與關(guān)注代碼的工程師實(shí)現(xiàn)更好的協(xié)同。


新聞標(biāo)題:一文告訴你為什么代碼提交要關(guān)聯(lián)需求和任務(wù)信息
本文來(lái)源:http://www.dlmjj.cn/article/djdcjcc.html