做上位機開發(fā),有時候別把客戶想得太聰明,很多功能性軟件開發(fā)都是這樣,如果把客戶想得太聰明,總覺得是自己的問題,那你就在你自己的代碼里面找Bug吧,最后可能把自己找emo了也找不到問題所在!我們公司的軟件就出現(xiàn)了 “故障”,最后原因都是在客戶那!

打開網(wǎng)易新聞 查看精彩圖片

我們公司有這么一個上位機軟件,主要用來監(jiān)聽客戶機上的PLC數(shù)據(jù),然后將PLC數(shù)據(jù)進行處理后上傳到客戶的數(shù)據(jù)庫。

監(jiān)聽方式也很簡單,客戶機上有個開關,這個開關的開和關操作會寫入狀態(tài)到客戶機器的PLC,我們會監(jiān)聽這個狀態(tài),開了以后我們的軟件就會去客戶機上的PLC上拉取數(shù)據(jù),然后經(jīng)過一系列復雜的算法,最后再把處理后的數(shù)據(jù)給到客戶的數(shù)據(jù)庫。

裝有這樣的上位機軟件的主機總共有八臺,除了偶爾有一些人機交互上的問題需要優(yōu)化之外,軟件整體運行的還算穩(wěn)定。

但是,客戶突然有一天說有一臺主機的軟件出故障了,突然就不處理數(shù)據(jù)了,在電話里被客戶劈頭蓋臉說了一通后,客戶要求我們立馬派人去現(xiàn)場檢查軟件故障原因。

我們公司的工程師緊張得就跑到客戶工廠里面去看,發(fā)現(xiàn)果然有一臺主機的上位機軟件不處理數(shù)據(jù)了,而其他七臺都能正常處理數(shù)據(jù)。

對比了下其他七臺電腦的軟件版本,發(fā)現(xiàn)版本都是一樣的,各項參數(shù)也差不多,對比了一番,最終也沒看出個所以然出來,然后只能把現(xiàn)場的軟件拷回公司,在公司進行調(diào)試。

走的時候客戶還不耐煩地跟我們說:“什么破軟件,三天兩頭出問題!”

挨了客戶訓,很丟臉,就這樣,負責這個項目的程序員加班了好幾天,試圖找出代碼里面的漏洞,但是愣是沒有找出問題出在哪,天天在工位上嘀咕:“沒問題啊......”

搞了幾天,實在沒有什么進度,于是這個程序員只能打電話給客戶,想要再申請進工廠看看,結果客戶一句話讓這個程序員無語了:“軟件好了,是操作員沒打開開關!”

遇到這種讓人無語的事情,您也不能對客戶翻臉,所以所有的苦只有程序員自己咽了!

最后,總結這個事情的時候,程序員感嘆道:“我就是想破天,我也想不到是客戶軟件開關沒打開,這種低級錯誤怎么還能犯呢?”

但是,雖然嘴上這么說,雖然這個錯誤非常低級,可只要這個程序員在進入工廠的時候能夠秉持懷疑的態(tài)度去看一眼開關,估計問題就不會搞那么久了!

結語

很多時候,當客戶在使用過程中遇到問題,他們首先并不會覺得是自己的問題,尤其是像我們公司的這種客戶,遇到問題不光不覺得是自己問題,脾氣還臭,還理直氣壯的,因此很容易給人一種錯覺,那就是客戶沒有問題。

所以,不管客戶多么理直氣壯,一定要把客戶當傻子看,當排除一系列可能存在的低級錯誤的時候,再來檢討自己可能存在的問題。