
這兩期的幣乎周報中,最后一塊都會有開發(fā)團隊被發(fā)現(xiàn)bug,造成用戶體驗、功能異常、服務(wù)中斷等等問題的,公示銷毀一些團隊持有的key,以示懲戒,以儆效尤。
這個真是一種創(chuàng)新舉措,讓開發(fā)團隊能更加沉浸入對產(chǎn)品的穩(wěn)定性、功能性、用戶體驗度的把控上,讓所有的開發(fā)人員skin in the game,在產(chǎn)品的生命周期中休戚相關(guān),就像對待自己最珍視的東西一樣對待自己的開發(fā)代碼,產(chǎn)品質(zhì)量。
現(xiàn)在普遍的軟件開發(fā)問題
我碰到過很多的軟件開發(fā)公司,有大型的、有手工作坊式的,有軟件成熟度cmm5認(rèn)證的,也有野路子出身的,合作開發(fā)了很多軟件系統(tǒng)、平臺。總體來說,軟件產(chǎn)品質(zhì)量的層次都差不多,就算是cmm5認(rèn)證的企業(yè),軟件的穩(wěn)定性和bug的管理,也就是比野路子的好那么一點點。
因為中國的軟件企業(yè),cmm5認(rèn)證是一回事,認(rèn)證完了,有沒有按照cmm5的軟件開發(fā)要求來把控質(zhì)量,就是另外一回事了。我看到好幾個企業(yè),做cmm5認(rèn)證時,確實做了巨量的文檔,流程,約束,只是等把認(rèn)證證書拿到手,這些散布在全國各地的項目組軟件開發(fā)工程師該怎么寫代碼,還是怎么寫代碼,測試更是一塌糊涂,完全沒有軟件質(zhì)量控制。
究其原因,軟件開發(fā)本身是一項巨復(fù)雜系統(tǒng)(指大型軟件),需要參與的程序猿很多,在事實上造成了復(fù)雜度密集,問題排查困難、責(zé)任追究更困難。
再有,如果軟件公司的老板或者責(zé)任高管不建立bug責(zé)任追究的機制,用戶單位也沒有嚴(yán)密且嚴(yán)格的責(zé)任追究要求,就會很容易陷入bug重復(fù)出現(xiàn),問題重復(fù)發(fā)生的惡性循環(huán)。其本質(zhì)原因是,作為第一責(zé)任人的碼農(nóng),沒有skin in the game,沒有把自己的切身利益和自己的開發(fā)代碼嚴(yán)密的綁定在一起,一榮俱榮、一毀俱毀。
雪崩的時候,沒有一片雪花是無辜的,也就是說,沒有一片雪花應(yīng)該完全承擔(dān)責(zé)任
現(xiàn)在程序猿和代碼之間的普遍關(guān)系是,代碼之間強關(guān)聯(lián),責(zé)任弱關(guān)聯(lián)。就像形成了一股默契,有問題bug,大家會去一起解決,只有有沒有新的bug,等問題出來再說。具體bug是誰的責(zé)任,很難說,網(wǎng)絡(luò)不穩(wěn)定、接口不穩(wěn)定、數(shù)據(jù)有異常、規(guī)則有漏洞等等等等,程序猿基本上可以找一堆的理由,讓代碼糾察員最終喪失一直追究下去的勇氣和能力。
我們也在合同約束過,發(fā)生一次bug故障、服務(wù)中斷,經(jīng)確認(rèn)是代碼引起的,對開發(fā)公司實施扣罰,并責(zé)成開發(fā)公司對責(zé)任碼農(nóng)實施扣罰工資。
但是事實上,這個措施很難執(zhí)行下去。一方面進(jìn)入運維期后,很多開發(fā)期的代碼bug才會暴露出來,而開發(fā)費用已經(jīng)不在甲方了,另一方面,這些碼農(nóng)還是開發(fā)公司所倚重的,不敢輕易惹毛他們,否則,現(xiàn)在碼農(nóng)還是比較吃香的,馬上撂挑子到下家去了。于是,這個責(zé)任根本就追究不下去。
謝罪銷毀好辦法
當(dāng)區(qū)塊鏈金融普及時,是對任何利益相關(guān)的產(chǎn)品實行責(zé)任追究的好工具。一個產(chǎn)品的有效生命周期中,按照使用比例,由用戶逐步釋放token代幣,產(chǎn)品發(fā)生問題,按照智能合約的判定,扣罰或者銷毀token。
古代巴比倫王國的漢謨拉比法典規(guī)定,建筑師建造的房子倒塌了,把房主的兒子給壓死了,建筑師的兒子要償命。延續(xù)這種利益攸關(guān)的精神,我們這個時代,軟件產(chǎn)品的質(zhì)量才會和收益真正密切相關(guān),發(fā)生一次代碼bug,開發(fā)的碼農(nóng)賬戶上的token就會被自動銷毀切膚之痛的一部分,無論他是否還在這家公司。
這樣的方法,還怕軟件產(chǎn)品的質(zhì)量不大大提高么?
幣乎開發(fā)團隊給軟件質(zhì)量把控上給出了一個很好的辦法,如果大范圍推行加上區(qū)塊鏈token應(yīng)用,會給整個軟件行業(yè)的質(zhì)量提升帶來巨大改變。
不過,我們也看到,幣乎實際銷毀的key從總體數(shù)量來說,還是微乎其微,和團隊激勵的key相比。既然邁出了第一步,建議加大力度,一定要銷毀讓程序猿有切膚之痛的key數(shù)量,才能真正起到懲戒后進(jìn),激勵先進(jìn)的作用。