日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不

當(dāng)前位置:首頁 > 科技  > 軟件

昂貴的質(zhì)量——為什么bug總在發(fā)生?

來源: 責(zé)編: 時間:2024-07-25 16:34:58 598觀看
導(dǎo)讀作者 | 李光毅 “To err is human”在過去相當(dāng)長一段時間內(nèi),我都在一個負(fù)責(zé)項(xiàng)目維護(hù)的團(tuán)隊(duì)內(nèi)工作。團(tuán)隊(duì)的特殊之處在于,我們從來不開發(fā)新功能,而是負(fù)責(zé)解決每天上報的線上問題。這些 bug 無奇不有,從無法打開頁面到數(shù)據(jù)奇

作者 | 李光毅jGi28資訊網(wǎng)——每日最新資訊28at.com

 “To err is human”

jGi28資訊網(wǎng)——每日最新資訊28at.com

在過去相當(dāng)長一段時間內(nèi),我都在一個負(fù)責(zé)項(xiàng)目維護(hù)的團(tuán)隊(duì)內(nèi)工作。團(tuán)隊(duì)的特殊之處在于,我們從來不開發(fā)新功能,而是負(fù)責(zé)解決每天上報的線上問題。這些 bug 無奇不有,從無法打開頁面到數(shù)據(jù)奇怪丟失,麻木早已經(jīng)替代焦慮成為了我們面對 bug 時的主要情緒。 jGi28資訊網(wǎng)——每日最新資訊28at.com

但我時不時的抱怨依然是:為什么 bug總是在發(fā)生。jGi28資訊網(wǎng)——每日最新資訊28at.com

缺陷早已在豐田生產(chǎn)系統(tǒng)(Toyota Production System)中被標(biāo)注為浪費(fèi)之一。沒有人希望看到 bug,我們不想,客戶更加不想。但我們似乎都不愿承認(rèn)的一個事實(shí)是:jGi28資訊網(wǎng)——每日最新資訊28at.com

bug是代碼的副產(chǎn)品而已。jGi28資訊網(wǎng)——每日最新資訊28at.com

jGi28資訊網(wǎng)——每日最新資訊28at.com

如果我們選擇接受編碼不過是人思維活動的一種形式,與思考無異,那我們也就必須接納,人性的缺陷在代碼中自然也不會缺席,恰如硬幣的正反兩面。jGi28資訊網(wǎng)——每日最新資訊28at.com

反過來說,如果你對 bug采取的是零容忍的態(tài)度,甚至不惜把此寫入 KPI 中,它也未必會帶來正面效應(yīng),因?yàn)樽源碎_始,沒有人會愿意重構(gòu),沒有人會愿意引入新的技術(shù)方案,道理非常簡單:改動越多風(fēng)險越大——這是某年發(fā)生在我所屬團(tuán)隊(duì)的一次親身經(jīng)歷。 jGi28資訊網(wǎng)——每日最新資訊28at.com

所以我們面臨的并非 bug 去或者留的選項(xiàng),而是多與少的問題。jGi28資訊網(wǎng)——每日最新資訊28at.com

jGi28資訊網(wǎng)——每日最新資訊28at.com

擺正質(zhì)量

jGi28資訊網(wǎng)——每日最新資訊28at.com

在 MoSCoW 方法論的框架下,我們通常可以將功能的優(yōu)先級劃分為四類: Must Have, Should Have, Could Have 以及 Won’tHave,如果把質(zhì)量也作為功能的一個維度落入這四個區(qū)間之一的話,它一定不會在 Must Have 這個范圍內(nèi)。因?yàn)槿藗兗炔粫驗(yàn)闆]有 bug而選擇長時間地使用一款應(yīng)用,也不會因?yàn)榇嬖?bug而成為轉(zhuǎn)投它競爭對手的唯一理由。我們必須承認(rèn)這樣一個事實(shí):質(zhì)量永遠(yuǎn)也不是商業(yè)的核心競爭力,這也暗示著:jGi28資訊網(wǎng)——每日最新資訊28at.com

  • 有些功能缺陷是可以被容忍的
  • 質(zhì)量被分配得到的資源永遠(yuǎn)是有限的。

前者并非我們的一廂情愿,在互聯(lián)網(wǎng)產(chǎn)品的高性價比和快速迭代的商業(yè)邏輯下,用戶對產(chǎn)品質(zhì)量的預(yù)期已經(jīng)被規(guī)訓(xùn)到一個非常「理想」的狀態(tài)。 jGi28資訊網(wǎng)——每日最新資訊28at.com

