當(dāng)提及企業(yè)級軟件,質(zhì)量是關(guān)鍵。軟件開發(fā)過程是漫長的,開發(fā)商還需要在發(fā)布新版本時做很多的考慮。
開發(fā)商都在忙著開發(fā)更便宜、更快也更好的軟件,但I(xiàn)T專家們更關(guān)心軟件質(zhì)量的標(biāo)準(zhǔn)。
最近我看到一篇關(guān)于CIO與云計(jì)算技術(shù)的調(diào)查報(bào)告。這些CIO們表示,產(chǎn)商需要加快腳步以增加云功能。
我也注意到一些蘋果粉絲的起義。他們不滿蘋果軟件的質(zhì)量,認(rèn)為軟件很多都是半成品、充滿bug且粗糙。鑒于近期還有針對iOS空間消耗問題的訴訟,情況都挺令人擔(dān)憂的。
最后,還有很多關(guān)于VMware未發(fā)布其vSphere版本的討論。這對一些人來說是一種災(zāi)難。其他人則更更寬容,建議VMware多花些時間來修復(fù)錯誤,或者是在vSphere中加入更多驚喜功能。
那么,為什么我還提及這三樣事情?簡單地說,他們代表了我們對軟件與產(chǎn)品開發(fā)不切實(shí)際的預(yù)期——尤其是但涉及到企業(yè)軟件廠商與軟件開發(fā)過程。
軟件供應(yīng)商一次需要完成許多事情:他們要開發(fā)軟件未來版本的新功能,診斷與發(fā)布現(xiàn)有版本的bug,并試圖通過質(zhì)量保證(QA)對所有的變更進(jìn)行測試,以確保他們修好的東西比搞砸的要多。
公司發(fā)布的每個版本都需要提供支持,這是更艱難的任務(wù)。某個版本中出現(xiàn)的bug往往在其他版本同樣能再現(xiàn),而且固定在那里。新版本的亮點(diǎn)在于新功能。這意味著代碼庫可能不同。修復(fù)某個版本問題的代碼可能不適用于另外一個版本,即使兩個版本都存在相同的錯誤。
接著還有測試。每個變更都需要測試來確保這個變更能夠滿足需求,而且不會影響現(xiàn)有的軟件功能。QA測試與bug修復(fù)的難度都有相同原因:太多的版本,各版本之間有太多的不同。
梅特卡夫定律指出一個網(wǎng)絡(luò)的價值相當(dāng)于連接用戶數(shù)目的平方。隨著軟件發(fā)展,我們將“價值”變成了“保持一切同步的難度。”
只選一個,選好的
選擇“更好的”。質(zhì)量更好的軟件在安裝與維護(hù)上都更便宜。廠商不必花費(fèi)所有時間去同步關(guān)于bug的修復(fù)問題,因?yàn)椴淮嬖赽ug。IT人員可以花費(fèi)時間來解決有價值的問題,而不是在電話中要求供應(yīng)商支持。這樣也更便宜,因?yàn)榛ㄙM(fèi)時間去溝通IT問題,不僅浪費(fèi)金錢,也浪費(fèi)時間。
“更好的”意味著更長的發(fā)布時間,但有著較高質(zhì)量的代碼,能夠讓公司走的更遠(yuǎn)。好在VMware正在執(zhí)行18個月的Sphere發(fā)布周期,而且也建議蘋果如此操作?;ǜ鄷r間來穩(wěn)定系統(tǒng)生態(tài)穩(wěn)定,修復(fù)錯誤與通信。與直覺相反,這意味著組織所發(fā)布的新產(chǎn)品能夠被用戶接受,因?yàn)樗麄儠π掳l(fā)布版本投入更多的信任。如果CIO們要求“更多的功能”也不會更奇怪,“更快”實(shí)際上只會在數(shù)據(jù)中心里的舊版本軟件上,因?yàn)檫@些新發(fā)布版本確實(shí)更好用。