發(fā)布于:2021-01-26 13:41:28
0
265
0
自從我加入TrackAbout的團(tuán)隊(duì)以來(lái),我一直在重新思考我對(duì)流程改進(jìn)的一些想法。
我一直大力提倡測(cè)試驅(qū)動(dòng)開發(fā)、靜態(tài)代碼分析和軟件開發(fā)中的其他最佳實(shí)踐。
在以前的工作中,我有很大一部分時(shí)間是在明確或隱含地改進(jìn)發(fā)展過(guò)程中度過(guò)的。這不是一個(gè)真正有趣的地方,但我一直感到有一種強(qiáng)烈的道德信念,那就是接受這份工作,把事情做好。
當(dāng)流程改進(jìn)不起作用時(shí)
我在TrackAbout工作的團(tuán)隊(duì)中有很多開發(fā)人員,他們確實(shí)是我共事過(guò)的最聰明的人之一,他們不僅有豐富的經(jīng)驗(yàn),而且知識(shí)淵博,尤其是在最佳實(shí)踐方面。
在這里應(yīng)用相同的開發(fā)過(guò)程改進(jìn)步驟似乎沒有意義。
我說(shuō)的是:
代碼在單元測(cè)試中必須有90%的代碼覆蓋率。
FxCop必須沒有新的警告。
不能同時(shí)處理兩個(gè)積壓的代碼。
積壓的代碼必須分解為不超過(guò)x小時(shí)的任務(wù)。
在我工作過(guò)的大多數(shù)團(tuán)隊(duì)中,這些類型的“規(guī)則”確實(shí)有助于提高團(tuán)隊(duì)生成的代碼質(zhì)量。
這是我第一次覺得在開發(fā)團(tuán)隊(duì)中引入“規(guī)則”實(shí)際上會(huì)損害代碼的生產(chǎn)率和質(zhì)量。
非常優(yōu)秀的開發(fā)人員似乎有判斷力,能夠做出正確的決定,即他們需要多少代碼覆蓋率,以及哪種靜態(tài)分析規(guī)則是重要的。
似乎沒有一套開發(fā)過(guò)程規(guī)則能夠捕捉到這種判斷的價(jià)值。
我覺得在我工作的地方,每個(gè)人都對(duì)自己寫的每一行代碼都有自我意識(shí),他們不必被告知對(duì)此有自我意識(shí),這真的是我在其他地方從未經(jīng)歷過(guò)的事情。
我在那里工作過(guò)的大多數(shù)地方,可能都有一兩個(gè)與我志趣相投的人,他們是公司里所有的開發(fā)人員中的一員,但老實(shí)說(shuō),在TrackAbout,每個(gè)開發(fā)人員都有同樣的熱情。
所以我是說(shuō)開發(fā)過(guò)程是不必要的嗎?
一定要說(shuō)“不!“但我要說(shuō)的是,有時(shí)他們的僵化程度是不需要的。
當(dāng)我在過(guò)去負(fù)責(zé)建立開發(fā)過(guò)程時(shí),經(jīng)常有人問(wèn)我“為什么單元測(cè)試90%的代碼覆蓋率?”這一問(wèn)題。
在單元測(cè)試中擁有90%的代碼覆蓋率并不是什么神奇的事情。它不會(huì)突然讓你的代碼變得很好,但它通??梢源_保以下幾點(diǎn):
您有一種可測(cè)量的、可執(zhí)行的方法來(lái)確保單元測(cè)試是真正編寫的。
如果開發(fā)人員正在經(jīng)歷困難以獲得90%的代碼覆蓋率,那么他們更有可能編寫好的單元測(cè)試來(lái)實(shí)實(shí)在在地執(zhí)行代碼。(不總是這樣,但肯定更有可能。)
它防止了那些不應(yīng)該做出判斷的人需要做出判斷。你不能相信每個(gè)開發(fā)人員都能做出正確的判斷,所以通過(guò)強(qiáng)加一個(gè)任意的規(guī)則,你可以在沙子上劃出一條線,而這條線大部分是正確的地方。
強(qiáng)加開發(fā)過(guò)程規(guī)則還有其他好處和原因,老實(shí)說(shuō),對(duì)于大多數(shù)團(tuán)隊(duì),我強(qiáng)烈推薦它們。
我在這篇文章中所做的是質(zhì)疑我自己的想法,即如何將它們應(yīng)用到一個(gè)成就卓越的團(tuán)隊(duì)中。
如果沒有一套嚴(yán)格的規(guī)則,那么如何改進(jìn)流程?
這是我現(xiàn)在正在努力解決的問(wèn)題。老實(shí)說(shuō),我還沒有一個(gè)很好的答案。
即使在這種情況下,看起來(lái)我的看板和指南中的原則仍然適用。
我還在思考這個(gè)問(wèn)題 。
我覺得總是需要一些過(guò)程改進(jìn),持續(xù)改進(jìn)是非常重要的,沒有一個(gè)團(tuán)隊(duì)可以從過(guò)程改進(jìn)中獲益。
關(guān)于高績(jī)效團(tuán)隊(duì)的改進(jìn)過(guò)程的另一個(gè)問(wèn)題是,沒有人坐在那里談?wù)摳倪M(jìn)過(guò)程。相反,每個(gè)人都在完成事情。通常情況下,過(guò)程改進(jìn)討論是出于必要性,或者因?yàn)轱@然存在需要改進(jìn)的問(wèn)題。
我相信,當(dāng)我自己找到這些問(wèn)題的答案時(shí),我會(huì)在這個(gè)話題上寫得更多。
作者介紹
熱門博客推薦