問題出現(xiàn)了并不可怕,只要我們追本溯源秃殉,找到問題根源所在坝初,科學(xué)的解決問題浸剩,合理的制定流程,就能離成功更近一步鳄袍。
線上事故绢要,這應(yīng)該是產(chǎn)品經(jīng)理最怕的事情。很不巧拗小,我的產(chǎn)品這幾天正好遇到了線上事故重罪,在處理完問題之后,我對事故進(jìn)行了復(fù)盤十籍,警以為戒蛆封,希望各位輕拍。
“小凡勾栗,你看微博有用戶反饋xx問題惨篱。”
每次聽到運營妹子的聲音都會有種心驚肉跳的感覺围俘,因為這悅耳的聲音背后往往意味著用戶吐槽砸讳,意味著線上bug。這不界牡,昨天剛發(fā)布的版本出現(xiàn)了問題簿寂,用戶怒了。
問題是什么
我負(fù)責(zé)一款以內(nèi)容為核心的工具型應(yīng)用宿亡,在我們最新發(fā)布的版本中常遂,我們對內(nèi)容展示頁面進(jìn)行了優(yōu)化,索引詞會高亮顯示以幫助用戶更好地查看挽荠、理解內(nèi)容克胳。
但是上線后用戶反饋索引詞的順序有問題,全部提至了句首圈匆,導(dǎo)致句子全部錯誤漠另,無法正常閱讀。
問題在哪里
程序設(shè)計錯誤
程序猿在做索引詞高亮處理時跃赚,程序邏輯設(shè)計不當(dāng)笆搓,雖然對索引詞加了高亮,但是處理高亮詞是將整個句子視作一個詞條進(jìn)行處理纬傲,提取索引詞后進(jìn)行高亮處理满败,將高亮詞放回時,替換其到index=0的位置叹括,導(dǎo)致索引詞顯示在句首算墨。
功能測試遺漏
測試同學(xué)在做模塊化測試、全功能測試時领猾,并未測試到該細(xì)節(jié)米同,導(dǎo)致該bug發(fā)布上線骇扇,當(dāng)用戶反饋后才補充了內(nèi)容測試相關(guān)case。
存在問題的原因
新代碼設(shè)計不合理
舊的邏輯是按照空格進(jìn)行字符串的分割面粮,將句子拆分為一個個詞少孝,再去判斷是否有索引詞,如有則提取出來做高亮熬苍,而我們本次處理的內(nèi)容由于語種特性并沒有空格稍走。
程序猿并未考慮新需求的不同之處,依舊使用統(tǒng)一的處理方式柴底,導(dǎo)致新的語種內(nèi)容在呈現(xiàn)上出現(xiàn)異常婿脸。
正常處理邏輯應(yīng)該是不按空格進(jìn)行拆分,直接判斷例句中是否包含所查索引詞柄驻,如有并作高亮顯示狐树。
提測單未寫明修改點
按規(guī)范每輪單元測試,需將新功能鸿脓、修改點抑钟、可能涉及的影響都寫明,讓測試同學(xué)知曉以便進(jìn)行全面測試野哭。但在開發(fā)同學(xué)看來本功能較小在塔,并未在單元提測中單獨標(biāo)明。
測試未覆蓋內(nèi)容版塊
測試針對新功能拨黔、UI和測試用例進(jìn)行了測試蛔溃,但是未考慮到本應(yīng)用是重內(nèi)容的應(yīng)用,缺乏對內(nèi)容的測試篱蝇。
我們能做什么
安撫用戶
定位問題之后贺待,運營同學(xué)第一時間與微博用戶聯(lián)系,先表達(dá)歉意态兴,再標(biāo)明程序猿正在修復(fù)中狠持,請用戶耐心等待疟位;同時發(fā)布正式通知瞻润,告知用戶問題已經(jīng)開始修復(fù),我們將盡快發(fā)布新版本以解決問題甜刻。
緊急修復(fù)
在運營同學(xué)發(fā)布通知的同時,程序員立即著手修復(fù)該bug,并針對此前忽略的內(nèi)容問題進(jìn)行復(fù)查蔑担,自測通過后移交測試人員柿扣。測試通過后,請教研同學(xué)配合進(jìn)行內(nèi)容測試祥绞,確保內(nèi)容相關(guān)展示無誤非洲。
盡快發(fā)版
蘋果應(yīng)用商店的正常審核流程是3至7天不等(必須吐槽)鸭限,但是緊急bug刻不容緩,不能走此正常流程两踏。面對極其重視用戶體驗的蘋果败京,加速審核申請往往能幫你在數(shù)小時候?qū)徍送ㄟ^。
必須讓蘋果知道你是非常重視用戶體驗的梦染,而你的app現(xiàn)在出現(xiàn)了非常嚴(yán)重的bug赡麦,為了用戶的體驗?zāi)惚仨毩⒖贪l(fā)布一個版本,這樣加速審核通過的概率會很高帕识。審核通過后泛粹,立即發(fā)布上架讓用戶更新,這時候用戶更新說明也是至關(guān)重要的肮疗,值得用心去寫晶姊。
我們應(yīng)該做什么
上面幾個步驟重在解決已發(fā)生的問題,而在我看來更重要的是知道如何規(guī)避未來的問題伪货。這就涉及修改流程了帽借,我們是這么做的:
1.兩端開發(fā)人員系統(tǒng)梳理代碼邏輯,差異點超歌、疑問點及時進(jìn)行溝通砍艾、確認(rèn);
2.版本正式開發(fā)前巍举,增加技術(shù)拆分會脆荷,確認(rèn)開發(fā)思路和實現(xiàn)邏輯;
3.iOS開發(fā)人員加強代碼交叉review懊悯;
4.iOS開發(fā)人員加強自測蜓谋,自測中加強與安卓端對照;
5.測試人員增補內(nèi)容測試用例炭分,加強兩端對照測試桃焕;
6.嚴(yán)格執(zhí)行產(chǎn)品體驗會,發(fā)版前組織教研捧毛、內(nèi)容观堂、運營等人員進(jìn)行產(chǎn)品體驗。
寫在后面
這次事故出現(xiàn)后呀忧,我們團(tuán)隊迅速行動师痕,從bug定位到新版本發(fā)布上線,只用了不到24小時而账,我想這也是值得欣慰的一點吧胰坟。
愿各位同行的產(chǎn)品都不會出現(xiàn)事故!