而后者更為關(guān)鍵:我們應(yīng)該如何最大化利用有限的資源去提升質(zhì)量?如果你所在的部門也有機(jī)會組建一支類似于本文開頭的團(tuán)隊(duì),那不妨考慮一下這個建議:用資源換取更多的人員加入這支團(tuán)隊(duì)怎么樣?jGi28資訊網(wǎng)——每日最新資訊28at.com

原諒我用一個粗俗的比喻來解釋為什么這么做行不通:jGi28資訊網(wǎng)——每日最新資訊28at.com

我們換來的只是打掃的速度,對制造垃圾的人產(chǎn)生不了任何影響,效果甚至?xí)m得其反:考慮到總有人為他們收拾殘局,我們的善后工作做得越好,他們越是會肆無忌憚。jGi28資訊網(wǎng)——每日最新資訊28at.com

jGi28資訊網(wǎng)——每日最新資訊28at.com

但這是當(dāng)下大部分公司的現(xiàn)狀:如果線上問題激增,是不是QA 工作不到位?我們似乎傾向把編碼和測試的界限劃分得一清二楚,從人員到職責(zé)到工序都是如此。而質(zhì)量問題從編碼中來,卻想從測試中尋找解決之道,這與刻舟求劍無異。 jGi28資訊網(wǎng)——每日最新資訊28at.com

鋪墊了如此之多,我想表達(dá)的觀點(diǎn)依然是老生常談:質(zhì)量內(nèi)建,以及最近幾年我們常常提倡的測試左移。至于什么是質(zhì)量內(nèi)建和測試左移,并不在這篇文章的范圍內(nèi),你在網(wǎng)上可以找到大量的專業(yè)文章來介紹他們。jGi28資訊網(wǎng)——每日最新資訊28at.com

質(zhì)量的成本

jGi28資訊網(wǎng)——每日最新資訊28at.com

現(xiàn)在我們必須回答一個核心問題:誰該對質(zhì)量負(fù)責(zé)?最官方的答案是每個角色,我們可以列舉出產(chǎn)品經(jīng)理沒有全面地對功能做驗(yàn)收,QA沒有把控好質(zhì)量關(guān)等等。但假定此刻我們必須指定一人將他五花大綁起來祭天,為的是有人需要為上一個讓人焦頭爛額的bug 負(fù)責(zé),程序員絕對是不二之選。 jGi28資訊網(wǎng)——每日最新資訊28at.com

但程序員死也不會瞑目的。 jGi28資訊網(wǎng)——每日最新資訊28at.com

如果你是團(tuán)隊(duì)經(jīng)理,你發(fā)現(xiàn)上個月線上問題數(shù)量增加了一倍,于是你沖到你的工程師團(tuán)隊(duì)工位前,怒不可遏地沖他們吼道:我希望這個月的線上問題不超過個位數(shù)!你覺得他們能做到嗎?jGi28資訊網(wǎng)——每日最新資訊28at.com

我想說的是:jGi28資訊網(wǎng)——每日最新資訊28at.com

質(zhì)量不是「希望」的結(jié)果,它是付出的收獲。關(guān)鍵在于你愿意用什么去交換。jGi28資訊網(wǎng)——每日最新資訊28at.com

jGi28資訊網(wǎng)——每日最新資訊28at.com

提升質(zhì)量的訣竅一點(diǎn)也不神秘。口口相傳的各類業(yè)內(nèi)實(shí)踐便是最好的靈丹妙藥,比如重構(gòu)、代碼評審、結(jié)對編程、流水線集成等等。我們不妨就以單元測試為例,看看我們需要付出多大的成本 jGi28資訊網(wǎng)——每日最新資訊28at.com

首先,時間便是一筆可觀的支出。以我所在的項(xiàng)目為例,我們?yōu)榍岸薘eact 組件編寫單元測試的時間,幾乎與開發(fā)功能的時間相同。注意這還是在沒有追求覆蓋所有的邊界用例,以及沒有追求 100%的測試覆蓋率的情況下。另外,當(dāng)我們編寫的代碼導(dǎo)致之前編寫的關(guān)聯(lián)測試無法通過流水線時,去查找失敗的原因以及修正這些錯誤也是隱形時間。jGi28資訊網(wǎng)——每日最新資訊28at.com

其次,在我看來最難以逾越的障礙在于對工程文化的重塑。對下要強(qiáng)調(diào)保證程序員去寫、關(guān)注、修復(fù)的紀(jì)律;對上要爭取理解和空間來輔助這些實(shí)踐,單拎出來任何一件事推動起來都不簡單。工程實(shí)踐天然具有一種反商業(yè)活動的特性,它很難被量化、難以一針見效。沒有人敢拍著胸脯說在xx 天之內(nèi)或者當(dāng)測試覆蓋率至少達(dá)到 xx 水平之后, bug 數(shù)量會降至 xx。我們都不否認(rèn)它會變得更好。諷刺的是實(shí)踐帶來的「負(fù)面」效應(yīng)是立竿見影的:工程團(tuán)隊(duì)的交付速度變慢了。jGi28資訊網(wǎng)——每日最新資訊28at.com

測試的部分好處還來自未來,比如它能增強(qiáng)我們重構(gòu)代碼和變更架構(gòu)時的信心,防止舊功能無意被新功能破壞。但我依然無法保證你的收益會何時何地有幾倍于付出的到來。 jGi28資訊網(wǎng)——每日最新資訊28at.com

于是現(xiàn)狀變成了一方面可見的迭代速度變慢,另一方面成本的付出看不到收益,質(zhì)量就自然值得被犧牲。jGi28資訊網(wǎng)——每日最新資訊28at.com

在提升質(zhì)量的過程中,我們解決的不是個體問題而是工業(yè)問題。細(xì)想這是很難的:一個團(tuán)隊(duì)中成員的能力不同背景不同,但我們卻要設(shè)法讓它們的產(chǎn)出質(zhì)量處于某個水平之上。jGi28資訊網(wǎng)——每日最新資訊28at.com

還債

jGi28資訊網(wǎng)——每日最新資訊28at.com

聽上去我們只能義無反顧去相信(take a leap of faith)某些實(shí)踐能夠幫助我們提升質(zhì)量,且付出的收益是不確定的。但換一個角度想,我們只是在做一些本該做好的事情而已,用戶的寬容讓質(zhì)量變得可有可無。 jGi28資訊網(wǎng)——每日最新資訊28at.com

我不否認(rèn)有時候快比好更重要,只不過當(dāng)有一天質(zhì)量變成我們無法再忽視的問題時,別不知所措地想不起來質(zhì)量是在哪里搞丟的。jGi28資訊網(wǎng)——每日最新資訊28at.com

本文鏈接:http://m.www897cc.com/showinfo-26-103567-0.html昂貴的質(zhì)量——為什么bug總在發(fā)生?

聲明:本網(wǎng)頁內(nèi)容旨在傳播知識,若有侵權(quán)等問題請及時與本網(wǎng)聯(lián)系,我們將在第一時間刪除處理。郵件:2376512515@qq.com

上一篇: 前端新入職必備清單,保姆級教程!

下一篇: 優(yōu)雅代碼,建議掌握這 11個編程原則!

標(biāo)簽:
  • 熱門焦點(diǎn)
Top 日韩成人免费在线_国产成人一二_精品国产免费人成电影在线观..._日本一区二区三区久久久久久久久不
一本大道久久a久久综合婷婷| 欧美午夜宅男影院在线观看| 久久久久久久尹人综合网亚洲| 久久精品国产亚洲精品| 久久精品一本| 欧美激情第3页| 国产精品区一区二区三| 韩国av一区二区三区四区| 亚洲黄色在线视频| 亚洲免费视频中文字幕| 久久免费99精品久久久久久| 欧美激情一区二区三区四区| 欧美性猛交99久久久久99按摩| 国产日韩欧美日韩| 亚洲激情午夜| 亚洲欧美亚洲| 欧美暴力喷水在线| 国产精品久久久久久久久搜平片| 国内精品久久久久久久影视麻豆| 亚洲精品免费网站| 欧美亚洲日本国产| 欧美激情女人20p| 国产午夜亚洲精品理论片色戒| 91久久综合亚洲鲁鲁五月天| 新67194成人永久网站| 欧美成人小视频| 国产日韩视频一区二区三区| 亚洲精品婷婷| 久久精品免费观看| 欧美三级网址| 亚洲国产一区二区三区在线播| 亚洲欧美国产高清va在线播| 欧美高清成人| 国产真实精品久久二三区| 一区二区电影免费在线观看| 久热精品视频在线| 国产美女精品免费电影| 日韩视频在线观看| 久久影视三级福利片| 国产精品免费网站| 亚洲毛片一区二区| 麻豆成人精品| 国产亚洲欧美中文| 亚洲午夜视频在线| 欧美日韩大片| 亚洲国产毛片完整版| 久久成人精品视频| 国产精品日韩高清| 一区二区不卡在线视频 午夜欧美不卡在 | 欧美自拍丝袜亚洲| 国产精品捆绑调教| 一区二区电影免费观看| 欧美成人精品不卡视频在线观看| 国产一区二区三区久久精品| 亚洲欧美日本视频在线观看| 欧美视频观看一区| 99re6这里只有精品视频在线观看| 免费观看成人网| 伊人春色精品| 久久久中精品2020中文| 国产午夜精品美女视频明星a级| 亚洲在线第一页| 欧美网站在线观看| 一本色道久久综合亚洲精品不卡| 欧美国产精品一区| 亚洲黄色性网站| 快播亚洲色图| 在线观看欧美日本| 另类国产ts人妖高潮视频| 激情欧美一区二区三区| 午夜在线观看免费一区| 国产精品一二三| 小黄鸭视频精品导航| 国产精品亚洲综合| 亚洲一区二区三区精品在线| 欧美视频中文一区二区三区在线观看 | 夜夜嗨av色综合久久久综合网| 欧美成人在线影院| 91久久综合亚洲鲁鲁五月天| 欧美成人免费在线视频| 亚洲激情社区| 欧美精品aa| 一二三四社区欧美黄| 欧美日韩一二区| 亚洲小少妇裸体bbw| 国产精品免费观看在线| 小处雏高清一区二区三区 | 在线免费观看日本欧美| 蜜臀久久久99精品久久久久久| 亚洲国产精品99久久久久久久久| 欧美成人国产| 日韩视频免费在线观看| 欧美日韩精品一区二区三区| 亚洲私拍自拍| 国产精品一区二区在线观看网站| 欧美一区二区三区免费观看| 国内成人精品2018免费看| 久久久噜噜噜久噜久久 | 日韩五码在线| 国产精品超碰97尤物18| 欧美夜福利tv在线| 狠狠做深爱婷婷久久综合一区| 久久久一本精品99久久精品66| 伊人久久大香线蕉av超碰演员| 欧美成人在线影院| 一区二区三区www| 国产精自产拍久久久久久| 久久精品亚洲热| 亚洲欧洲日产国产网站| 欧美涩涩视频| 性色av香蕉一区二区| 在线观看福利一区| 欧美日本国产| 午夜在线电影亚洲一区| 影音先锋中文字幕一区| 欧美激情一区二区| 亚洲欧美国产高清| 好看的日韩av电影| 欧美日本一区二区视频在线观看| 亚洲欧美国产高清va在线播| 激情欧美一区二区三区在线观看| 欧美人在线观看| 久久丁香综合五月国产三级网站| 亚洲黄一区二区三区| 国产精品成人在线| 久久久久久免费| 一区二区三区四区国产| 国产在线观看91精品一区| 欧美精品日韩一本| 欧美一级网站| 亚洲精品偷拍| 国产欧美综合一区二区三区| 欧美成人国产一区二区| 亚洲欧美视频在线| 亚洲三级电影在线观看| 国产日韩精品一区二区三区| 欧美激情精品久久久久久蜜臀| 亚洲欧美一区二区三区极速播放| 亚洲春色另类小说| 国产精品推荐精品| 欧美精品在线网站| 久久久久久久久久久久久女国产乱| 99视频在线观看一区三区| 好吊一区二区三区| 国产精品草莓在线免费观看| 六月婷婷一区| 亚欧成人在线| 在线亚洲国产精品网站| 在线日韩av片| 国产免费成人在线视频| 欧美精品在线观看一区二区| 欧美有码在线视频| 99精品视频免费| 亚洲电影免费观看高清完整版在线 | 国产欧美一区二区三区久久人妖| 欧美国产欧美综合| 久久激五月天综合精品| 亚洲午夜精品网| 亚洲区一区二区三区| 国产一区香蕉久久| 国产精品免费小视频| 欧美另类人妖| 久久一区二区视频| 欧美一区在线直播| 亚洲一区二区三区午夜| 亚洲免费观看高清在线观看| 伊人婷婷久久| 国产亚洲精品一区二555| 欧美日韩在线观看一区二区三区| 毛片一区二区三区| 久久国产欧美精品| 亚洲欧美视频| 亚洲午夜精品久久久久久浪潮 | 久久亚洲二区| 欧美自拍偷拍午夜视频| 亚洲淫片在线视频| aⅴ色国产欧美| 亚洲茄子视频| 亚洲激情电影中文字幕| 激情视频一区| 国产一区二区丝袜高跟鞋图片| 国产精品亚洲综合| 国产精品久久久久久久久久久久久久| 欧美精品三级日韩久久| 欧美成人小视频| 欧美a级片网| 母乳一区在线观看| 蜜臀av国产精品久久久久| 久久精品视频在线播放| 欧美一区二区在线免费观看| 亚洲欧美日韩成人| 亚洲中字在线| 亚洲免费在线精品一区| 亚洲亚洲精品三区日韩精品在线视频| 亚洲九九精品| aⅴ色国产欧美| 亚洲午夜一区二区| 亚洲一级片在线看| 中国日韩欧美久久久久久久久| 一区二区三区精密机械公司| 一区二区三区免费在线观看| 在线亚洲精品福利网址导航| 亚洲视频福利| 亚洲综合成人婷婷小说|